From 37019da23bf464d400b346c4461bd7a6c3acd3af Mon Sep 17 00:00:00 2001 From: meaz Date: Tue, 26 Oct 2021 20:11:30 +0200 Subject: [PATCH] update to 1.5.0 --- README.md | 18 +- deps/bootstrap.bundle.min.js | 6 + deps/bootstrap.min.css | 6 + deps/less.min.js | 17 + images/contactgroup.svg | 2 +- images/contactpic.svg | 2 +- images/google-icon.svg | 1 + images/microsoft-icon.svg | 8 + meta.json | 6 +- styles/_variables.less | 1 - styles/colors.less | 66 +- styles/dark.less | 1148 ++++++++++++++ styles/embed.css | 171 -- styles/embed.min.css | 1 + styles/layout.less | 16 +- styles/print.css | 1 - styles/print.less | 15 +- styles/print.min.css | 1 + styles/styles.less | 221 +-- styles/{styles.css => styles.min.css} | 2071 ++++++++++++++++--------- styles/variables.less | 4 +- styles/widgets/buttons.less | 48 +- styles/widgets/common.less | 3 +- styles/widgets/dialogs.less | 11 +- styles/widgets/editor.less | 1007 ++++-------- styles/widgets/forms.less | 22 +- styles/widgets/jqueryui.less | 2 + styles/widgets/lists.less | 46 +- styles/widgets/menu.less | 17 +- templates/addressbook.html | 3 +- templates/bounce.html | 1 + templates/compose.html | 14 +- templates/contact.html | 2 +- templates/contactedit.html | 2 +- templates/contactimport.html | 2 +- templates/contactprint.html | 4 +- templates/includes/layout.html | 11 + templates/includes/menu.html | 7 +- templates/includes/pagenav.html | 2 +- templates/login.html | 4 +- templates/mail.html | 9 +- templates/message.html | 16 +- templates/messagepart.html | 26 +- templates/messageprint.html | 12 +- templates/responses.html | 2 +- ui.js | 639 ++++---- ui.min.js | 119 +- watermark.html | 23 +- 48 files changed, 3649 insertions(+), 2187 deletions(-) create mode 100644 deps/bootstrap.bundle.min.js create mode 100644 deps/bootstrap.min.css create mode 100644 deps/less.min.js create mode 100644 images/google-icon.svg create mode 100644 images/microsoft-icon.svg delete mode 100644 styles/_variables.less create mode 100644 styles/dark.less delete mode 100644 styles/embed.css create mode 100644 styles/embed.min.css delete mode 100644 styles/print.css create mode 100644 styles/print.min.css rename styles/{styles.css => styles.min.css} (75%) diff --git a/README.md b/README.md index 57efe9a..52aaa81 100644 --- a/README.md +++ b/README.md @@ -28,14 +28,15 @@ INSTALLATION ------------ All styles are written using LESS syntax. Thus it needs to be compiled -using the `lessc` (>= 1.5.0) command line tool. This comes with the `nodejs-less` -RPM package which depends on nodejs. +using the `lessc` (>= 2.5.2) command line tool. This comes with the `nodejs-less` +RPM package or using `npm install less` which depend on nodejs. ``` - $ lessc -x styles/styles.less > styles/styles.css - $ lessc -x styles/print.less > styles/print.css - $ lessc -x styles/embed.less > styles/embed.css + $ lessc --clean-css="--s1 --advanced" styles/styles.less > styles/styles.min.css + $ lessc --clean-css="--s1 --advanced" styles/print.less > styles/print.min.css + $ lessc --clean-css="--s1 --advanced" styles/embed.less > styles/embed.min.css ``` -(the -x option minifies the CSS code) +(`--clean-css="--s1 --advanced"` minifies the css, requires the clean-css Less plugin. +The plugin can be installed using `npm install less-plugin-clean-css`) References to image files from the included CSS files can be appended with cache-buster marks to avoid browser caching issues after updating. @@ -104,6 +105,11 @@ FOR DEVELOPERS _action=add* or _action=create* or _nav=hide in the frame URL if the navigation should be hidden, which is the case when you create a content object. +- Dark mode: + In dark mode html element will have `dark-mode` class assigned. + It is possible to disable dark mode using less variable `@dark-mode-enabled`. + Option `dark_mode_support` in meta.json controls addition of the mode switch in the menu. + KNOWN ISSUES ------------ diff --git a/deps/bootstrap.bundle.min.js b/deps/bootstrap.bundle.min.js new file mode 100644 index 0000000..a831765 --- /dev/null +++ b/deps/bootstrap.bundle.min.js @@ -0,0 +1,6 @@ +/*! + * Bootstrap v4.5.3 (https://getbootstrap.com/) + * Copyright 2011-2020 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("jquery")):"function"==typeof define&&define.amd?define(["exports","jquery"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap={},t.jQuery)}(this,(function(t,e){"use strict";function n(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var i=n(e);function o(t,e){for(var n=0;n=4)throw new Error("Bootstrap's JavaScript requires at least jQuery v1.9.1 but less than v4.0.0")}};l.jQueryDetection(),i.default.fn.emulateTransitionEnd=s,i.default.event.special[l.TRANSITION_END]={bindType:"transitionend",delegateType:"transitionend",handle:function(t){if(i.default(t.target).is(this))return t.handleObj.handler.apply(this,arguments)}};var u="alert",f=i.default.fn[u],d=function(){function t(t){this._element=t}var e=t.prototype;return e.close=function(t){var e=this._element;t&&(e=this._getRootElement(t)),this._triggerCloseEvent(e).isDefaultPrevented()||this._removeElement(e)},e.dispose=function(){i.default.removeData(this._element,"bs.alert"),this._element=null},e._getRootElement=function(t){var e=l.getSelectorFromElement(t),n=!1;return e&&(n=document.querySelector(e)),n||(n=i.default(t).closest(".alert")[0]),n},e._triggerCloseEvent=function(t){var e=i.default.Event("close.bs.alert");return i.default(t).trigger(e),e},e._removeElement=function(t){var e=this;if(i.default(t).removeClass("show"),i.default(t).hasClass("fade")){var n=l.getTransitionDurationFromElement(t);i.default(t).one(l.TRANSITION_END,(function(n){return e._destroyElement(t,n)})).emulateTransitionEnd(n)}else this._destroyElement(t)},e._destroyElement=function(t){i.default(t).detach().trigger("closed.bs.alert").remove()},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data("bs.alert");o||(o=new t(this),n.data("bs.alert",o)),"close"===e&&o[e](this)}))},t._handleDismiss=function(t){return function(e){e&&e.preventDefault(),t.close(this)}},r(t,null,[{key:"VERSION",get:function(){return"4.5.3"}}]),t}();i.default(document).on("click.bs.alert.data-api",'[data-dismiss="alert"]',d._handleDismiss(new d)),i.default.fn[u]=d._jQueryInterface,i.default.fn[u].Constructor=d,i.default.fn[u].noConflict=function(){return i.default.fn[u]=f,d._jQueryInterface};var c=i.default.fn.button,h=function(){function t(t){this._element=t,this.shouldAvoidTriggerChange=!1}var e=t.prototype;return e.toggle=function(){var t=!0,e=!0,n=i.default(this._element).closest('[data-toggle="buttons"]')[0];if(n){var o=this._element.querySelector('input:not([type="hidden"])');if(o){if("radio"===o.type)if(o.checked&&this._element.classList.contains("active"))t=!1;else{var r=n.querySelector(".active");r&&i.default(r).removeClass("active")}t&&("checkbox"!==o.type&&"radio"!==o.type||(o.checked=!this._element.classList.contains("active")),this.shouldAvoidTriggerChange||i.default(o).trigger("change")),o.focus(),e=!1}}this._element.hasAttribute("disabled")||this._element.classList.contains("disabled")||(e&&this._element.setAttribute("aria-pressed",!this._element.classList.contains("active")),t&&i.default(this._element).toggleClass("active"))},e.dispose=function(){i.default.removeData(this._element,"bs.button"),this._element=null},t._jQueryInterface=function(e,n){return this.each((function(){var o=i.default(this),r=o.data("bs.button");r||(r=new t(this),o.data("bs.button",r)),r.shouldAvoidTriggerChange=n,"toggle"===e&&r[e]()}))},r(t,null,[{key:"VERSION",get:function(){return"4.5.3"}}]),t}();i.default(document).on("click.bs.button.data-api",'[data-toggle^="button"]',(function(t){var e=t.target,n=e;if(i.default(e).hasClass("btn")||(e=i.default(e).closest(".btn")[0]),!e||e.hasAttribute("disabled")||e.classList.contains("disabled"))t.preventDefault();else{var o=e.querySelector('input:not([type="hidden"])');if(o&&(o.hasAttribute("disabled")||o.classList.contains("disabled")))return void t.preventDefault();"INPUT"!==n.tagName&&"LABEL"===e.tagName||h._jQueryInterface.call(i.default(e),"toggle","INPUT"===n.tagName)}})).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',(function(t){var e=i.default(t.target).closest(".btn")[0];i.default(e).toggleClass("focus",/^focus(in)?$/.test(t.type))})),i.default(window).on("load.bs.button.data-api",(function(){for(var t=[].slice.call(document.querySelectorAll('[data-toggle="buttons"] .btn')),e=0,n=t.length;e0,this._pointerEvent=Boolean(window.PointerEvent||window.MSPointerEvent),this._addEventListeners()}var e=t.prototype;return e.next=function(){this._isSliding||this._slide("next")},e.nextWhenVisible=function(){var t=i.default(this._element);!document.hidden&&t.is(":visible")&&"hidden"!==t.css("visibility")&&this.next()},e.prev=function(){this._isSliding||this._slide("prev")},e.pause=function(t){t||(this._isPaused=!0),this._element.querySelector(".carousel-item-next, .carousel-item-prev")&&(l.triggerTransitionEnd(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null},e.cycle=function(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config.interval&&!this._isPaused&&(this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))},e.to=function(t){var e=this;this._activeElement=this._element.querySelector(".active.carousel-item");var n=this._getItemIndex(this._activeElement);if(!(t>this._items.length-1||t<0))if(this._isSliding)i.default(this._element).one("slid.bs.carousel",(function(){return e.to(t)}));else{if(n===t)return this.pause(),void this.cycle();var o=t>n?"next":"prev";this._slide(o,this._items[t])}},e.dispose=function(){i.default(this._element).off(m),i.default.removeData(this._element,"bs.carousel"),this._items=null,this._config=null,this._element=null,this._interval=null,this._isPaused=null,this._isSliding=null,this._activeElement=null,this._indicatorsElement=null},e._getConfig=function(t){return t=a({},v,t),l.typeCheckConfig(p,t,_),t},e._handleSwipe=function(){var t=Math.abs(this.touchDeltaX);if(!(t<=40)){var e=t/this.touchDeltaX;this.touchDeltaX=0,e>0&&this.prev(),e<0&&this.next()}},e._addEventListeners=function(){var t=this;this._config.keyboard&&i.default(this._element).on("keydown.bs.carousel",(function(e){return t._keydown(e)})),"hover"===this._config.pause&&i.default(this._element).on("mouseenter.bs.carousel",(function(e){return t.pause(e)})).on("mouseleave.bs.carousel",(function(e){return t.cycle(e)})),this._config.touch&&this._addTouchEventListeners()},e._addTouchEventListeners=function(){var t=this;if(this._touchSupported){var e=function(e){t._pointerEvent&&b[e.originalEvent.pointerType.toUpperCase()]?t.touchStartX=e.originalEvent.clientX:t._pointerEvent||(t.touchStartX=e.originalEvent.touches[0].clientX)},n=function(e){t._pointerEvent&&b[e.originalEvent.pointerType.toUpperCase()]&&(t.touchDeltaX=e.originalEvent.clientX-t.touchStartX),t._handleSwipe(),"hover"===t._config.pause&&(t.pause(),t.touchTimeout&&clearTimeout(t.touchTimeout),t.touchTimeout=setTimeout((function(e){return t.cycle(e)}),500+t._config.interval))};i.default(this._element.querySelectorAll(".carousel-item img")).on("dragstart.bs.carousel",(function(t){return t.preventDefault()})),this._pointerEvent?(i.default(this._element).on("pointerdown.bs.carousel",(function(t){return e(t)})),i.default(this._element).on("pointerup.bs.carousel",(function(t){return n(t)})),this._element.classList.add("pointer-event")):(i.default(this._element).on("touchstart.bs.carousel",(function(t){return e(t)})),i.default(this._element).on("touchmove.bs.carousel",(function(e){return function(e){e.originalEvent.touches&&e.originalEvent.touches.length>1?t.touchDeltaX=0:t.touchDeltaX=e.originalEvent.touches[0].clientX-t.touchStartX}(e)})),i.default(this._element).on("touchend.bs.carousel",(function(t){return n(t)})))}},e._keydown=function(t){if(!/input|textarea/i.test(t.target.tagName))switch(t.which){case 37:t.preventDefault(),this.prev();break;case 39:t.preventDefault(),this.next()}},e._getItemIndex=function(t){return this._items=t&&t.parentNode?[].slice.call(t.parentNode.querySelectorAll(".carousel-item")):[],this._items.indexOf(t)},e._getItemByDirection=function(t,e){var n="next"===t,i="prev"===t,o=this._getItemIndex(e),r=this._items.length-1;if((i&&0===o||n&&o===r)&&!this._config.wrap)return e;var a=(o+("prev"===t?-1:1))%this._items.length;return-1===a?this._items[this._items.length-1]:this._items[a]},e._triggerSlideEvent=function(t,e){var n=this._getItemIndex(t),o=this._getItemIndex(this._element.querySelector(".active.carousel-item")),r=i.default.Event("slide.bs.carousel",{relatedTarget:t,direction:e,from:o,to:n});return i.default(this._element).trigger(r),r},e._setActiveIndicatorElement=function(t){if(this._indicatorsElement){var e=[].slice.call(this._indicatorsElement.querySelectorAll(".active"));i.default(e).removeClass("active");var n=this._indicatorsElement.children[this._getItemIndex(t)];n&&i.default(n).addClass("active")}},e._slide=function(t,e){var n,o,r,a=this,s=this._element.querySelector(".active.carousel-item"),u=this._getItemIndex(s),f=e||s&&this._getItemByDirection(t,s),d=this._getItemIndex(f),c=Boolean(this._interval);if("next"===t?(n="carousel-item-left",o="carousel-item-next",r="left"):(n="carousel-item-right",o="carousel-item-prev",r="right"),f&&i.default(f).hasClass("active"))this._isSliding=!1;else if(!this._triggerSlideEvent(f,r).isDefaultPrevented()&&s&&f){this._isSliding=!0,c&&this.pause(),this._setActiveIndicatorElement(f);var h=i.default.Event("slid.bs.carousel",{relatedTarget:f,direction:r,from:u,to:d});if(i.default(this._element).hasClass("slide")){i.default(f).addClass(o),l.reflow(f),i.default(s).addClass(n),i.default(f).addClass(n);var p=parseInt(f.getAttribute("data-interval"),10);p?(this._config.defaultInterval=this._config.defaultInterval||this._config.interval,this._config.interval=p):this._config.interval=this._config.defaultInterval||this._config.interval;var m=l.getTransitionDurationFromElement(s);i.default(s).one(l.TRANSITION_END,(function(){i.default(f).removeClass(n+" "+o).addClass("active"),i.default(s).removeClass("active "+o+" "+n),a._isSliding=!1,setTimeout((function(){return i.default(a._element).trigger(h)}),0)})).emulateTransitionEnd(m)}else i.default(s).removeClass("active"),i.default(f).addClass("active"),this._isSliding=!1,i.default(this._element).trigger(h);c&&this.cycle()}},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this).data("bs.carousel"),o=a({},v,i.default(this).data());"object"==typeof e&&(o=a({},o,e));var r="string"==typeof e?e:o.slide;if(n||(n=new t(this,o),i.default(this).data("bs.carousel",n)),"number"==typeof e)n.to(e);else if("string"==typeof r){if("undefined"==typeof n[r])throw new TypeError('No method named "'+r+'"');n[r]()}else o.interval&&o.ride&&(n.pause(),n.cycle())}))},t._dataApiClickHandler=function(e){var n=l.getSelectorFromElement(this);if(n){var o=i.default(n)[0];if(o&&i.default(o).hasClass("carousel")){var r=a({},i.default(o).data(),i.default(this).data()),s=this.getAttribute("data-slide-to");s&&(r.interval=!1),t._jQueryInterface.call(i.default(o),r),s&&i.default(o).data("bs.carousel").to(s),e.preventDefault()}}},r(t,null,[{key:"VERSION",get:function(){return"4.5.3"}},{key:"Default",get:function(){return v}}]),t}();i.default(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",y._dataApiClickHandler),i.default(window).on("load.bs.carousel.data-api",(function(){for(var t=[].slice.call(document.querySelectorAll('[data-ride="carousel"]')),e=0,n=t.length;e0&&(this._selector=a,this._triggerArray.push(r))}this._parent=this._config.parent?this._getParent():null,this._config.parent||this._addAriaAndCollapsedClass(this._element,this._triggerArray),this._config.toggle&&this.toggle()}var e=t.prototype;return e.toggle=function(){i.default(this._element).hasClass("show")?this.hide():this.show()},e.show=function(){var e,n,o=this;if(!this._isTransitioning&&!i.default(this._element).hasClass("show")&&(this._parent&&0===(e=[].slice.call(this._parent.querySelectorAll(".show, .collapsing")).filter((function(t){return"string"==typeof o._config.parent?t.getAttribute("data-parent")===o._config.parent:t.classList.contains("collapse")}))).length&&(e=null),!(e&&(n=i.default(e).not(this._selector).data("bs.collapse"))&&n._isTransitioning))){var r=i.default.Event("show.bs.collapse");if(i.default(this._element).trigger(r),!r.isDefaultPrevented()){e&&(t._jQueryInterface.call(i.default(e).not(this._selector),"hide"),n||i.default(e).data("bs.collapse",null));var a=this._getDimension();i.default(this._element).removeClass("collapse").addClass("collapsing"),this._element.style[a]=0,this._triggerArray.length&&i.default(this._triggerArray).removeClass("collapsed").attr("aria-expanded",!0),this.setTransitioning(!0);var s="scroll"+(a[0].toUpperCase()+a.slice(1)),u=l.getTransitionDurationFromElement(this._element);i.default(this._element).one(l.TRANSITION_END,(function(){i.default(o._element).removeClass("collapsing").addClass("collapse show"),o._element.style[a]="",o.setTransitioning(!1),i.default(o._element).trigger("shown.bs.collapse")})).emulateTransitionEnd(u),this._element.style[a]=this._element[s]+"px"}}},e.hide=function(){var t=this;if(!this._isTransitioning&&i.default(this._element).hasClass("show")){var e=i.default.Event("hide.bs.collapse");if(i.default(this._element).trigger(e),!e.isDefaultPrevented()){var n=this._getDimension();this._element.style[n]=this._element.getBoundingClientRect()[n]+"px",l.reflow(this._element),i.default(this._element).addClass("collapsing").removeClass("collapse show");var o=this._triggerArray.length;if(o>0)for(var r=0;r=0)return 1;return 0}();var k=D&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then((function(){e=!1,t()})))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout((function(){e=!1,t()}),N))}};function A(t){return t&&"[object Function]"==={}.toString.call(t)}function I(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function O(t){return"HTML"===t.nodeName?t:t.parentNode||t.host}function x(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body}var e=I(t),n=e.overflow,i=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+i)?t:x(O(t))}function j(t){return t&&t.referenceNode?t.referenceNode:t}var L=D&&!(!window.MSInputMethodContext||!document.documentMode),P=D&&/MSIE 10/.test(navigator.userAgent);function F(t){return 11===t?L:10===t?P:L||P}function R(t){if(!t)return document.documentElement;for(var e=F(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&"BODY"!==i&&"HTML"!==i?-1!==["TH","TD","TABLE"].indexOf(n.nodeName)&&"static"===I(n,"position")?R(n):n:t?t.ownerDocument.documentElement:document.documentElement}function H(t){return null!==t.parentNode?H(t.parentNode):t}function M(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,o=n?e:t,r=document.createRange();r.setStart(i,0),r.setEnd(o,0);var a,s,l=r.commonAncestorContainer;if(t!==l&&e!==l||i.contains(o))return"BODY"===(s=(a=l).nodeName)||"HTML"!==s&&R(a.firstElementChild)!==a?R(l):l;var u=H(t);return u.host?M(u.host,e):M(t,H(e).host)}function B(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"top",n="top"===e?"scrollTop":"scrollLeft",i=t.nodeName;if("BODY"===i||"HTML"===i){var o=t.ownerDocument.documentElement,r=t.ownerDocument.scrollingElement||o;return r[n]}return t[n]}function q(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=B(e,"top"),o=B(e,"left"),r=n?-1:1;return t.top+=i*r,t.bottom+=i*r,t.left+=o*r,t.right+=o*r,t}function Q(t,e){var n="x"===e?"Left":"Top",i="Left"===n?"Right":"Bottom";return parseFloat(t["border"+n+"Width"])+parseFloat(t["border"+i+"Width"])}function W(t,e,n,i){return Math.max(e["offset"+t],e["scroll"+t],n["client"+t],n["offset"+t],n["scroll"+t],F(10)?parseInt(n["offset"+t])+parseInt(i["margin"+("Height"===t?"Top":"Left")])+parseInt(i["margin"+("Height"===t?"Bottom":"Right")]):0)}function U(t){var e=t.body,n=t.documentElement,i=F(10)&&getComputedStyle(n);return{height:W("Height",e,n,i),width:W("Width",e,n,i)}}var V=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},Y=function(){function t(t,e){for(var n=0;n2&&void 0!==arguments[2]&&arguments[2],i=F(10),o="HTML"===e.nodeName,r=G(t),a=G(e),s=x(t),l=I(e),u=parseFloat(l.borderTopWidth),f=parseFloat(l.borderLeftWidth);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var d=K({top:r.top-a.top-u,left:r.left-a.left-f,width:r.width,height:r.height});if(d.marginTop=0,d.marginLeft=0,!i&&o){var c=parseFloat(l.marginTop),h=parseFloat(l.marginLeft);d.top-=u-c,d.bottom-=u-c,d.left-=f-h,d.right-=f-h,d.marginTop=c,d.marginLeft=h}return(i&&!n?e.contains(s):e===s&&"BODY"!==s.nodeName)&&(d=q(d,e)),d}function J(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,i=$(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),r=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:B(n),s=e?0:B(n,"left"),l={top:a-i.top+i.marginTop,left:s-i.left+i.marginLeft,width:o,height:r};return K(l)}function Z(t){var e=t.nodeName;if("BODY"===e||"HTML"===e)return!1;if("fixed"===I(t,"position"))return!0;var n=O(t);return!!n&&Z(n)}function tt(t){if(!t||!t.parentElement||F())return document.documentElement;for(var e=t.parentElement;e&&"none"===I(e,"transform");)e=e.parentElement;return e||document.documentElement}function et(t,e,n,i){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],r={top:0,left:0},a=o?tt(t):M(t,j(e));if("viewport"===i)r=J(a,o);else{var s=void 0;"scrollParent"===i?"BODY"===(s=x(O(e))).nodeName&&(s=t.ownerDocument.documentElement):s="window"===i?t.ownerDocument.documentElement:i;var l=$(s,a,o);if("HTML"!==s.nodeName||Z(a))r=l;else{var u=U(t.ownerDocument),f=u.height,d=u.width;r.top+=l.top-l.marginTop,r.bottom=f+l.top,r.left+=l.left-l.marginLeft,r.right=d+l.left}}var c="number"==typeof(n=n||0);return r.left+=c?n:n.left||0,r.top+=c?n:n.top||0,r.right-=c?n:n.right||0,r.bottom-=c?n:n.bottom||0,r}function nt(t){return t.width*t.height}function it(t,e,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf("auto"))return t;var a=et(n,i,r,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},l=Object.keys(s).map((function(t){return X({key:t},s[t],{area:nt(s[t])})})).sort((function(t,e){return e.area-t.area})),u=l.filter((function(t){var e=t.width,i=t.height;return e>=n.clientWidth&&i>=n.clientHeight})),f=u.length>0?u[0].key:l[0].key,d=t.split("-")[1];return f+(d?"-"+d:"")}function ot(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=i?tt(e):M(e,j(n));return $(n,o,i)}function rt(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),i=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function at(t){var e={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,(function(t){return e[t]}))}function st(t,e,n){n=n.split("-")[0];var i=rt(t),o={width:i.width,height:i.height},r=-1!==["right","left"].indexOf(n),a=r?"top":"left",s=r?"left":"top",l=r?"height":"width",u=r?"width":"height";return o[a]=e[a]+e[l]/2-i[l]/2,o[s]=n===s?e[s]-i[u]:e[at(s)],o}function lt(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function ut(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex((function(t){return t[e]===n}));var i=lt(t,(function(t){return t[e]===n}));return t.indexOf(i)}(t,"name",n))).forEach((function(t){t.function&&console.warn("`modifier.function` is deprecated, use `modifier.fn`!");var n=t.function||t.fn;t.enabled&&A(n)&&(e.offsets.popper=K(e.offsets.popper),e.offsets.reference=K(e.offsets.reference),e=n(e,t))})),e}function ft(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=ot(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=it(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=st(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?"fixed":"absolute",t=ut(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}function dt(t,e){return t.some((function(t){var n=t.name;return t.enabled&&n===e}))}function ct(t){for(var e=[!1,"ms","Webkit","Moz","O"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i1&&void 0!==arguments[1]&&arguments[1],n=Tt.indexOf(t),i=Tt.slice(n+1).concat(Tt.slice(0,n));return e?i.reverse():i}var St="flip",Dt="clockwise",Nt="counterclockwise";function kt(t,e,n,i){var o=[0,0],r=-1!==["right","left"].indexOf(i),a=t.split(/(\+|\-)/).map((function(t){return t.trim()})),s=a.indexOf(lt(a,(function(t){return-1!==t.search(/,|\s/)})));a[s]&&-1===a[s].indexOf(",")&&console.warn("Offsets separated by white space(s) are deprecated, use a comma (,) instead.");var l=/\s*,\s*|\s+/,u=-1!==s?[a.slice(0,s).concat([a[s].split(l)[0]]),[a[s].split(l)[1]].concat(a.slice(s+1))]:[a];return(u=u.map((function(t,i){var o=(1===i?!r:r)?"height":"width",a=!1;return t.reduce((function(t,e){return""===t[t.length-1]&&-1!==["+","-"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)}),[]).map((function(t){return function(t,e,n,i){var o=t.match(/((?:\-|\+)?\d*\.?\d*)(.*)/),r=+o[1],a=o[2];if(!r)return t;if(0===a.indexOf("%")){var s=void 0;switch(a){case"%p":s=n;break;case"%":case"%r":default:s=i}return K(s)[e]/100*r}if("vh"===a||"vw"===a){return("vh"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*r}return r}(t,o,e,n)}))}))).forEach((function(t,e){t.forEach((function(n,i){_t(n)&&(o[e]+=n*("-"===t[i-1]?-1:1))}))})),o}var At={placement:"bottom",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split("-")[0],i=e.split("-")[1];if(i){var o=t.offsets,r=o.reference,a=o.popper,s=-1!==["bottom","top"].indexOf(n),l=s?"left":"top",u=s?"width":"height",f={start:z({},l,r[l]),end:z({},l,r[l]+r[u]-a[u])};t.offsets.popper=X({},a,f[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,i=t.placement,o=t.offsets,r=o.popper,a=o.reference,s=i.split("-")[0],l=void 0;return l=_t(+n)?[+n,0]:kt(n,r,a,s),"left"===s?(r.top+=l[0],r.left-=l[1]):"right"===s?(r.top+=l[0],r.left+=l[1]):"top"===s?(r.left+=l[0],r.top-=l[1]):"bottom"===s&&(r.left+=l[0],r.top+=l[1]),t.popper=r,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||R(t.instance.popper);t.instance.reference===n&&(n=R(n));var i=ct("transform"),o=t.instance.popper.style,r=o.top,a=o.left,s=o[i];o.top="",o.left="",o[i]="";var l=et(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=r,o.left=a,o[i]=s,e.boundaries=l;var u=e.priority,f=t.offsets.popper,d={primary:function(t){var n=f[t];return f[t]l[t]&&!e.escapeWithReference&&(i=Math.min(f[n],l[t]-("right"===t?f.width:f.height))),z({},n,i)}};return u.forEach((function(t){var e=-1!==["left","top"].indexOf(t)?"primary":"secondary";f=X({},f,d[e](t))})),t.offsets.popper=f,t},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,o=t.placement.split("-")[0],r=Math.floor,a=-1!==["top","bottom"].indexOf(o),s=a?"right":"bottom",l=a?"left":"top",u=a?"width":"height";return n[s]r(i[s])&&(t.offsets.popper[l]=r(i[s])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!wt(t.instance.modifiers,"arrow","keepTogether"))return t;var i=e.element;if("string"==typeof i){if(!(i=t.instance.popper.querySelector(i)))return t}else if(!t.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),t;var o=t.placement.split("-")[0],r=t.offsets,a=r.popper,s=r.reference,l=-1!==["left","right"].indexOf(o),u=l?"height":"width",f=l?"Top":"Left",d=f.toLowerCase(),c=l?"left":"top",h=l?"bottom":"right",p=rt(i)[u];s[h]-pa[h]&&(t.offsets.popper[d]+=s[d]+p-a[h]),t.offsets.popper=K(t.offsets.popper);var m=s[d]+s[u]/2-p/2,g=I(t.instance.popper),v=parseFloat(g["margin"+f]),_=parseFloat(g["border"+f+"Width"]),b=m-t.offsets.popper[d]-v-_;return b=Math.max(Math.min(a[u]-p,b),0),t.arrowElement=i,t.offsets.arrow=(z(n={},d,Math.round(b)),z(n,c,""),n),t},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(t,e){if(dt(t.instance.modifiers,"inner"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=et(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),i=t.placement.split("-")[0],o=at(i),r=t.placement.split("-")[1]||"",a=[];switch(e.behavior){case St:a=[i,o];break;case Dt:a=Ct(i);break;case Nt:a=Ct(i,!0);break;default:a=e.behavior}return a.forEach((function(s,l){if(i!==s||a.length===l+1)return t;i=t.placement.split("-")[0],o=at(i);var u=t.offsets.popper,f=t.offsets.reference,d=Math.floor,c="left"===i&&d(u.right)>d(f.left)||"right"===i&&d(u.left)d(f.top)||"bottom"===i&&d(u.top)d(n.right),m=d(u.top)d(n.bottom),v="left"===i&&h||"right"===i&&p||"top"===i&&m||"bottom"===i&&g,_=-1!==["top","bottom"].indexOf(i),b=!!e.flipVariations&&(_&&"start"===r&&h||_&&"end"===r&&p||!_&&"start"===r&&m||!_&&"end"===r&&g),y=!!e.flipVariationsByContent&&(_&&"start"===r&&p||_&&"end"===r&&h||!_&&"start"===r&&g||!_&&"end"===r&&m),w=b||y;(c||v||w)&&(t.flipped=!0,(c||v)&&(i=a[l+1]),w&&(r=function(t){return"end"===t?"start":"start"===t?"end":t}(r)),t.placement=i+(r?"-"+r:""),t.offsets.popper=X({},t.offsets.popper,st(t.instance.popper,t.offsets.reference,t.placement)),t=ut(t.instance.modifiers,t,"flip"))})),t},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split("-")[0],i=t.offsets,o=i.popper,r=i.reference,a=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return o[a?"left":"top"]=r[n]-(s?o[a?"width":"height"]:0),t.placement=at(e),t.offsets.popper=K(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!wt(t.instance.modifiers,"hide","preventOverflow"))return t;var e=t.offsets.reference,n=lt(t.instance.modifiers,(function(t){return"preventOverflow"===t.name})).boundaries;if(e.bottomn.right||e.top>n.bottom||e.right2&&void 0!==arguments[2]?arguments[2]:{};V(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(i.update)},this.update=k(this.update.bind(this)),this.options=X({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(X({},t.Defaults.modifiers,o.modifiers)).forEach((function(e){i.options.modifiers[e]=X({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})})),this.modifiers=Object.keys(this.options.modifiers).map((function(t){return X({name:t},i.options.modifiers[t])})).sort((function(t,e){return t.order-e.order})),this.modifiers.forEach((function(t){t.enabled&&A(t.onLoad)&&t.onLoad(i.reference,i.popper,i.options,t,i.state)})),this.update();var r=this.options.eventsEnabled;r&&this.enableEventListeners(),this.state.eventsEnabled=r}return Y(t,[{key:"update",value:function(){return ft.call(this)}},{key:"destroy",value:function(){return ht.call(this)}},{key:"enableEventListeners",value:function(){return gt.call(this)}},{key:"disableEventListeners",value:function(){return vt.call(this)}}]),t}();It.Utils=("undefined"!=typeof window?window:global).PopperUtils,It.placements=Et,It.Defaults=At;var Ot="dropdown",xt=i.default.fn[Ot],jt=new RegExp("38|40|27"),Lt={offset:0,flip:!0,boundary:"scrollParent",reference:"toggle",display:"dynamic",popperConfig:null},Pt={offset:"(number|string|function)",flip:"boolean",boundary:"(string|element)",reference:"(string|element)",display:"string",popperConfig:"(null|object)"},Ft=function(){function t(t,e){this._element=t,this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar(),this._addEventListeners()}var e=t.prototype;return e.toggle=function(){if(!this._element.disabled&&!i.default(this._element).hasClass("disabled")){var e=i.default(this._menu).hasClass("show");t._clearMenus(),e||this.show(!0)}},e.show=function(e){if(void 0===e&&(e=!1),!(this._element.disabled||i.default(this._element).hasClass("disabled")||i.default(this._menu).hasClass("show"))){var n={relatedTarget:this._element},o=i.default.Event("show.bs.dropdown",n),r=t._getParentFromElement(this._element);if(i.default(r).trigger(o),!o.isDefaultPrevented()){if(!this._inNavbar&&e){if("undefined"==typeof It)throw new TypeError("Bootstrap's dropdowns require Popper.js (https://popper.js.org/)");var a=this._element;"parent"===this._config.reference?a=r:l.isElement(this._config.reference)&&(a=this._config.reference,"undefined"!=typeof this._config.reference.jquery&&(a=this._config.reference[0])),"scrollParent"!==this._config.boundary&&i.default(r).addClass("position-static"),this._popper=new It(a,this._menu,this._getPopperConfig())}"ontouchstart"in document.documentElement&&0===i.default(r).closest(".navbar-nav").length&&i.default(document.body).children().on("mouseover",null,i.default.noop),this._element.focus(),this._element.setAttribute("aria-expanded",!0),i.default(this._menu).toggleClass("show"),i.default(r).toggleClass("show").trigger(i.default.Event("shown.bs.dropdown",n))}}},e.hide=function(){if(!this._element.disabled&&!i.default(this._element).hasClass("disabled")&&i.default(this._menu).hasClass("show")){var e={relatedTarget:this._element},n=i.default.Event("hide.bs.dropdown",e),o=t._getParentFromElement(this._element);i.default(o).trigger(n),n.isDefaultPrevented()||(this._popper&&this._popper.destroy(),i.default(this._menu).toggleClass("show"),i.default(o).toggleClass("show").trigger(i.default.Event("hidden.bs.dropdown",e)))}},e.dispose=function(){i.default.removeData(this._element,"bs.dropdown"),i.default(this._element).off(".bs.dropdown"),this._element=null,this._menu=null,null!==this._popper&&(this._popper.destroy(),this._popper=null)},e.update=function(){this._inNavbar=this._detectNavbar(),null!==this._popper&&this._popper.scheduleUpdate()},e._addEventListeners=function(){var t=this;i.default(this._element).on("click.bs.dropdown",(function(e){e.preventDefault(),e.stopPropagation(),t.toggle()}))},e._getConfig=function(t){return t=a({},this.constructor.Default,i.default(this._element).data(),t),l.typeCheckConfig(Ot,t,this.constructor.DefaultType),t},e._getMenuElement=function(){if(!this._menu){var e=t._getParentFromElement(this._element);e&&(this._menu=e.querySelector(".dropdown-menu"))}return this._menu},e._getPlacement=function(){var t=i.default(this._element.parentNode),e="bottom-start";return t.hasClass("dropup")?e=i.default(this._menu).hasClass("dropdown-menu-right")?"top-end":"top-start":t.hasClass("dropright")?e="right-start":t.hasClass("dropleft")?e="left-start":i.default(this._menu).hasClass("dropdown-menu-right")&&(e="bottom-end"),e},e._detectNavbar=function(){return i.default(this._element).closest(".navbar").length>0},e._getOffset=function(){var t=this,e={};return"function"==typeof this._config.offset?e.fn=function(e){return e.offsets=a({},e.offsets,t._config.offset(e.offsets,t._element)||{}),e}:e.offset=this._config.offset,e},e._getPopperConfig=function(){var t={placement:this._getPlacement(),modifiers:{offset:this._getOffset(),flip:{enabled:this._config.flip},preventOverflow:{boundariesElement:this._config.boundary}}};return"static"===this._config.display&&(t.modifiers.applyStyle={enabled:!1}),a({},t,this._config.popperConfig)},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this).data("bs.dropdown");if(n||(n=new t(this,"object"==typeof e?e:null),i.default(this).data("bs.dropdown",n)),"string"==typeof e){if("undefined"==typeof n[e])throw new TypeError('No method named "'+e+'"');n[e]()}}))},t._clearMenus=function(e){if(!e||3!==e.which&&("keyup"!==e.type||9===e.which))for(var n=[].slice.call(document.querySelectorAll('[data-toggle="dropdown"]')),o=0,r=n.length;o0&&a--,40===e.which&&adocument.documentElement.clientHeight;n||(this._element.style.overflowY="hidden"),this._element.classList.add("modal-static");var o=l.getTransitionDurationFromElement(this._dialog);i.default(this._element).off(l.TRANSITION_END),i.default(this._element).one(l.TRANSITION_END,(function(){t._element.classList.remove("modal-static"),n||i.default(t._element).one(l.TRANSITION_END,(function(){t._element.style.overflowY=""})).emulateTransitionEnd(t._element,o)})).emulateTransitionEnd(o),this._element.focus()}else this.hide()},e._showElement=function(t){var e=this,n=i.default(this._element).hasClass("fade"),o=this._dialog?this._dialog.querySelector(".modal-body"):null;this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.appendChild(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),i.default(this._dialog).hasClass("modal-dialog-scrollable")&&o?o.scrollTop=0:this._element.scrollTop=0,n&&l.reflow(this._element),i.default(this._element).addClass("show"),this._config.focus&&this._enforceFocus();var r=i.default.Event("shown.bs.modal",{relatedTarget:t}),a=function(){e._config.focus&&e._element.focus(),e._isTransitioning=!1,i.default(e._element).trigger(r)};if(n){var s=l.getTransitionDurationFromElement(this._dialog);i.default(this._dialog).one(l.TRANSITION_END,a).emulateTransitionEnd(s)}else a()},e._enforceFocus=function(){var t=this;i.default(document).off("focusin.bs.modal").on("focusin.bs.modal",(function(e){document!==e.target&&t._element!==e.target&&0===i.default(t._element).has(e.target).length&&t._element.focus()}))},e._setEscapeEvent=function(){var t=this;this._isShown?i.default(this._element).on("keydown.dismiss.bs.modal",(function(e){t._config.keyboard&&27===e.which?(e.preventDefault(),t.hide()):t._config.keyboard||27!==e.which||t._triggerBackdropTransition()})):this._isShown||i.default(this._element).off("keydown.dismiss.bs.modal")},e._setResizeEvent=function(){var t=this;this._isShown?i.default(window).on("resize.bs.modal",(function(e){return t.handleUpdate(e)})):i.default(window).off("resize.bs.modal")},e._hideModal=function(){var t=this;this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._showBackdrop((function(){i.default(document.body).removeClass("modal-open"),t._resetAdjustments(),t._resetScrollbar(),i.default(t._element).trigger("hidden.bs.modal")}))},e._removeBackdrop=function(){this._backdrop&&(i.default(this._backdrop).remove(),this._backdrop=null)},e._showBackdrop=function(t){var e=this,n=i.default(this._element).hasClass("fade")?"fade":"";if(this._isShown&&this._config.backdrop){if(this._backdrop=document.createElement("div"),this._backdrop.className="modal-backdrop",n&&this._backdrop.classList.add(n),i.default(this._backdrop).appendTo(document.body),i.default(this._element).on("click.dismiss.bs.modal",(function(t){e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&e._triggerBackdropTransition()})),n&&l.reflow(this._backdrop),i.default(this._backdrop).addClass("show"),!t)return;if(!n)return void t();var o=l.getTransitionDurationFromElement(this._backdrop);i.default(this._backdrop).one(l.TRANSITION_END,t).emulateTransitionEnd(o)}else if(!this._isShown&&this._backdrop){i.default(this._backdrop).removeClass("show");var r=function(){e._removeBackdrop(),t&&t()};if(i.default(this._element).hasClass("fade")){var a=l.getTransitionDurationFromElement(this._backdrop);i.default(this._backdrop).one(l.TRANSITION_END,r).emulateTransitionEnd(a)}else r()}else t&&t()},e._adjustDialog=function(){var t=this._element.scrollHeight>document.documentElement.clientHeight;!this._isBodyOverflowing&&t&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!t&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},e._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},e._checkScrollbar=function(){var t=document.body.getBoundingClientRect();this._isBodyOverflowing=Math.round(t.left+t.right)
',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Qt,popperConfig:null},Zt={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"},te=function(){function t(t,e){if("undefined"==typeof It)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=t,this.config=this._getConfig(e),this.tip=null,this._setListeners()}var e=t.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(t){if(this._isEnabled)if(t){var e=this.constructor.DATA_KEY,n=i.default(t.currentTarget).data(e);n||(n=new this.constructor(t.currentTarget,this._getDelegateConfig()),i.default(t.currentTarget).data(e,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(i.default(this.getTipElement()).hasClass("show"))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),i.default.removeData(this.element,this.constructor.DATA_KEY),i.default(this.element).off(this.constructor.EVENT_KEY),i.default(this.element).closest(".modal").off("hide.bs.modal",this._hideModalHandler),this.tip&&i.default(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===i.default(this.element).css("display"))throw new Error("Please use show on visible elements");var e=i.default.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){i.default(this.element).trigger(e);var n=l.findShadowRoot(this.element),o=i.default.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(e.isDefaultPrevented()||!o)return;var r=this.getTipElement(),a=l.getUID(this.constructor.NAME);r.setAttribute("id",a),this.element.setAttribute("aria-describedby",a),this.setContent(),this.config.animation&&i.default(r).addClass("fade");var s="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,u=this._getAttachment(s);this.addAttachmentClass(u);var f=this._getContainer();i.default(r).data(this.constructor.DATA_KEY,this),i.default.contains(this.element.ownerDocument.documentElement,this.tip)||i.default(r).appendTo(f),i.default(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new It(this.element,r,this._getPopperConfig(u)),i.default(r).addClass("show"),"ontouchstart"in document.documentElement&&i.default(document.body).children().on("mouseover",null,i.default.noop);var d=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,i.default(t.element).trigger(t.constructor.Event.SHOWN),"out"===e&&t._leave(null,t)};if(i.default(this.tip).hasClass("fade")){var c=l.getTransitionDurationFromElement(this.tip);i.default(this.tip).one(l.TRANSITION_END,d).emulateTransitionEnd(c)}else d()}},e.hide=function(t){var e=this,n=this.getTipElement(),o=i.default.Event(this.constructor.Event.HIDE),r=function(){"show"!==e._hoverState&&n.parentNode&&n.parentNode.removeChild(n),e._cleanTipClass(),e.element.removeAttribute("aria-describedby"),i.default(e.element).trigger(e.constructor.Event.HIDDEN),null!==e._popper&&e._popper.destroy(),t&&t()};if(i.default(this.element).trigger(o),!o.isDefaultPrevented()){if(i.default(n).removeClass("show"),"ontouchstart"in document.documentElement&&i.default(document.body).children().off("mouseover",null,i.default.noop),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,i.default(this.tip).hasClass("fade")){var a=l.getTransitionDurationFromElement(n);i.default(n).one(l.TRANSITION_END,r).emulateTransitionEnd(a)}else r();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},e.isWithContent=function(){return Boolean(this.getTitle())},e.addAttachmentClass=function(t){i.default(this.getTipElement()).addClass("bs-tooltip-"+t)},e.getTipElement=function(){return this.tip=this.tip||i.default(this.config.template)[0],this.tip},e.setContent=function(){var t=this.getTipElement();this.setElementContent(i.default(t.querySelectorAll(".tooltip-inner")),this.getTitle()),i.default(t).removeClass("fade show")},e.setElementContent=function(t,e){"object"!=typeof e||!e.nodeType&&!e.jquery?this.config.html?(this.config.sanitize&&(e=Vt(e,this.config.whiteList,this.config.sanitizeFn)),t.html(e)):t.text(e):this.config.html?i.default(e).parent().is(t)||t.empty().append(e):t.text(i.default(e).text())},e.getTitle=function(){var t=this.element.getAttribute("data-original-title");return t||(t="function"==typeof this.config.title?this.config.title.call(this.element):this.config.title),t},e._getPopperConfig=function(t){var e=this;return a({},{placement:t,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(t){t.originalPlacement!==t.placement&&e._handlePopperPlacementChange(t)},onUpdate:function(t){return e._handlePopperPlacementChange(t)}},this.config.popperConfig)},e._getOffset=function(){var t=this,e={};return"function"==typeof this.config.offset?e.fn=function(e){return e.offsets=a({},e.offsets,t.config.offset(e.offsets,t.element)||{}),e}:e.offset=this.config.offset,e},e._getContainer=function(){return!1===this.config.container?document.body:l.isElement(this.config.container)?i.default(this.config.container):i.default(document).find(this.config.container)},e._getAttachment=function(t){return $t[t.toUpperCase()]},e._setListeners=function(){var t=this;this.config.trigger.split(" ").forEach((function(e){if("click"===e)i.default(t.element).on(t.constructor.Event.CLICK,t.config.selector,(function(e){return t.toggle(e)}));else if("manual"!==e){var n="hover"===e?t.constructor.Event.MOUSEENTER:t.constructor.Event.FOCUSIN,o="hover"===e?t.constructor.Event.MOUSELEAVE:t.constructor.Event.FOCUSOUT;i.default(t.element).on(n,t.config.selector,(function(e){return t._enter(e)})).on(o,t.config.selector,(function(e){return t._leave(e)}))}})),this._hideModalHandler=function(){t.element&&t.hide()},i.default(this.element).closest(".modal").on("hide.bs.modal",this._hideModalHandler),this.config.selector?this.config=a({},this.config,{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var t=typeof this.element.getAttribute("data-original-title");(this.element.getAttribute("title")||"string"!==t)&&(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(t,e){var n=this.constructor.DATA_KEY;(e=e||i.default(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),i.default(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusin"===t.type?"focus":"hover"]=!0),i.default(e.getTipElement()).hasClass("show")||"show"===e._hoverState?e._hoverState="show":(clearTimeout(e._timeout),e._hoverState="show",e.config.delay&&e.config.delay.show?e._timeout=setTimeout((function(){"show"===e._hoverState&&e.show()}),e.config.delay.show):e.show())},e._leave=function(t,e){var n=this.constructor.DATA_KEY;(e=e||i.default(t.currentTarget).data(n))||(e=new this.constructor(t.currentTarget,this._getDelegateConfig()),i.default(t.currentTarget).data(n,e)),t&&(e._activeTrigger["focusout"===t.type?"focus":"hover"]=!1),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState="out",e.config.delay&&e.config.delay.hide?e._timeout=setTimeout((function(){"out"===e._hoverState&&e.hide()}),e.config.delay.hide):e.hide())},e._isWithActiveTrigger=function(){for(var t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1},e._getConfig=function(t){var e=i.default(this.element).data();return Object.keys(e).forEach((function(t){-1!==Kt.indexOf(t)&&delete e[t]})),"number"==typeof(t=a({},this.constructor.Default,e,"object"==typeof t&&t?t:{})).delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),l.typeCheckConfig(Yt,t,this.constructor.DefaultType),t.sanitize&&(t.template=Vt(t.template,t.whiteList,t.sanitizeFn)),t},e._getDelegateConfig=function(){var t={};if(this.config)for(var e in this.config)this.constructor.Default[e]!==this.config[e]&&(t[e]=this.config[e]);return t},e._cleanTipClass=function(){var t=i.default(this.getTipElement()),e=t.attr("class").match(Xt);null!==e&&e.length&&t.removeClass(e.join(""))},e._handlePopperPlacementChange=function(t){this.tip=t.instance.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(t.placement))},e._fixTransition=function(){var t=this.getTipElement(),e=this.config.animation;null===t.getAttribute("x-placement")&&(i.default(t).removeClass("fade"),this.config.animation=!1,this.hide(),this.show(),this.config.animation=e)},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data("bs.tooltip"),r="object"==typeof e&&e;if((o||!/dispose|hide/.test(e))&&(o||(o=new t(this,r),n.data("bs.tooltip",o)),"string"==typeof e)){if("undefined"==typeof o[e])throw new TypeError('No method named "'+e+'"');o[e]()}}))},r(t,null,[{key:"VERSION",get:function(){return"4.5.3"}},{key:"Default",get:function(){return Jt}},{key:"NAME",get:function(){return Yt}},{key:"DATA_KEY",get:function(){return"bs.tooltip"}},{key:"Event",get:function(){return Zt}},{key:"EVENT_KEY",get:function(){return".bs.tooltip"}},{key:"DefaultType",get:function(){return Gt}}]),t}();i.default.fn[Yt]=te._jQueryInterface,i.default.fn[Yt].Constructor=te,i.default.fn[Yt].noConflict=function(){return i.default.fn[Yt]=zt,te._jQueryInterface};var ee="popover",ne=i.default.fn[ee],ie=new RegExp("(^|\\s)bs-popover\\S+","g"),oe=a({},te.Default,{placement:"right",trigger:"click",content:"",template:''}),re=a({},te.DefaultType,{content:"(string|element|function)"}),ae={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"},se=function(t){var e,n;function o(){return t.apply(this,arguments)||this}n=t,(e=o).prototype=Object.create(n.prototype),e.prototype.constructor=e,e.__proto__=n;var a=o.prototype;return a.isWithContent=function(){return this.getTitle()||this._getContent()},a.addAttachmentClass=function(t){i.default(this.getTipElement()).addClass("bs-popover-"+t)},a.getTipElement=function(){return this.tip=this.tip||i.default(this.config.template)[0],this.tip},a.setContent=function(){var t=i.default(this.getTipElement());this.setElementContent(t.find(".popover-header"),this.getTitle());var e=this._getContent();"function"==typeof e&&(e=e.call(this.element)),this.setElementContent(t.find(".popover-body"),e),t.removeClass("fade show")},a._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},a._cleanTipClass=function(){var t=i.default(this.getTipElement()),e=t.attr("class").match(ie);null!==e&&e.length>0&&t.removeClass(e.join(""))},o._jQueryInterface=function(t){return this.each((function(){var e=i.default(this).data("bs.popover"),n="object"==typeof t?t:null;if((e||!/dispose|hide/.test(t))&&(e||(e=new o(this,n),i.default(this).data("bs.popover",e)),"string"==typeof t)){if("undefined"==typeof e[t])throw new TypeError('No method named "'+t+'"');e[t]()}}))},r(o,null,[{key:"VERSION",get:function(){return"4.5.3"}},{key:"Default",get:function(){return oe}},{key:"NAME",get:function(){return ee}},{key:"DATA_KEY",get:function(){return"bs.popover"}},{key:"Event",get:function(){return ae}},{key:"EVENT_KEY",get:function(){return".bs.popover"}},{key:"DefaultType",get:function(){return re}}]),o}(te);i.default.fn[ee]=se._jQueryInterface,i.default.fn[ee].Constructor=se,i.default.fn[ee].noConflict=function(){return i.default.fn[ee]=ne,se._jQueryInterface};var le="scrollspy",ue=i.default.fn[le],fe={offset:10,method:"auto",target:""},de={offset:"number",method:"string",target:"(string|element)"},ce=function(){function t(t,e){var n=this;this._element=t,this._scrollElement="BODY"===t.tagName?window:t,this._config=this._getConfig(e),this._selector=this._config.target+" .nav-link,"+this._config.target+" .list-group-item,"+this._config.target+" .dropdown-item",this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,i.default(this._scrollElement).on("scroll.bs.scrollspy",(function(t){return n._process(t)})),this.refresh(),this._process()}var e=t.prototype;return e.refresh=function(){var t=this,e=this._scrollElement===this._scrollElement.window?"offset":"position",n="auto"===this._config.method?e:this._config.method,o="position"===n?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight(),[].slice.call(document.querySelectorAll(this._selector)).map((function(t){var e,r=l.getSelectorFromElement(t);if(r&&(e=document.querySelector(r)),e){var a=e.getBoundingClientRect();if(a.width||a.height)return[i.default(e)[n]().top+o,r]}return null})).filter((function(t){return t})).sort((function(t,e){return t[0]-e[0]})).forEach((function(e){t._offsets.push(e[0]),t._targets.push(e[1])}))},e.dispose=function(){i.default.removeData(this._element,"bs.scrollspy"),i.default(this._scrollElement).off(".bs.scrollspy"),this._element=null,this._scrollElement=null,this._config=null,this._selector=null,this._offsets=null,this._targets=null,this._activeTarget=null,this._scrollHeight=null},e._getConfig=function(t){if("string"!=typeof(t=a({},fe,"object"==typeof t&&t?t:{})).target&&l.isElement(t.target)){var e=i.default(t.target).attr("id");e||(e=l.getUID(le),i.default(t.target).attr("id",e)),t.target="#"+e}return l.typeCheckConfig(le,t,de),t},e._getScrollTop=function(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop},e._getScrollHeight=function(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)},e._getOffsetHeight=function(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height},e._process=function(){var t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){var i=this._targets[this._targets.length-1];this._activeTarget!==i&&this._activate(i)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(var o=this._offsets.length;o--;){this._activeTarget!==this._targets[o]&&t>=this._offsets[o]&&("undefined"==typeof this._offsets[o+1]||t li > .active":".active";n=(n=i.default.makeArray(i.default(o).find(a)))[n.length-1]}var s=i.default.Event("hide.bs.tab",{relatedTarget:this._element}),u=i.default.Event("show.bs.tab",{relatedTarget:n});if(n&&i.default(n).trigger(s),i.default(this._element).trigger(u),!u.isDefaultPrevented()&&!s.isDefaultPrevented()){r&&(e=document.querySelector(r)),this._activate(this._element,o);var f=function(){var e=i.default.Event("hidden.bs.tab",{relatedTarget:t._element}),o=i.default.Event("shown.bs.tab",{relatedTarget:n});i.default(n).trigger(e),i.default(t._element).trigger(o)};e?this._activate(e,e.parentNode,f):f()}}},e.dispose=function(){i.default.removeData(this._element,"bs.tab"),this._element=null},e._activate=function(t,e,n){var o=this,r=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?i.default(e).children(".active"):i.default(e).find("> li > .active"))[0],a=n&&r&&i.default(r).hasClass("fade"),s=function(){return o._transitionComplete(t,r,n)};if(r&&a){var u=l.getTransitionDurationFromElement(r);i.default(r).removeClass("show").one(l.TRANSITION_END,s).emulateTransitionEnd(u)}else s()},e._transitionComplete=function(t,e,n){if(e){i.default(e).removeClass("active");var o=i.default(e.parentNode).find("> .dropdown-menu .active")[0];o&&i.default(o).removeClass("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}if(i.default(t).addClass("active"),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),l.reflow(t),t.classList.contains("fade")&&t.classList.add("show"),t.parentNode&&i.default(t.parentNode).hasClass("dropdown-menu")){var r=i.default(t).closest(".dropdown")[0];if(r){var a=[].slice.call(r.querySelectorAll(".dropdown-toggle"));i.default(a).addClass("active")}t.setAttribute("aria-expanded",!0)}n&&n()},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data("bs.tab");if(o||(o=new t(this),n.data("bs.tab",o)),"string"==typeof e){if("undefined"==typeof o[e])throw new TypeError('No method named "'+e+'"');o[e]()}}))},r(t,null,[{key:"VERSION",get:function(){return"4.5.3"}}]),t}();i.default(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',(function(t){t.preventDefault(),pe._jQueryInterface.call(i.default(this),"show")})),i.default.fn.tab=pe._jQueryInterface,i.default.fn.tab.Constructor=pe,i.default.fn.tab.noConflict=function(){return i.default.fn.tab=he,pe._jQueryInterface};var me=i.default.fn.toast,ge={animation:"boolean",autohide:"boolean",delay:"number"},ve={animation:!0,autohide:!0,delay:500},_e=function(){function t(t,e){this._element=t,this._config=this._getConfig(e),this._timeout=null,this._setListeners()}var e=t.prototype;return e.show=function(){var t=this,e=i.default.Event("show.bs.toast");if(i.default(this._element).trigger(e),!e.isDefaultPrevented()){this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");var n=function(){t._element.classList.remove("showing"),t._element.classList.add("show"),i.default(t._element).trigger("shown.bs.toast"),t._config.autohide&&(t._timeout=setTimeout((function(){t.hide()}),t._config.delay))};if(this._element.classList.remove("hide"),l.reflow(this._element),this._element.classList.add("showing"),this._config.animation){var o=l.getTransitionDurationFromElement(this._element);i.default(this._element).one(l.TRANSITION_END,n).emulateTransitionEnd(o)}else n()}},e.hide=function(){if(this._element.classList.contains("show")){var t=i.default.Event("hide.bs.toast");i.default(this._element).trigger(t),t.isDefaultPrevented()||this._close()}},e.dispose=function(){this._clearTimeout(),this._element.classList.contains("show")&&this._element.classList.remove("show"),i.default(this._element).off("click.dismiss.bs.toast"),i.default.removeData(this._element,"bs.toast"),this._element=null,this._config=null},e._getConfig=function(t){return t=a({},ve,i.default(this._element).data(),"object"==typeof t&&t?t:{}),l.typeCheckConfig("toast",t,this.constructor.DefaultType),t},e._setListeners=function(){var t=this;i.default(this._element).on("click.dismiss.bs.toast",'[data-dismiss="toast"]',(function(){return t.hide()}))},e._close=function(){var t=this,e=function(){t._element.classList.add("hide"),i.default(t._element).trigger("hidden.bs.toast")};if(this._element.classList.remove("show"),this._config.animation){var n=l.getTransitionDurationFromElement(this._element);i.default(this._element).one(l.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},e._clearTimeout=function(){clearTimeout(this._timeout),this._timeout=null},t._jQueryInterface=function(e){return this.each((function(){var n=i.default(this),o=n.data("bs.toast");if(o||(o=new t(this,"object"==typeof e&&e),n.data("bs.toast",o)),"string"==typeof e){if("undefined"==typeof o[e])throw new TypeError('No method named "'+e+'"');o[e](this)}}))},r(t,null,[{key:"VERSION",get:function(){return"4.5.3"}},{key:"DefaultType",get:function(){return ge}},{key:"Default",get:function(){return ve}}]),t}();i.default.fn.toast=_e._jQueryInterface,i.default.fn.toast.Constructor=_e,i.default.fn.toast.noConflict=function(){return i.default.fn.toast=me,_e._jQueryInterface},t.Alert=d,t.Button=h,t.Carousel=y,t.Collapse=S,t.Dropdown=Ft,t.Modal=Bt,t.Popover=se,t.Scrollspy=ce,t.Tab=pe,t.Toast=_e,t.Tooltip=te,t.Util=l,Object.defineProperty(t,"__esModule",{value:!0})})); diff --git a/deps/bootstrap.min.css b/deps/bootstrap.min.css new file mode 100644 index 0000000..aeede51 --- /dev/null +++ b/deps/bootstrap.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v4.5.3 (https://getbootstrap.com/) + * Copyright 2011-2020 The Bootstrap Authors + * Copyright 2011-2020 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */:root{--blue:#007bff;--indigo:#6610f2;--purple:#6f42c1;--pink:#e83e8c;--red:#dc3545;--orange:#fd7e14;--yellow:#ffc107;--green:#28a745;--teal:#20c997;--cyan:#17a2b8;--white:#fff;--gray:#6c757d;--gray-dark:#343a40;--primary:#007bff;--secondary:#6c757d;--success:#28a745;--info:#17a2b8;--warning:#ffc107;--danger:#dc3545;--light:#f8f9fa;--dark:#343a40;--breakpoint-xs:0;--breakpoint-sm:576px;--breakpoint-md:768px;--breakpoint-lg:992px;--breakpoint-xl:1200px;--font-family-sans-serif:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-family-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}*,::after,::before{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:left;background-color:#fff}[tabindex="-1"]:focus:not(:focus-visible){outline:0!important}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem}p{margin-top:0;margin-bottom:1rem}abbr[data-original-title],abbr[title]{text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;border-bottom:0;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#007bff;text-decoration:none;background-color:transparent}a:hover{color:#0056b3;text-decoration:underline}a:not([href]):not([class]){color:inherit;text-decoration:none}a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em}pre{margin-top:0;margin-bottom:1rem;overflow:auto;-ms-overflow-style:scrollbar}figure{margin:0 0 1rem}img{vertical-align:middle;border-style:none}svg{overflow:hidden;vertical-align:middle}table{border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:#6c757d;text-align:left;caption-side:bottom}th{text-align:inherit;text-align:-webkit-match-parent}label{display:inline-block;margin-bottom:.5rem}button{border-radius:0}button:focus{outline:1px dotted;outline:5px auto -webkit-focus-ring-color}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;max-width:100%;padding:0;margin-bottom:.5rem;font-size:1.5rem;line-height:inherit;color:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item;cursor:pointer}template{display:none}[hidden]{display:none!important}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:2.5rem}.h2,h2{font-size:2rem}.h3,h3{font-size:1.75rem}.h4,h4{font-size:1.5rem}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:6rem;font-weight:300;line-height:1.2}.display-2{font-size:5.5rem;font-weight:300;line-height:1.2}.display-3{font-size:4.5rem;font-weight:300;line-height:1.2}.display-4{font-size:3.5rem;font-weight:300;line-height:1.2}hr{margin-top:1rem;margin-bottom:1rem;border:0;border-top:1px solid rgba(0,0,0,.1)}.small,small{font-size:80%;font-weight:400}.mark,mark{padding:.2em;background-color:#fcf8e3}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:90%;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote-footer{display:block;font-size:80%;color:#6c757d}.blockquote-footer::before{content:"\2014\00A0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:90%;color:#6c757d}code{font-size:87.5%;color:#e83e8c;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:87.5%;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:100%;font-weight:700}pre{display:block;font-size:87.5%;color:#212529}pre code{font-size:inherit;color:inherit;word-break:normal}.pre-scrollable{max-height:340px;overflow-y:scroll}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}.row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.no-gutters{margin-right:0;margin-left:0}.no-gutters>.col,.no-gutters>[class*=col-]{padding-right:0;padding-left:0}.col,.col-1,.col-10,.col-11,.col-12,.col-2,.col-3,.col-4,.col-5,.col-6,.col-7,.col-8,.col-9,.col-auto,.col-lg,.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-auto,.col-md,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-auto,.col-sm,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-auto,.col-xl,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xl-auto{position:relative;width:100%;padding-right:15px;padding-left:15px}.col{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-ms-flex-order:-1;order:-1}.order-last{-ms-flex-order:13;order:13}.order-0{-ms-flex-order:0;order:0}.order-1{-ms-flex-order:1;order:1}.order-2{-ms-flex-order:2;order:2}.order-3{-ms-flex-order:3;order:3}.order-4{-ms-flex-order:4;order:4}.order-5{-ms-flex-order:5;order:5}.order-6{-ms-flex-order:6;order:6}.order-7{-ms-flex-order:7;order:7}.order-8{-ms-flex-order:8;order:8}.order-9{-ms-flex-order:9;order:9}.order-10{-ms-flex-order:10;order:10}.order-11{-ms-flex-order:11;order:11}.order-12{-ms-flex-order:12;order:12}.offset-1{margin-left:8.333333%}.offset-2{margin-left:16.666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.333333%}.offset-5{margin-left:41.666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.333333%}.offset-8{margin-left:66.666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.333333%}.offset-11{margin-left:91.666667%}@media (min-width:576px){.col-sm{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-sm-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-sm-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-sm-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-sm-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-sm-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-sm-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-sm-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-sm-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-sm-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-sm-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-sm-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-sm-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-sm-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-sm-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-sm-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-sm-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-sm-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-sm-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-ms-flex-order:-1;order:-1}.order-sm-last{-ms-flex-order:13;order:13}.order-sm-0{-ms-flex-order:0;order:0}.order-sm-1{-ms-flex-order:1;order:1}.order-sm-2{-ms-flex-order:2;order:2}.order-sm-3{-ms-flex-order:3;order:3}.order-sm-4{-ms-flex-order:4;order:4}.order-sm-5{-ms-flex-order:5;order:5}.order-sm-6{-ms-flex-order:6;order:6}.order-sm-7{-ms-flex-order:7;order:7}.order-sm-8{-ms-flex-order:8;order:8}.order-sm-9{-ms-flex-order:9;order:9}.order-sm-10{-ms-flex-order:10;order:10}.order-sm-11{-ms-flex-order:11;order:11}.order-sm-12{-ms-flex-order:12;order:12}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.333333%}.offset-sm-2{margin-left:16.666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.333333%}.offset-sm-5{margin-left:41.666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.333333%}.offset-sm-8{margin-left:66.666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.333333%}.offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.col-md{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-md-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-md-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-md-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-md-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-md-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-md-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-md-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-md-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-md-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-md-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-md-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-md-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-md-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-md-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-md-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-md-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-md-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-md-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-ms-flex-order:-1;order:-1}.order-md-last{-ms-flex-order:13;order:13}.order-md-0{-ms-flex-order:0;order:0}.order-md-1{-ms-flex-order:1;order:1}.order-md-2{-ms-flex-order:2;order:2}.order-md-3{-ms-flex-order:3;order:3}.order-md-4{-ms-flex-order:4;order:4}.order-md-5{-ms-flex-order:5;order:5}.order-md-6{-ms-flex-order:6;order:6}.order-md-7{-ms-flex-order:7;order:7}.order-md-8{-ms-flex-order:8;order:8}.order-md-9{-ms-flex-order:9;order:9}.order-md-10{-ms-flex-order:10;order:10}.order-md-11{-ms-flex-order:11;order:11}.order-md-12{-ms-flex-order:12;order:12}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.333333%}.offset-md-2{margin-left:16.666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.333333%}.offset-md-5{margin-left:41.666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.333333%}.offset-md-8{margin-left:66.666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.333333%}.offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.col-lg{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-lg-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-lg-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-lg-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-lg-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-lg-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-lg-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-lg-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-lg-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-lg-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-lg-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-lg-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-lg-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-lg-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-lg-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-lg-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-lg-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-lg-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-lg-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-ms-flex-order:-1;order:-1}.order-lg-last{-ms-flex-order:13;order:13}.order-lg-0{-ms-flex-order:0;order:0}.order-lg-1{-ms-flex-order:1;order:1}.order-lg-2{-ms-flex-order:2;order:2}.order-lg-3{-ms-flex-order:3;order:3}.order-lg-4{-ms-flex-order:4;order:4}.order-lg-5{-ms-flex-order:5;order:5}.order-lg-6{-ms-flex-order:6;order:6}.order-lg-7{-ms-flex-order:7;order:7}.order-lg-8{-ms-flex-order:8;order:8}.order-lg-9{-ms-flex-order:9;order:9}.order-lg-10{-ms-flex-order:10;order:10}.order-lg-11{-ms-flex-order:11;order:11}.order-lg-12{-ms-flex-order:12;order:12}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.333333%}.offset-lg-2{margin-left:16.666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.333333%}.offset-lg-5{margin-left:41.666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.333333%}.offset-lg-8{margin-left:66.666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.333333%}.offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.col-xl{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;max-width:100%}.row-cols-xl-1>*{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.row-cols-xl-2>*{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.row-cols-xl-3>*{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.row-cols-xl-4>*{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.row-cols-xl-5>*{-ms-flex:0 0 20%;flex:0 0 20%;max-width:20%}.row-cols-xl-6>*{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:100%}.col-xl-1{-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.col-xl-2{-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.col-xl-3{-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.col-xl-4{-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.col-xl-5{-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.col-xl-6{-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.col-xl-7{-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.col-xl-8{-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.col-xl-9{-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.col-xl-10{-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.col-xl-11{-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.col-xl-12{-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-ms-flex-order:-1;order:-1}.order-xl-last{-ms-flex-order:13;order:13}.order-xl-0{-ms-flex-order:0;order:0}.order-xl-1{-ms-flex-order:1;order:1}.order-xl-2{-ms-flex-order:2;order:2}.order-xl-3{-ms-flex-order:3;order:3}.order-xl-4{-ms-flex-order:4;order:4}.order-xl-5{-ms-flex-order:5;order:5}.order-xl-6{-ms-flex-order:6;order:6}.order-xl-7{-ms-flex-order:7;order:7}.order-xl-8{-ms-flex-order:8;order:8}.order-xl-9{-ms-flex-order:9;order:9}.order-xl-10{-ms-flex-order:10;order:10}.order-xl-11{-ms-flex-order:11;order:11}.order-xl-12{-ms-flex-order:12;order:12}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.333333%}.offset-xl-2{margin-left:16.666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.333333%}.offset-xl-5{margin-left:41.666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.333333%}.offset-xl-8{margin-left:66.666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.333333%}.offset-xl-11{margin-left:91.666667%}}.table{width:100%;margin-bottom:1rem;color:#212529}.table td,.table th{padding:.75rem;vertical-align:top;border-top:1px solid #dee2e6}.table thead th{vertical-align:bottom;border-bottom:2px solid #dee2e6}.table tbody+tbody{border-top:2px solid #dee2e6}.table-sm td,.table-sm th{padding:.3rem}.table-bordered{border:1px solid #dee2e6}.table-bordered td,.table-bordered th{border:1px solid #dee2e6}.table-bordered thead td,.table-bordered thead th{border-bottom-width:2px}.table-borderless tbody+tbody,.table-borderless td,.table-borderless th,.table-borderless thead th{border:0}.table-striped tbody tr:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.table-hover tbody tr:hover{color:#212529;background-color:rgba(0,0,0,.075)}.table-primary,.table-primary>td,.table-primary>th{background-color:#b8daff}.table-primary tbody+tbody,.table-primary td,.table-primary th,.table-primary thead th{border-color:#7abaff}.table-hover .table-primary:hover{background-color:#9fcdff}.table-hover .table-primary:hover>td,.table-hover .table-primary:hover>th{background-color:#9fcdff}.table-secondary,.table-secondary>td,.table-secondary>th{background-color:#d6d8db}.table-secondary tbody+tbody,.table-secondary td,.table-secondary th,.table-secondary thead th{border-color:#b3b7bb}.table-hover .table-secondary:hover{background-color:#c8cbcf}.table-hover .table-secondary:hover>td,.table-hover .table-secondary:hover>th{background-color:#c8cbcf}.table-success,.table-success>td,.table-success>th{background-color:#c3e6cb}.table-success tbody+tbody,.table-success td,.table-success th,.table-success thead th{border-color:#8fd19e}.table-hover .table-success:hover{background-color:#b1dfbb}.table-hover .table-success:hover>td,.table-hover .table-success:hover>th{background-color:#b1dfbb}.table-info,.table-info>td,.table-info>th{background-color:#bee5eb}.table-info tbody+tbody,.table-info td,.table-info th,.table-info thead th{border-color:#86cfda}.table-hover .table-info:hover{background-color:#abdde5}.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:#abdde5}.table-warning,.table-warning>td,.table-warning>th{background-color:#ffeeba}.table-warning tbody+tbody,.table-warning td,.table-warning th,.table-warning thead th{border-color:#ffdf7e}.table-hover .table-warning:hover{background-color:#ffe8a1}.table-hover .table-warning:hover>td,.table-hover .table-warning:hover>th{background-color:#ffe8a1}.table-danger,.table-danger>td,.table-danger>th{background-color:#f5c6cb}.table-danger tbody+tbody,.table-danger td,.table-danger th,.table-danger thead th{border-color:#ed969e}.table-hover .table-danger:hover{background-color:#f1b0b7}.table-hover .table-danger:hover>td,.table-hover .table-danger:hover>th{background-color:#f1b0b7}.table-light,.table-light>td,.table-light>th{background-color:#fdfdfe}.table-light tbody+tbody,.table-light td,.table-light th,.table-light thead th{border-color:#fbfcfc}.table-hover .table-light:hover{background-color:#ececf6}.table-hover .table-light:hover>td,.table-hover .table-light:hover>th{background-color:#ececf6}.table-dark,.table-dark>td,.table-dark>th{background-color:#c6c8ca}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#95999c}.table-hover .table-dark:hover{background-color:#b9bbbe}.table-hover .table-dark:hover>td,.table-hover .table-dark:hover>th{background-color:#b9bbbe}.table-active,.table-active>td,.table-active>th{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover{background-color:rgba(0,0,0,.075)}.table-hover .table-active:hover>td,.table-hover .table-active:hover>th{background-color:rgba(0,0,0,.075)}.table .thead-dark th{color:#fff;background-color:#343a40;border-color:#454d55}.table .thead-light th{color:#495057;background-color:#e9ecef;border-color:#dee2e6}.table-dark{color:#fff;background-color:#343a40}.table-dark td,.table-dark th,.table-dark thead th{border-color:#454d55}.table-dark.table-bordered{border:0}.table-dark.table-striped tbody tr:nth-of-type(odd){background-color:rgba(255,255,255,.05)}.table-dark.table-hover tbody tr:hover{color:#fff;background-color:rgba(255,255,255,.075)}@media (max-width:575.98px){.table-responsive-sm{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-sm>.table-bordered{border:0}}@media (max-width:767.98px){.table-responsive-md{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-md>.table-bordered{border:0}}@media (max-width:991.98px){.table-responsive-lg{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-lg>.table-bordered{border:0}}@media (max-width:1199.98px){.table-responsive-xl{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive-xl>.table-bordered{border:0}}.table-responsive{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-responsive>.table-bordered{border:0}.form-control{display:block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control::-ms-expand{background-color:transparent;border:0}.form-control:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.form-control:focus{color:#495057;background-color:#fff;border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.form-control::-webkit-input-placeholder{color:#6c757d;opacity:1}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control:-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::-ms-input-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{-webkit-appearance:none;-moz-appearance:none;appearance:none}select.form-control:focus::-ms-value{color:#495057;background-color:#fff}.form-control-file,.form-control-range{display:block;width:100%}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem;line-height:1.5}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem;line-height:1.5}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;font-size:1rem;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.form-control-lg{height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}select.form-control[multiple],select.form-control[size]{height:auto}textarea.form-control{height:auto}.form-group{margin-bottom:1rem}.form-text{display:block;margin-top:.25rem}.form-row{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-5px;margin-left:-5px}.form-row>.col,.form-row>[class*=col-]{padding-right:5px;padding-left:5px}.form-check{position:relative;display:block;padding-left:1.25rem}.form-check-input{position:absolute;margin-top:.3rem;margin-left:-1.25rem}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{color:#6c757d}.form-check-label{margin-bottom:0}.form-check-inline{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center;padding-left:0;margin-right:.75rem}.form-check-inline .form-check-input{position:static;margin-top:0;margin-right:.3125rem;margin-left:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#28a745}.valid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(40,167,69,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#28a745;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-valid,.was-validated .custom-select:valid{border-color:#28a745;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-valid:focus,.was-validated .custom-select:valid:focus{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#28a745}.form-check-input.is-valid~.valid-feedback,.form-check-input.is-valid~.valid-tooltip,.was-validated .form-check-input:valid~.valid-feedback,.was-validated .form-check-input:valid~.valid-tooltip{display:block}.custom-control-input.is-valid~.custom-control-label,.was-validated .custom-control-input:valid~.custom-control-label{color:#28a745}.custom-control-input.is-valid~.custom-control-label::before,.was-validated .custom-control-input:valid~.custom-control-label::before{border-color:#28a745}.custom-control-input.is-valid:checked~.custom-control-label::before,.was-validated .custom-control-input:valid:checked~.custom-control-label::before{border-color:#34ce57;background-color:#34ce57}.custom-control-input.is-valid:focus~.custom-control-label::before,.was-validated .custom-control-input:valid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label::before{border-color:#28a745}.custom-file-input.is-valid~.custom-file-label,.was-validated .custom-file-input:valid~.custom-file-label{border-color:#28a745}.custom-file-input.is-valid:focus~.custom-file-label,.was-validated .custom-file-input:valid:focus~.custom-file-label{border-color:#28a745;box-shadow:0 0 0 .2rem rgba(40,167,69,.25)}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:80%;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;left:0;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;line-height:1.5;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.custom-select.is-invalid,.was-validated .custom-select:invalid{border-color:#dc3545;padding-right:calc(.75em + 2.3125rem);background:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px,url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(.75em + .375rem) calc(.75em + .375rem)}.custom-select.is-invalid:focus,.was-validated .custom-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-input.is-invalid~.invalid-feedback,.form-check-input.is-invalid~.invalid-tooltip,.was-validated .form-check-input:invalid~.invalid-feedback,.was-validated .form-check-input:invalid~.invalid-tooltip{display:block}.custom-control-input.is-invalid~.custom-control-label,.was-validated .custom-control-input:invalid~.custom-control-label{color:#dc3545}.custom-control-input.is-invalid~.custom-control-label::before,.was-validated .custom-control-input:invalid~.custom-control-label::before{border-color:#dc3545}.custom-control-input.is-invalid:checked~.custom-control-label::before,.was-validated .custom-control-input:invalid:checked~.custom-control-label::before{border-color:#e4606d;background-color:#e4606d}.custom-control-input.is-invalid:focus~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label::before,.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label::before{border-color:#dc3545}.custom-file-input.is-invalid~.custom-file-label,.was-validated .custom-file-input:invalid~.custom-file-label{border-color:#dc3545}.custom-file-input.is-invalid:focus~.custom-file-label,.was-validated .custom-file-input:invalid:focus~.custom-file-label{border-color:#dc3545;box-shadow:0 0 0 .2rem rgba(220,53,69,.25)}.form-inline{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center}.form-inline .form-check{width:100%}@media (min-width:576px){.form-inline label{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;margin-bottom:0}.form-inline .form-group{display:-ms-flexbox;display:flex;-ms-flex:0 0 auto;flex:0 0 auto;-ms-flex-flow:row wrap;flex-flow:row wrap;-ms-flex-align:center;align-items:center;margin-bottom:0}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-plaintext{display:inline-block}.form-inline .custom-select,.form-inline .input-group{width:auto}.form-inline .form-check{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:auto;padding-left:0}.form-inline .form-check-input{position:relative;-ms-flex-negative:0;flex-shrink:0;margin-top:0;margin-right:.25rem;margin-left:0}.form-inline .custom-control{-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center}.form-inline .custom-control-label{margin-bottom:0}}.btn{display:inline-block;font-weight:400;color:#212529;text-align:center;vertical-align:middle;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529;text-decoration:none}.btn.focus,.btn:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn.disabled,.btn:disabled{opacity:.65}.btn:not(:disabled):not(.disabled){cursor:pointer}a.btn.disabled,fieldset:disabled a.btn{pointer-events:none}.btn-primary{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:hover{color:#fff;background-color:#0069d9;border-color:#0062cc}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#0069d9;border-color:#0062cc;box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#007bff;border-color:#007bff}.btn-primary:not(:disabled):not(.disabled).active,.btn-primary:not(:disabled):not(.disabled):active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0062cc;border-color:#005cbf}.btn-primary:not(:disabled):not(.disabled).active:focus,.btn-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(38,143,255,.5)}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5a6268;border-color:#545b62}.btn-secondary.focus,.btn-secondary:focus{color:#fff;background-color:#5a6268;border-color:#545b62;box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:not(:disabled):not(.disabled).active,.btn-secondary:not(:disabled):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#545b62;border-color:#4e555b}.btn-secondary:not(:disabled):not(.disabled).active:focus,.btn-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(130,138,145,.5)}.btn-success{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:hover{color:#fff;background-color:#218838;border-color:#1e7e34}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#218838;border-color:#1e7e34;box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#28a745;border-color:#28a745}.btn-success:not(:disabled):not(.disabled).active,.btn-success:not(:disabled):not(.disabled):active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#1e7e34;border-color:#1c7430}.btn-success:not(:disabled):not(.disabled).active:focus,.btn-success:not(:disabled):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(72,180,97,.5)}.btn-info{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:hover{color:#fff;background-color:#138496;border-color:#117a8b}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#138496;border-color:#117a8b;box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-info.disabled,.btn-info:disabled{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-info:not(:disabled):not(.disabled).active,.btn-info:not(:disabled):not(.disabled):active,.show>.btn-info.dropdown-toggle{color:#fff;background-color:#117a8b;border-color:#10707f}.btn-info:not(:disabled):not(.disabled).active:focus,.btn-info:not(:disabled):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(58,176,195,.5)}.btn-warning{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#212529;background-color:#e0a800;border-color:#d39e00}.btn-warning.focus,.btn-warning:focus{color:#212529;background-color:#e0a800;border-color:#d39e00;box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#212529;background-color:#d39e00;border-color:#c69500}.btn-warning:not(:disabled):not(.disabled).active:focus,.btn-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(222,170,12,.5)}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#c82333;border-color:#bd2130}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c82333;border-color:#bd2130;box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:not(:disabled):not(.disabled).active,.btn-danger:not(:disabled):not(.disabled):active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#bd2130;border-color:#b21f2d}.btn-danger:not(:disabled):not(.disabled).active:focus,.btn-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(225,83,97,.5)}.btn-light{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#212529;background-color:#e2e6ea;border-color:#dae0e5}.btn-light.focus,.btn-light:focus{color:#212529;background-color:#e2e6ea;border-color:#dae0e5;box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-light.disabled,.btn-light:disabled{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:not(:disabled):not(.disabled).active,.btn-light:not(:disabled):not(.disabled):active,.show>.btn-light.dropdown-toggle{color:#212529;background-color:#dae0e5;border-color:#d3d9df}.btn-light:not(:disabled):not(.disabled).active:focus,.btn-light:not(:disabled):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(216,217,219,.5)}.btn-dark{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:hover{color:#fff;background-color:#23272b;border-color:#1d2124}.btn-dark.focus,.btn-dark:focus{color:#fff;background-color:#23272b;border-color:#1d2124;box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#343a40;border-color:#343a40}.btn-dark:not(:disabled):not(.disabled).active,.btn-dark:not(:disabled):not(.disabled):active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1d2124;border-color:#171a1d}.btn-dark:not(:disabled):not(.disabled).active:focus,.btn-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(82,88,93,.5)}.btn-outline-primary{color:#007bff;border-color:#007bff}.btn-outline-primary:hover{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary.focus,.btn-outline-primary:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#007bff;background-color:transparent}.btn-outline-primary:not(:disabled):not(.disabled).active,.btn-outline-primary:not(:disabled):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{color:#fff;background-color:#007bff;border-color:#007bff}.btn-outline-primary:not(:disabled):not(.disabled).active:focus,.btn-outline-primary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary.focus,.btn-outline-secondary:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-secondary:not(:disabled):not(.disabled).active,.btn-outline-secondary:not(:disabled):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-outline-secondary:not(:disabled):not(.disabled).active:focus,.btn-outline-secondary:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.btn-outline-success{color:#28a745;border-color:#28a745}.btn-outline-success:hover{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success.focus,.btn-outline-success:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#28a745;background-color:transparent}.btn-outline-success:not(:disabled):not(.disabled).active,.btn-outline-success:not(:disabled):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{color:#fff;background-color:#28a745;border-color:#28a745}.btn-outline-success:not(:disabled):not(.disabled).active:focus,.btn-outline-success:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.btn-outline-info{color:#17a2b8;border-color:#17a2b8}.btn-outline-info:hover{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info.focus,.btn-outline-info:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#17a2b8;background-color:transparent}.btn-outline-info:not(:disabled):not(.disabled).active,.btn-outline-info:not(:disabled):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{color:#fff;background-color:#17a2b8;border-color:#17a2b8}.btn-outline-info:not(:disabled):not(.disabled).active:focus,.btn-outline-info:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning.focus,.btn-outline-warning:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-warning:not(:disabled):not(.disabled).active,.btn-outline-warning:not(:disabled):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{color:#212529;background-color:#ffc107;border-color:#ffc107}.btn-outline-warning:not(:disabled):not(.disabled).active:focus,.btn-outline-warning:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger.focus,.btn-outline-danger:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-danger:not(:disabled):not(.disabled).active,.btn-outline-danger:not(:disabled):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-outline-danger:not(:disabled):not(.disabled).active:focus,.btn-outline-danger:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light.focus,.btn-outline-light:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-light:not(:disabled):not(.disabled).active,.btn-outline-light:not(:disabled):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{color:#212529;background-color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:not(:disabled):not(.disabled).active:focus,.btn-outline-light:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.btn-outline-dark{color:#343a40;border-color:#343a40}.btn-outline-dark:hover{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark.focus,.btn-outline-dark:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#343a40;background-color:transparent}.btn-outline-dark:not(:disabled):not(.disabled).active,.btn-outline-dark:not(:disabled):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{color:#fff;background-color:#343a40;border-color:#343a40}.btn-outline-dark:not(:disabled):not(.disabled).active:focus,.btn-outline-dark:not(:disabled):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.btn-link{font-weight:400;color:#007bff;text-decoration:none}.btn-link:hover{color:#0056b3;text-decoration:underline}.btn-link.focus,.btn-link:focus{text-decoration:underline}.btn-link.disabled,.btn-link:disabled{color:#6c757d;pointer-events:none}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:.5rem}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{position:relative;height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.dropdown,.dropleft,.dropright,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:10rem;padding:.5rem 0;margin:.125rem 0 0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu-left{right:auto;left:0}.dropdown-menu-right{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-left{right:auto;left:0}.dropdown-menu-sm-right{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-left{right:auto;left:0}.dropdown-menu-md-right{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-left{right:auto;left:0}.dropdown-menu-lg-right{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-left{right:auto;left:0}.dropdown-menu-xl-right{right:0;left:auto}}.dropup .dropdown-menu{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-menu{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropright .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropright .dropdown-toggle:empty::after{margin-left:0}.dropright .dropdown-toggle::after{vertical-align:0}.dropleft .dropdown-menu{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropleft .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropleft .dropdown-toggle::after{display:none}.dropleft .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropleft .dropdown-toggle:empty::after{margin-left:0}.dropleft .dropdown-toggle::before{vertical-align:0}.dropdown-menu[x-placement^=bottom],.dropdown-menu[x-placement^=left],.dropdown-menu[x-placement^=right],.dropdown-menu[x-placement^=top]{right:auto;bottom:auto}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid #e9ecef}.dropdown-item{display:block;width:100%;padding:.25rem 1.5rem;clear:both;font-weight:400;color:#212529;text-align:inherit;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#16181b;text-decoration:none;background-color:#f8f9fa}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#007bff}.dropdown-item.disabled,.dropdown-item:disabled{color:#6c757d;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1.5rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1.5rem;color:#212529}.btn-group,.btn-group-vertical{position:relative;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn:hover,.btn-group>.btn:hover{z-index:1}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus{z-index:1}.btn-toolbar{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropright .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropleft .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn:not(:first-child){border-top-left-radius:0;border-top-right-radius:0}.btn-group-toggle>.btn,.btn-group-toggle>.btn-group>.btn{margin-bottom:0}.btn-group-toggle>.btn input[type=checkbox],.btn-group-toggle>.btn input[type=radio],.btn-group-toggle>.btn-group>.btn input[type=checkbox],.btn-group-toggle>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.custom-file,.input-group>.custom-select,.input-group>.form-control,.input-group>.form-control-plaintext{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;min-width:0;margin-bottom:0}.input-group>.custom-file+.custom-file,.input-group>.custom-file+.custom-select,.input-group>.custom-file+.form-control,.input-group>.custom-select+.custom-file,.input-group>.custom-select+.custom-select,.input-group>.custom-select+.form-control,.input-group>.form-control+.custom-file,.input-group>.form-control+.custom-select,.input-group>.form-control+.form-control,.input-group>.form-control-plaintext+.custom-file,.input-group>.form-control-plaintext+.custom-select,.input-group>.form-control-plaintext+.form-control{margin-left:-1px}.input-group>.custom-file .custom-file-input:focus~.custom-file-label,.input-group>.custom-select:focus,.input-group>.form-control:focus{z-index:3}.input-group>.custom-file .custom-file-input:focus{z-index:4}.input-group>.custom-select:not(:last-child),.input-group>.form-control:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-select:not(:first-child),.input-group>.form-control:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.custom-file{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.input-group>.custom-file:not(:last-child) .custom-file-label,.input-group>.custom-file:not(:last-child) .custom-file-label::after{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.custom-file:not(:first-child) .custom-file-label{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-append,.input-group-prepend{display:-ms-flexbox;display:flex}.input-group-append .btn,.input-group-prepend .btn{position:relative;z-index:2}.input-group-append .btn:focus,.input-group-prepend .btn:focus{z-index:3}.input-group-append .btn+.btn,.input-group-append .btn+.input-group-text,.input-group-append .input-group-text+.btn,.input-group-append .input-group-text+.input-group-text,.input-group-prepend .btn+.btn,.input-group-prepend .btn+.input-group-text,.input-group-prepend .input-group-text+.btn,.input-group-prepend .input-group-text+.input-group-text{margin-left:-1px}.input-group-prepend{margin-right:-1px}.input-group-append{margin-left:-1px}.input-group-text{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.375rem .75rem;margin-bottom:0;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-text input[type=checkbox],.input-group-text input[type=radio]{margin-top:0}.input-group-lg>.custom-select,.input-group-lg>.form-control:not(textarea){height:calc(1.5em + 1rem + 2px)}.input-group-lg>.custom-select,.input-group-lg>.form-control,.input-group-lg>.input-group-append>.btn,.input-group-lg>.input-group-append>.input-group-text,.input-group-lg>.input-group-prepend>.btn,.input-group-lg>.input-group-prepend>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;line-height:1.5;border-radius:.3rem}.input-group-sm>.custom-select,.input-group-sm>.form-control:not(textarea){height:calc(1.5em + .5rem + 2px)}.input-group-sm>.custom-select,.input-group-sm>.form-control,.input-group-sm>.input-group-append>.btn,.input-group-sm>.input-group-append>.input-group-text,.input-group-sm>.input-group-prepend>.btn,.input-group-sm>.input-group-prepend>.input-group-text{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;border-radius:.2rem}.input-group-lg>.custom-select,.input-group-sm>.custom-select{padding-right:1.75rem}.input-group>.input-group-append:last-child>.btn:not(:last-child):not(.dropdown-toggle),.input-group>.input-group-append:last-child>.input-group-text:not(:last-child),.input-group>.input-group-append:not(:last-child)>.btn,.input-group>.input-group-append:not(:last-child)>.input-group-text,.input-group>.input-group-prepend>.btn,.input-group>.input-group-prepend>.input-group-text{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.input-group-append>.btn,.input-group>.input-group-append>.input-group-text,.input-group>.input-group-prepend:first-child>.btn:not(:first-child),.input-group>.input-group-prepend:first-child>.input-group-text:not(:first-child),.input-group>.input-group-prepend:not(:first-child)>.btn,.input-group>.input-group-prepend:not(:first-child)>.input-group-text{border-top-left-radius:0;border-bottom-left-radius:0}.custom-control{position:relative;z-index:1;display:block;min-height:1.5rem;padding-left:1.5rem;-webkit-print-color-adjust:exact;color-adjust:exact}.custom-control-inline{display:-ms-inline-flexbox;display:inline-flex;margin-right:1rem}.custom-control-input{position:absolute;left:0;z-index:-1;width:1rem;height:1.25rem;opacity:0}.custom-control-input:checked~.custom-control-label::before{color:#fff;border-color:#007bff;background-color:#007bff}.custom-control-input:focus~.custom-control-label::before{box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-control-input:focus:not(:checked)~.custom-control-label::before{border-color:#80bdff}.custom-control-input:not(:disabled):active~.custom-control-label::before{color:#fff;background-color:#b3d7ff;border-color:#b3d7ff}.custom-control-input:disabled~.custom-control-label,.custom-control-input[disabled]~.custom-control-label{color:#6c757d}.custom-control-input:disabled~.custom-control-label::before,.custom-control-input[disabled]~.custom-control-label::before{background-color:#e9ecef}.custom-control-label{position:relative;margin-bottom:0;vertical-align:top}.custom-control-label::before{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;pointer-events:none;content:"";background-color:#fff;border:#adb5bd solid 1px}.custom-control-label::after{position:absolute;top:.25rem;left:-1.5rem;display:block;width:1rem;height:1rem;content:"";background:no-repeat 50%/50% 50%}.custom-checkbox .custom-control-label::before{border-radius:.25rem}.custom-checkbox .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::before{border-color:#007bff;background-color:#007bff}.custom-checkbox .custom-control-input:indeterminate~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e")}.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-radio .custom-control-label::before{border-radius:50%}.custom-radio .custom-control-input:checked~.custom-control-label::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.custom-radio .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-switch{padding-left:2.25rem}.custom-switch .custom-control-label::before{left:-2.25rem;width:1.75rem;pointer-events:all;border-radius:.5rem}.custom-switch .custom-control-label::after{top:calc(.25rem + 2px);left:calc(-2.25rem + 2px);width:calc(1rem - 4px);height:calc(1rem - 4px);background-color:#adb5bd;border-radius:.5rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:transform .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-transform .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-switch .custom-control-label::after{transition:none}}.custom-switch .custom-control-input:checked~.custom-control-label::after{background-color:#fff;-webkit-transform:translateX(.75rem);transform:translateX(.75rem)}.custom-switch .custom-control-input:disabled:checked~.custom-control-label::before{background-color:rgba(0,123,255,.5)}.custom-select{display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);padding:.375rem 1.75rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#495057;vertical-align:middle;background:#fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px;border:1px solid #ced4da;border-radius:.25rem;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-select:focus{border-color:#80bdff;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-select:focus::-ms-value{color:#495057;background-color:#fff}.custom-select[multiple],.custom-select[size]:not([size="1"]){height:auto;padding-right:.75rem;background-image:none}.custom-select:disabled{color:#6c757d;background-color:#e9ecef}.custom-select::-ms-expand{display:none}.custom-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #495057}.custom-select-sm{height:calc(1.5em + .5rem + 2px);padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem}.custom-select-lg{height:calc(1.5em + 1rem + 2px);padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem}.custom-file{position:relative;display:inline-block;width:100%;height:calc(1.5em + .75rem + 2px);margin-bottom:0}.custom-file-input{position:relative;z-index:2;width:100%;height:calc(1.5em + .75rem + 2px);margin:0;opacity:0}.custom-file-input:focus~.custom-file-label{border-color:#80bdff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.custom-file-input:disabled~.custom-file-label,.custom-file-input[disabled]~.custom-file-label{background-color:#e9ecef}.custom-file-input:lang(en)~.custom-file-label::after{content:"Browse"}.custom-file-input~.custom-file-label[data-browse]::after{content:attr(data-browse)}.custom-file-label{position:absolute;top:0;right:0;left:0;z-index:1;height:calc(1.5em + .75rem + 2px);padding:.375rem .75rem;font-weight:400;line-height:1.5;color:#495057;background-color:#fff;border:1px solid #ced4da;border-radius:.25rem}.custom-file-label::after{position:absolute;top:0;right:0;bottom:0;z-index:3;display:block;height:calc(1.5em + .75rem);padding:.375rem .75rem;line-height:1.5;color:#495057;content:"Browse";background-color:#e9ecef;border-left:inherit;border-radius:0 .25rem .25rem 0}.custom-range{width:100%;height:1.4rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.custom-range:focus{outline:0}.custom-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range:focus::-ms-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .2rem rgba(0,123,255,.25)}.custom-range::-moz-focus-outer{border:0}.custom-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#007bff;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.custom-range::-webkit-slider-thumb:active{background-color:#b3d7ff}.custom-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#007bff;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-moz-range-thumb{-moz-transition:none;transition:none}}.custom-range::-moz-range-thumb:active{background-color:#b3d7ff}.custom-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.custom-range::-ms-thumb{width:1rem;height:1rem;margin-top:0;margin-right:.2rem;margin-left:.2rem;background-color:#007bff;border:0;border-radius:1rem;-ms-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.custom-range::-ms-thumb{-ms-transition:none;transition:none}}.custom-range::-ms-thumb:active{background-color:#b3d7ff}.custom-range::-ms-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:transparent;border-color:transparent;border-width:.5rem}.custom-range::-ms-fill-lower{background-color:#dee2e6;border-radius:1rem}.custom-range::-ms-fill-upper{margin-right:15px;background-color:#dee2e6;border-radius:1rem}.custom-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.custom-range:disabled::-webkit-slider-runnable-track{cursor:default}.custom-range:disabled::-moz-range-thumb{background-color:#adb5bd}.custom-range:disabled::-moz-range-track{cursor:default}.custom-range:disabled::-ms-thumb{background-color:#adb5bd}.custom-control-label::before,.custom-file-label,.custom-select{transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.custom-control-label::before,.custom-file-label,.custom-select{transition:none}}.nav{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem}.nav-link:focus,.nav-link:hover{text-decoration:none}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-item{margin-bottom:-1px}.nav-tabs .nav-link{border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#007bff}.nav-fill .nav-item,.nav-fill>.nav-link{-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-ms-flex-positive:1;flex-grow:1;text-align:center}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between;padding:.5rem 1rem}.navbar .container,.navbar .container-fluid,.navbar .container-lg,.navbar .container-md,.navbar .container-sm,.navbar .container-xl{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{display:inline-block;padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;line-height:inherit;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-nav{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static;float:none}.navbar-text{display:inline-block;padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem}.navbar-toggler:focus,.navbar-toggler:hover{text-decoration:none}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;content:"";background:no-repeat center center;background-size:100% 100%}@media (max-width:575.98px){.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{padding-right:0;padding-left:0}}@media (min-width:576px){.navbar-expand-sm{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm>.container,.navbar-expand-sm>.container-fluid,.navbar-expand-sm>.container-lg,.navbar-expand-sm>.container-md,.navbar-expand-sm>.container-sm,.navbar-expand-sm>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-sm .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}}@media (max-width:767.98px){.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{padding-right:0;padding-left:0}}@media (min-width:768px){.navbar-expand-md{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md>.container,.navbar-expand-md>.container-fluid,.navbar-expand-md>.container-lg,.navbar-expand-md>.container-md,.navbar-expand-md>.container-sm,.navbar-expand-md>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-md .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}}@media (max-width:991.98px){.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{padding-right:0;padding-left:0}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg>.container,.navbar-expand-lg>.container-fluid,.navbar-expand-lg>.container-lg,.navbar-expand-lg>.container-md,.navbar-expand-lg>.container-sm,.navbar-expand-lg>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-lg .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}@media (max-width:1199.98px){.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{padding-right:0;padding-left:0}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl>.container,.navbar-expand-xl>.container-fluid,.navbar-expand-xl>.container-lg,.navbar-expand-xl>.container-md,.navbar-expand-xl>.container-sm,.navbar-expand-xl>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand-xl .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}}.navbar-expand{-ms-flex-flow:row nowrap;flex-flow:row nowrap;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{padding-right:0;padding-left:0}.navbar-expand .navbar-nav{-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand>.container,.navbar-expand>.container-fluid,.navbar-expand>.container-lg,.navbar-expand>.container-md,.navbar-expand>.container-sm,.navbar-expand>.container-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap}.navbar-expand .navbar-collapse{display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.5)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .active>.nav-link,.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .nav-link.show,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.5);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-light .navbar-text{color:rgba(0,0,0,.5)}.navbar-light .navbar-text a{color:rgba(0,0,0,.9)}.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.5)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .active>.nav-link,.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .nav-link.show,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.5);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.navbar-dark .navbar-text{color:rgba(255,255,255,.5)}.navbar-dark .navbar-text a{color:#fff}.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-ms-flex:1 1 auto;flex:1 1 auto;min-height:1px;padding:1.25rem}.card-title{margin-bottom:.75rem}.card-subtitle{margin-top:-.375rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:1.25rem}.card-header{padding:.75rem 1.25rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.75rem 1.25rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.625rem;margin-bottom:-.75rem;margin-left:-.625rem;border-bottom:0}.card-header-pills{margin-right:-.625rem;margin-left:-.625rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1.25rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{-ms-flex-negative:0;flex-shrink:0;width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-deck .card{margin-bottom:15px}@media (min-width:576px){.card-deck{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap;margin-right:-15px;margin-left:-15px}.card-deck .card{-ms-flex:1 0 0%;flex:1 0 0%;margin-right:15px;margin-bottom:0;margin-left:15px}}.card-group>.card{margin-bottom:15px}@media (min-width:576px){.card-group{display:-ms-flexbox;display:flex;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.card-columns .card{margin-bottom:.75rem}@media (min-width:576px){.card-columns{-webkit-column-count:3;-moz-column-count:3;column-count:3;-webkit-column-gap:1.25rem;-moz-column-gap:1.25rem;column-gap:1.25rem;orphans:1;widows:1}.card-columns .card{display:inline-block;width:100%}}.accordion{overflow-anchor:none}.accordion>.card{overflow:hidden}.accordion>.card:not(:last-of-type){border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.accordion>.card:not(:first-of-type){border-top-left-radius:0;border-top-right-radius:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.breadcrumb{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:.75rem 1rem;margin-bottom:1rem;list-style:none;background-color:#e9ecef;border-radius:.25rem}.breadcrumb-item{display:-ms-flexbox;display:flex}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{display:inline-block;padding-right:.5rem;color:#6c757d;content:"/"}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:underline}.breadcrumb-item+.breadcrumb-item:hover::before{text-decoration:none}.breadcrumb-item.active{color:#6c757d}.pagination{display:-ms-flexbox;display:flex;padding-left:0;list-style:none;border-radius:.25rem}.page-link{position:relative;display:block;padding:.5rem .75rem;margin-left:-1px;line-height:1.25;color:#007bff;background-color:#fff;border:1px solid #dee2e6}.page-link:hover{z-index:2;color:#0056b3;text-decoration:none;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.page-item:first-child .page-link{margin-left:0;border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.page-item.active .page-link{z-index:3;color:#fff;background-color:#007bff;border-color:#007bff}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;cursor:auto;background-color:#fff;border-color:#dee2e6}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem;line-height:1.5}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem;line-height:1.5}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.25em .4em;font-size:75%;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.badge{transition:none}}a.badge:focus,a.badge:hover{text-decoration:none}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.badge-pill{padding-right:.6em;padding-left:.6em;border-radius:10rem}.badge-primary{color:#fff;background-color:#007bff}a.badge-primary:focus,a.badge-primary:hover{color:#fff;background-color:#0062cc}a.badge-primary.focus,a.badge-primary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(0,123,255,.5)}.badge-secondary{color:#fff;background-color:#6c757d}a.badge-secondary:focus,a.badge-secondary:hover{color:#fff;background-color:#545b62}a.badge-secondary.focus,a.badge-secondary:focus{outline:0;box-shadow:0 0 0 .2rem rgba(108,117,125,.5)}.badge-success{color:#fff;background-color:#28a745}a.badge-success:focus,a.badge-success:hover{color:#fff;background-color:#1e7e34}a.badge-success.focus,a.badge-success:focus{outline:0;box-shadow:0 0 0 .2rem rgba(40,167,69,.5)}.badge-info{color:#fff;background-color:#17a2b8}a.badge-info:focus,a.badge-info:hover{color:#fff;background-color:#117a8b}a.badge-info.focus,a.badge-info:focus{outline:0;box-shadow:0 0 0 .2rem rgba(23,162,184,.5)}.badge-warning{color:#212529;background-color:#ffc107}a.badge-warning:focus,a.badge-warning:hover{color:#212529;background-color:#d39e00}a.badge-warning.focus,a.badge-warning:focus{outline:0;box-shadow:0 0 0 .2rem rgba(255,193,7,.5)}.badge-danger{color:#fff;background-color:#dc3545}a.badge-danger:focus,a.badge-danger:hover{color:#fff;background-color:#bd2130}a.badge-danger.focus,a.badge-danger:focus{outline:0;box-shadow:0 0 0 .2rem rgba(220,53,69,.5)}.badge-light{color:#212529;background-color:#f8f9fa}a.badge-light:focus,a.badge-light:hover{color:#212529;background-color:#dae0e5}a.badge-light.focus,a.badge-light:focus{outline:0;box-shadow:0 0 0 .2rem rgba(248,249,250,.5)}.badge-dark{color:#fff;background-color:#343a40}a.badge-dark:focus,a.badge-dark:hover{color:#fff;background-color:#1d2124}a.badge-dark.focus,a.badge-dark:focus{outline:0;box-shadow:0 0 0 .2rem rgba(52,58,64,.5)}.jumbotron{padding:2rem 1rem;margin-bottom:2rem;background-color:#e9ecef;border-radius:.3rem}@media (min-width:576px){.jumbotron{padding:4rem 2rem}}.jumbotron-fluid{padding-right:0;padding-left:0;border-radius:0}.alert{position:relative;padding:.75rem 1.25rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:4rem}.alert-dismissible .close{position:absolute;top:0;right:0;z-index:2;padding:.75rem 1.25rem;color:inherit}.alert-primary{color:#004085;background-color:#cce5ff;border-color:#b8daff}.alert-primary hr{border-top-color:#9fcdff}.alert-primary .alert-link{color:#002752}.alert-secondary{color:#383d41;background-color:#e2e3e5;border-color:#d6d8db}.alert-secondary hr{border-top-color:#c8cbcf}.alert-secondary .alert-link{color:#202326}.alert-success{color:#155724;background-color:#d4edda;border-color:#c3e6cb}.alert-success hr{border-top-color:#b1dfbb}.alert-success .alert-link{color:#0b2e13}.alert-info{color:#0c5460;background-color:#d1ecf1;border-color:#bee5eb}.alert-info hr{border-top-color:#abdde5}.alert-info .alert-link{color:#062c33}.alert-warning{color:#856404;background-color:#fff3cd;border-color:#ffeeba}.alert-warning hr{border-top-color:#ffe8a1}.alert-warning .alert-link{color:#533f03}.alert-danger{color:#721c24;background-color:#f8d7da;border-color:#f5c6cb}.alert-danger hr{border-top-color:#f1b0b7}.alert-danger .alert-link{color:#491217}.alert-light{color:#818182;background-color:#fefefe;border-color:#fdfdfe}.alert-light hr{border-top-color:#ececf6}.alert-light .alert-link{color:#686868}.alert-dark{color:#1b1e21;background-color:#d6d8d9;border-color:#c6c8ca}.alert-dark hr{border-top-color:#b9bbbe}.alert-dark .alert-link{color:#040505}@-webkit-keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:1rem 0}to{background-position:0 0}}.progress{display:-ms-flexbox;display:flex;height:1rem;overflow:hidden;line-height:0;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#007bff;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:progress-bar-stripes 1s linear infinite;animation:progress-bar-stripes 1s linear infinite}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.media{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start}.media-body{-ms-flex:1;flex:1}.list-group{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.75rem 1.25rem;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#007bff;border-color:#007bff}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#004085;background-color:#b8daff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#004085;background-color:#9fcdff}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#004085;border-color:#004085}.list-group-item-secondary{color:#383d41;background-color:#d6d8db}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#383d41;background-color:#c8cbcf}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#383d41;border-color:#383d41}.list-group-item-success{color:#155724;background-color:#c3e6cb}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#155724;background-color:#b1dfbb}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#155724;border-color:#155724}.list-group-item-info{color:#0c5460;background-color:#bee5eb}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#0c5460;background-color:#abdde5}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#0c5460;border-color:#0c5460}.list-group-item-warning{color:#856404;background-color:#ffeeba}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#856404;background-color:#ffe8a1}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#856404;border-color:#856404}.list-group-item-danger{color:#721c24;background-color:#f5c6cb}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#721c24;background-color:#f1b0b7}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#721c24;border-color:#721c24}.list-group-item-light{color:#818182;background-color:#fdfdfe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#818182;background-color:#ececf6}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#818182;border-color:#818182}.list-group-item-dark{color:#1b1e21;background-color:#c6c8ca}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#1b1e21;background-color:#b9bbbe}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#1b1e21;border-color:#1b1e21}.close{float:right;font-size:1.5rem;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.5}.close:hover{color:#000;text-decoration:none}.close:not(:disabled):not(.disabled):focus,.close:not(:disabled):not(.disabled):hover{opacity:.75}button.close{padding:0;background-color:transparent;border:0}a.close.disabled{pointer-events:none}.toast{-ms-flex-preferred-size:350px;flex-basis:350px;max-width:350px;font-size:.875rem;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .25rem .75rem rgba(0,0,0,.1);opacity:0;border-radius:.25rem}.toast:not(:last-child){margin-bottom:.75rem}.toast.showing{opacity:1}.toast.show{display:block;opacity:1}.toast.hide{display:none}.toast-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;padding:.25rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-body{padding:.75rem}.modal-open{overflow:hidden}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal{position:fixed;top:0;left:0;z-index:1050;display:none;width:100%;height:100%;overflow:hidden;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{display:-ms-flexbox;display:flex;max-height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 1rem);overflow:hidden}.modal-dialog-scrollable .modal-footer,.modal-dialog-scrollable .modal-header{-ms-flex-negative:0;flex-shrink:0}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;min-height:calc(100% - 1rem)}.modal-dialog-centered::before{display:block;height:calc(100vh - 1rem);height:-webkit-min-content;height:-moz-min-content;height:min-content;content:""}.modal-dialog-centered.modal-dialog-scrollable{-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.modal-dialog-centered.modal-dialog-scrollable .modal-content{max-height:none}.modal-dialog-centered.modal-dialog-scrollable::before{content:none}.modal-content{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:-ms-flexbox;display:flex;-ms-flex-align:start;align-items:flex-start;-ms-flex-pack:justify;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .close{padding:1rem 1rem;margin:-1rem -1rem -1rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem}.modal-footer{display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{max-height:calc(100% - 3.5rem)}.modal-dialog-scrollable .modal-content{max-height:calc(100vh - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-dialog-centered::before{height:calc(100vh - 3.5rem);height:-webkit-min-content;height:-moz-min-content;height:min-content}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.tooltip{position:absolute;z-index:1070;display:block;margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[x-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[x-placement^=top] .arrow,.bs-tooltip-top .arrow{bottom:0}.bs-tooltip-auto[x-placement^=top] .arrow::before,.bs-tooltip-top .arrow::before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[x-placement^=right],.bs-tooltip-right{padding:0 .4rem}.bs-tooltip-auto[x-placement^=right] .arrow,.bs-tooltip-right .arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=right] .arrow::before,.bs-tooltip-right .arrow::before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[x-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[x-placement^=bottom] .arrow,.bs-tooltip-bottom .arrow{top:0}.bs-tooltip-auto[x-placement^=bottom] .arrow::before,.bs-tooltip-bottom .arrow::before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[x-placement^=left],.bs-tooltip-left{padding:0 .4rem}.bs-tooltip-auto[x-placement^=left] .arrow,.bs-tooltip-left .arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[x-placement^=left] .arrow::before,.bs-tooltip-left .arrow::before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1060;display:block;max-width:276px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .arrow{position:absolute;display:block;width:1rem;height:.5rem;margin:0 .3rem}.popover .arrow::after,.popover .arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid}.bs-popover-auto[x-placement^=top],.bs-popover-top{margin-bottom:.5rem}.bs-popover-auto[x-placement^=top]>.arrow,.bs-popover-top>.arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=top]>.arrow::before,.bs-popover-top>.arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=top]>.arrow::after,.bs-popover-top>.arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[x-placement^=right],.bs-popover-right{margin-left:.5rem}.bs-popover-auto[x-placement^=right]>.arrow,.bs-popover-right>.arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=right]>.arrow::before,.bs-popover-right>.arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=right]>.arrow::after,.bs-popover-right>.arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[x-placement^=bottom],.bs-popover-bottom{margin-top:.5rem}.bs-popover-auto[x-placement^=bottom]>.arrow,.bs-popover-bottom>.arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[x-placement^=bottom]>.arrow::before,.bs-popover-bottom>.arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=bottom]>.arrow::after,.bs-popover-bottom>.arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[x-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:"";border-bottom:1px solid #f7f7f7}.bs-popover-auto[x-placement^=left],.bs-popover-left{margin-right:.5rem}.bs-popover-auto[x-placement^=left]>.arrow,.bs-popover-left>.arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem;margin:.3rem 0}.bs-popover-auto[x-placement^=left]>.arrow::before,.bs-popover-left>.arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[x-placement^=left]>.arrow::after,.bs-popover-left>.arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem .75rem;margin-bottom:0;font-size:1rem;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:.5rem .75rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-right,.carousel-item-next:not(.carousel-item-left){-webkit-transform:translateX(100%);transform:translateX(100%)}.active.carousel-item-left,.carousel-item-prev:not(.carousel-item-right){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-left,.carousel-fade .active.carousel-item-right{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:15%;color:#fff;text-align:center;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:20px;height:20px;background:no-repeat 50%/100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:15;display:-ms-flexbox;display:flex;-ms-flex-pack:center;justify-content:center;padding-left:0;margin-right:15%;margin-left:15%;list-style:none}.carousel-indicators li{box-sizing:content-box;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators li{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:spinner-border .75s linear infinite;animation:spinner-border .75s linear infinite}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:text-bottom;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:spinner-grow .75s linear infinite;animation:spinner-grow .75s linear infinite}.spinner-grow-sm{width:1rem;height:1rem}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.bg-primary{background-color:#007bff!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#0062cc!important}.bg-secondary{background-color:#6c757d!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#545b62!important}.bg-success{background-color:#28a745!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#1e7e34!important}.bg-info{background-color:#17a2b8!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#117a8b!important}.bg-warning{background-color:#ffc107!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#d39e00!important}.bg-danger{background-color:#dc3545!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#bd2130!important}.bg-light{background-color:#f8f9fa!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#dae0e5!important}.bg-dark{background-color:#343a40!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#1d2124!important}.bg-white{background-color:#fff!important}.bg-transparent{background-color:transparent!important}.border{border:1px solid #dee2e6!important}.border-top{border-top:1px solid #dee2e6!important}.border-right{border-right:1px solid #dee2e6!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-left{border-left:1px solid #dee2e6!important}.border-0{border:0!important}.border-top-0{border-top:0!important}.border-right-0{border-right:0!important}.border-bottom-0{border-bottom:0!important}.border-left-0{border-left:0!important}.border-primary{border-color:#007bff!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#28a745!important}.border-info{border-color:#17a2b8!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#343a40!important}.border-white{border-color:#fff!important}.rounded-sm{border-radius:.2rem!important}.rounded{border-radius:.25rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-right{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-left{border-top-left-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-lg{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-0{border-radius:0!important}.clearfix::after{display:block;clear:both;content:""}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-ms-inline-flexbox!important;display:inline-flex!important}}.embed-responsive{position:relative;display:block;width:100%;padding:0;overflow:hidden}.embed-responsive::before{display:block;content:""}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-21by9::before{padding-top:42.857143%}.embed-responsive-16by9::before{padding-top:56.25%}.embed-responsive-4by3::before{padding-top:75%}.embed-responsive-1by1::before{padding-top:100%}.flex-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-sm-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-sm-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-sm-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-md-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-md-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-md-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-lg-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-lg-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-lg-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.flex-xl-fill{-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-grow-0{-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.justify-content-xl-start{-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.align-items-xl-start{-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}.float-left{float:left!important}.float-right{float:right!important}.float-none{float:none!important}@media (min-width:576px){.float-sm-left{float:left!important}.float-sm-right{float:right!important}.float-sm-none{float:none!important}}@media (min-width:768px){.float-md-left{float:left!important}.float-md-right{float:right!important}.float-md-none{float:none!important}}@media (min-width:992px){.float-lg-left{float:left!important}.float-lg-right{float:right!important}.float-lg-none{float:none!important}}@media (min-width:1200px){.float-xl-left{float:left!important}.float-xl-right{float:right!important}.float-xl-none{float:none!important}}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;-ms-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}@supports ((position:-webkit-sticky) or (position:sticky)){.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mw-100{max-width:100%!important}.mh-100{max-height:100%!important}.min-vw-100{min-width:100vw!important}.min-vh-100{min-height:100vh!important}.vw-100{width:100vw!important}.vh-100{height:100vh!important}.m-0{margin:0!important}.mt-0,.my-0{margin-top:0!important}.mr-0,.mx-0{margin-right:0!important}.mb-0,.my-0{margin-bottom:0!important}.ml-0,.mx-0{margin-left:0!important}.m-1{margin:.25rem!important}.mt-1,.my-1{margin-top:.25rem!important}.mr-1,.mx-1{margin-right:.25rem!important}.mb-1,.my-1{margin-bottom:.25rem!important}.ml-1,.mx-1{margin-left:.25rem!important}.m-2{margin:.5rem!important}.mt-2,.my-2{margin-top:.5rem!important}.mr-2,.mx-2{margin-right:.5rem!important}.mb-2,.my-2{margin-bottom:.5rem!important}.ml-2,.mx-2{margin-left:.5rem!important}.m-3{margin:1rem!important}.mt-3,.my-3{margin-top:1rem!important}.mr-3,.mx-3{margin-right:1rem!important}.mb-3,.my-3{margin-bottom:1rem!important}.ml-3,.mx-3{margin-left:1rem!important}.m-4{margin:1.5rem!important}.mt-4,.my-4{margin-top:1.5rem!important}.mr-4,.mx-4{margin-right:1.5rem!important}.mb-4,.my-4{margin-bottom:1.5rem!important}.ml-4,.mx-4{margin-left:1.5rem!important}.m-5{margin:3rem!important}.mt-5,.my-5{margin-top:3rem!important}.mr-5,.mx-5{margin-right:3rem!important}.mb-5,.my-5{margin-bottom:3rem!important}.ml-5,.mx-5{margin-left:3rem!important}.p-0{padding:0!important}.pt-0,.py-0{padding-top:0!important}.pr-0,.px-0{padding-right:0!important}.pb-0,.py-0{padding-bottom:0!important}.pl-0,.px-0{padding-left:0!important}.p-1{padding:.25rem!important}.pt-1,.py-1{padding-top:.25rem!important}.pr-1,.px-1{padding-right:.25rem!important}.pb-1,.py-1{padding-bottom:.25rem!important}.pl-1,.px-1{padding-left:.25rem!important}.p-2{padding:.5rem!important}.pt-2,.py-2{padding-top:.5rem!important}.pr-2,.px-2{padding-right:.5rem!important}.pb-2,.py-2{padding-bottom:.5rem!important}.pl-2,.px-2{padding-left:.5rem!important}.p-3{padding:1rem!important}.pt-3,.py-3{padding-top:1rem!important}.pr-3,.px-3{padding-right:1rem!important}.pb-3,.py-3{padding-bottom:1rem!important}.pl-3,.px-3{padding-left:1rem!important}.p-4{padding:1.5rem!important}.pt-4,.py-4{padding-top:1.5rem!important}.pr-4,.px-4{padding-right:1.5rem!important}.pb-4,.py-4{padding-bottom:1.5rem!important}.pl-4,.px-4{padding-left:1.5rem!important}.p-5{padding:3rem!important}.pt-5,.py-5{padding-top:3rem!important}.pr-5,.px-5{padding-right:3rem!important}.pb-5,.py-5{padding-bottom:3rem!important}.pl-5,.px-5{padding-left:3rem!important}.m-n1{margin:-.25rem!important}.mt-n1,.my-n1{margin-top:-.25rem!important}.mr-n1,.mx-n1{margin-right:-.25rem!important}.mb-n1,.my-n1{margin-bottom:-.25rem!important}.ml-n1,.mx-n1{margin-left:-.25rem!important}.m-n2{margin:-.5rem!important}.mt-n2,.my-n2{margin-top:-.5rem!important}.mr-n2,.mx-n2{margin-right:-.5rem!important}.mb-n2,.my-n2{margin-bottom:-.5rem!important}.ml-n2,.mx-n2{margin-left:-.5rem!important}.m-n3{margin:-1rem!important}.mt-n3,.my-n3{margin-top:-1rem!important}.mr-n3,.mx-n3{margin-right:-1rem!important}.mb-n3,.my-n3{margin-bottom:-1rem!important}.ml-n3,.mx-n3{margin-left:-1rem!important}.m-n4{margin:-1.5rem!important}.mt-n4,.my-n4{margin-top:-1.5rem!important}.mr-n4,.mx-n4{margin-right:-1.5rem!important}.mb-n4,.my-n4{margin-bottom:-1.5rem!important}.ml-n4,.mx-n4{margin-left:-1.5rem!important}.m-n5{margin:-3rem!important}.mt-n5,.my-n5{margin-top:-3rem!important}.mr-n5,.mx-n5{margin-right:-3rem!important}.mb-n5,.my-n5{margin-bottom:-3rem!important}.ml-n5,.mx-n5{margin-left:-3rem!important}.m-auto{margin:auto!important}.mt-auto,.my-auto{margin-top:auto!important}.mr-auto,.mx-auto{margin-right:auto!important}.mb-auto,.my-auto{margin-bottom:auto!important}.ml-auto,.mx-auto{margin-left:auto!important}@media (min-width:576px){.m-sm-0{margin:0!important}.mt-sm-0,.my-sm-0{margin-top:0!important}.mr-sm-0,.mx-sm-0{margin-right:0!important}.mb-sm-0,.my-sm-0{margin-bottom:0!important}.ml-sm-0,.mx-sm-0{margin-left:0!important}.m-sm-1{margin:.25rem!important}.mt-sm-1,.my-sm-1{margin-top:.25rem!important}.mr-sm-1,.mx-sm-1{margin-right:.25rem!important}.mb-sm-1,.my-sm-1{margin-bottom:.25rem!important}.ml-sm-1,.mx-sm-1{margin-left:.25rem!important}.m-sm-2{margin:.5rem!important}.mt-sm-2,.my-sm-2{margin-top:.5rem!important}.mr-sm-2,.mx-sm-2{margin-right:.5rem!important}.mb-sm-2,.my-sm-2{margin-bottom:.5rem!important}.ml-sm-2,.mx-sm-2{margin-left:.5rem!important}.m-sm-3{margin:1rem!important}.mt-sm-3,.my-sm-3{margin-top:1rem!important}.mr-sm-3,.mx-sm-3{margin-right:1rem!important}.mb-sm-3,.my-sm-3{margin-bottom:1rem!important}.ml-sm-3,.mx-sm-3{margin-left:1rem!important}.m-sm-4{margin:1.5rem!important}.mt-sm-4,.my-sm-4{margin-top:1.5rem!important}.mr-sm-4,.mx-sm-4{margin-right:1.5rem!important}.mb-sm-4,.my-sm-4{margin-bottom:1.5rem!important}.ml-sm-4,.mx-sm-4{margin-left:1.5rem!important}.m-sm-5{margin:3rem!important}.mt-sm-5,.my-sm-5{margin-top:3rem!important}.mr-sm-5,.mx-sm-5{margin-right:3rem!important}.mb-sm-5,.my-sm-5{margin-bottom:3rem!important}.ml-sm-5,.mx-sm-5{margin-left:3rem!important}.p-sm-0{padding:0!important}.pt-sm-0,.py-sm-0{padding-top:0!important}.pr-sm-0,.px-sm-0{padding-right:0!important}.pb-sm-0,.py-sm-0{padding-bottom:0!important}.pl-sm-0,.px-sm-0{padding-left:0!important}.p-sm-1{padding:.25rem!important}.pt-sm-1,.py-sm-1{padding-top:.25rem!important}.pr-sm-1,.px-sm-1{padding-right:.25rem!important}.pb-sm-1,.py-sm-1{padding-bottom:.25rem!important}.pl-sm-1,.px-sm-1{padding-left:.25rem!important}.p-sm-2{padding:.5rem!important}.pt-sm-2,.py-sm-2{padding-top:.5rem!important}.pr-sm-2,.px-sm-2{padding-right:.5rem!important}.pb-sm-2,.py-sm-2{padding-bottom:.5rem!important}.pl-sm-2,.px-sm-2{padding-left:.5rem!important}.p-sm-3{padding:1rem!important}.pt-sm-3,.py-sm-3{padding-top:1rem!important}.pr-sm-3,.px-sm-3{padding-right:1rem!important}.pb-sm-3,.py-sm-3{padding-bottom:1rem!important}.pl-sm-3,.px-sm-3{padding-left:1rem!important}.p-sm-4{padding:1.5rem!important}.pt-sm-4,.py-sm-4{padding-top:1.5rem!important}.pr-sm-4,.px-sm-4{padding-right:1.5rem!important}.pb-sm-4,.py-sm-4{padding-bottom:1.5rem!important}.pl-sm-4,.px-sm-4{padding-left:1.5rem!important}.p-sm-5{padding:3rem!important}.pt-sm-5,.py-sm-5{padding-top:3rem!important}.pr-sm-5,.px-sm-5{padding-right:3rem!important}.pb-sm-5,.py-sm-5{padding-bottom:3rem!important}.pl-sm-5,.px-sm-5{padding-left:3rem!important}.m-sm-n1{margin:-.25rem!important}.mt-sm-n1,.my-sm-n1{margin-top:-.25rem!important}.mr-sm-n1,.mx-sm-n1{margin-right:-.25rem!important}.mb-sm-n1,.my-sm-n1{margin-bottom:-.25rem!important}.ml-sm-n1,.mx-sm-n1{margin-left:-.25rem!important}.m-sm-n2{margin:-.5rem!important}.mt-sm-n2,.my-sm-n2{margin-top:-.5rem!important}.mr-sm-n2,.mx-sm-n2{margin-right:-.5rem!important}.mb-sm-n2,.my-sm-n2{margin-bottom:-.5rem!important}.ml-sm-n2,.mx-sm-n2{margin-left:-.5rem!important}.m-sm-n3{margin:-1rem!important}.mt-sm-n3,.my-sm-n3{margin-top:-1rem!important}.mr-sm-n3,.mx-sm-n3{margin-right:-1rem!important}.mb-sm-n3,.my-sm-n3{margin-bottom:-1rem!important}.ml-sm-n3,.mx-sm-n3{margin-left:-1rem!important}.m-sm-n4{margin:-1.5rem!important}.mt-sm-n4,.my-sm-n4{margin-top:-1.5rem!important}.mr-sm-n4,.mx-sm-n4{margin-right:-1.5rem!important}.mb-sm-n4,.my-sm-n4{margin-bottom:-1.5rem!important}.ml-sm-n4,.mx-sm-n4{margin-left:-1.5rem!important}.m-sm-n5{margin:-3rem!important}.mt-sm-n5,.my-sm-n5{margin-top:-3rem!important}.mr-sm-n5,.mx-sm-n5{margin-right:-3rem!important}.mb-sm-n5,.my-sm-n5{margin-bottom:-3rem!important}.ml-sm-n5,.mx-sm-n5{margin-left:-3rem!important}.m-sm-auto{margin:auto!important}.mt-sm-auto,.my-sm-auto{margin-top:auto!important}.mr-sm-auto,.mx-sm-auto{margin-right:auto!important}.mb-sm-auto,.my-sm-auto{margin-bottom:auto!important}.ml-sm-auto,.mx-sm-auto{margin-left:auto!important}}@media (min-width:768px){.m-md-0{margin:0!important}.mt-md-0,.my-md-0{margin-top:0!important}.mr-md-0,.mx-md-0{margin-right:0!important}.mb-md-0,.my-md-0{margin-bottom:0!important}.ml-md-0,.mx-md-0{margin-left:0!important}.m-md-1{margin:.25rem!important}.mt-md-1,.my-md-1{margin-top:.25rem!important}.mr-md-1,.mx-md-1{margin-right:.25rem!important}.mb-md-1,.my-md-1{margin-bottom:.25rem!important}.ml-md-1,.mx-md-1{margin-left:.25rem!important}.m-md-2{margin:.5rem!important}.mt-md-2,.my-md-2{margin-top:.5rem!important}.mr-md-2,.mx-md-2{margin-right:.5rem!important}.mb-md-2,.my-md-2{margin-bottom:.5rem!important}.ml-md-2,.mx-md-2{margin-left:.5rem!important}.m-md-3{margin:1rem!important}.mt-md-3,.my-md-3{margin-top:1rem!important}.mr-md-3,.mx-md-3{margin-right:1rem!important}.mb-md-3,.my-md-3{margin-bottom:1rem!important}.ml-md-3,.mx-md-3{margin-left:1rem!important}.m-md-4{margin:1.5rem!important}.mt-md-4,.my-md-4{margin-top:1.5rem!important}.mr-md-4,.mx-md-4{margin-right:1.5rem!important}.mb-md-4,.my-md-4{margin-bottom:1.5rem!important}.ml-md-4,.mx-md-4{margin-left:1.5rem!important}.m-md-5{margin:3rem!important}.mt-md-5,.my-md-5{margin-top:3rem!important}.mr-md-5,.mx-md-5{margin-right:3rem!important}.mb-md-5,.my-md-5{margin-bottom:3rem!important}.ml-md-5,.mx-md-5{margin-left:3rem!important}.p-md-0{padding:0!important}.pt-md-0,.py-md-0{padding-top:0!important}.pr-md-0,.px-md-0{padding-right:0!important}.pb-md-0,.py-md-0{padding-bottom:0!important}.pl-md-0,.px-md-0{padding-left:0!important}.p-md-1{padding:.25rem!important}.pt-md-1,.py-md-1{padding-top:.25rem!important}.pr-md-1,.px-md-1{padding-right:.25rem!important}.pb-md-1,.py-md-1{padding-bottom:.25rem!important}.pl-md-1,.px-md-1{padding-left:.25rem!important}.p-md-2{padding:.5rem!important}.pt-md-2,.py-md-2{padding-top:.5rem!important}.pr-md-2,.px-md-2{padding-right:.5rem!important}.pb-md-2,.py-md-2{padding-bottom:.5rem!important}.pl-md-2,.px-md-2{padding-left:.5rem!important}.p-md-3{padding:1rem!important}.pt-md-3,.py-md-3{padding-top:1rem!important}.pr-md-3,.px-md-3{padding-right:1rem!important}.pb-md-3,.py-md-3{padding-bottom:1rem!important}.pl-md-3,.px-md-3{padding-left:1rem!important}.p-md-4{padding:1.5rem!important}.pt-md-4,.py-md-4{padding-top:1.5rem!important}.pr-md-4,.px-md-4{padding-right:1.5rem!important}.pb-md-4,.py-md-4{padding-bottom:1.5rem!important}.pl-md-4,.px-md-4{padding-left:1.5rem!important}.p-md-5{padding:3rem!important}.pt-md-5,.py-md-5{padding-top:3rem!important}.pr-md-5,.px-md-5{padding-right:3rem!important}.pb-md-5,.py-md-5{padding-bottom:3rem!important}.pl-md-5,.px-md-5{padding-left:3rem!important}.m-md-n1{margin:-.25rem!important}.mt-md-n1,.my-md-n1{margin-top:-.25rem!important}.mr-md-n1,.mx-md-n1{margin-right:-.25rem!important}.mb-md-n1,.my-md-n1{margin-bottom:-.25rem!important}.ml-md-n1,.mx-md-n1{margin-left:-.25rem!important}.m-md-n2{margin:-.5rem!important}.mt-md-n2,.my-md-n2{margin-top:-.5rem!important}.mr-md-n2,.mx-md-n2{margin-right:-.5rem!important}.mb-md-n2,.my-md-n2{margin-bottom:-.5rem!important}.ml-md-n2,.mx-md-n2{margin-left:-.5rem!important}.m-md-n3{margin:-1rem!important}.mt-md-n3,.my-md-n3{margin-top:-1rem!important}.mr-md-n3,.mx-md-n3{margin-right:-1rem!important}.mb-md-n3,.my-md-n3{margin-bottom:-1rem!important}.ml-md-n3,.mx-md-n3{margin-left:-1rem!important}.m-md-n4{margin:-1.5rem!important}.mt-md-n4,.my-md-n4{margin-top:-1.5rem!important}.mr-md-n4,.mx-md-n4{margin-right:-1.5rem!important}.mb-md-n4,.my-md-n4{margin-bottom:-1.5rem!important}.ml-md-n4,.mx-md-n4{margin-left:-1.5rem!important}.m-md-n5{margin:-3rem!important}.mt-md-n5,.my-md-n5{margin-top:-3rem!important}.mr-md-n5,.mx-md-n5{margin-right:-3rem!important}.mb-md-n5,.my-md-n5{margin-bottom:-3rem!important}.ml-md-n5,.mx-md-n5{margin-left:-3rem!important}.m-md-auto{margin:auto!important}.mt-md-auto,.my-md-auto{margin-top:auto!important}.mr-md-auto,.mx-md-auto{margin-right:auto!important}.mb-md-auto,.my-md-auto{margin-bottom:auto!important}.ml-md-auto,.mx-md-auto{margin-left:auto!important}}@media (min-width:992px){.m-lg-0{margin:0!important}.mt-lg-0,.my-lg-0{margin-top:0!important}.mr-lg-0,.mx-lg-0{margin-right:0!important}.mb-lg-0,.my-lg-0{margin-bottom:0!important}.ml-lg-0,.mx-lg-0{margin-left:0!important}.m-lg-1{margin:.25rem!important}.mt-lg-1,.my-lg-1{margin-top:.25rem!important}.mr-lg-1,.mx-lg-1{margin-right:.25rem!important}.mb-lg-1,.my-lg-1{margin-bottom:.25rem!important}.ml-lg-1,.mx-lg-1{margin-left:.25rem!important}.m-lg-2{margin:.5rem!important}.mt-lg-2,.my-lg-2{margin-top:.5rem!important}.mr-lg-2,.mx-lg-2{margin-right:.5rem!important}.mb-lg-2,.my-lg-2{margin-bottom:.5rem!important}.ml-lg-2,.mx-lg-2{margin-left:.5rem!important}.m-lg-3{margin:1rem!important}.mt-lg-3,.my-lg-3{margin-top:1rem!important}.mr-lg-3,.mx-lg-3{margin-right:1rem!important}.mb-lg-3,.my-lg-3{margin-bottom:1rem!important}.ml-lg-3,.mx-lg-3{margin-left:1rem!important}.m-lg-4{margin:1.5rem!important}.mt-lg-4,.my-lg-4{margin-top:1.5rem!important}.mr-lg-4,.mx-lg-4{margin-right:1.5rem!important}.mb-lg-4,.my-lg-4{margin-bottom:1.5rem!important}.ml-lg-4,.mx-lg-4{margin-left:1.5rem!important}.m-lg-5{margin:3rem!important}.mt-lg-5,.my-lg-5{margin-top:3rem!important}.mr-lg-5,.mx-lg-5{margin-right:3rem!important}.mb-lg-5,.my-lg-5{margin-bottom:3rem!important}.ml-lg-5,.mx-lg-5{margin-left:3rem!important}.p-lg-0{padding:0!important}.pt-lg-0,.py-lg-0{padding-top:0!important}.pr-lg-0,.px-lg-0{padding-right:0!important}.pb-lg-0,.py-lg-0{padding-bottom:0!important}.pl-lg-0,.px-lg-0{padding-left:0!important}.p-lg-1{padding:.25rem!important}.pt-lg-1,.py-lg-1{padding-top:.25rem!important}.pr-lg-1,.px-lg-1{padding-right:.25rem!important}.pb-lg-1,.py-lg-1{padding-bottom:.25rem!important}.pl-lg-1,.px-lg-1{padding-left:.25rem!important}.p-lg-2{padding:.5rem!important}.pt-lg-2,.py-lg-2{padding-top:.5rem!important}.pr-lg-2,.px-lg-2{padding-right:.5rem!important}.pb-lg-2,.py-lg-2{padding-bottom:.5rem!important}.pl-lg-2,.px-lg-2{padding-left:.5rem!important}.p-lg-3{padding:1rem!important}.pt-lg-3,.py-lg-3{padding-top:1rem!important}.pr-lg-3,.px-lg-3{padding-right:1rem!important}.pb-lg-3,.py-lg-3{padding-bottom:1rem!important}.pl-lg-3,.px-lg-3{padding-left:1rem!important}.p-lg-4{padding:1.5rem!important}.pt-lg-4,.py-lg-4{padding-top:1.5rem!important}.pr-lg-4,.px-lg-4{padding-right:1.5rem!important}.pb-lg-4,.py-lg-4{padding-bottom:1.5rem!important}.pl-lg-4,.px-lg-4{padding-left:1.5rem!important}.p-lg-5{padding:3rem!important}.pt-lg-5,.py-lg-5{padding-top:3rem!important}.pr-lg-5,.px-lg-5{padding-right:3rem!important}.pb-lg-5,.py-lg-5{padding-bottom:3rem!important}.pl-lg-5,.px-lg-5{padding-left:3rem!important}.m-lg-n1{margin:-.25rem!important}.mt-lg-n1,.my-lg-n1{margin-top:-.25rem!important}.mr-lg-n1,.mx-lg-n1{margin-right:-.25rem!important}.mb-lg-n1,.my-lg-n1{margin-bottom:-.25rem!important}.ml-lg-n1,.mx-lg-n1{margin-left:-.25rem!important}.m-lg-n2{margin:-.5rem!important}.mt-lg-n2,.my-lg-n2{margin-top:-.5rem!important}.mr-lg-n2,.mx-lg-n2{margin-right:-.5rem!important}.mb-lg-n2,.my-lg-n2{margin-bottom:-.5rem!important}.ml-lg-n2,.mx-lg-n2{margin-left:-.5rem!important}.m-lg-n3{margin:-1rem!important}.mt-lg-n3,.my-lg-n3{margin-top:-1rem!important}.mr-lg-n3,.mx-lg-n3{margin-right:-1rem!important}.mb-lg-n3,.my-lg-n3{margin-bottom:-1rem!important}.ml-lg-n3,.mx-lg-n3{margin-left:-1rem!important}.m-lg-n4{margin:-1.5rem!important}.mt-lg-n4,.my-lg-n4{margin-top:-1.5rem!important}.mr-lg-n4,.mx-lg-n4{margin-right:-1.5rem!important}.mb-lg-n4,.my-lg-n4{margin-bottom:-1.5rem!important}.ml-lg-n4,.mx-lg-n4{margin-left:-1.5rem!important}.m-lg-n5{margin:-3rem!important}.mt-lg-n5,.my-lg-n5{margin-top:-3rem!important}.mr-lg-n5,.mx-lg-n5{margin-right:-3rem!important}.mb-lg-n5,.my-lg-n5{margin-bottom:-3rem!important}.ml-lg-n5,.mx-lg-n5{margin-left:-3rem!important}.m-lg-auto{margin:auto!important}.mt-lg-auto,.my-lg-auto{margin-top:auto!important}.mr-lg-auto,.mx-lg-auto{margin-right:auto!important}.mb-lg-auto,.my-lg-auto{margin-bottom:auto!important}.ml-lg-auto,.mx-lg-auto{margin-left:auto!important}}@media (min-width:1200px){.m-xl-0{margin:0!important}.mt-xl-0,.my-xl-0{margin-top:0!important}.mr-xl-0,.mx-xl-0{margin-right:0!important}.mb-xl-0,.my-xl-0{margin-bottom:0!important}.ml-xl-0,.mx-xl-0{margin-left:0!important}.m-xl-1{margin:.25rem!important}.mt-xl-1,.my-xl-1{margin-top:.25rem!important}.mr-xl-1,.mx-xl-1{margin-right:.25rem!important}.mb-xl-1,.my-xl-1{margin-bottom:.25rem!important}.ml-xl-1,.mx-xl-1{margin-left:.25rem!important}.m-xl-2{margin:.5rem!important}.mt-xl-2,.my-xl-2{margin-top:.5rem!important}.mr-xl-2,.mx-xl-2{margin-right:.5rem!important}.mb-xl-2,.my-xl-2{margin-bottom:.5rem!important}.ml-xl-2,.mx-xl-2{margin-left:.5rem!important}.m-xl-3{margin:1rem!important}.mt-xl-3,.my-xl-3{margin-top:1rem!important}.mr-xl-3,.mx-xl-3{margin-right:1rem!important}.mb-xl-3,.my-xl-3{margin-bottom:1rem!important}.ml-xl-3,.mx-xl-3{margin-left:1rem!important}.m-xl-4{margin:1.5rem!important}.mt-xl-4,.my-xl-4{margin-top:1.5rem!important}.mr-xl-4,.mx-xl-4{margin-right:1.5rem!important}.mb-xl-4,.my-xl-4{margin-bottom:1.5rem!important}.ml-xl-4,.mx-xl-4{margin-left:1.5rem!important}.m-xl-5{margin:3rem!important}.mt-xl-5,.my-xl-5{margin-top:3rem!important}.mr-xl-5,.mx-xl-5{margin-right:3rem!important}.mb-xl-5,.my-xl-5{margin-bottom:3rem!important}.ml-xl-5,.mx-xl-5{margin-left:3rem!important}.p-xl-0{padding:0!important}.pt-xl-0,.py-xl-0{padding-top:0!important}.pr-xl-0,.px-xl-0{padding-right:0!important}.pb-xl-0,.py-xl-0{padding-bottom:0!important}.pl-xl-0,.px-xl-0{padding-left:0!important}.p-xl-1{padding:.25rem!important}.pt-xl-1,.py-xl-1{padding-top:.25rem!important}.pr-xl-1,.px-xl-1{padding-right:.25rem!important}.pb-xl-1,.py-xl-1{padding-bottom:.25rem!important}.pl-xl-1,.px-xl-1{padding-left:.25rem!important}.p-xl-2{padding:.5rem!important}.pt-xl-2,.py-xl-2{padding-top:.5rem!important}.pr-xl-2,.px-xl-2{padding-right:.5rem!important}.pb-xl-2,.py-xl-2{padding-bottom:.5rem!important}.pl-xl-2,.px-xl-2{padding-left:.5rem!important}.p-xl-3{padding:1rem!important}.pt-xl-3,.py-xl-3{padding-top:1rem!important}.pr-xl-3,.px-xl-3{padding-right:1rem!important}.pb-xl-3,.py-xl-3{padding-bottom:1rem!important}.pl-xl-3,.px-xl-3{padding-left:1rem!important}.p-xl-4{padding:1.5rem!important}.pt-xl-4,.py-xl-4{padding-top:1.5rem!important}.pr-xl-4,.px-xl-4{padding-right:1.5rem!important}.pb-xl-4,.py-xl-4{padding-bottom:1.5rem!important}.pl-xl-4,.px-xl-4{padding-left:1.5rem!important}.p-xl-5{padding:3rem!important}.pt-xl-5,.py-xl-5{padding-top:3rem!important}.pr-xl-5,.px-xl-5{padding-right:3rem!important}.pb-xl-5,.py-xl-5{padding-bottom:3rem!important}.pl-xl-5,.px-xl-5{padding-left:3rem!important}.m-xl-n1{margin:-.25rem!important}.mt-xl-n1,.my-xl-n1{margin-top:-.25rem!important}.mr-xl-n1,.mx-xl-n1{margin-right:-.25rem!important}.mb-xl-n1,.my-xl-n1{margin-bottom:-.25rem!important}.ml-xl-n1,.mx-xl-n1{margin-left:-.25rem!important}.m-xl-n2{margin:-.5rem!important}.mt-xl-n2,.my-xl-n2{margin-top:-.5rem!important}.mr-xl-n2,.mx-xl-n2{margin-right:-.5rem!important}.mb-xl-n2,.my-xl-n2{margin-bottom:-.5rem!important}.ml-xl-n2,.mx-xl-n2{margin-left:-.5rem!important}.m-xl-n3{margin:-1rem!important}.mt-xl-n3,.my-xl-n3{margin-top:-1rem!important}.mr-xl-n3,.mx-xl-n3{margin-right:-1rem!important}.mb-xl-n3,.my-xl-n3{margin-bottom:-1rem!important}.ml-xl-n3,.mx-xl-n3{margin-left:-1rem!important}.m-xl-n4{margin:-1.5rem!important}.mt-xl-n4,.my-xl-n4{margin-top:-1.5rem!important}.mr-xl-n4,.mx-xl-n4{margin-right:-1.5rem!important}.mb-xl-n4,.my-xl-n4{margin-bottom:-1.5rem!important}.ml-xl-n4,.mx-xl-n4{margin-left:-1.5rem!important}.m-xl-n5{margin:-3rem!important}.mt-xl-n5,.my-xl-n5{margin-top:-3rem!important}.mr-xl-n5,.mx-xl-n5{margin-right:-3rem!important}.mb-xl-n5,.my-xl-n5{margin-bottom:-3rem!important}.ml-xl-n5,.mx-xl-n5{margin-left:-3rem!important}.m-xl-auto{margin:auto!important}.mt-xl-auto,.my-xl-auto{margin-top:auto!important}.mr-xl-auto,.mx-xl-auto{margin-right:auto!important}.mb-xl-auto,.my-xl-auto{margin-bottom:auto!important}.ml-xl-auto,.mx-xl-auto{margin-left:auto!important}}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:auto;content:"";background-color:rgba(0,0,0,0)}.text-monospace{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace!important}.text-justify{text-align:justify!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-left{text-align:left!important}.text-right{text-align:right!important}.text-center{text-align:center!important}@media (min-width:576px){.text-sm-left{text-align:left!important}.text-sm-right{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.text-md-left{text-align:left!important}.text-md-right{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.text-lg-left{text-align:left!important}.text-lg-right{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.text-xl-left{text-align:left!important}.text-xl-right{text-align:right!important}.text-xl-center{text-align:center!important}}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.font-weight-light{font-weight:300!important}.font-weight-lighter{font-weight:lighter!important}.font-weight-normal{font-weight:400!important}.font-weight-bold{font-weight:700!important}.font-weight-bolder{font-weight:bolder!important}.font-italic{font-style:italic!important}.text-white{color:#fff!important}.text-primary{color:#007bff!important}a.text-primary:focus,a.text-primary:hover{color:#0056b3!important}.text-secondary{color:#6c757d!important}a.text-secondary:focus,a.text-secondary:hover{color:#494f54!important}.text-success{color:#28a745!important}a.text-success:focus,a.text-success:hover{color:#19692c!important}.text-info{color:#17a2b8!important}a.text-info:focus,a.text-info:hover{color:#0f6674!important}.text-warning{color:#ffc107!important}a.text-warning:focus,a.text-warning:hover{color:#ba8b00!important}.text-danger{color:#dc3545!important}a.text-danger:focus,a.text-danger:hover{color:#a71d2a!important}.text-light{color:#f8f9fa!important}a.text-light:focus,a.text-light:hover{color:#cbd3da!important}.text-dark{color:#343a40!important}a.text-dark:focus,a.text-dark:hover{color:#121416!important}.text-body{color:#212529!important}.text-muted{color:#6c757d!important}.text-black-50{color:rgba(0,0,0,.5)!important}.text-white-50{color:rgba(255,255,255,.5)!important}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.text-decoration-none{text-decoration:none!important}.text-break{word-break:break-word!important;word-wrap:break-word!important}.text-reset{color:inherit!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media print{*,::after,::before{text-shadow:none!important;box-shadow:none!important}a:not(.btn){text-decoration:underline}abbr[title]::after{content:" (" attr(title) ")"}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #adb5bd;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}@page{size:a3}body{min-width:992px!important}.container{min-width:992px!important}.navbar{display:none}.badge{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #dee2e6!important}.table-dark{color:inherit}.table-dark tbody+tbody,.table-dark td,.table-dark th,.table-dark thead th{border-color:#dee2e6}.table .thead-dark th{color:inherit;border-color:#dee2e6}} diff --git a/deps/less.min.js b/deps/less.min.js new file mode 100644 index 0000000..bc70068 --- /dev/null +++ b/deps/less.min.js @@ -0,0 +1,17 @@ +/** + * LessJS - v3.13.0 + * + * @source https://raw.githubusercontent.com/less/less.js/v3.13.0/dist/less.js + * + */ +/** + * Less - Leaner CSS v3.13.0 + * http://lesscss.org + * + * Copyright (c) 2009-2020, Alexis Sellier + * Licensed under the Apache-2.0 License. + * + * @license Apache-2.0 + */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).less=t()}(this,(function(){"use strict";function e(e){return e.replace(/^[a-z-]+:\/+?[^\/]+/,"").replace(/[\?\&]livereload=\w+/,"").replace(/^\//,"").replace(/\.[a-zA-Z]+$/,"").replace(/[^\.\w-]+/g,"-").replace(/\./g,":")}function t(e,t){for(var i in t.dataset)if(t.dataset.hasOwnProperty(i))if("env"===i||"dumpLineNumbers"===i||"rootpath"===i||"errorReporting"===i)e[i]=t.dataset[i];else try{e[i]=JSON.parse(t.dataset[i])}catch(e){}}var i=function(t,i,n){var r=n.href||"",s="less:"+(n.title||e(r)),o=t.getElementById(s),a=!1,l=t.createElement("style");l.setAttribute("type","text/css"),n.media&&l.setAttribute("media",n.media),l.id=s,l.styleSheet||(l.appendChild(t.createTextNode(i)),a=null!==o&&o.childNodes.length>0&&l.childNodes.length>0&&o.firstChild.nodeValue===l.firstChild.nodeValue);var u=t.getElementsByTagName("head")[0];if(null===o||!1===a){var h=n&&n.nextSibling||null;h?h.parentNode.insertBefore(l,h):u.appendChild(l)}if(o&&!1===a&&o.parentNode.removeChild(o),l.styleSheet)try{l.styleSheet.cssText=i}catch(e){throw new Error("Couldn't reassign styleSheet.cssText.")}},n=function(e){var t,i=e.document;return i.currentScript||(t=i.getElementsByTagName("script"))[t.length-1]},r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)t.hasOwnProperty(i)&&(e[i]=t[i])})(e,t)};function s(e,t){function i(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}var o=function(){return(o=Object.assign||function(e){for(var t,i=1,n=arguments.length;it?1:void 0};var f=function(e,t,i){var n=this;Array.isArray(e)?this.rgb=e:e.length>=6?(this.rgb=[],e.match(/.{2}/g).map((function(e,t){t<3?n.rgb.push(parseInt(e,16)):n.alpha=parseInt(e,16)/255}))):(this.rgb=[],e.split("").map((function(e,t){t<3?n.rgb.push(parseInt(e+e,16)):n.alpha=parseInt(e+e,16)/255}))),this.alpha=this.alpha||("number"==typeof t?t:1),void 0!==i&&(this.value=i)};function p(e,t){return Math.min(Math.max(e,0),t)}function d(e){return"#"+e.map((function(e){return((e=p(Math.round(e),255))<16?"0":"")+e.toString(16)})).join("")}(f.prototype=new c).luma=function(){var e=this.rgb[0]/255,t=this.rgb[1]/255,i=this.rgb[2]/255;return.2126*(e=e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.7152*(t=t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4))+.0722*(i=i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))},f.prototype.genCSS=function(e,t){t.add(this.toCSS(e))},f.prototype.toCSS=function(e,t){var i,n,r,s=e&&e.compress&&!t,o=[];if(n=this.fround(e,this.alpha),this.value)if(0===this.value.indexOf("rgb"))n<1&&(r="rgba");else{if(0!==this.value.indexOf("hsl"))return this.value;r=n<1?"hsla":"hsl"}else n<1&&(r="rgba");switch(r){case"rgba":o=this.rgb.map((function(e){return p(Math.round(e),255)})).concat(p(n,1));break;case"hsla":o.push(p(n,1));case"hsl":i=this.toHSL(),o=[this.fround(e,i.h),this.fround(e,100*i.s)+"%",this.fround(e,100*i.l)+"%"].concat(o)}if(r)return r+"("+o.join(","+(s?"":" "))+")";if(i=this.toRGB(),s){var a=i.split("");a[1]===a[2]&&a[3]===a[4]&&a[5]===a[6]&&(i="#"+a[1]+a[3]+a[5])}return i},f.prototype.operate=function(e,t,i){for(var n=new Array(3),r=this.alpha*(1-i.alpha)+i.alpha,s=0;s<3;s++)n[s]=this._operate(e,t,this.rgb[s],i.rgb[s]);return new f(n,r)},f.prototype.toRGB=function(){return d(this.rgb)},f.prototype.toHSL=function(){var e,t,i=this.rgb[0]/255,n=this.rgb[1]/255,r=this.rgb[2]/255,s=this.alpha,o=Math.max(i,n,r),a=Math.min(i,n,r),l=(o+a)/2,u=o-a;if(o===a)e=t=0;else{switch(t=l>.5?u/(2-o-a):u/(o+a),o){case i:e=(n-r)/u+(n=0&&"\n"!==t.charAt(i);)r++;return"number"==typeof e&&(n=(t.slice(0,e).match(/\n/g)||"").length),{line:n,column:r}}function C(e){var t,i=e.length,n=new Array(i);for(t=0;t|Function):(\d+):(\d+)/,R=function(e,t,i){Error.call(this);var n=e.filename||i;if(this.message=e.message,this.stack=e.stack,t&&n){var r=t.contents[n],s=I(e.index,r),o=s.line,a=s.column,l=e.call&&I(e.call,r).line,u=r?r.split("\n"):"";if(this.type=e.type||"Syntax",this.filename=n,this.index=e.index,this.line="number"==typeof o?o+1:null,this.column=a,!this.line&&this.stack){var h=this.stack.match(E),c=new Function("a","throw new Error()"),f=0;try{c()}catch(e){var p=e.stack.match(E);f=1-parseInt(p[2])}h&&(h[2]&&(this.line=parseInt(h[2])+f),h[3]&&(this.column=parseInt(h[3])))}this.callLine=l+1,this.callExtract=u[l],this.extract=[u[this.line-2],u[this.line-1],u[this.line]]}};if(void 0===Object.create){var V=function(){};V.prototype=Error.prototype,R.prototype=new V}else R.prototype=Object.create(Error.prototype);R.prototype.constructor=R,R.prototype.toString=function(e){void 0===e&&(e={});var t="",i=this.extract||[],n=[],r=function(e){return e};if(e.stylize){var s=typeof e.stylize;if("function"!==s)throw Error("options.stylize should be a function, got a "+s+"!");r=e.stylize}if(null!==this.line){if("string"==typeof i[0]&&n.push(r(this.line-1+" "+i[0],"grey")),"string"==typeof i[1]){var o=this.line+" ";i[1]&&(o+=i[1].slice(0,this.column)+r(r(r(i[1].substr(this.column,1),"bold")+i[1].slice(this.column+1),"red"),"inverse")),n.push(o)}"string"==typeof i[2]&&n.push(r(this.line+1+" "+i[2],"grey")),n=n.join("\n")+r("","reset")+"\n"}return t+=r(this.type+"Error: "+this.message,"red"),this.filename&&(t+=r(" in ","red")+this.filename),this.line&&(t+=r(" on line "+this.line+", column "+(this.column+1)+":","grey")),t+="\n"+n,this.callLine&&(t+=r("from ","red")+(this.filename||"")+"/n",t+=r(this.callLine,"grey")+" "+this.callExtract+"/n"),t};var F=function(e,t,i,n,r,s){this.extendList=t,this.condition=i,this.evaldCondition=!i,this._index=n,this._fileInfo=r,this.elements=this.getElements(e),this.mixinElements_=void 0,this.copyVisibilityInfo(s),this.setParent(this.elements,this)};(F.prototype=new c).accept=function(e){this.elements&&(this.elements=e.visitArray(this.elements)),this.extendList&&(this.extendList=e.visitArray(this.extendList)),this.condition&&(this.condition=e.visit(this.condition))},F.prototype.createDerived=function(e,t,i){e=this.getElements(e);var n=new F(e,t||this.extendList,null,this.getIndex(),this.fileInfo(),this.visibilityInfo());return n.evaldCondition=null!=i?i:this.evaldCondition,n.mediaEmpty=this.mediaEmpty,n},F.prototype.getElements=function(e){return e?("string"==typeof e&&this.parse.parseNode(e,["selector"],this._index,this._fileInfo,(function(t,i){if(t)throw new R({index:t.index,message:t.message},this.parse.imports,this._fileInfo.filename);e=i[0].elements})),e):[new y("","&",!1,this._index,this._fileInfo)]},F.prototype.createEmptySelectors=function(){var e=new y("","&",!1,this._index,this._fileInfo),t=[new F([e],null,null,this._index,this._fileInfo)];return t[0].mediaEmpty=!0,t},F.prototype.match=function(e){var t,i,n=this.elements,r=n.length;if(0===(t=(e=e.mixinElements()).length)||rb.PARENS_DIVISION)||this.parensStack&&this.parensStack.length))},e.prototype.pathRequiresRewrite=function(e){return(this.rewriteUrls===x?W:G)(e)},e.prototype.rewritePath=function(e,t){var i;return t=t||"",i=this.normalizePath(t+e),W(e)&&G(t)&&!1===W(i)&&(i="./"+i),i},e.prototype.normalizePath=function(e){var t,i=e.split("/").reverse();for(e=[];0!==i.length;)switch(t=i.pop()){case".":break;case"..":0===e.length||".."===e[e.length-1]?e.push(t):e.pop();break;default:e.push(t)}return e.join("/")},e}();var J=function e(t){return{_data:{},add:function(e,t){e=e.toLowerCase(),this._data.hasOwnProperty(e),this._data[e]=t},addMultiple:function(e){var t=this;Object.keys(e).forEach((function(i){t.add(i,e[i])}))},get:function(e){return this._data[e]||t&&t.get(e)},getLocalFunctions:function(){return this._data},inherit:function(){return e(this)},create:function(t){return e(t)}}}(null),H={eval:function(){var e=this.value_,t=this.error_;if(t)throw t;if(null!=e)return e?O.True:O.False},value:function(e){this.value_=e},error:function(e){this.error_=e},reset:function(){this.value_=this.error_=null}},Q=function(e,t,i,n){this.selectors=e,this.rules=t,this._lookups={},this._variables=null,this._properties=null,this.strictImports=i,this.copyVisibilityInfo(n),this.allowRoot=!0,this.setParent(this.selectors,this),this.setParent(this.rules,this)};(Q.prototype=new c).isRulesetLike=function(){return!0},Q.prototype.accept=function(e){this.paths?this.paths=e.visitArray(this.paths,!0):this.selectors&&(this.selectors=e.visitArray(this.selectors)),this.rules&&this.rules.length&&(this.rules=e.visitArray(this.rules))},Q.prototype.eval=function(e){var t,i,n,r,s,o=!1;if(this.selectors&&(i=this.selectors.length)){for(t=new Array(i),H.error({type:"Syntax",message:"it is currently only allowed in parametric mixin guards,"}),r=0;r0;e--){var t=this.rules[e-1];if(t instanceof N)return this.parseValue(t)}},Q.prototype.parseValue=function(e){var t=this;function i(e){return e.value instanceof L&&!e.parsed?("string"==typeof e.value.value?this.parse.parseNode(e.value.value,["value","important"],e.value.getIndex(),e.fileInfo(),(function(t,i){t&&(e.parsed=!0),i&&(e.value=i[0],e.important=i[1]||"",e.parsed=!0)})):e.parsed=!0,e):e}if(Array.isArray(e)){var n=[];return e.forEach((function(e){n.push(i.call(t,e))})),n}return i.call(t,e)},Q.prototype.rulesets=function(){if(!this.rules)return[];var e,t,i=[],n=this.rules;for(e=0;t=n[e];e++)t.isRuleset&&i.push(t);return i},Q.prototype.prependRule=function(e){var t=this.rules;t?t.unshift(e):this.rules=[e],this.setParent(e,this)},Q.prototype.find=function(e,t,i){void 0===t&&(t=this);var n,r,s=[],o=e.toCSS();return o in this._lookups?this._lookups[o]:(this.rulesets().forEach((function(o){if(o!==t)for(var a=0;an){if(!i||i(o)){r=o.find(new F(e.elements.slice(n)),t,i);for(var l=0;l0&&t.add(l),e.firstSelector=!0,o[0].genCSS(e,t),e.firstSelector=!1,n=1;n0?(s=(r=C(e)).pop(),o=n.createDerived(C(s.elements))):o=n.createDerived([]),t.length>0){var a=i.combinator,l=t[0].elements[0];a.emptyOrWhitespace&&!l.combinator.emptyOrWhitespace&&(a=l.combinator),o.elements.push(new y(a,l.value,i.isVariable,i._index,i._fileInfo)),o.elements=o.elements.concat(t[0].elements.slice(1))}if(0!==o.elements.length&&r.push(o),t.length>1){var u=t.slice(1);u=u.map((function(e){return e.createDerived(e.elements,[])})),r=r.concat(u)}return r}function o(e,t,i,n,r){var o;for(o=0;o0?n[n.length-1]=n[n.length-1].createDerived(n[n.length-1].elements.concat(e)):n.push(new F(e));else t.push([new F(e)])}function l(e,t){var i=t.createDerived(t.elements,t.extendList,t.evaldCondition);return i.copyVisibilityInfo(e),i}var u,h;if(!function e(t,i,l){var u,h,c,f,p,d,m,g,b,w,x,S,I=!1;for(f=[],p=[[]],u=0;g=l.elements[u];u++)if("&"!==g.value){var C=(S=void 0,(x=g).value instanceof v&&(S=x.value.value)instanceof F?S:null);if(null!=C){a(f,p);var k,_=[],A=[];for(k=e(_,i,C),I=I||k,c=0;c<_.length;c++){o(p,[r(n(_[c],g),g)],g,l,A)}p=A,f=[]}else f.push(g)}else{for(I=!0,d=[],a(f,p),h=0;h0&&m[0].elements.push(new y(g.combinator,"",g.isVariable,g._index,g._fileInfo)),d.push(m);else for(c=0;c0&&(t.push(p[u]),w=p[u][b-1],p[u][b-1]=w.createDerived(w.elements,l.extendList));return I}(h=[],t,i))if(t.length>0)for(h=[],u=0;u0)for(t=0;t-1e-6&&(n=i.toFixed(20).replace(/0+$/,"")),e&&e.compress){if(0===i&&this.unit.isLength())return void t.add(n);i>0&&i<1&&(n=n.substr(1))}t.add(n),this.unit.genCSS(e,t)},X.prototype.operate=function(e,t,i){var n=this._operate(e,t,this.value,i.value),r=this.unit.clone();if("+"===t||"-"===t)if(0===r.numerator.length&&0===r.denominator.length)r=i.unit.clone(),this.unit.backupUnit&&(r.backupUnit=this.unit.backupUnit);else if(0===i.unit.numerator.length&&0===r.denominator.length);else{if(i=i.convertTo(this.unit.usedUnits()),e.strictUnits&&i.unit.toString()!==r.toString())throw new Error("Incompatible units. Change the units or use the unit function. Bad units: '"+r.toString()+"' and '"+i.unit.toString()+"'.");n=this._operate(e,t,this.value,i.value)}else"*"===t?(r.numerator=r.numerator.concat(i.unit.numerator).sort(),r.denominator=r.denominator.concat(i.unit.denominator).sort(),r.cancel()):"/"===t&&(r.numerator=r.numerator.concat(i.unit.denominator).sort(),r.denominator=r.denominator.concat(i.unit.numerator).sort(),r.cancel());return new X(n,r)},X.prototype.compare=function(e){var t,i;if(e instanceof X){if(this.unit.isEmpty()||e.unit.isEmpty())t=this,i=e;else if(t=this.unify(),i=e.unify(),0!==t.unit.compare(i.unit))return;return c.numericCompare(t.value,i.value)}},X.prototype.unify=function(){return this.convertTo({length:"px",duration:"s",angle:"rad"})},X.prototype.convertTo=function(e){var t,i,n,r,s,o=this.value,a=this.unit.clone(),l={};if("string"==typeof e){for(t in u)u[t].hasOwnProperty(e)&&((l={})[t]=e);e=l}for(i in s=function(e,t){return n.hasOwnProperty(e)?(t?o/=n[e]/n[r]:o*=n[e]/n[r],r):e},e)e.hasOwnProperty(i)&&(r=e[i],n=u[i],a.map(s));return a.cancel(),new X(o,a)},X.prototype.type="Dimension";var ee=b,te=function(e,t,i){this.op=e.trim(),this.operands=t,this.isSpaced=i};(te.prototype=new c).accept=function(e){this.operands=e.visitArray(this.operands)},te.prototype.eval=function(e){var t,i=this.operands[0].eval(e),n=this.operands[1].eval(e);if(e.isMathOn(this.op)){if(t="./"===this.op?"/":this.op,i instanceof X&&n instanceof f&&(i=i.toColor()),n instanceof X&&i instanceof f&&(n=n.toColor()),!i.operate){if(i instanceof te&&"/"===i.op&&e.math===ee.PARENS_DIVISION)return new te(this.op,[i,n],this.isSpaced);throw{type:"Operation",message:"Operation on an invalid type"}}return i.operate(e,t,n)}return new te(this.op,[i,n],this.isSpaced)},te.prototype.genCSS=function(e,t){this.operands[0].genCSS(e,t),this.isSpaced&&t.add(" "),t.add(this.op),this.isSpaced&&t.add(" "),this.operands[1].genCSS(e,t)},te.prototype.type="Operation";var ie=b,ne=function(e,t){if(this.value=e,this.noSpacing=t,!e)throw new Error("Expression requires an array parameter")};(ne.prototype=new c).accept=function(e){this.value=e.visitArray(this.value)},ne.prototype.eval=function(e){var t,i=e.isMathOn(),n=this.parens&&(e.math!==ie.STRICT_LEGACY||!this.parensInOp),r=!1;return n&&e.inParenthesis(),this.value.length>1?t=new ne(this.value.map((function(t){return t.eval?t.eval(e):t})),this.noSpacing):1===this.value.length?(!this.value[0].parens||this.value[0].parensInOp||e.inCalc||(r=!0),t=this.value[0].eval(e)):t=this,n&&e.outOfParenthesis(),!this.parens||!this.parensInOp||i||r||t instanceof X||(t=new v(t)),t},ne.prototype.genCSS=function(e,t){for(var i=0;i1){var i=new F([],null,null,this.getIndex(),this.fileInfo()).createEmptySelectors();(t=new Q(i,e.mediaBlocks)).multiMedia=!0,t.copyVisibilityInfo(this.visibilityInfo()),this.setParent(t,this)}return delete e.mediaBlocks,delete e.mediaPath,t},ce.prototype.evalNested=function(e){var t,i,n=e.mediaPath.concat([this]);for(t=0;t0;t--)e.splice(t,0,new L("and"));return new ne(e)}))),this.setParent(this.features,this),new Q([],[])},ce.prototype.permute=function(e){if(0===e.length)return[];if(1===e.length)return e[0];for(var t=[],i=this.permute(e.slice(1)),n=0;n1?"["+e.value.map((function(e){return e.toCSS()})).join(", ")+"]":e.toCSS()};var de=function(e,t,i,n){this.escaped=t,this.expression=e,this._index=i,this._fileInfo=n};(de.prototype=new pe).eval=function(e){var t=this.evaluateJavaScript(this.expression,e),i=typeof t;return"number"!==i||isNaN(t)?"string"===i?new ue('"'+t+'"',t,this.escaped,this._index):Array.isArray(t)?new L(t.join(", ")):new L(t):new X(t)},de.prototype.type="JavaScript";var ve=function(e,t){this.key=e,this.value=t};(ve.prototype=new c).accept=function(e){this.value=e.visit(this.value)},ve.prototype.eval=function(e){return this.value.eval?new ve(this.key,this.value.eval(e)):this},ve.prototype.genCSS=function(e,t){t.add(this.key+"="),this.value.genCSS?this.value.genCSS(e,t):t.add(this.value)},ve.prototype.type="Assignment";var me=function(e,t,i,n,r){this.op=e.trim(),this.lvalue=t,this.rvalue=i,this._index=n,this.negate=r};(me.prototype=new c).accept=function(e){this.lvalue=e.visit(this.lvalue),this.rvalue=e.visit(this.rvalue)},me.prototype.eval=function(e){var t=function(e,t,i){switch(e){case"and":return t&&i;case"or":return t||i;default:switch(c.compare(t,i)){case-1:return"<"===e||"=<"===e||"<="===e;case 0:return"="===e||">="===e||"=<"===e||"<="===e;case 1:return">"===e||">="===e;default:return!1}}}(this.op,this.lvalue.eval(e),this.rvalue.eval(e));return this.negate?!t:t},me.prototype.type="Condition";var ge=function(e){this.value=e};(ge.prototype=new c).type="UnicodeDescriptor";var ye=function(e){this.value=e};(ye.prototype=new c).genCSS=function(e,t){t.add("-"),this.value.genCSS(e,t)},ye.prototype.eval=function(e){return e.isMathOn()?new te("*",[new X(-1),this.value]).eval(e):new ye(this.value.eval(e))},ye.prototype.type="Negative";var be=function(e,t,i,n,r){switch(this.selector=e,this.option=t,this.object_id=be.next_id++,this.parent_ids=[this.object_id],this._index=i,this._fileInfo=n,this.copyVisibilityInfo(r),this.allowRoot=!0,t){case"all":this.allowBefore=!0,this.allowAfter=!0;break;default:this.allowBefore=!1,this.allowAfter=!1}this.setParent(this.selector,this)};be.prototype=new c,be.prototype.accept=function(e){this.selector=e.visit(this.selector)},be.prototype.eval=function(e){return new be(this.selector.eval(e),this.option,this.getIndex(),this.fileInfo(),this.visibilityInfo())},be.prototype.clone=function(e){return new be(this.selector,this.option,this.getIndex(),this.fileInfo(),this.visibilityInfo())},be.prototype.findSelfSelectors=function(e){var t,i,n=[];for(t=0;t0&&i.length&&""===i[0].combinator.value&&(i[0].combinator.value=" "),n=n.concat(e[t].elements);this.selfSelectors=[new F(n)],this.selfSelectors[0].copyVisibilityInfo(this.visibilityInfo())},be.next_id=0,be.prototype.type="Extend";var we=function(e,t,i){this.variable=e,this._index=t,this._fileInfo=i,this.allowRoot=!0};(we.prototype=new c).eval=function(e){var t,i=new oe(this.variable,this.getIndex(),this.fileInfo()).eval(e),n=new R({message:"Could not evaluate variable call "+this.variable});if(!i.ruleset){if(i.rules)t=i;else if(Array.isArray(i))t=new Q("",i);else{if(!Array.isArray(i.value))throw n;t=new Q("",i.value)}i=new Z(t)}if(i.ruleset)return i.callEval(e);throw n},we.prototype.type="VariableCall";var xe=function(e,t,i,n){this.value=e,this.lookups=t,this._index=i,this._fileInfo=n};(xe.prototype=new c).eval=function(e){var t,i,n=this.value.eval(e);for(t=0;tthis.params.length)return!1}i=Math.min(s,this.arity);for(var o=0;o0){for(h=!0,a=0;a0)f=2;else if(f=1,p[1]+p[2]>1)throw{type:"Runtime",message:"Ambiguous use of `default()` found when matching for `"+this.format(m)+"`",index:this.getIndex(),filename:this.fileInfo().filename};for(a=0;a=0;o--){var a=s[o];if(a[r?"supportsSync":"supports"](e,t,i,n))return a}return null},e.prototype.addFileManager=function(e){this.fileManagers.push(e)},e.prototype.clearFileManagers=function(){this.fileManagers=[]},e}(),Ae=function(){function e(){}return e.prototype.getPath=function(e){var t=e.lastIndexOf("?");return t>0&&(e=e.slice(0,t)),(t=e.lastIndexOf("/"))<0&&(t=e.lastIndexOf("\\")),t<0?"":e.slice(0,t+1)},e.prototype.tryAppendExtension=function(e,t){return/(\.[a-z]*$)|([\?;].*)$/.test(e)?e:e+t},e.prototype.tryAppendLessExtension=function(e){return this.tryAppendExtension(e,".less")},e.prototype.supportsSync=function(){return!1},e.prototype.alwaysMakePathsAbsolute=function(){return!1},e.prototype.isPathAbsolute=function(e){return/^(?:[a-z-]+:|\/|\\|#)/i.test(e)},e.prototype.join=function(e,t){return e?e+t:t},e.prototype.pathDiff=function(e,t){var i,n,r,s,o=this.extractUrlParts(e),a=this.extractUrlParts(t),l="";if(o.hostPart!==a.hostPart)return"";for(n=Math.max(a.directories.length,o.directories.length),i=0;iparseInt(t[i])?-1:1;return 0},e.prototype.versionToString=function(e){for(var t="",i=0;i0;){var e=this.imports[0];if(!e.isReady)return;this.imports=this.imports.slice(1),e.callback.apply(null,e.args)}if(0===this.variableImports.length)break;var t=this.variableImports[0];this.variableImports=this.variableImports.slice(1),t()}}finally{this._currentDepth--}0===this._currentDepth&&this._onSequencerEmpty&&this._onSequencerEmpty()},e}(),$e=function(e,t){this._visitor=new Ve(this),this._importer=e,this._finish=t,this.context=new q.Eval,this.importCount=0,this.onceFileDetectionMap={},this.recursionDetector={},this._sequencer=new Fe(this._onSequencerEmpty.bind(this))};$e.prototype={isReplacing:!1,run:function(e){try{this._visitor.visit(e)}catch(e){this.error=e}this.isFinished=!0,this._sequencer.tryRun()},_onSequencerEmpty:function(){this.isFinished&&this._finish(this.error)},visitImport:function(e,t){var i=e.options.inline;if(!e.css||i){var n=new q.Eval(this.context,C(this.context.frames)),r=n.frames[0];this.importCount++,e.isVariableImport()?this._sequencer.addVariableImport(this.processImportNode.bind(this,e,n,r)):this.processImportNode(e,n,r)}t.visitDeeper=!1},processImportNode:function(e,t,i){var n,r=e.options.inline;try{n=e.evalForImport(t)}catch(t){t.filename||(t.index=e.getIndex(),t.filename=e.fileInfo().filename),e.css=!0,e.error=t}if(!n||n.css&&!r)this.importCount--,this.isFinished&&this._sequencer.tryRun();else{n.options.multiple&&(t.importMultiple=!0);for(var s=void 0===n.css,o=0;o=0||(a=[u.selfSelectors[0]],(s=f.findMatch(l,a)).length&&(l.hasFoundMatches=!0,l.selfSelectors.forEach((function(e){var t=u.visibilityInfo();o=f.extendSelector(s,a,e,l.isVisible()),(h=new Ce.Extend(u.selector,u.option,0,u.fileInfo(),t)).selfSelectors=o,o[o.length-1].extendList=[h],c.push(h),h.ruleset=u.ruleset,h.parent_ids=h.parent_ids.concat(u.parent_ids,l.parent_ids),u.firstExtendOnThisSelectorPath&&(h.firstExtendOnThisSelectorPath=!0,u.ruleset.paths.push(o))}))));if(c.length){if(this.extendChainCount++,i>100){var p="{unable to calculate}",d="{unable to calculate}";try{p=c[0].selfSelectors[0].toCSS(),d=c[0].selector.toCSS()}catch(e){}throw{message:"extend circular reference detected. One of the circular extends is currently:"+p+":extend("+d+")"}}return c.concat(f.doExtendChaining(c,t,i+1))}return c},e.prototype.visitDeclaration=function(e,t){t.visitDeeper=!1},e.prototype.visitMixinDefinition=function(e,t){t.visitDeeper=!1},e.prototype.visitSelector=function(e,t){t.visitDeeper=!1},e.prototype.visitRuleset=function(e,t){if(!e.root){var i,n,r,s,o=this.allExtendsStack[this.allExtendsStack.length-1],a=[],l=this;for(r=0;r0&&u[l.matched].combinator.value!==o?l=null:l.matched++,l&&(l.finished=l.matched===u.length,l.finished&&!e.allowAfter&&(r+1u&&h>0&&(c[c.length-1].elements=c[c.length-1].elements.concat(t[u].elements.slice(h)),h=0,u++),l=s.elements.slice(h,a.index).concat([o]).concat(i.elements.slice(1)),u===a.pathIndex&&r>0?c[c.length-1].elements=c[c.length-1].elements.concat(l):(c=c.concat(t.slice(u,a.pathIndex))).push(new Ce.Selector(l)),u=a.endPathIndex,(h=a.endPathElementIndex)>=t[u].elements.length&&(h=0,u++);return u0&&(c[c.length-1].elements=c[c.length-1].elements.concat(t[u].elements.slice(h)),u++),c=(c=c.concat(t.slice(u,t.length))).map((function(e){var t=e.createDerived(e.elements);return n?t.ensureVisibility():t.ensureInvisibility(),t}))},e.prototype.visitMedia=function(e,t){var i=e.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length-1]);i=i.concat(this.doExtendChaining(i,e.allExtends)),this.allExtendsStack.push(i)},e.prototype.visitMediaOut=function(e){var t=this.allExtendsStack.length-1;this.allExtendsStack.length=t},e.prototype.visitAtRule=function(e,t){var i=e.allExtends.concat(this.allExtendsStack[this.allExtendsStack.length-1]);i=i.concat(this.doExtendChaining(i,e.allExtends)),this.allExtendsStack.push(i)},e.prototype.visitAtRuleOut=function(e){var t=this.allExtendsStack.length-1;this.allExtendsStack.length=t},e}(),Ne=function(){function e(){this.contexts=[[]],this._visitor=new Ve(this)}return e.prototype.run=function(e){return this._visitor.visit(e)},e.prototype.visitDeclaration=function(e,t){t.visitDeeper=!1},e.prototype.visitMixinDefinition=function(e,t){t.visitDeeper=!1},e.prototype.visitRuleset=function(e,t){var i,n=this.contexts[this.contexts.length-1],r=[];this.contexts.push(r),e.root||((i=e.selectors)&&(i=i.filter((function(e){return e.getIsOutput()})),e.selectors=i.length?i:i=null,i&&e.joinSelectors(r,n,i)),i||(e.rules=null),e.paths=r)},e.prototype.visitRulesetOut=function(e){this.contexts.length=this.contexts.length-1},e.prototype.visitMedia=function(e,t){var i=this.contexts[this.contexts.length-1];e.rules[0].root=0===i.length||i[0].multiMedia},e.prototype.visitAtRule=function(e,t){var i=this.contexts[this.contexts.length-1];e.rules&&e.rules.length&&(e.rules[0].root=e.isRooted||0===i.length||null)},e}(),Be=function(){function e(e){this._visitor=new Ve(this),this._context=e}return e.prototype.containsSilentNonBlockedChild=function(e){var t;if(!e)return!1;for(var i=0;i0},e.prototype.resolveVisibility=function(e,t){if(!e.blocksVisibility()){if(this.isEmpty(e)&&!this.containsSilentNonBlockedChild(t))return;return e}var i=e.rules[0];if(this.keepOnlyVisibleChilds(i),!this.isEmpty(i))return e.ensureVisibility(),e.removeVisibilityBlock(),e},e.prototype.isVisibleRuleset=function(e){return!!e.firstRoot||!this.isEmpty(e)&&!(!e.root&&!this.hasVisibleSelector(e))},e}(),Ue=function(e){this._visitor=new Ve(this),this._context=e,this.utils=new Be(e)};Ue.prototype={isReplacing:!0,run:function(e){return this._visitor.visit(e)},visitDeclaration:function(e,t){if(!e.blocksVisibility()&&!e.variable)return e},visitMixinDefinition:function(e,t){e.frames=[]},visitExtend:function(e,t){},visitComment:function(e,t){if(!e.blocksVisibility()&&!e.isSilent(this._context))return e},visitMedia:function(e,t){var i=e.rules[0].rules;return e.accept(this._visitor),t.visitDeeper=!1,this.utils.resolveVisibility(e,i)},visitImport:function(e,t){if(!e.blocksVisibility())return e},visitAtRule:function(e,t){return e.rules&&e.rules.length?this.visitAtRuleWithBody(e,t):this.visitAtRuleWithoutBody(e,t)},visitAnonymous:function(e,t){if(!e.blocksVisibility())return e.accept(this._visitor),e},visitAtRuleWithBody:function(e,t){var i=function(e){var t=e.rules;return function(e){var t=e.rules;return 1===t.length&&(!t[0].paths||0===t[0].paths.length)}(e)?t[0].rules:t}(e);return e.accept(this._visitor),t.visitDeeper=!1,this.utils.isEmpty(e)||this._mergeRules(e.rules[0].rules),this.utils.resolveVisibility(e,i)},visitAtRuleWithoutBody:function(e,t){if(!e.blocksVisibility()){if("@charset"===e.name){if(this.charset){if(e.debugInfo){var i=new Ce.Comment("/* "+e.toCSS(this._context).replace(/\n/g,"")+" */\n");return i.debugInfo=e.debugInfo,this._visitor.visit(i)}return}this.charset=!0}return e}},checkValidNodes:function(e,t){if(e)for(var i=0;i0?e.accept(this._visitor):e.rules=null,t.visitDeeper=!1}return e.rules&&(this._mergeRules(e.rules),this._removeDuplicateRules(e.rules)),this.utils.isVisibleRuleset(e)&&(e.ensureVisibility(),n.splice(0,0,e)),1===n.length?n[0]:n},_compileRulesetPaths:function(e){e.paths&&(e.paths=e.paths.filter((function(e){var t;for(" "===e[0].elements[0].combinator.value&&(e[0].elements[0].combinator=new Ce.Combinator("")),t=0;t=0;n--)if((i=e[n])instanceof Ce.Declaration)if(r[i.name]){(t=r[i.name])instanceof Ce.Declaration&&(t=r[i.name]=[r[i.name].toCSS(this._context)]);var s=i.toCSS(this._context);-1!==t.indexOf(s)?e.splice(n,1):t.push(s)}else r[i.name]=i}},_mergeRules:function(e){if(e){for(var t={},i=[],n=0;n0){var t=e[0],i=[],n=[new Ce.Expression(i)];e.forEach((function(e){"+"===e.merge&&i.length>0&&n.push(new Ce.Expression(i=[])),i.push(e.value),t.important=t.important||e.important})),t.value=new Ce.Value(n)}}))}}};var qe={Visitor:Ve,ImportVisitor:$e,MarkVisibleSelectorsVisitor:Oe,ExtendVisitor:De,JoinSelectorVisitor:Ne,ToCSSVisitor:Ue},je=function(){var e,t,i,n,r,s,o,a=[],l={};function u(i){for(var n,a,h,c=l.i,f=t,p=l.i-o,d=l.i+s.length-p,v=l.i+=i,m=e;l.i=0){h={index:l.i,text:m.substr(l.i,y+2-l.i),isLineComment:!1},l.i+=h.text.length-1,l.commentStore.push(h);continue}}break}if(32!==n&&10!==n&&9!==n&&13!==n)break}if(s=s.slice(i+l.i-v+p),o=l.i,!s.length){if(ti||l.i===i&&e&&!n)&&(i=l.i,n=e);var r=a.pop();s=r.current,o=l.i=r.i,t=r.j},l.forget=function(){a.pop()},l.isWhitespace=function(t){var i=l.i+(t||0),n=e.charCodeAt(i);return 32===n||13===n||9===n||10===n},l.$re=function(e){l.i>o&&(s=s.slice(l.i-o),o=l.i);var t=e.exec(s);return t?(u(t[0].length),"string"==typeof t?t:1===t.length?t[0]:t):null},l.$char=function(t){return e.charAt(l.i)!==t?null:(u(1),t)},l.$str=function(t){for(var i=t.length,n=0;nc&&(v=!1)}}while(v);return r||null},l.autoCommentAbsorb=!0,l.commentStore=[],l.finished=!1,l.peek=function(t){if("string"==typeof t){for(var i=0;i57||t<43||47===t||44===t},l.start=function(n,a,h){e=n,l.i=t=o=i=0,r=a?function(e,t){var i,n,r,s,o,a,l,u,h,c=e.length,f=0,p=0,d=[],v=0;function m(t){var i=o-v;i<512&&!t||!i||(d.push(e.slice(v,o+1)),v=o+1)}for(o=0;o=97&&l<=122||l<34))switch(l){case 40:p++,n=o;continue;case 41:if(--p<0)return t("missing opening `(`",o);continue;case 59:p||m();continue;case 123:f++,i=o;continue;case 125:if(--f<0)return t("missing opening `{`",o);f||p||m();continue;case 92:if(o96)){if(u==l){h=1;break}if(92==u){if(o==c-1)return t("unescaped `\\`",o);o++}}if(h)continue;return t("unmatched `"+String.fromCharCode(l)+"`",a);case 47:if(p||o==c-1)continue;if(47==(u=e.charCodeAt(o+1)))for(o+=2;oi&&s>r?"missing closing `}` or `*/`":"missing closing `}`",i):0!==p?t("missing closing `)`",n):(m(!0),d)}(n,h):[n],s=r[0],u(0)},l.end=function(){var t,r=l.i>=e.length;return l.i=e.length-1,furthestChar:e[l.i]}},l},Te=function e(t,i,n){var r,s=je();function o(e,t){throw new R({index:s.i,filename:n.filename,type:t||"Syntax",message:e},i)}function a(e,t){var i=e instanceof Function?e.call(r):s.$re(e);if(i)return i;o(t||("string"==typeof e?"expected '"+e+"' got '"+s.currentChar()+"'":"unexpected token"))}function l(e,t){if(s.$char(e))return e;o(t||"expected '"+e+"' got '"+s.currentChar()+"'")}function u(e){var t=n.filename;return{lineNumber:I(e,s.getInput()).line+1,fileName:t}}return{parserInput:s,imports:i,fileInfo:n,parseNode:function(e,t,n,o,a){var l,u=[],h=s;try{h.start(e,!1,(function(e,t){a({message:e,index:t+n})}));for(var c=0,f=void 0,p=void 0;f=t[c];c++)if(p=h.i,l=r[f]()){try{l._index=p+n,l._fileInfo=o}catch(e){}u.push(l)}else u.push(null);h.end().isFinished?a(null,u):a(!0,null)}catch(e){throw new R({index:e.index+n,message:e.message},i,o.filename)}},parse:function(r,o,a){var l,u,h,c,f=null,p="";if(u=a&&a.globalVars?e.serializeVars(a.globalVars)+"\n":"",h=a&&a.modifyVars?"\n"+e.serializeVars(a.modifyVars):"",t.pluginManager)for(var d=t.pluginManager.getPreProcessors(),v=0;v");return e},args:function(e){var t,i,n,a,l,u,h,c=r.entities,f={args:null,variadic:!1},p=[],d=[],v=[],m=!0;for(s.save();;){if(e)u=r.detachedRuleset()||r.expression();else{if(s.commentStore.length=0,s.$str("...")){f.variadic=!0,s.$char(";")&&!t&&(t=!0),(t?d:v).push({variadic:!0});break}u=c.variable()||c.property()||c.literal()||c.keyword()||this.call(!0)}if(!u||!m)break;a=null,u.throwAwayComments&&u.throwAwayComments(),l=u;var g=null;if(e?u.value&&1==u.value.length&&(g=u.value[0]):g=u,g&&(g instanceof Ce.Variable||g instanceof Ce.Property))if(s.$char(":")){if(p.length>0&&(t&&o("Cannot mix ; and , as delimiter types"),i=!0),!(l=r.detachedRuleset()||r.expression())){if(!e)return s.restore(),f.args=[],f;o("could not understand value for named argument")}a=n=g.name}else if(s.$str("...")){if(!e){f.variadic=!0,s.$char(";")&&!t&&(t=!0),(t?d:v).push({name:u.name,variadic:!0});break}h=!0}else e||(n=a=g.name,l=null);l&&p.push(l),v.push({name:a,value:l,expand:h}),s.$char(",")?m=!0:((m=";"===s.$char(";"))||t)&&(i&&o("Cannot mix ; and , as delimiter types"),t=!0,p.length>1&&(l=new Ce.Value(p)),d.push({name:n,value:l,expand:h}),n=null,p=[],i=!1)}return s.forget(),f.args=t?d:v,f},definition:function(){var e,t,i,n,o=[],l=!1;if(!("."!==s.currentChar()&&"#"!==s.currentChar()||s.peek(/^[^{]*\}/)))if(s.save(),t=s.$re(/^([#.](?:[\w-]|\\(?:[A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9]))+)\s*\(/)){e=t[1];var u=this.args(!1);if(o=u.args,l=u.variadic,!s.$char(")"))return void s.restore("Missing closing ')'");if(s.commentStore.length=0,s.$str("when")&&(n=a(r.conditions,"expected condition")),i=r.block())return s.forget(),new Ce.mixin.Definition(e,o,i,n,l);s.restore()}else s.restore()},ruleLookups:function(){var e,t=[];if("["===s.currentChar()){for(;;){if(s.save(),!(e=this.lookupValue())&&""!==e){s.restore();break}t.push(e),s.forget()}return t.length>0?t:void 0}},lookupValue:function(){if(s.save(),s.$char("[")){var e=s.$re(/^(?:[@$]{0,2})[_a-zA-Z0-9-]*/);if(s.$char("]"))return e||""===e?(s.forget(),e):void s.restore();s.restore()}else s.restore()}},entity:function(){var e=this.entities;return this.comment()||e.literal()||e.variable()||e.url()||e.property()||e.call()||e.keyword()||this.mixin.call(!0)||e.javascript()},end:function(){return s.$char(";")||s.peek("}")},ieAlpha:function(){var e;if(s.$re(/^opacity=/i))return(e=s.$re(/^\d+/))||(e="@{"+(e=a(r.entities.variable,"Could not parse alpha")).name.slice(1)+"}"),l(")"),new Ce.Quoted("","alpha(opacity="+e+")")},element:function(){var e,t,i,r=s.i;if(t=this.combinator(),(e=s.$re(/^(?:\d+\.\d+|\d+)%/)||s.$re(/^(?:[.#]?|:*)(?:[\w-]|[^\x00-\x9f]|\\(?:[A-Fa-f0-9]{1,6} ?|[^A-Fa-f0-9]))+/)||s.$char("*")||s.$char("&")||this.attribute()||s.$re(/^\([^&()@]+\)/)||s.$re(/^[\.#:](?=@)/)||this.entities.variableCurly())||(s.save(),s.$char("(")?(i=this.selector(!1))&&s.$char(")")?(e=new Ce.Paren(i),s.forget()):s.restore("Missing closing ')'"):s.forget()),e)return new Ce.Element(t,e,e instanceof Ce.Variable,r,n)},combinator:function(){var e=s.currentChar();if("/"===e){s.save();var t=s.$re(/^\/[a-z]+\//i);if(t)return s.forget(),new Ce.Combinator(t);s.restore()}if(">"===e||"+"===e||"~"===e||"|"===e||"^"===e){for(s.i++,"^"===e&&"^"===s.currentChar()&&(e="^^",s.i++);s.isWhitespace();)s.i++;return new Ce.Combinator(e)}return s.isWhitespace(-1)?new Ce.Combinator(" "):new Ce.Combinator(null)},selector:function(e){var t,i,r,l,u,h,c,f=s.i;for(e=!1!==e;(e&&(i=this.extend())||e&&(h=s.$str("when"))||(l=this.element()))&&(h?c=a(this.conditions,"expected condition"):c?o("CSS guard can only be used at the end of selector"):i?u=u?u.concat(i):i:(u&&o("Extend can only be used at the end of selector"),r=s.currentChar(),t?t.push(l):t=[l],l=null),"{"!==r&&"}"!==r&&";"!==r&&","!==r&&")"!==r););if(t)return new Ce.Selector(t,u,c,f,n);u&&o("Extend must be used to extend a selector, it cannot be used on its own")},selectors:function(){for(var e,t;(e=this.selector())&&(t?t.push(e):t=[e],s.commentStore.length=0,e.condition&&t.length>1&&o("Guards are only currently allowed on a single selector."),s.$char(","));)e.condition&&o("Guards are only currently allowed on a single selector."),s.commentStore.length=0;return t},attribute:function(){if(s.$char("[")){var e,t,i,n=this.entities;return(e=n.variableCurly())||(e=a(/^(?:[_A-Za-z0-9-\*]*\|)?(?:[_A-Za-z0-9-]|\\.)+/)),(i=s.$re(/^[|~*$^]?=/))&&(t=n.quoted()||s.$re(/^[0-9]+%/)||s.$re(/^[\w-]+/)||n.variableCurly()),l("]"),new Ce.Attribute(e,i,t)}},block:function(){var e;if(s.$char("{")&&(e=this.primary())&&s.$char("}"))return e},blockRuleset:function(){var e=this.block();return e&&(e=new Ce.Ruleset(null,e)),e},detachedRuleset:function(){var e,t,i;if(s.save(),!s.$re(/^[.#]\(/)||(t=(e=this.mixin.args(!1)).args,i=e.variadic,s.$char(")"))){var n=this.blockRuleset();if(n)return s.forget(),t?new Ce.mixin.Definition(null,t,n,null,i):new Ce.DetachedRuleset(n);s.restore()}else s.restore()},ruleset:function(){var e,i,n;if(s.save(),t.dumpLineNumbers&&(n=u(s.i)),(e=this.selectors())&&(i=this.block())){s.forget();var r=new Ce.Ruleset(e,i,t.strictImports);return t.dumpLineNumbers&&(r.debugInfo=n),r}s.restore()},declaration:function(){var e,t,i,r,o,a,l=s.i,u=s.currentChar();if("."!==u&&"#"!==u&&"&"!==u&&":"!==u)if(s.save(),e=this.variable()||this.ruleProperty()){if((a="string"==typeof e)&&(t=this.detachedRuleset())&&(i=!0),s.commentStore.length=0,!t){if(o=!a&&e.length>1&&e.pop().value,t=e[0].value&&"--"===e[0].value.slice(0,2)?this.permissiveValue():this.anonymousValue())return s.forget(),new Ce.Declaration(e,t,!1,o,l,n);t||(t=this.value()),t?r=this.important():a&&(t=this.permissiveValue())}if(t&&(this.end()||i))return s.forget(),new Ce.Declaration(e,t,r,o,l,n);s.restore()}else s.restore()},anonymousValue:function(){var e=s.i,t=s.$re(/^([^.#@\$+\/'"*`(;{}-]*);/);if(t)return new Ce.Anonymous(t[1],e)},permissiveValue:function(e){var t,i,r,a,l=e||";",u=s.i,h=[];function c(){var e=s.currentChar();return"string"==typeof l?e===l:l.test(e)}if(!c()){a=[];do{((i=this.comment())||(i=this.entity()))&&a.push(i)}while(i);if(r=c(),a.length>0){if(a=new Ce.Expression(a),r)return a;h.push(a)," "===s.prevChar()&&h.push(new Ce.Anonymous(" ",u))}if(s.save(),a=s.$parseUntil(l)){if("string"==typeof a&&o("Expected '"+a+"'","Parse"),1===a.length&&" "===a[0])return s.forget(),new Ce.Anonymous("",u);var f=void 0;for(t=0;t0)return new Ce.Expression(r)},mediaFeatures:function(){var e,t=this.entities,i=[];do{if(e=this.mediaFeature()){if(i.push(e),!s.$char(","))break}else if((e=t.variable()||t.mixinLookup())&&(i.push(e),!s.$char(",")))break}while(e);return i.length>0?i:null},media:function(){var e,i,r,a,l=s.i;if(t.dumpLineNumbers&&(a=u(l)),s.save(),s.$str("@media"))return e=this.mediaFeatures(),(i=this.block())||o("media definitions require block statements after any features"),s.forget(),r=new Ce.Media(i,e,l,n),t.dumpLineNumbers&&(r.debugInfo=a),r;s.restore()},plugin:function(){var e,t,i,r=s.i;if(s.$re(/^@plugin?\s+/)){if(i=(t=this.pluginArgs())?{pluginArgs:t,isPlugin:!0}:{isPlugin:!0},e=this.entities.quoted()||this.entities.url())return s.$char(";")||(s.i=r,o("missing semi-colon on @plugin")),new Ce.Import(e,null,i,r,n);s.i=r,o("malformed @plugin statement")}},pluginArgs:function(){if(s.save(),!s.$char("("))return s.restore(),null;var e=s.$re(/^\s*([^\);]+)\)\s*/);return e[1]?(s.forget(),e[1].trim()):(s.restore(),null)},atrule:function(){var e,i,r,a,l,h,c,f=s.i,p=!0,d=!0;if("@"===s.currentChar()){if(i=this.import()||this.plugin()||this.media())return i;if(s.save(),e=s.$re(/^@[a-z-]+/)){switch(a=e,"-"==e.charAt(1)&&e.indexOf("-",2)>0&&(a="@"+e.slice(e.indexOf("-",2)+1)),a){case"@charset":l=!0,p=!1;break;case"@namespace":h=!0,p=!1;break;case"@keyframes":case"@counter-style":l=!0;break;case"@document":case"@supports":c=!0,d=!1;break;default:c=!0}if(s.commentStore.length=0,l?(i=this.entity())||o("expected "+e+" identifier"):h?(i=this.expression())||o("expected "+e+" expression"):c&&(i=this.permissiveValue(/^[{;]/),p="{"===s.currentChar(),i?i.value||(i=null):p||";"===s.currentChar()||o(e+" rule is missing block or ending semi-colon")),p&&(r=this.blockRuleset()),r||!p&&i&&s.$char(";"))return s.forget(),new Ce.AtRule(e,i,r,f,n,t.dumpLineNumbers?u(f):null,d);s.restore("at-rule options not recognised")}}},value:function(){var e,t=[],i=s.i;do{if((e=this.expression())&&(t.push(e),!s.$char(",")))break}while(e);if(t.length>0)return new Ce.Value(t,i)},important:function(){if("!"===s.currentChar())return s.$re(/^! *important/)},sub:function(){var e,t;if(s.save(),s.$char("("))return(e=this.addition())&&s.$char(")")?(s.forget(),(t=new Ce.Expression([e])).parens=!0,t):void s.restore("Expected ')'");s.restore()},multiplication:function(){var e,t,i,n,r;if(e=this.operand()){for(r=s.isWhitespace(-1);!s.peek(/^\/[*\/]/);){if(s.save(),!(i=s.$char("/")||s.$char("*")||s.$str("./"))){s.forget();break}if(!(t=this.operand())){s.restore();break}s.forget(),e.parensInOp=!0,t.parensInOp=!0,n=new Ce.Operation(i,[n||e,t],r),r=s.isWhitespace(-1)}return n||e}},addition:function(){var e,t,i,n,r;if(e=this.multiplication()){for(r=s.isWhitespace(-1);(i=s.$re(/^[-+]\s+/)||!r&&(s.$char("+")||s.$char("-")))&&(t=this.multiplication());)e.parensInOp=!0,t.parensInOp=!0,n=new Ce.Operation(i,[n||e,t],r),r=s.isWhitespace(-1);return n||e}},conditions:function(){var e,t,i,n=s.i;if(e=this.condition(!0)){for(;s.peek(/^,\s*(not\s*)?\(/)&&s.$char(",")&&(t=this.condition(!0));)i=new Ce.Condition("or",i||e,t,n);return i||e}},condition:function(e){var t,i,n;if(t=this.conditionAnd(e)){if(i=s.$str("or")){if(!(n=this.condition(e)))return;t=new Ce.Condition(i,t,n)}return t}},conditionAnd:function(e){var t,i,n,r,o=this;if(t=(r=o.negatedCondition(e)||o.parenthesisCondition(e))||e?r:o.atomicCondition(e)){if(i=s.$str("and")){if(!(n=this.conditionAnd(e)))return;t=new Ce.Condition(i,t,n)}return t}},negatedCondition:function(e){if(s.$str("not")){var t=this.parenthesisCondition(e);return t&&(t.negate=!t.negate),t}},parenthesisCondition:function(e){var t;if(s.save(),s.$str("(")){if(t=function(t){var i;if(s.save(),i=t.condition(e)){if(s.$char(")"))return s.forget(),i;s.restore()}else s.restore()}(this))return s.forget(),t;if(t=this.atomicCondition(e)){if(s.$char(")"))return s.forget(),t;s.restore("expected ')' got '"+s.currentChar()+"'")}else s.restore()}else s.restore()},atomicCondition:function(e){var t,i,n,r,a=this.entities,l=s.i;function u(){return this.addition()||a.keyword()||a.quoted()||a.mixinLookup()}if(t=(u=u.bind(this))())return s.$char(">")?r=s.$char("=")?">=":">":s.$char("<")?r=s.$char("=")?"<=":"<":s.$char("=")&&(r=s.$char(">")?"=>":s.$char("<")?"=<":"="),r?(i=u())?n=new Ce.Condition(r,t,i,l,!1):o("expected expression"):n=new Ce.Condition("=",t,new Ce.Keyword("true"),l,!1),n},operand:function(){var e,t=this.entities;s.peek(/^-[@\$\(]/)&&(e=s.$char("-"));var i=this.sub()||t.dimension()||t.color()||t.variable()||t.property()||t.call()||t.quoted(!0)||t.colorKeyword()||t.mixinLookup();return e&&(i.parensInOp=!0,i=new Ce.Negative(i)),i},expression:function(){var e,t,i=[],n=s.i;do{(e=this.comment())?i.push(e):((e=this.addition()||this.entity())instanceof Ce.Comment&&(e=null),e&&(i.push(e),s.peek(/^\/[\/*]/)||(t=s.$char("/"))&&i.push(new Ce.Anonymous(t,n))))}while(e);if(i.length>0)return new Ce.Expression(i)},property:function(){var e=s.$re(/^(\*?-?[_a-zA-Z0-9-]+)\s*:/);if(e)return e[1]},ruleProperty:function(){var e,t,i=[],r=[];s.save();var o=s.$re(/^([_a-zA-Z0-9-]+)\s*:/);if(o)return i=[new Ce.Keyword(o[1])],s.forget(),i;function a(e){var t=s.i,n=s.$re(e);if(n)return r.push(t),i.push(n[1])}for(a(/^(\*?)/);a(/^((?:[\w-]+)|(?:[@\$]\{[\w-]+\}))/););if(i.length>1&&a(/^((?:\+_|\+)?)\s*:/)){for(s.forget(),""===i[0]&&(i.shift(),r.shift()),t=0;t1?e-1:e)<1?r+(s-r)*e*6:2*e<1?s:3*e<2?r+(s-r)*(2/3-e)*6:r}e=Ze(e)%360/360,t=Je(Ze(t)),i=Je(Ze(i)),n=Je(Ze(n)),r=2*i-(s=i<=.5?i*(t+1):i+t-i*t);var a=[255*o(e+1/3),255*o(e),255*o(e-1/3)];return n=Ze(n),new f(a,n,"hsla")}catch(e){}},hsv:function(e,t,i){return Ge.hsva(e,t,i,1)},hsva:function(e,t,i,n){var r,s;e=Ze(e)%360/360*360,t=Ze(t),i=Ze(i),n=Ze(n);var o=[i,i*(1-t),i*(1-(s=e/60-(r=Math.floor(e/60%6)))*t),i*(1-(1-s)*t)],a=[[0,3,1],[2,0,1],[1,0,3],[1,2,0],[3,1,0],[0,1,2]];return Ge.rgba(255*o[a[r][0]],255*o[a[r][1]],255*o[a[r][2]],n)},hue:function(e){return new X(Qe(e).h)},saturation:function(e){return new X(100*Qe(e).s,"%")},lightness:function(e){return new X(100*Qe(e).l,"%")},hsvhue:function(e){return new X(Ke(e).h)},hsvsaturation:function(e){return new X(100*Ke(e).s,"%")},hsvvalue:function(e){return new X(100*Ke(e).v,"%")},red:function(e){return new X(e.rgb[0])},green:function(e){return new X(e.rgb[1])},blue:function(e){return new X(e.rgb[2])},alpha:function(e){return new X(Qe(e).a)},luma:function(e){return new X(e.luma()*e.alpha*100,"%")},luminance:function(e){var t=.2126*e.rgb[0]/255+.7152*e.rgb[1]/255+.0722*e.rgb[2]/255;return new X(t*e.alpha*100,"%")},saturate:function(e,t,i){if(!e.rgb)return null;var n=Qe(e);return void 0!==i&&"relative"===i.value?n.s+=n.s*t.value/100:n.s+=t.value/100,n.s=Je(n.s),He(e,n)},desaturate:function(e,t,i){var n=Qe(e);return void 0!==i&&"relative"===i.value?n.s-=n.s*t.value/100:n.s-=t.value/100,n.s=Je(n.s),He(e,n)},lighten:function(e,t,i){var n=Qe(e);return void 0!==i&&"relative"===i.value?n.l+=n.l*t.value/100:n.l+=t.value/100,n.l=Je(n.l),He(e,n)},darken:function(e,t,i){var n=Qe(e);return void 0!==i&&"relative"===i.value?n.l-=n.l*t.value/100:n.l-=t.value/100,n.l=Je(n.l),He(e,n)},fadein:function(e,t,i){var n=Qe(e);return void 0!==i&&"relative"===i.value?n.a+=n.a*t.value/100:n.a+=t.value/100,n.a=Je(n.a),He(e,n)},fadeout:function(e,t,i){var n=Qe(e);return void 0!==i&&"relative"===i.value?n.a-=n.a*t.value/100:n.a-=t.value/100,n.a=Je(n.a),He(e,n)},fade:function(e,t){var i=Qe(e);return i.a=t.value/100,i.a=Je(i.a),He(e,i)},spin:function(e,t){var i=Qe(e),n=(i.h+t.value)%360;return i.h=n<0?360+n:n,He(e,i)},mix:function(e,t,i){i||(i=new X(50));var n=i.value/100,r=2*n-1,s=Qe(e).a-Qe(t).a,o=((r*s==-1?r:(r+s)/(1+r*s))+1)/2,a=1-o,l=[e.rgb[0]*o+t.rgb[0]*a,e.rgb[1]*o+t.rgb[1]*a,e.rgb[2]*o+t.rgb[2]*a],u=e.alpha*n+t.alpha*(1-n);return new f(l,u)},greyscale:function(e){return Ge.desaturate(e,new X(100))},contrast:function(e,t,i,n){if(!e.rgb)return null;if(void 0===i&&(i=Ge.rgba(255,255,255,1)),void 0===t&&(t=Ge.rgba(0,0,0,1)),t.luma()>i.luma()){var r=i;i=t,t=r}return n=void 0===n?.43:Ze(n),e.luma().5&&(n=1,i=e>.25?Math.sqrt(e):((16*e-12)*e+4)*e),e-(1-2*t)*n*(i-e)},hardlight:function(e,t){return et.overlay(t,e)},difference:function(e,t){return Math.abs(e-t)},exclusion:function(e,t){return e+t-2*e*t},average:function(e,t){return(e+t)/2},negation:function(e,t){return 1-Math.abs(e+t-1)}};for(var tt in et)et.hasOwnProperty(tt)&&(Xe[tt]=Xe.bind(null,et[tt]));var it=function(e){return Array.isArray(e.value)?e.value:Array(e)},nt={_SELF:function(e){return e},extract:function(e,t){return t=t.value-1,it(e)[t]},length:function(e){return new X(it(e).length)},range:function(e,t,i){var n,r,s=1,o=[];t?(r=t,n=e.value,i&&(s=i.value)):(n=1,r=e);for(var a=n;a<=r.value;a+=s)o.push(new X(a,r.unit));return new ne(o)},each:function(e,t){var i,n,r=this,s=[],o=function(e){return e instanceof c?e.eval(r.context):e};n=!e.value||e instanceof ue?e.ruleset?o(e.ruleset).rules:e.rules?e.rules.map(o):Array.isArray(e)?e.map(o):[o(e)]:Array.isArray(e.value)?e.value.map(o):[o(e.value)];var a="@value",l="@key",u="@index";t.params?(a=t.params[0]&&t.params[0].name,l=t.params[1]&&t.params[1].name,u=t.params[2]&&t.params[2].name,t=t.rules):t=t.ruleset;for(var h=0;ho.value)&&(h[n]=r);else{if(void 0!==l&&a!==l)throw{type:"Argument",message:"incompatible types"};c[a]=h.length,h.push(r)}else Array.isArray(t[i].value)&&Array.prototype.push.apply(t,Array.prototype.slice.call(t[i].value));return 1==h.length?h[0]:(t=h.map((function(e){return e.toCSS(this.context)})).join(this.context.compress?",":", "),new L((e?"min":"max")+"("+t+")"))},lt={min:function(){for(var e=[],t=0;t",r=0;r";return n+="',n=encodeURIComponent(n),new he(new ue("'"+(n="data:image/svg+xml,"+n)+"'",n,!1,this.index,this.currentFileInfo),this.index,this.currentFileInfo)}}),J.addMultiple(ft),t},dt=function(e,t){var i;void 0===t&&(t={});var n=t.variables,r=new q.Eval(t);"object"!=typeof n||Array.isArray(n)||(n=Object.keys(n).map((function(e){var t=n[e];return t instanceof Ce.Value||(t instanceof Ce.Expression||(t=new Ce.Expression([t])),t=new Ce.Value([t])),new Ce.Declaration("@"+e,t,!1,null,0)})),r.frames=[new Ce.Ruleset(null,n)]);var s,o,a=[new qe.JoinSelectorVisitor,new qe.MarkVisibleSelectorsVisitor(!0),new qe.ExtendVisitor,new qe.ToCSSVisitor({compress:Boolean(t.compress)})],l=[];if(t.pluginManager){o=t.pluginManager.visitor();for(var u=0;u<2;u++)for(o.first();s=o.get();)s.isPreEvalVisitor?0!==u&&-1!==l.indexOf(s)||(l.push(s),s.run(e)):0!==u&&-1!==a.indexOf(s)||(s.isPreVisitor?a.unshift(s):a.push(s))}i=e.eval(r);for(u=0;u=t);i++);this.preProcessors.splice(i,0,{preProcessor:e,priority:t})},e.prototype.addPostProcessor=function(e,t){var i;for(i=0;i=t);i++);this.postProcessors.splice(i,0,{postProcessor:e,priority:t})},e.prototype.addFileManager=function(e){this.fileManagers.push(e)},e.prototype.getPreProcessors=function(){for(var e=[],t=0;t0){var n=void 0,r=JSON.stringify(this._sourceMapGenerator.toJSON());this.sourceMapURL?n=this.sourceMapURL:this._sourceMapFilename&&(n=this._sourceMapFilename),this.sourceMapURL=n,this.sourceMap=r}return this._css.join("")},t}()}(e=new _e(e,t)),r=function(e,t){return function(){function i(e){this.options=e}return i.prototype.toCSS=function(t,i,n){var r=new e({contentsIgnoredCharsMap:n.contentsIgnoredChars,rootNode:t,contentsMap:n.contents,sourceMapFilename:this.options.sourceMapFilename,sourceMapURL:this.options.sourceMapURL,outputFilename:this.options.sourceMapOutputFilename,sourceMapBasepath:this.options.sourceMapBasepath,sourceMapRootpath:this.options.sourceMapRootpath,outputSourceFiles:this.options.outputSourceFiles,sourceMapGenerator:this.options.sourceMapGenerator,sourceMapFileInline:this.options.sourceMapFileInline,disableSourcemapAnnotation:this.options.disableSourcemapAnnotation}),s=r.toCSS(i);return this.sourceMap=r.sourceMap,this.sourceMapURL=r.sourceMapURL,this.options.sourceMapInputFilename&&(this.sourceMapInputFilename=r.normalizeFilename(this.options.sourceMapInputFilename)),void 0!==this.options.sourceMapBasepath&&void 0!==this.sourceMapURL&&(this.sourceMapURL=r.removeBasepath(this.sourceMapURL)),s+this.getCSSAppendage()},i.prototype.getCSSAppendage=function(){var e=this.sourceMapURL;if(this.options.sourceMapFileInline){if(void 0===this.sourceMap)return"";e="data:application/json;base64,"+t.encodeBase64(this.sourceMap)}return this.options.disableSourcemapAnnotation?"":e?"/*# sourceMappingURL="+e+" */":""},i.prototype.getExternalSourceMap=function(){return this.sourceMap},i.prototype.setExternalSourceMap=function(e){this.sourceMap=e},i.prototype.isInline=function(){return this.options.sourceMapFileInline},i.prototype.getSourceMapURL=function(){return this.sourceMapURL},i.prototype.getOutputFilename=function(){return this.options.sourceMapOutputFilename},i.prototype.getInputFilename=function(){return this.sourceMapInputFilename},i}()}(n,e),s=function(e){return function(){function t(e,t){this.root=e,this.imports=t}return t.prototype.toCSS=function(t){var i,n,r={};try{i=dt(this.root,t)}catch(e){throw new R(e,this.imports)}try{var s=Boolean(t.compress);s&&ke.warn("The compress option has been deprecated. We recommend you use a dedicated css minifier, for instance see less-plugin-clean-css.");var o={compress:s,dumpLineNumbers:t.dumpLineNumbers,strictUnits:Boolean(t.strictUnits),numPrecision:8};t.sourceMap?(n=new e(t.sourceMap),r.css=n.toCSS(i,o,this.imports)):r.css=i.toCSS(o)}catch(e){throw new R(e,this.imports)}if(t.pluginManager)for(var a=t.pluginManager.getPostProcessors(),l=0;l=200&&t.status<300?i(t.responseText,t.getResponseHeader("Last-Modified")):"function"==typeof n&&n(t.status,e)}"function"==typeof r.overrideMimeType&&r.overrideMimeType("text/css"),bt.debug("XHR: Getting '"+e+"'"),r.open("GET",e,s),r.setRequestHeader("Accept",t||"text/x-less, text/css; q=0.9, */*; q=0.5"),r.send(null),yt.isFileProtocol&&!yt.fileAsync?0===r.status||r.status>=200&&r.status<300?i(r.responseText):n(r.status,e):s?r.onreadystatechange=function(){4==r.readyState&&o(r,i,n)}:o(r,i,n)},t.prototype.supports=function(){return!0},t.prototype.clearFileCache=function(){xt={}},t.prototype.loadFile=function(e,t,i,n){t&&!this.isPathAbsolute(e)&&(e=t+e),e=i.ext?this.tryAppendExtension(e,i.ext):e,i=i||{};var r=this.extractUrlParts(e,window.location.href).url,s=this;return new Promise((function(e,t){if(i.useFileCache&&xt[r])try{var n=xt[r];return e({contents:n,filename:r,webInfo:{lastModified:new Date}})}catch(e){return t({filename:r,message:"Error loading file "+r+" error was "+e.message})}s.doXHR(r,i.mime,(function(t,i){xt[r]=t,e({contents:t,filename:r,webInfo:{lastModified:i}})}),(function(e,i){t({type:"File",message:"'"+i+"' wasn't found ("+e+")",href:r})}))}))},t}(Ae),It=function(e,t){return yt=e,bt=t,St},Ct=function(e){function t(t){var i=e.call(this)||this;return i.less=t,i}return s(t,e),t.prototype.loadPlugin=function(e,t,i,n,r){return new Promise((function(s,o){r.loadFile(e,t,i,n).then(s).catch(o)}))},t}(Me),kt=function(t,n,r){return{add:function(s,o){r.errorReporting&&"html"!==r.errorReporting?"console"===r.errorReporting?function(e,t){var i=e.filename||t,s=[],o=(e.type||"Syntax")+"Error: "+(e.message||"There is an error in your .less file")+" in "+i,a=function(e,t,i){void 0!==e.extract[t]&&s.push("{line} {content}".replace(/\{line\}/,(parseInt(e.line,10)||0)+(t-1)).replace(/\{class\}/,i).replace(/\{content\}/,e.extract[t]))};e.line&&(a(e,0,""),a(e,1,"line"),a(e,2,""),o+=" on line "+e.line+", column "+(e.column+1)+":\n"+s.join("\n")),e.stack&&(e.extract||r.logLevel>=4)&&(o+="\nStack Trace\n"+e.stack),n.logger.error(o)}(s,o):"function"==typeof r.errorReporting&&r.errorReporting("add",s,o):function(n,s){var o,a,l="less-error-message:"+e(s||""),u=t.document.createElement("div"),h=[],c=n.filename||s,f=c.match(/([^\/]+(\?.*)?)$/)[1];u.id=l,u.className="less-error-message",a="

"+(n.type||"Syntax")+"Error: "+(n.message||"There is an error in your .less file")+'

in '+f+" ";var p=function(e,t,i){void 0!==e.extract[t]&&h.push('

  • {content}
  • '.replace(/\{line\}/,(parseInt(e.line,10)||0)+(t-1)).replace(/\{class\}/,i).replace(/\{content\}/,e.extract[t]))};n.line&&(p(n,0,""),p(n,1,"line"),p(n,2,""),a+="on line "+n.line+", column "+(n.column+1)+":

      "+h.join("")+"
    "),n.stack&&(n.extract||r.logLevel>=4)&&(a+="
    Stack Trace
    "+n.stack.split("\n").slice(1).join("
    ")),u.innerHTML=a,i(t.document,[".less-error-message ul, .less-error-message li {","list-style-type: none;","margin-right: 15px;","padding: 4px 0;","margin: 0;","}",".less-error-message label {","font-size: 12px;","margin-right: 15px;","padding: 4px 0;","color: #cc7777;","}",".less-error-message pre {","color: #dd6666;","padding: 4px 0;","margin: 0;","display: inline-block;","}",".less-error-message pre.line {","color: #ff0000;","}",".less-error-message h3 {","font-size: 20px;","font-weight: bold;","padding: 15px 0 5px 0;","margin: 0;","}",".less-error-message a {","color: #10a","}",".less-error-message .error {","color: red;","font-weight: bold;","padding-bottom: 2px;","border-bottom: 1px dashed red;","}"].join("\n"),{title:"error-message"}),u.style.cssText=["font-family: Arial, sans-serif","border: 1px solid #e00","background-color: #eee","border-radius: 5px","-webkit-border-radius: 5px","-moz-border-radius: 5px","color: #e00","padding: 15px","margin-bottom: 15px"].join(";"),"development"===r.env&&(o=setInterval((function(){var e=t.document,i=e.body;i&&(e.getElementById(l)?i.replaceChild(u,e.getElementById(l)):i.insertBefore(u,i.firstChild),clearInterval(o))}),10))}(s,o)},remove:function(i){r.errorReporting&&"html"!==r.errorReporting?"console"===r.errorReporting||"function"==typeof r.errorReporting&&r.errorReporting("remove",i):function(i){var n=t.document.getElementById("less-error-message:"+e(i));n&&n.parentNode.removeChild(n)}(i)}}},_t={javascriptEnabled:!1,depends:!1,compress:!1,lint:!1,paths:[],color:!0,strictImports:!1,insecure:!1,rootpath:"",rewriteUrls:!1,math:0,strictUnits:!1,globalVars:null,modifyVars:null,urlArgs:""};if(window.less)for(var At in window.less)window.less.hasOwnProperty(At)&&(_t[At]=window.less[At]);!function(e,i){t(i,n(e)),void 0===i.isFileProtocol&&(i.isFileProtocol=/^(file|(chrome|safari)(-extension)?|resource|qrc|app):/.test(e.location.protocol)),i.async=i.async||!1,i.fileAsync=i.fileAsync||!1,i.poll=i.poll||(i.isFileProtocol?1e3:1500),i.env=i.env||("127.0.0.1"==e.location.hostname||"0.0.0.0"==e.location.hostname||"localhost"==e.location.hostname||e.location.port&&e.location.port.length>0||i.isFileProtocol?"development":"production");var r=/!dumpLineNumbers:(comments|mediaquery|all)/.exec(e.location.hash);r&&(i.dumpLineNumbers=r[1]),void 0===i.useFileCache&&(i.useFileCache=!0),void 0===i.onReady&&(i.onReady=!0),i.relativeUrls&&(i.rewriteUrls="all")}(window,_t),_t.plugins=_t.plugins||[],window.LESS_PLUGINS&&(_t.plugins=_t.plugins.concat(window.LESS_PLUGINS));var Mt,Pt,Et,Rt=function(e,n){var r=e.document,s=wt();s.options=n;var o=s.environment,a=It(n,s.logger),l=new a;o.addFileManager(l),s.FileManager=a,s.PluginLoader=Ct,function(e,t){t.logLevel=void 0!==t.logLevel?t.logLevel:"development"===t.env?3:1,t.loggers||(t.loggers=[{debug:function(e){t.logLevel>=4&&console.log(e)},info:function(e){t.logLevel>=3&&console.log(e)},warn:function(e){t.logLevel>=2&&console.warn(e)},error:function(e){t.logLevel>=1&&console.error(e)}}]);for(var i=0;i + diff --git a/images/contactpic.svg b/images/contactpic.svg index bee89c5..ea0dfe9 100644 --- a/images/contactpic.svg +++ b/images/contactpic.svg @@ -1,3 +1,3 @@ - + diff --git a/images/google-icon.svg b/images/google-icon.svg new file mode 100644 index 0000000..e2c39ed --- /dev/null +++ b/images/google-icon.svg @@ -0,0 +1 @@ + diff --git a/images/microsoft-icon.svg b/images/microsoft-icon.svg new file mode 100644 index 0000000..25bec39 --- /dev/null +++ b/images/microsoft-icon.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/meta.json b/meta.json index bd814ad..0dd9a49 100644 --- a/meta.json +++ b/meta.json @@ -5,11 +5,13 @@ "license": "Creative Commons Attribution-ShareAlike", "license-url": "http://creativecommons.org/licenses/by-sa/3.0/", "config": { - "layout": "widescreen", + "supported_layouts": ["widescreen"], "jquery_ui_colors_theme": "bootstrap", "embed_css_location": "/styles/embed.css", "editor_css_location": "/styles/embed.css", - "media_browser_css_location": "none" + "dark_mode_support": true, + "media_browser_css_location": "none", + "additional_logo_types": ["dark", "small", "small-dark"] }, "meta": { "viewport": "width=device-width, initial-scale=1.0, shrink-to-fit=no, maximum-scale=1.0", diff --git a/styles/_variables.less b/styles/_variables.less deleted file mode 100644 index ef97192..0000000 --- a/styles/_variables.less +++ /dev/null @@ -1 +0,0 @@ -/* Here you can re-define any of variables from variables.less, colors.less and fontawesome.less */ diff --git a/styles/colors.less b/styles/colors.less index 5e756f5..857c257 100644 --- a/styles/colors.less +++ b/styles/colors.less @@ -56,7 +56,8 @@ @color-taskmenu-button-background-hover: lighten(@color-taskmenu-background, 10%); @color-taskmenu-button-action-background-hover: @color-taskmenu-button-background-hover; -@color-taskmenu-button-special-background-hover:lighten(@color-taskmenu-button-special-background, 10%); +// @color-taskmenu-button-special-background-hover:lighten(@color-taskmenu-button-special-background, 10%); +@color-taskmenu-button-logout: @color-error; @color-taskmenu-button-logout-hover: @color-error; @@ -194,6 +195,9 @@ @color-mail-signature: @color-black-shade-text; @color-mail-headers: @color-black-shade-text; +@color-messagepart-border: #f4f4f4; +@color-messagepart-background: #fcfcfc; + @color-spellcheck-link: @color-error; @color-table-border: @color-layout-border; @@ -210,8 +214,68 @@ @color-datepicker-active-background: @color-main; +// HTML editor +@color-editor-disabled-mask: fadeout(lighten(@color-black, 85), 10); + + // Image tools @color-image-tools: #fff; @color-image-tools-background: fadeout(@color-main, 60%); @color-image-tools-hover: fadeout(@color-main, 50%); + +// Dark mode colors +@color-dark-main: darken(@color-main, 30%); +@color-dark-background: #21292c; +@color-dark-font: #c5d1d3; +@color-dark-border: #4d6066; +@color-dark-hint: darken(@color-dark-font, 20%); +@color-dark-information: shade(@color-main, 40%); +@color-dark-success: shade(@color-success, 40%); +@color-dark-warning: shade(@color-warning, 40%); +@color-dark-error: shade(@color-error, 40%); + +@color-dark-list-selected: @color-main; +@color-dark-list-selected-background: #374549; +@color-dark-list-badge: lighten(@color-dark-font, 10%); +@color-dark-list-badge-background: @color-dark-border; +@color-dark-list-deleted: darken(@color-dark-hint, 15%); +@color-dark-list-droptarget-background: #4d4d00; +@color-dark-list-border: #2c373a; + +@color-dark-input: @color-dark-font; +@color-dark-input-border: #7c949c; +@color-dark-input-background: @color-dark-background; +@color-dark-input-focus: #e2e7e9; +@color-dark-input-border-focus: @color-main; +@color-dark-input-background-focus: lighten(@color-dark-background, 5%); +@color-dark-input-addon-background: #374549; +@color-dark-input-addon-background-focus: lighten(@color-dark-list-selected-background, 15%); +@color-dark-checkbox: @color-dark-border; +@color-dark-checkbox-checked: @color-dark-main; + +@color-dark-btn: lighten(@color-dark-font, 10%); +@color-dark-btn-primary-background: @color-dark-main; +@color-dark-btn-secondary-background: @color-dark-border; +@color-dark-btn-danger-background: @color-dark-error; + +@color-dark-dialog-overlay-background: fade(black, 70%); + +@color-dark-popover-background: #161b1d; +@color-dark-popover-border: lighten(#161b1d, 50%); + +@color-dark-message-information: @color-dark-information; +@color-dark-message-success: @color-dark-success; +@color-dark-message-warning: @color-dark-warning; +@color-dark-message-error: @color-dark-error; +@color-dark-message-loading: lighten(@color-dark-background, 10%); + +@color-dark-scrollbar-thumb: @color-dark-main; +@color-dark-scrollbar-track: @color-dark-border; + +@color-dark-blockquote-0: lighten(@color-main, 10%); +@color-dark-blockquote-1: lighten(@color-success, 10%); +@color-dark-blockquote-2: lighten(@color-error, 10%); +@color-dark-blockquote-0-border: @color-dark-blockquote-0; +@color-dark-blockquote-1-border: @color-dark-blockquote-1; +@color-dark-blockquote-2-border: @color-dark-blockquote-2; diff --git a/styles/dark.less b/styles/dark.less new file mode 100644 index 0000000..3cb5939 --- /dev/null +++ b/styles/dark.less @@ -0,0 +1,1148 @@ +/** + * Roundcube webmail styles for the Elastic skin + * + * Copyright (c) The Roundcube Dev Team + * + * The contents are subject to the Creative Commons Attribution-ShareAlike + * License. It is allowed to copy, distribute, transmit and to adapt the work + * by keeping credits to the original authors in the README.md file. + * See http://creativecommons.org/licenses/by-sa/3.0/ for details. + */ + +@import (reference) "variables"; + +html.dark-mode { + scrollbar-color: @color-dark-scrollbar-thumb @color-dark-scrollbar-track; + scrollbar-width: thin; + + textarea, + select, + .popover-body, + .popupmenu, + .ui-dialog-content, + .frame-content, + .formcontent, + .table-responsive, + .table-responsive-sm, + .scroller { + // Firefox does not inherit scrollbar size from the html element + scrollbar-width: thin; + } + + &:not(.touch) { + ::-webkit-scrollbar { + width: 6px; + } + + ::-webkit-scrollbar-track { + background-color: @color-dark-border; + } + + ::-webkit-scrollbar-thumb { + background-color: @color-dark-main; + } + } + + body { + color: @color-dark-font; + background-color: @color-dark-background; + } + + #logo { + // FIXME: is there a better way to make the logo darker? + // `mix-blend-mode: soft-light` makes it slightly too dark + opacity: .8; + } + + #layout-list, + #layout-content, + #layout-sidebar, + #layout > div > .header, + #layout > div > .footer, + .popup .listbox .footer, + .menu.pagenav.pagenav-list, + .menu.pagenav.pagenav-list + .navlist, + .menu.pagenav.pagenav-list.expanded + .navlist { + background-color: transparent; + border-color: @color-dark-border; + } + + #layout > div > .footer { + font-weight: normal; + } + + #layout > div > .header, + #layout > div > .footer { + color: unset; + + a.button { + color: @color-dark-font; + } + } + + #layout-menu { + background: unset; + border-right: 1px solid @color-dark-border; + + .popover-header, + .special-buttons { + background: transparent !important; + } + + @media screen and (max-width: @screen-width-xs) { + border-left: 0; + + .popover-header { + border-bottom: 1px solid @color-dark-border; + } + } + + .special-buttons a:not(:focus) { + background: @color-dark-background; + } + } + + &.layout-phone #layout-menu { + background: @color-dark-popover-background; + } + + .searchbar { + background-color: transparent; + border-color: @color-dark-border; + + form:before, + a, + input { + color: unset; + } + + a.selected { + color: @color-success; + } + } + + #messagestack { + div { + color: @color-dark-font; + + i.icon:before { + color: @color-dark-font; + } + } + } + + .ui.alert.boxinformation, + #messagestack .alert-info { + background-color: @color-dark-message-information; + } + + .ui.alert.boxerror, + #messagestack .alert-danger { + background-color: @color-dark-message-error; + } + + .ui.alert.boxwarning, + #messagestack .alert-warning { + background-color: @color-dark-message-warning; + } + + .ui.alert.boxconfirmation, + #messagestack .alert-success { + background-color: @color-dark-message-success; + } + + #messagestack .loading { + background-color: @color-dark-message-loading; + } + + .ui.alert.boxinformation, + .ui.alert.boxerror, + .ui.alert.boxwarning, + .ui.alert.boxconfirmation { + color: @color-dark-font; + i.icon:before { + color: @color-dark-font; + } + } + + .ui.alert a:not(.btn) { + color: @color-dark-font; + text-decoration: underline; + } + + .iframe-loader { + background-color: fadeout(@color-dark-background, 10%); + + .spinner-border { + color: darken(@color-dark-font, 25%); + border-color: currentColor darken(@color-dark-font, 50%) currentColor currentColor; + } + } + + #taskmenu a, + .menu.toolbar a { + color: @color-dark-font; + + &.selected { + background-color: @color-dark-list-selected-background; + } + } + + pre, + .popover .menu li a[aria-haspopup]::after, + .menu.pagenav .pagenav-text, + .menu.pagenav a { + color: unset; + } + + #taskmenu { + .action-buttons a { + color: @color-main; + } + + a { + @media screen and (max-width: @screen-width-xs) { + border-color: @color-dark-list-border !important; + + &.selected { + background: transparent; + } + } + + @media screen and (min-width: (@screen-width-xs + 1px)) and (max-width: @screen-width-medium) { + width: @layout-menu-width-sm - 1px; + } + + @media screen and (min-width: (@screen-width-medium + 1px)) { + width: @layout-menu-width - 1px; + } + } + } + + &.layout-small, + &.layout-phone { + .popover { + border-left: 1px solid @color-dark-border; + + .menu .dropbutton a.dropdown { + background: transparent; + } + + &:not(.select-menu) .listing li:last-child { + border-color: @color-dark-list-border; + } + } + + .popover-header { + background: @color-dark-popover-background; + border-bottom: 1px solid @color-dark-border; + color: unset; + } + + .popover-overlay { + background: @color-dark-dialog-overlay-background; + } + } + + #taskmenu a:hover, + .popupmenu .listing li > a:not(.disabled):hover, + .header a.button.icon:not(.disabled):focus, + .header a.button.icon:not(.disabled):hover, + .menu.toolbar .dropbutton:not(.disabled):hover, + .menu a:not(.disabled):focus, + .menu a:not(.disabled):hover { + background-color: @color-dark-list-selected-background; + } + + .menu.toolbar a.selected { + color: @color-success; + background: transparent; + } + + .menu.toolbar .dropbutton a.dropdown:hover { + background-color: lighten(@color-dark-list-selected-background, 5%); + } + + // --------------------------------- + // Lists + // --------------------------------- + + .listing tbody td, + .listing tbody td a, + .listing li a { + color: @color-dark-font; + } + + .listing li ul, + .listing tbody td, + .listing li { + border-color: @color-dark-list-border; + } + + .listing li.selected, + .listing li.selected > a, + .listing li.selected > div > a, // this is used e.g. by kolab_addressbook + .listing tr.selected td { + color: @color-dark-list-selected; + background-color: @color-dark-list-selected-background; + } + + .listing li.selected ul { + background-color: @color-dark-background; + + div.treetoggle { + color: @color-dark-font; + } + } + + .listing { + li.disabled, + tr.disabled td { + color: @color-dark-list-deleted; + } + } + + .listing li.droptarget > a, + .listing tr.droptarget > td { + background-color: @color-dark-list-droptarget-background; + } + + .messagelist { + color: @color-dark-font; + + tr:not(.flagged):not(.deleted) { + td.subject { + span.size, + span.date, + span.fromto { + color: @color-dark-hint; + } + + span.msgicon.status { + color: @color-dark-font; + + &.unread::before { + color: darken(@color-warning, 30%); + } + } + } + + span.flag { + color: @color-dark-font; + } + + &.selected { + td.subject { + a, + span.msgicon.status { + color: @color-dark-list-selected; + } + } + } + } + + tr.flagged:not(.deleted) { + td, + span.attachment span { + color: @color-list-flagged; + } + } + + tr.deleted { + td span.flag, + td span.attachment span, + td.subject span.msgicon.status, + td.subject span.msgicon.status.unread:before, + td.subject span.subject a, + td.subject span.date, + td.subject span.fromto { + color: @color-dark-list-deleted; + } + } + + span.attachment span { + color: @color-dark-hint; + } + } + + .folderlist li.mailbox .unreadcount { + background-color: @color-dark-list-badge-background; + color: @color-dark-list-badge; + font-weight: normal; + } + + .attachmentslist { + background-color: @color-dark-list-selected-background; + border: 0; + + a { + color: @color-dark-font; + } + + li { + .attachment-name { + color: @color-dark-font; + } + + .attachment-size { + color: @color-dark-hint; + } + } + } + // --------------------------------- + // Buttons & Forms + // --------------------------------- + + .btn { + color: @color-dark-font; + + &:focus, + &:hover { + color: @color-dark-btn; + } + + &:disabled { + opacity: .5 !important; + } + } + + .btn-primary { + background-color: @color-dark-btn-primary-background; + color: @color-dark-btn; + + &:hover:not(:disabled) { + background-color: lighten(@color-dark-btn-primary-background, 5%); + } + } + + .btn-secondary { + background-color: @color-dark-btn-secondary-background; + color: @color-dark-btn; + + &:hover:not(:disabled) { + background-color: lighten(@color-dark-btn-secondary-background, 5%); + } + } + + .btn-danger { + background-color: @color-dark-btn-danger-background; + color: @color-dark-btn; + + &:hover:not(:disabled) { + background-color: lighten(@color-dark-btn-danger-background, 5%); + } + } + + .floating-action-buttons a.button { + box-shadow: none; + background: @color-dark-main; + } + + .custom-file-label, + .form-control { + background-color: @color-dark-input-background; + color: @color-dark-input; + + &:not(.is-invalid) { + border-color: @color-dark-input-border; + } + + &:focus { + background-color: @color-dark-input-background-focus; + + &:not(.is-invalid) { + color: @color-dark-input-focus !important; + border-color: @color-dark-input-border-focus; + } + } + } + + .custom-file-label::after { + color: @color-dark-input; + background-color: @color-dark-input-addon-background; + } + + .custom-select { + @color-arrow: escape(~"@{color-dark-input}"); + background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='@{color-arrow}' viewBox='0 0 4 5'%3e%3cpath d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right .75rem center/8px 10px; + } + + .custom-switch { + .custom-control-label::before { + background-color: @color-dark-checkbox; + } + + .custom-control-label::after { + background-color: @color-dark-font; + } + + .custom-control-input:disabled ~ .custom-control-label { + opacity: .4; + } + + .custom-control-input:checked { + & ~ .custom-control-label::before { + background-color: @color-dark-checkbox-checked; + } + + & ~ .custom-control-label::after { + background-color: @color-dark-font; + } + } + } + + input:disabled, + select:disabled { + opacity: .5; + } + + .multi-input:not(.is-invalid) > .content { + border-color: @color-dark-input-border; + + &.focused { + border-color: @color-dark-input-border-focus; + } + } + + .input-group-text { + color: @color-dark-input; + background-color: @color-dark-input-addon-background; + border-color: @color-dark-input-border; + } + + .input-group a:focus { + border-color: @color-dark-input-border-focus; + box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow; + z-index: 1; + } + + .form-control-plaintext { + color: unset; + } + + .recipient-input { + &.focus { + color: @color-dark-input-focus; + background-color: @color-dark-input-background-focus; + border-color: @color-dark-input-border-focus; + } + + a.button.icon, + input { + color: @color-dark-input; + } + + .recipient { + background-color: @color-dark-input-addon-background; + border-color: @color-dark-input-border; + } + } + + .file-upload { + border-color: @color-dark-border; + + &:after { + mix-blend-mode: soft-light; + } + + &.droptarget { + &.active { + border-color: @color-dark-font; + } + + &.hover { + border-color: @color-dark-font; + background-color: @color-dark-list-selected-background; + } + } + + .attachmentslist { + background: transparent; + } + } + + .image-upload { + background-color: @color-dark-list-selected-background; + + a.button { + background-color: fadeout(@color-dark-background, 75%); + } + } + + .formcontent.raweditor { + .CodeMirror { + color: @color-dark-input; + background-color: @color-dark-input-background; + border-color: @color-dark-input-border; + } + + .CodeMirror-focused { + background-color: @color-dark-input-background-focus; + border-color: @color-dark-input-border-focus; + } + } + + .CodeMirror-selected, + .CodeMirror-line::selection, + .CodeMirror-line > span::selection, + .CodeMirror-line > span > span::selection { + background: @color-dark-list-selected-background; + } + + .CodeMirror-gutters { + background-color: darken(@color-dark-list-selected-background, 10%); + border: 0; + } + + .CodeMirror-activeline-background { + background: @color-dark-list-selected-background; + } + + .skinselection .skinthumbnail { + border-color: @color-dark-input-border; + background: transparent; + } + + // --------------------------------- + // HTML Editor (TinyMCE) + // --------------------------------- + + .html-editor { + .editor-toolbar { + background-color: @color-dark-input-addon-background; + border-color: @color-dark-input-border; + + .mce-i-html { + color: unset; + + &:hover, + &:focus { + background-color: @color-dark-input-addon-background-focus; + border-color: transparent; + } + } + } + } + + .tox { + &.tox-tinymce { + border-color: @color-dark-input-border; + } + + .tox-toolbar { + background-color: @color-dark-input-addon-background; + border-color: @color-dark-input-border; + } + + .tox-toolbar-overlord > div { + @color-overlord-border: escape(~"@{color-dark-input-border}"); + background: url("data:image/svg+xml,%3Csvg height='33px' viewBox='0 0 40 33px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='32px' width='100' height='1' fill='@{color-overlord-border}'/%3E%3C/svg%3E") @color-dark-input-addon-background; + } + + .tox-pop.tox-pop--top { + &:before, + &:after { + border-bottom-color: @color-dark-popover-border; + } + } + + .tox-pop__dialog { + box-shadow: none; + border-color: @color-dark-popover-border; + } + + .tox-tbtn, + .tox-split-button, + .tox-swatches__picker-btn { + color: @color-dark-font; + + svg { + fill: @color-dark-font !important; + } + + &:hover, + &:focus { + color: @color-dark-font; + background: @color-dark-input-addon-background-focus; + box-shadow: none; + } + } + + .tox-tbtn--enabled { + background: @color-dark-input-addon-background-focus; + } + + .tox-button--naked { + &:focus:not(:disabled), + &.tox-button--icon:hover:not(:disabled) { + color: lighten(@color-dark-font, 5%); + background-color: @color-dark-input-addon-background-focus; + border-color: transparent; + } + + &:disabled { + background: transparent; + border: transparent; + } + } + + .tox-dialog__header .tox-button--naked:hover { + background: transparent !important; + } + + .tox-selectfield { + select { + background: transparent; + color: @color-dark-input; + } + + svg { + fill: @color-dark-input; + } + } + + .tox-color-input span::before { + background-color: @color-dark-font; + } + + .tox-toolbar__group:not(:last-of-type) { + border-color: @color-dark-input-border; + } + + .tox-dialog, + .tox-dialog__header, + .tox-dialog__body, + .tox-dialog__footer, + .tox-dialog__title { + color: @color-dark-font; + border-color: @color-dark-border; + background-color: @color-dark-background; + } + + .tox-textfield, + .tox-color-input > input, + .tox-label, + .tox-dialog__body-nav-item, + .tox-button--naked, + .tox-dialog__header .tox-button, + .tox-insert-table-picker__label { + color: @color-dark-font; + } + + .tox-dialog__footer .tox-button { + background-color: @color-dark-btn-primary-background; + color: @color-dark-btn; + + &:disabled { + opacity: .5; + } + + @media screen and (max-width: @screen-width-xs) { + color: @color-dark-font !important; + } + + &:focus:not(:disabled) { + background-color: @color-dark-btn-primary-background; + } + + &:hover:not(:disabled) { + background-color: lighten(@color-dark-btn-primary-background, 5%); + } + + &.tox-button--secondary { + background-color: @color-dark-btn-secondary-background; + color: @color-dark-btn; + + &:focus:not(:disabled) { + background-color: @color-dark-btn-secondary-background; + } + + &:hover:not(:disabled) { + background-color: lighten(@color-dark-btn-secondary-background, 5%); + } + + } + } + + .tox-dialog__body-nav-item--active { + color: @color-main; + } + + .tox-dialog-wrap__backdrop { + background-color: @color-dark-dialog-overlay-background; + } + + .tox-menu { + scrollbar-width: thin; + background-color: @color-dark-popover-background; + border-color: @color-dark-popover-border; + box-shadow: none; + } + + .tox-dialog__body-nav, + .tox-collection__group { + scrollbar-width: thin; + } + + .tox-collection__item-caret svg { + fill: @color-dark-font; + } + + .tox-collection__item { + color: @color-dark-font; + + &:not(:last-child) { + border-bottom: 1px solid @color-dark-list-border; + } + } + + .tox-collection--grid .tox-collection__item { + border: 0; + } + + .tox-collection__item--active, + .tox-collection__item--active:not(.tox-collection__item--state-disabled) { + color: @color-dark-font; + background-color: @color-dark-list-selected-background; + } + + .tox-collection__item--enabled { + color: @color-dark-list-selected; + background-color: @color-dark-list-selected-background; + } + } + + // --------------------------------- + // Mail preview + // --------------------------------- + + .message-part, + .message-htmlpart { + border-color: @color-dark-border; + + blockquote { + background-color: @color-dark-background; + border-color: @color-dark-blockquote-0-border; + color: @color-dark-blockquote-0; + + span.blockquote-link { + color: currentColor; + background: @color-dark-background; + border-color: currentColor; + } + + blockquote { + color: @color-dark-blockquote-1; + border-color: @color-dark-blockquote-1-border; + + blockquote { + color: @color-dark-blockquote-2; + border-color: @color-dark-blockquote-2-border; + } + } + } + } + + .message-part { + span.sig { + color: @color-dark-hint; + } + } + + .message-htmlpart { + background-color: white; + color: @color-font; + padding: 0; + margin-top: .5rem; + } + + #message-header .header-headers .header-title { + color: @color-dark-font; + font-weight: normal; + } + + .message-partheaders { + background-color: @color-dark-list-selected-background; + border: 0; + + table.headers-table { + color: @color-dark-font; + + * { + font-weight: normal; + } + } + } + + // this is when image thumbnails are enabled + p.image-attachment { + border-color: @color-dark-border; + background-color: @color-dark-list-selected-background; + + span { + color: @color-dark-hint; + } + } + + // this is when image thumbnails are disabled + fieldset.image-attachment { + legend { + color: @color-dark-hint; + border-color: @color-dark-border; + } + } + + // Attachment preview + #messagepartframe { + background: #fff; + } + + // ---------------------------------- + // jQuery-UI widgets' style overrides + // ---------------------------------- + + .ui-widget { + border-color: @color-dark-border; + } + + .ui-widget-overlay { + background-color: @color-dark-dialog-overlay-background; + } + + .ui-widget-header, + .ui-widget-content { + background-color: @color-dark-background; + } + + .ui-dialog { + .ui-dialog-titlebar { + border-color: @color-dark-border; + } + + .ui-dialog-title, + .ui-dialog-titlebar-close { + color: @color-dark-font; + background: transparent; + } + + .ui-dialog-buttonpane { + border-color: @color-dark-border; + + .ui-dialog-buttonset { + a.btn-link { + color: @color-dark-font; + + &:focus { + background: transparent; + } + } + + @media screen and (max-width: @screen-width-xs) { + button.btn-primary:not(.btn-danger), + button.btn-secondary { + color: @color-dark-font; + } + } + } + } + } + + .ui-datepicker { + .ui-datepicker-header { + border-color: @color-dark-border; + } + + th { + color: @color-dark-hint; + font-size: 80%; + font-weight: normal; + } + + .ui-datepicker-prev, + .ui-datepicker-next, + .ui-state-default, + &.ui-widget-content .ui-state-default { + color: @color-dark-font; + } + + .ui-state-highlight, + &.ui-widget-content .ui-state-highlight { + color: @color-main; + background-color: @color-dark-list-selected-background; + } + + .ui-datepicker-days-cell-over a { + background-color: lighten(@color-dark-list-selected-background, 10%); + } + } + + .ui-menu { + scrollbar-width: thin; + background-color: @color-dark-popover-background; + border-color: @color-dark-popover-border; + box-shadow: none; + + .ui-menu-item { + border-bottom: 1px solid @color-dark-list-border; + } + + .ui-state-active { + background-color: @color-dark-list-selected-background !important; + } + } + + .minicolors-panel { + box-shadow: none; + border-color: @color-dark-border; + background: @color-dark-popover-background; + } + + // --------------------------------- + // Other components + // --------------------------------- + + ::placeholder, + ::-webkit-input-placeholder, // Edge + .listing-info, + .listing span.secondary, + .file-upload .hint, + .contactlist span.email, + #login-footer, + #contacthead.readonly .source.row, + .formcontent .hint { + font-weight: normal; + color: @color-dark-hint; + } + + .popover { + background-color: @color-dark-popover-background; + border-color: @color-dark-popover-border; + box-shadow: none; + + .menu li.separator { + background-color: transparent; + color: darken(@color-dark-font, 20%); + } + + .menu ul + li.separator { + border-top: 1px solid @color-dark-list-border; + } + } + + .popover-body { + color: @color-dark-font; + } + + .bs-popover-auto[x-placement^="right"] > .arrow::after, + .bs-popover-right > .arrow::after { + border-right-color: @color-dark-popover-border; + } + + .bs-popover-auto[x-placement^="left"] > .arrow::after, + .bs-popover-left > .arrow::after { + border-left-color: @color-dark-popover-border; + } + + .bs-popover-auto[x-placement^="top"] > .arrow::after, + .bs-popover-top > .arrow::after { + border-top-color: @color-dark-popover-border; + } + + .bs-popover-auto[x-placement^="bottom"] > .arrow::after, + .bs-popover-bottom > .arrow::after { + border-bottom-color: @color-dark-popover-border; + } + + .nav-tabs { + border-color: @color-dark-border; + + .nav-link { + color: @color-dark-font; + border-color: transparent; + border-bottom-color: @color-dark-border; + } + + .nav-link:hover { + background: @color-dark-background; + border-color: @color-dark-border; + color: @color-dark-font; + } + + .nav-link.active { + background: @color-dark-background; + border-color: @color-dark-border; + border-bottom-color: transparent; + color: #fff; + } + } + + .table { + color: @color-dark-font; + + td, + th, + thead th { + border-color: @color-dark-border; + } + } + + .table-widget { + border-color: @color-dark-border; + + & > .footer { + border-color: @color-dark-border; + } + + // Options table is a table with first column for identifier/description + // and other columns for a state flag. E.g. ACL table + table.options-table { + tr:last-child td { + border-color: @color-dark-border; + } + + tr.selected td { + background-color: @color-dark-list-selected-background; + color: @color-dark-font; + } + } + } + + #rcmdraglayer { + background-color: @color-dark-popover-background; + border: 1px solid @color-dark-popover-border; + box-shadow: none; + color: @color-dark-font; + } + + .quota-widget { + color: unset; + + .bar { + border-color: @color-dark-border; + background-color: @color-dark-border; + } + } + + .quota-info { + .root { + color: @color-dark-hint; + background-color: transparent; + } + } + + img.contactphoto, + #contactpic { + background-color: @color-dark-list-selected-background !important; + } + + .pgpkeyimport { + div.key.revoked, + div.key.disabled { + color: @color-dark-list-deleted; + } + + li.uid::before { + opacity: 1; + } + } +} diff --git a/styles/embed.css b/styles/embed.css deleted file mode 100644 index 3707b57..0000000 --- a/styles/embed.css +++ /dev/null @@ -1,171 +0,0 @@ -/** - * Roundcube Webmail styles for the Elastic skin - * - * Copyright (c) The Roundcube Dev Team - * - * The contents are subject to the Creative Commons Attribution-ShareAlike - * License. It is allowed to copy, distribute, transmit and to adapt the work - * by keeping credits to the original authors in the README.md file. - * See http://creativecommons.org/licenses/by-sa/3.0/ for details. - */ -/* Style for embedded pages and TinyMCE editor content page */ -/** - * Roundcube Webmail styles for the Elastic skin - * - * Copyright (c) The Roundcube Dev Team - * - * The contents are subject to the Creative Commons Attribution-ShareAlike - * License. It is allowed to copy, distribute, transmit and to adapt the work - * by keeping credits to the original authors in the README.md file. - * See http://creativecommons.org/licenses/by-sa/3.0/ for details. - */ -/*** Fonts ***/ -@font-face { - font-family: 'Icons'; - font-style: normal; - font-weight: 900; - src: url("../fonts/fa-solid-900.woff2") format('woff2'), url("../fonts/fa-solid-900.woff") format('woff'); -} -@font-face { - font-family: 'Icons'; - font-style: normal; - font-weight: 400; - src: url("../fonts/fa-regular-400.woff2") format('woff2'), url("../fonts/fa-regular-400.woff") format('woff'); -} -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 400; - src: local('Roboto'), local('Roboto-Regular'), url('../fonts/roboto-v19-regular.woff2') format('woff2'), url('../fonts/roboto-v19-regular.woff') format('woff'); -} -@font-face { - font-family: 'Roboto'; - font-style: italic; - font-weight: 400; - src: local('Roboto Italic'), local('Roboto-Italic'), url('../fonts/roboto-v19-italic.woff2') format('woff2'), url('../fonts/roboto-v19-italic.woff') format('woff'); -} -@font-face { - font-family: 'Roboto'; - font-style: normal; - font-weight: 700; - src: local('Roboto Bold'), local('Roboto-Bold'), url('../fonts/roboto-v19-regular-700.woff2') format('woff2'), url('../fonts/roboto-v19-regular-700.woff') format('woff'); -} -@font-face { - font-family: 'Roboto'; - font-style: italic; - font-weight: 700; - src: local('Roboto Bold Italic'), local('Roboto-BoldItalic'), url('../fonts/roboto-v19-italic-700.woff2') format('woff2'), url('../fonts/roboto-v19-italic-700.woff') format('woff'); -} -/* Reset some Bootstrap style */ -body, -button, -input, -optgroup, -select, -textarea, -.popover { - font-family: Roboto, sans-serif; -} -button, -input, -select, -textarea { - line-height: initial; -} -input { - vertical-align: middle; -} -a { - color: #bd139a; -} -a:hover { - color: #8f0e74; -} -a.disabled { - pointer-events: none; -} -a.disabled:not(.btn) { - opacity: 0.5; -} -.mce-content-body { - margin: 4px; - color: #2c363a; -} -.mce-content-body div.pre { - font-family: monospace; -} -.mce-content-body blockquote { - border-left: #1010ff 2px solid; - margin: 0; - padding: 0 0.4em; -} -.rcmail-inline-message { - font-family: Roboto, sans-serif; - font-size: 14px; - padding: 0.5em; - margin: 0 0 0.5em 0; - opacity: 0.95; - color: #2c363a; - background-color: rgba(246, 96, 157, 0.2); - display: flex; - align-items: center; -} -.rcmail-inline-message:before { - font-size: 1.25em; - display: block; - float: left; - margin: 0 0.25rem 0 0; - width: 1.18em; - height: 1em; - font-family: 'Icons'; - font-style: normal; - font-weight: 900; - text-decoration: inherit; - text-align: center; - speak: none; - font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - font-size: 1.5em; - line-height: 1; - width: 1em; - margin-right: 0.3em; - content: "\f071"; - color: #F6609D; -} -.rcmail-inline-message span { - line-height: 1.5; -} -.rcmail-inline-message a { - color: #bd139a; -} -.rcmail-inline-message a:hover { - color: #8f0e74; -} -.rcmail-inline-message button { - vertical-align: middle; - white-space: nowrap; - padding: 0.375em 0.75em; - margin-left: 0.5em; - font-size: 1em; - line-height: 1.5; - border-radius: 0.25em; - border: 1px solid transparent; - color: #fff; - background: #50162d; -} -.rcmail-inline-message button:focus { - box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.5); -} -.rcmail-inline-message button:hover { - background: #300d1b; - border-color: #280b17; -} -.rcmail-inline-message button:not([disabled]):not(.disabled):active { - background: #240a14; - border-color: #1c0810; - box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.53); -} -.rcmail-inline-buttons { - margin: 0; -} diff --git a/styles/embed.min.css b/styles/embed.min.css new file mode 100644 index 0000000..cd31f08 --- /dev/null +++ b/styles/embed.min.css @@ -0,0 +1 @@ +.popover,.rcmail-inline-message,body,button,input,optgroup,select,textarea{font-family:Roboto,sans-serif}@font-face{font-family:Icons;font-style:normal;font-weight:900;src:url(../fonts/fa-solid-900.woff2) format('woff2'),url(../fonts/fa-solid-900.woff) format('woff')}@font-face{font-family:Icons;font-style:normal;font-weight:400;src:url(../fonts/fa-regular-400.woff2) format('woff2'),url(../fonts/fa-regular-400.woff) format('woff')}@font-face{font-family:Roboto;font-style:normal;font-weight:400;src:local('Roboto'),local('Roboto-Regular'),url(../fonts/roboto-v19-regular.woff2) format('woff2'),url(../fonts/roboto-v19-regular.woff) format('woff')}@font-face{font-family:Roboto;font-style:italic;font-weight:400;src:local('Roboto Italic'),local('Roboto-Italic'),url(../fonts/roboto-v19-italic.woff2) format('woff2'),url(../fonts/roboto-v19-italic.woff) format('woff')}@font-face{font-family:Roboto;font-style:normal;font-weight:700;src:local('Roboto Bold'),local('Roboto-Bold'),url(../fonts/roboto-v19-regular-700.woff2) format('woff2'),url(../fonts/roboto-v19-regular-700.woff) format('woff')}@font-face{font-family:Roboto;font-style:italic;font-weight:700;src:local('Roboto Bold Italic'),local('Roboto-BoldItalic'),url(../fonts/roboto-v19-italic-700.woff2) format('woff2'),url(../fonts/roboto-v19-italic-700.woff) format('woff')}button,input,select,textarea{line-height:initial}input{vertical-align:middle}a{color:#00acff}a:hover{color:#008acc}a.disabled{pointer-events:none}a.disabled:not(.btn){opacity:.5}.mce-content-body{margin:4px;color:#2c363a}.mce-content-body div.pre{font-family:monospace}.mce-content-body blockquote{border-left:#1010ff 2px solid;margin:0;padding:0 .4em}.rcmail-inline-message{font-size:14px;padding:.5em;margin:0 0 .5em;opacity:.95;color:#2c363a;background-color:rgba(255,212,82,.2);display:flex;align-items:center}.rcmail-inline-message:before{display:block;float:left;margin:0 .3em 0 0;height:1em;font-family:Icons;font-style:normal;font-weight:900;text-decoration:inherit;text-align:center;speak:none;font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;font-size:1.5em;line-height:1;width:1em;content:"\f071";color:#ffd452}.rcmail-inline-message span{line-height:1.5}.rcmail-inline-message a{color:#00acff}.rcmail-inline-message a:hover{color:#008acc}.rcmail-inline-message button{vertical-align:middle;white-space:nowrap;padding:.375em .75em;margin-left:.5em;font-size:1em;line-height:1.5;border-radius:.25em;border:1px solid transparent;color:#fff;background:#37beff}.rcmail-inline-message button:focus{box-shadow:0 0 0 .2rem rgba(55,190,255,.5)}.rcmail-inline-message button:hover{background:#0eb1ff;border-color:#04adff}.rcmail-inline-message button:not([disabled]):not(.disabled):active{background:#00abfe;border-color:#00a4f4;box-shadow:0 0 0 .2rem rgba(55,190,255,.53)}.rcmail-inline-buttons{margin:0} \ No newline at end of file diff --git a/styles/layout.less b/styles/layout.less index 8a79da0..3d2fbe8 100644 --- a/styles/layout.less +++ b/styles/layout.less @@ -251,11 +251,21 @@ body { width: 6px; height: 100%; - .sidebar-right & { + &.inverted { + right: auto; left: -3px; } -} + &.active { + width: 10000px; + right: -5000px; + + &.inverted { + right: auto; + left: -5000px; + } + } +} @media screen and (max-width: @screen-width-large) { #layout-sidebar, @@ -271,7 +281,7 @@ body { } @media screen and (max-width: @screen-width-medium) { - // Disable column resizing by hiding splitters and reseting columns width + // Disable column resizing by hiding splitters and resetting columns width .column-resizer { display: none; } diff --git a/styles/print.css b/styles/print.css deleted file mode 100644 index 9692b89..0000000 --- a/styles/print.css +++ /dev/null @@ -1 +0,0 @@ -body{overflow:auto;height:auto}#print-layout{margin:1rem}#print-layout #logo{max-height:80px}#print-layout .image-attachment .image-link{margin-bottom:.5rem}#print-layout .image-attachment .attachment-links{display:none}#print-layout .header-content .message-partheaders{padding:0 !important;border:0;font-size:1rem;color:inherit}#print-layout #message-header{margin-bottom:.5rem}#print-layout .attachment-size{padding-left:.1rem}#print-layout .formcontent{padding:0}#print-layout .formcontent legend{margin-top:.5rem}#print-layout .formcontent .row .form-control-plaintext{padding:.1rem}#print-layout .formcontent .contactfield{padding:.2rem 0}#print-layout .propform.groupped .row.input-group .input-group-text{padding:0;min-width:12rem;background:#fff;border:0}#print-layout .contact-header{margin-bottom:0} \ No newline at end of file diff --git a/styles/print.less b/styles/print.less index d998c66..2f06232 100644 --- a/styles/print.less +++ b/styles/print.less @@ -35,15 +35,6 @@ body { } } - .header-content { - .message-partheaders { - padding: 0 !important; - border: 0; - font-size: 1rem; - color: inherit; - } - } - #message-header { margin-bottom: .5rem; } @@ -52,6 +43,10 @@ body { padding-left: .1rem; } + blockquote { + page-break-inside: auto; + } + // Overwrites for contact printouts .formcontent { @@ -70,7 +65,7 @@ body { } } - .propform.groupped .row.input-group .input-group-text { + .propform.grouped .row.input-group .input-group-text { padding: 0; min-width: 12rem; background: #fff; diff --git a/styles/print.min.css b/styles/print.min.css new file mode 100644 index 0000000..bfd516d --- /dev/null +++ b/styles/print.min.css @@ -0,0 +1 @@ +#print-layout #message-header,#print-layout .image-attachment .image-link{margin-bottom:.5rem}body{overflow:auto;height:auto}#print-layout{margin:1rem}#print-layout #logo{max-height:80px}#print-layout .image-attachment .attachment-links{display:none}#print-layout .attachment-size{padding-left:.1rem}#print-layout blockquote{page-break-inside:auto}#print-layout .formcontent{padding:0}#print-layout .formcontent legend{margin-top:.5rem}#print-layout .formcontent .row .form-control-plaintext{padding:.1rem}#print-layout .formcontent .contactfield{padding:.2rem 0}#print-layout .propform.grouped .row.input-group .input-group-text{padding:0;min-width:12rem;background:#fff;border:0}#print-layout .contact-header{margin-bottom:0} \ No newline at end of file diff --git a/styles/styles.less b/styles/styles.less index d397794..827df9d 100644 --- a/styles/styles.less +++ b/styles/styles.less @@ -56,6 +56,15 @@ margin-right: 0; margin-left: 0; } + + .oauthlogin { + margin-top: 1em; + padding-top: 1em; + } + + .formbuttons + .oauthlogin { + border-top: 1px solid #ccc; + } } #rcmloginsubmit { @@ -143,7 +152,7 @@ body.task-error-login #layout { #message-header { margin-bottom: 1rem; - .subject { + & > .subject { font-size: 1.5rem; font-weight: bold; @@ -157,6 +166,8 @@ body.task-error-login #layout { } a.extwin { + text-decoration: none; + &:before { &:extend(.font-icon-class); float: none; @@ -173,7 +184,7 @@ body.task-error-login #layout { } } - .short-header { + & > .header { display: flex; img.contactphoto { @@ -182,64 +193,115 @@ body.task-error-login #layout { width: @mail-header-photo-height; height: @mail-header-photo-height; object-fit: cover; - } - - div.header-content { - min-height: @mail-header-photo-height; - flex: 1; - } - - div.header-subject { - line-height: @mail-header-photo-height/2; - - & > span { - line-height: 1.5; - display: inline-block; - vertical-align: middle; - } - } - - div.header-links { - a { - font-size: 90%; - margin-right: .5rem; - text-decoration: none; - white-space: nowrap; - display: inline-block; - - &:before { - &:extend(.font-icon-class); - height: 1.5rem; - line-height: 1.3; - } - - &.envelope:before { - content: @fa-var-envelope; - } - - &.html:before { - content: @fa-var-image; - } - - &.plain:before { - content: @fa-var-align-justify; - } - - &.zipdownload:before { - content: @fa-var-download; - } - } - } - - .message-partheaders { - margin: 0 !important; - padding: .25rem 0 !important; + background: @color-image-upload-background; } } - a.extwin, - a.headers { - text-decoration: none; + .header-content { + min-height: @mail-header-photo-height; + flex: 1; + + &.details-view { + .header-summary { + display: none; + } + .header-headers { + display: initial; + } + } + } + + .header-summary { + margin-top: .25rem; + + & > span { + display: inline-block; + } + } + + .header-headers { + display: none; + + .header-title { + white-space: nowrap; + color: @color-black-shade-text; + font-weight: bold; + padding-right: 1rem; + vertical-align: top; + } + } + + .header-links { + margin-top: .25rem; + + a { + font-size: 90%; + margin-right: .5rem; + text-decoration: none; + white-space: nowrap; + display: inline-block; + + &:before { + &:extend(.font-icon-class); + height: 1.5rem; + line-height: 1.3; + } + + &.headers-details:before { + content: @fa-var-envelope; + } + + &.headers-summary:before { + .font-icon-regular(@fa-var-envelope); + } + + &.headers-all:before { + content: @fa-var-info-circle; + } + + &.html:before { + content: @fa-var-image; + } + + &.plain:before { + content: @fa-var-align-justify; + } + + &.zipdownload:before { + content: @fa-var-download; + } + } + } +} + +.message-partheaders { + padding: .25rem .5rem; + margin: .5rem 0 -.5rem 0; + border-top: 1px solid @color-messagepart-border; + background-color: @color-messagepart-background; + + table.headers-table { + font-size: 90%; + color: @color-mail-headers; + + .header-title { + .overflow-ellipsis(); + white-space: nowrap; + max-width: 8em; + font-weight: bold; + padding-right: 1rem; + vertical-align: top; + } + + .subject { + font-weight: bold; + } + + & + .message-part, + & + .message-htmlpart { + border-top: 0; + margin: 0; + } } } @@ -251,8 +313,6 @@ body.task-error-login #layout { #messagebody { &.mailvelope { - margin: 0; - iframe { min-height: 75vh; } @@ -266,13 +326,17 @@ body.task-error-login #layout { position: relative; &:not(:first-child) { - border-top: 1px solid lighten(@color-mail-headers, 50%); + border-top: 1px solid @color-messagepart-border; margin-top: .5rem; } + &:last-child { + margin-bottom: .5rem; + } + div.rcmBody { // Remove margins that can be set by the mail message styles - margin: 0 !important; + margin: 0 auto !important; } blockquote { @@ -339,34 +403,7 @@ body.task-error-login #layout { div.pre { font-family: monospace; - } -} - -.message-partheaders { - padding: .5rem 0; - margin: .5rem 0 0 0; - font-size: 90%; - border-top: 1px solid @color-list-border; - border-bottom: 1px solid @color-list-border; - color: @color-mail-headers; - - .header-title { - .overflow-ellipsis(); - white-space: nowrap; - max-width: 8em; - font-weight: bold; - padding-right: 1rem; - vertical-align: top; - } - - .subject { - font-weight: bold; - } - - & + .message-part, - & + .message-htmlpart { - border-top: 0; - margin: 0; + font-size: 13px; } } @@ -402,4 +439,8 @@ body.task-error-login #layout { } } -@import "_styles"; +& when (@dark-mode-enabled = true) { + @import "dark"; +} + +@import (optional) "_styles"; diff --git a/styles/styles.css b/styles/styles.min.css similarity index 75% rename from styles/styles.css rename to styles/styles.min.css index 3bc7894..4220446 100644 --- a/styles/styles.css +++ b/styles/styles.min.css @@ -66,17 +66,14 @@ fieldset.advanced > legend:after, .input-group .icon:before, .multi-input a.icon.reset:before, .tagedit-list li.tagedit-listelement-old a:before, -.mce-window .mce-window-head .mce-close:before, -.mce-window .mce-foot .mce-container-body .mce-btn button:before, -.mce-window .mce-foot .mce-search-foot div:nth-of-type(7) button:after, -.mce-window .mce-checkbox i.mce-i-checkbox:before, -.html-editor .mce-i-html:before, -.html-editor .mce-i-plaintext:before, +div.tox .tox-dialog__header .tox-button:before, +div.tox .tox-dialog__footer .tox-button:before, +.html-editor .editor-toolbar .mce-i-html:before, .googie_list li .googie_list_revert:before, .googie_list li .googie_add_to_dict:before, -body.status-flagged #message-header .subject:before, -#message-header .subject a.extwin:before, -#message-header .short-header div.header-links a:before, +body.status-flagged #message-header > .subject:before, +#message-header > .subject a.extwin:before, +#message-header .header-links a:before, .message-part blockquote span.blockquote-link:after, .message-htmlpart blockquote span.blockquote-link:after { font-size: 1.25em;display: block;float: left;margin: 0 0.25rem 0 0;width: 1.18em;height: 1em;font-family: 'Icons';font-style: normal;font-weight: 900;text-decoration: inherit;text-align: center;speak: none;font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased; @@ -359,9 +356,18 @@ html.layout-phone #layout-menu .popover-header a .inner { width: 6px; height: 100%; } -.sidebar-right .column-resizer { +.column-resizer.inverted { + right: auto; left: -3px; } +.column-resizer.active { + width: 10000px; + right: -5000px; +} +.column-resizer.active.inverted { + right: auto; + left: -5000px; +} @media screen and (max-width: 1200px) { #layout-sidebar, #layout-list { @@ -700,7 +706,6 @@ fieldset.image-attachment img { line-height: 1; } .quota-widget .count { - color: #737677; font-size: 80%; order: 2; } @@ -819,7 +824,7 @@ fieldset.image-attachment img { } .table-widget > .footer a { padding: 0.2rem 0.45rem !important; - height: 3.5rem !important; + height: calc(3.5rem - 1px) !important; } .table-widget table { margin: 0; @@ -949,7 +954,7 @@ table.table tr.deleted td { opacity: 0.5; } a.button { - text-decoration: none; + text-decoration: none !important; } /* font-icons */ a.button.icon.sidebar-menu:before, @@ -1111,6 +1116,10 @@ a.button.icon.sso:before, button.btn.sso:before { content: "\f2f6"; } +a.button.icon.extwin:before, +button.btn.extwin:before { + content: "\f360"; +} a.btn:before, button.btn:before { display: inline !important; @@ -1118,6 +1127,25 @@ button.btn:before { vertical-align: middle; margin-right: 0.4rem !important; } +a.btn.oauth.google:before, +button.btn.oauth.google:before, +a.btn.oauth.outlook:before, +button.btn.oauth.outlook:before { + content: " "; + display: inline-block !important; + height: 1.5rem; + width: 1.5rem; + margin-right: 0.8rem !important; + background-size: 100% auto; +} +a.btn.oauth.google:before, +button.btn.oauth.google:before { + background: url('../images/google-icon.svg') top left no-repeat; +} +a.btn.oauth.outlook:before, +button.btn.oauth.outlook:before { + background: url('../images/microsoft-icon.svg') top left no-repeat; +} a.button.icon.dropdown:before { content: "\f0d7"; font-size: 1em; @@ -1164,12 +1192,17 @@ html.touch .btn:focus { .btn:focus { box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.3); } +.btn-link { + color: #bd139a; +} .btn-secondary { color: #fff; background: #782144; border-color: #782144; } .btn-secondary:focus { + background: #641c38; + border-color: #5c1934; box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.5); } .btn-secondary:hover { @@ -1178,9 +1211,8 @@ html.touch .btn:focus { } .btn-secondary.disabled, .btn-secondary:disabled { - background: #c83771; - border-color: #c83771; - opacity: 1; + background: #782144; + border-color: #782144; } .btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active { @@ -1197,6 +1229,8 @@ html.touch .btn:focus { border-color: #50162d; } .btn-primary:focus { + background: #3c1122; + border-color: #340e1d; box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.5); } .btn-primary:hover { @@ -1205,9 +1239,8 @@ html.touch .btn:focus { } .btn-primary.disabled, .btn-primary:disabled { - background: #a02c5a; - border-color: #a02c5a; - opacity: 1; + background: #50162d; + border-color: #50162d; } .btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active { @@ -1224,6 +1257,8 @@ html.touch .btn:focus { border-color: #ff5552; } .btn-danger:focus { + background: #ff3c38; + border-color: #ff322e; box-shadow: 0 0 0 0.2rem rgba(255, 85, 82, 0.5); } .btn-danger:hover { @@ -1232,9 +1267,8 @@ html.touch .btn:focus { } .btn-danger.disabled, .btn-danger:disabled { - background: #ffb9b8; - border-color: #ffb9b8; - opacity: 1; + background: #ff5552; + border-color: #ff5552; } .btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active { @@ -1512,6 +1546,8 @@ html.touch .btn:focus { .ui-datepicker .ui-datepicker-next { cursor: pointer; width: auto; + color: #2c363a; + text-decoration: none; } .ui-datepicker .ui-datepicker-prev:before, .ui-datepicker .ui-datepicker-next:before { @@ -1625,6 +1661,7 @@ html.touch .btn:focus { box-shadow: 3px 3px 5px #f1f3f4; border-color: #d4dbde; padding: 0; + z-index: 1300; } .popover .popover-header { display: none; @@ -1634,7 +1671,11 @@ html.touch .btn:focus { border-radius: 0.25rem 0.25rem 0 0; } .popover .listing li:last-child { - border-radius: 0 0 0.25rem 0.25rem; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; + } + .popover .listing ul.rounded-0 > li { + border-radius: 0; } } html.layout-small .popover:not(.select-menu), @@ -1663,7 +1704,7 @@ html.layout-phone .popover:not(.select-menu) .listing li:last-child { } html.layout-small .popover-overlay, html.layout-phone .popover-overlay { - z-index: 1000; + z-index: 1299; background-color: rgba(44, 54, 58, 0.5); position: absolute; top: 0; @@ -1708,6 +1749,7 @@ html.touch .popover .listing li a:before { max-width: initial; margin: 0; height: auto; + z-index: 1301; } .select-menu .popover-header { border-radius: 0.25rem 0.25rem 0 0 !important; @@ -2125,6 +2167,12 @@ a.toolbar-button { .menu a.settings:before { content: "\f013"; } +.menu a.theme.light:before { + content: "\f185"; +} +.menu a.theme.dark:before { + content: "\f186"; +} .menu a.help:before { content: "\f1cd"; } @@ -2179,7 +2227,7 @@ a.toolbar-button { content: "\f060"; } .menu a.check:before { - content: ""; + content: "\00a0"; } .menu a.check.selected:before { content: "\f00c"; @@ -2398,6 +2446,9 @@ a.toolbar-button { .menu a.submit:before { content: "\f00c"; } +.menu a.info:before { + content: "\f05a"; +} .menu a.threads:before { content: "\f086"; } @@ -2558,6 +2609,9 @@ a.toolbar-button { #taskmenu a.logout { color: #ff5552 !important; } + #taskmenu a.logout:hover { + color: #ff5552 !important; + } } @media screen and (min-width: 481px) and (max-width: 1024px) { #taskmenu a { @@ -3021,6 +3075,7 @@ html.touch td.selection { .listing.iconized li.enigma.keys > a:before { content: "\f084"; } +.listing.iconized li.info > a:before, .listing.iconized li.userinfo > a:before { content: "\f05a"; } @@ -3079,7 +3134,7 @@ html.ie11 .listing.iconized li a:before { .listing.iconized tr.server > td.section:before { content: "\f233"; } -.listing.iconized tr.enigma > td.section:before { +.listing.iconized tr.encryption > td.section:before { content: "\f023"; } .listing.iconized tr.calendar > td.section:before { @@ -3088,7 +3143,7 @@ html.ie11 .listing.iconized li a:before { .listing.iconized tr.chat > td.section:before { content: "\f086"; } -/* selecatable list: e.g. spellcheck language selection */ +/* selectable list: e.g. spellcheck language selection */ .listing.iconized.selectable li a:before { content: ""; } @@ -3248,6 +3303,14 @@ html.touch .folderlist li.mailbox .unreadcount { content: "\f187"; font-weight: 900; } +.folderlist li.ns-shared > a:before { + content: "\f1e0"; + font-weight: 900; +} +.folderlist li.ns-other > a:before { + content: "\f500"; + font-weight: 900; +} .folderlist.menu a:before { margin-left: 0.5em; } @@ -3276,6 +3339,7 @@ table.fixedcopy { .messagelist td.subject span { line-height: 2em; } +.messagelist td.subject span.size, .messagelist td.subject span.date { font-size: 90%; color: #737677; @@ -3293,6 +3357,7 @@ table.fixedcopy { overflow: hidden; text-overflow: ellipsis; width: 100%; + user-select: none; } .messagelist td.threads { padding: 0 0 0 0.25rem; @@ -3411,15 +3476,38 @@ table.fixedcopy { content: "\f024"; font-weight: 400; } +.messagelist span.size { + display: none; +} +.messagelist tr:hover span.date { + display: none; +} +.messagelist tr:hover span.size { + display: inline; +} +.messagelist.sort-size span.date { + display: none; +} +.messagelist.sort-size span.size { + display: inline; +} +.messagelist.sort-size tr:hover span.date { + display: inline; +} +.messagelist.sort-size tr:hover span.size { + display: none; +} html.layout-phone .messagelist tr, html.touch .messagelist tr { position: relative; } html.layout-phone .messagelist td.flags, html.touch .messagelist td.flags { + position: absolute; top: 0.25rem; right: 0; bottom: 0; + background-color: transparent; } html.layout-phone .messagelist td.flags .flag, html.touch .messagelist td.flags .flag { @@ -3732,76 +3820,77 @@ input.smart-upload { width: 100%; margin-left: 0.25rem; } -.propform.groupped.readonly legend { +.propform.grouped.readonly legend { margin: 0; } -.propform.groupped.readonly .row.input-group { +.propform.grouped.readonly .row.input-group { margin-bottom: 0 !important; } -.propform.groupped.readonly label { +.propform.grouped.readonly label { min-width: 7rem; background-color: transparent; border: 0; border-radius: 0; } -.propform.groupped .row.input-group { +.propform.grouped .row.input-group { margin-bottom: 0.5rem; flex-wrap: nowrap; } -.propform.groupped .row.input-group > *:first-child { +.propform.grouped .row.input-group > *:first-child { overflow: hidden; text-overflow: ellipsis; min-width: 8rem; } -.propform.groupped .row.input-group > *:first-child:not(select) { +.propform.grouped .row.input-group > *:first-child:not(select) { padding: 0; } @media screen and (max-width: 480px) { - .propform.groupped .row.input-group > *:first-child { + .propform.grouped .row.input-group > *:first-child { min-width: 6rem; width: 6rem; flex-grow: unset; } } -.propform.groupped .row.input-group > *:first-child label { +.propform.grouped .row.input-group > *:first-child label { width: 100%; } -.propform.groupped .row.input-group > *:nth-child(2) { +.propform.grouped .row.input-group > *:nth-child(2) { flex-grow: 30; } -.propform.groupped .row.input-group:last-child { +.propform.grouped .row.input-group:last-child { margin-bottom: 1rem; } -.propform.groupped .row.input-group select { +.propform.grouped .row.input-group select { text-align: left; } -.propform.groupped .row.input-group.composite select { +.propform.grouped .row.input-group.composite select { height: auto; } -.propform.groupped .row.input-group .content { +.propform.grouped .row.input-group .content { padding: 0; display: flex; flex-wrap: wrap; border-radius: 0; + border-left-color: transparent; } -.propform.groupped .row.input-group .content input { +.propform.grouped .row.input-group .content input { border-radius: 0; border-color: transparent; } -.propform.groupped .row.input-group .content .ff_street { +.propform.grouped .row.input-group .content .ff_street { width: 100%; } -.propform.groupped .row.input-group .content .ff_locality { +.propform.grouped .row.input-group .content .ff_locality { width: 75%; } -.propform.groupped .row.input-group .content .ff_zipcode { +.propform.grouped .row.input-group .content .ff_zipcode { width: 25%; } -.propform.groupped .row.input-group .content .ff_country, -.propform.groupped .row.input-group .content .ff_region { +.propform.grouped .row.input-group .content .ff_country, +.propform.grouped .row.input-group .content .ff_region { width: 50%; } -.propform.groupped .form-control-plaintext { +.propform.grouped .form-control-plaintext { flex-grow: 1; border: 0; } @@ -4376,15 +4465,15 @@ fieldset .file-upload { opacity: 0; } .recipient-input a.button.icon { - font-size: 0.8em; + font-size: 0.75em; cursor: pointer; padding: 0; + color: #2c363a; } .recipient-input a.button.icon:before { - float: none; display: inline-block; width: 1em; - line-height: 1.5; + line-height: 1.6; } .recipient-input li { max-width: 100%; @@ -4601,6 +4690,9 @@ fieldset .file-upload { .form-group { margin-bottom: 0.5rem; } +.input-group-append.input-group-prepend { + display: inline; +} .input-group-text { color: #2c363a; background-color: #f1f3f4; @@ -4615,6 +4707,7 @@ fieldset .file-upload { } .custom-switch .custom-control-input { left: 0; + opacity: 0 !important; } .custom-switch .custom-control-input:focus ~ .custom-control-label:before { box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.25); @@ -4689,7 +4782,6 @@ html.touch .custom-switch .custom-control-input:checked ~ .custom-control-label: overflow: hidden; text-overflow: ellipsis; padding-right: 100px; - line-height: 1.5 !important; } .custom-file + .hint { margin-top: 3px; @@ -4709,475 +4801,317 @@ html.touch .custom-switch .custom-control-input:checked ~ .custom-control-label: * See http://creativecommons.org/licenses/by-sa/3.0/ for details. */ /*** Text Editor widget (and TinyMCE editor) ***/ -.mce-tinymce.mce-container.mce-panel { +div.tox { + font-size: 1rem; +} +div.tox, +div.tox :not(.svg) { + font-family: Roboto, sans-serif; +} +div.tox.tox-tinymce { border-radius: 0.25rem; - border-color: #ced4da; - overflow: hidden; + border: 1px solid #ced4da; } -.mce-tinymce .mce-btn, -.mce-tinymce .mce-panel { - background-color: #f1f3f4; -} -.mce-tinymce .mce-panel { - border-color: #ced4da; -} -.mce-tinymce.focused { +div.tox.focused { border-color: #50162d !important; box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.25) !important; } -.mce-top-part::before, -.mce-tinymce, -.mce-window { - box-shadow: none !important; +div.tox .tox-toolbar-overlord { + z-index: 1; } -.mce-btn.mce-active { - background: #782144 !important; +div.tox .tox-toolbar-overlord > div { + background: url("data:image/svg+xml;charset=utf8,%3Csvg height='33px' viewBox='0 0 40 33px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='32px' width='100' height='1' fill='%23cccccc'/%3E%3C/svg%3E"); + background-color: #f1f3f4; } -.mce-window.mce-container { +div.tox .tox-toolbar__primary { + border-top: 0; +} +div.tox .tox-toolbar { + background-color: #f1f3f4; +} +div.tox .tox-edit-area { border: 0; } -.mce-window.mce-container :not(.mce-ico) { - font-family: Roboto, sans-serif; +div.tox .tox-dialog { + border-radius: 0; + border-color: #d4dbde; + box-shadow: none; + align-self: unset !important; } -.mce-window .mce-reset { - background: #fff; +div.tox .tox-dialog .tox-form__group { + margin-top: 0; + margin-bottom: 0.75rem; } -.mce-window .mce-container-body.mce-abs-layout { +div.tox .tox-dialog .tox-dialog__body-nav-item--active { + color: #bd139a; + border-color: transparent; +} +div.tox .tox-dialog .tox-dialog__body-nav-item--active:hover { + color: #8f0e74; +} +div.tox .tox-dialog__body-content { overflow: unset; } -.mce-window .mce-container-body .mce-abs-end { - display: none; +div.tox .tox-dialog-wrap__backdrop { + background-color: rgba(44, 54, 58, 0.5); } -.mce-window .mce-window-head { - height: 58px; +div.tox .tox-dialog__header { + height: 57px; border-bottom: 1px solid #ddd; + justify-content: flex-end; padding: 0; } -.mce-window .mce-window-head .mce-title { - line-height: 58px; - font-size: 1.25rem; - padding: 0 3rem 0 1rem; +div.tox .tox-dialog__header .tox-button { color: #2c363a; -} -.mce-window .mce-window-head .mce-close { - border: 0; - color: #2c363a; - background: transparent; right: 0; - top: 0; - position: absolute; - height: 57.25px; - width: 1.25em; - margin: 0 0.25rem; - padding: 0.1rem 0.75rem; - cursor: pointer; - outline: 0; + height: 57.3px; + width: 2.25em; + margin-right: 0.4rem; } -.mce-window .mce-window-head .mce-close:before { - content: "\f00d"; - margin: 0; +div.tox .tox-dialog__header .tox-button:hover { + background: transparent; + border-color: transparent; } -.mce-window .mce-window-head .mce-close i { +div.tox .tox-dialog__header .tox-button .tox-icon { display: none; } -.mce-window .mce-foot { +div.tox .tox-dialog__header .tox-button:before { + content: "\f00d"; + line-height: 1.5rem; + margin: 0 !important; +} +div.tox .tox-dialog__footer { + height: 57px !important; border: 0; - height: 58px !important; - position: relative; + margin: 0; + padding: 0 1rem; } @media screen and (max-width: 480px) { - .mce-window .mce-foot { + div.tox .tox-dialog__footer { border-top: 1px solid #ddd; } } -.mce-window .mce-foot .mce-container-body { - height: 100% !important; - display: flex; - align-items: center; - justify-content: flex-end; +div.tox .tox-dialog__footer > div { + white-space: nowrap; + max-height: 57px; } -.mce-window .mce-foot .mce-container-body .mce-btn { - position: initial; - margin-right: 0.5rem; - line-height: 1; - width: auto !important; - height: auto !important; +div.tox .tox-dialog__footer > div button:first-child { + margin: 0; } -.mce-window .mce-foot .mce-container-body .mce-btn:last-child { - margin-right: 1rem; -} -.mce-window .mce-foot .mce-container-body .mce-btn .mce-txt { - line-height: 1.5; - vertical-align: unset; -} -.mce-window .mce-foot .mce-container-body .mce-btn button:before { - display: inline; - float: none; - vertical-align: middle; - margin-right: 0.4rem; -} -.mce-window .mce-foot .mce-container-body .mce-abs-end { - position: initial; - width: 1rem; - order: 9; -} -.mce-window .mce-foot .mce-btn { - color: #fff; - background: #782144; - border-color: #782144; - border-radius: 0.3rem; - border-color: transparent; -} -.mce-window .mce-foot .mce-btn:focus { - box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.5); -} -.mce-window .mce-foot .mce-btn:hover { - background: #641c38; - border-color: #5c1934; -} -.mce-window .mce-foot .mce-btn.disabled, -.mce-window .mce-foot .mce-btn:disabled { - background: #c83771; - border-color: #c83771; - opacity: 1; -} -.mce-window .mce-foot .mce-btn:not(:disabled):not(.disabled):active, -.mce-window .mce-foot .mce-btn:not(:disabled):not(.disabled).active { - background: #50162d; - border-color: #481429; -} -.mce-window .mce-foot .mce-btn:not(:disabled):not(.disabled):active:focus, -.mce-window .mce-foot .mce-btn:not(:disabled):not(.disabled).active:focus { - box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.53); -} -.mce-window .mce-foot .mce-btn:focus { - border-color: transparent !important; - color: #fff; - background: #782144; -} -.mce-window .mce-foot .mce-btn.mce-primary { +div.tox .tox-dialog__footer .tox-button { color: #fff; background: #50162d; border-color: #50162d; + font-weight: normal; + padding: 0.5rem 0.75rem; } -.mce-window .mce-foot .mce-btn.mce-primary:focus { +div.tox .tox-dialog__footer .tox-button:focus { + background: #3c1122; + border-color: #340e1d; box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.5); } -.mce-window .mce-foot .mce-btn.mce-primary:hover { +div.tox .tox-dialog__footer .tox-button:hover { background: #3c1122; border-color: #340e1d; } -.mce-window .mce-foot .mce-btn.mce-primary.disabled, -.mce-window .mce-foot .mce-btn.mce-primary:disabled { - background: #a02c5a; - border-color: #a02c5a; - opacity: 1; +div.tox .tox-dialog__footer .tox-button.disabled, +div.tox .tox-dialog__footer .tox-button:disabled { + background: #50162d; + border-color: #50162d; } -.mce-window .mce-foot .mce-btn.mce-primary:not(:disabled):not(.disabled):active, -.mce-window .mce-foot .mce-btn.mce-primary:not(:disabled):not(.disabled).active { +div.tox .tox-dialog__footer .tox-button:not(:disabled):not(.disabled):active, +div.tox .tox-dialog__footer .tox-button:not(:disabled):not(.disabled).active { background: #280b17; border-color: #200912; } -.mce-window .mce-foot .mce-btn.mce-primary:not(:disabled):not(.disabled):active:focus, -.mce-window .mce-foot .mce-btn.mce-primary:not(:disabled):not(.disabled).active:focus { +div.tox .tox-dialog__footer .tox-button:not(:disabled):not(.disabled):active:focus, +div.tox .tox-dialog__footer .tox-button:not(:disabled):not(.disabled).active:focus { box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.53); } -.mce-window .mce-foot .mce-btn button:hover, -.mce-window .mce-foot .mce-btn button { - color: #fff; - padding: 0.5rem 0.75rem; +div.tox .tox-dialog__footer .tox-button:before { + width: 1em; + content: "\f00c"; + line-height: 1; } -.mce-window .mce-foot .mce-btn:last-child button:before { +div.tox .tox-dialog__footer .tox-button:focus:not(:disabled) { + background: #50162d; + border-color: #50162d; +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary { + background: #782144; + border-color: #782144; + color: #fff; +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:focus { + background: #641c38; + border-color: #5c1934; + box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.5); +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:hover { + background: #641c38; + border-color: #5c1934; +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary.disabled, +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:disabled { + background: #782144; + border-color: #782144; +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:not(:disabled):not(.disabled):active, +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:not(:disabled):not(.disabled).active { + background: #50162d; + border-color: #481429; +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:not(:disabled):not(.disabled):active:focus, +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:not(:disabled):not(.disabled).active:focus { + box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.53); +} +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:before { content: "\f00d"; } -.mce-window .mce-foot .mce-btn.mce-primary button:before { - content: "\f00c"; +div.tox .tox-dialog__footer .tox-button.tox-button--secondary:focus:not(:disabled) { + background: #782144; + border-color: #782144; } -.mce-window .mce-foot .mce-search-foot div:nth-of-type(2) button:before { - content: "\f002"; +div.tox .tox-search-dialog .tox-form__group:not(:first-child) { + flex: initial !important; } -.mce-window .mce-foot .mce-search-foot div:nth-of-type(3) button:before, -.mce-window .mce-foot .mce-search-foot div:nth-of-type(4) button:before { - content: "\f303"; +div.tox .tox-search-dialog .tox-dialog__footer-start button { + padding: 0.25rem; } -.mce-window .mce-foot .mce-search-foot div:nth-of-type(6) button:before { - content: "\f053"; +div.tox .tox-search-dialog .tox-dialog__footer-end button:before { + content: "\f303" !important; } -.mce-window .mce-foot .mce-search-foot div:nth-of-type(7) button:before { - content: "\f054"; +div.tox .tox-search-dialog .tox-dialog__footer-end button:nth-of-type(1):before { + content: "\f002" !important; } -.mce-window .mce-foot .mce-search-foot div:nth-of-type(7) button:after { - display: inline; - float: none; - margin: 0 0 0 0.2rem; - content: "\f054"; +div.tox .tox-dialog__title { + line-height: calc(58px - 1px); + font-size: 1.25rem; + font-weight: bold; + padding: 0 0 0 1rem; + width: 100%; + color: #2c363a; } -@media screen and (min-width: 481px) { - .mce-window .mce-foot .mce-search-foot div:nth-of-type(6) { - margin-left: 0.5rem; - } - .mce-window .mce-foot .mce-search-foot div:nth-of-type(7) button:before { - display: none; - } +div.tox .tox-tbtn { + height: 28px; } -.mce-window .mce-formitem { - min-width: 450px; - position: unset !important; +div.tox .tox-tbtn:not(.tox-tbtn--select,.tox-split-button__chevron) { + width: 32px; } -.mce-window .mce-formitem > .mce-container-body { - margin-bottom: 0.5rem; +div.tox .tox-button { + line-height: 1.5; } -.mce-window .mce-formitem > .mce-container-body > * { - width: 75% !important; - position: unset !important; +div.tox .tox-label { + color: #2c363a; + padding-bottom: 0.25rem; } -.mce-window .mce-formitem > .mce-container-body > label { - max-width: 25%; - min-width: 25%; - line-height: 2.5 !important; -} -.mce-window .mce-formitem .mce-widget { - border-radius: 0.25rem; -} -.mce-window .mce-form { - padding: 1rem; - box-sizing: border-box; -} -.mce-window .mce-form .mce-form { - padding: 0; - position: unset !important; - width: 100% !important; -} -.mce-window .mce-form .mce-form > .mce-container-body { - flex-wrap: wrap; - height: auto !important; -} -.mce-window .mce-form .mce-form .mce-formitem { - min-width: 100%; - width: 100% !important; -} -.mce-window .mce-form .mce-container { - height: auto !important; -} -.mce-window .mce-form .mce-container .mce-container-body { - display: flex; - height: auto !important; -} -.mce-window .mce-form .mce-container .mce-container-body > input:not([size="5"]) { - position: relative; - left: 0 !important; - flex: 1; -} -.mce-window .mce-form > .mce-container-body { - box-sizing: border-box; - width: 100% !important; -} -.mce-window .mce-form .mce-form-split .mce-formitem { - min-width: auto; -} -.mce-window .mce-form .mce-form-split .mce-formitem > .mce-container-body { - width: 100% !important; -} -.mce-window .mce-form label { - position: unset; - line-height: 2.5 !important; - height: auto !important; -} -.mce-window .mce-colorpicker + .mce-form { - width: 150px !important; - padding: 0; -} -.mce-window .mce-colorpicker + .mce-form .mce-formitem { - min-width: unset; -} -.mce-window .mce-colorpicker + .mce-form .mce-formitem + :not(.mce-formitem) { - height: 50px !important; -} -.mce-window .mce-textbox { - padding: 0.375rem 0.75rem !important; +div.tox .tox-color-input > input, +div.tox .tox-listboxfield .tox-listbox--select, +div.tox .tox-textarea, +div.tox .tox-textfield { + font-family: Roboto, sans-serif !important; + font-size: 14px; line-height: 1.5; color: #2c363a; + border-radius: 0.25rem; + min-height: 0; + padding: 0.375rem 0.75rem; } -.mce-window .mce-textbox:not(textarea) { - height: auto !important; -} -.mce-window .mce-textbox:focus { - color: #2c363a; +div.tox .tox-color-input > input:focus, +div.tox .tox-listboxfield .tox-listbox--select:focus, +div.tox .tox-textarea:focus, +div.tox .tox-textfield:focus { border-color: #50162d; box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.25); } -.mce-window .mce-textbox[size="5"] { - width: auto !important; -} -.mce-window .mce-textbox.mce-multiline { - line-height: 1.25; - width: 100% !important; - position: unset; - box-sizing: border-box; - display: block; -} -.mce-window .mce-listbox button { - line-height: 1.5; - padding: 0.375rem 0.75rem; -} -.mce-window .mce-listbox:focus { - border-color: #50162d !important; - box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.25) !important; -} -.mce-window .mce-checkbox { - line-height: 2.5; -} -.mce-window .mce-checkbox i.mce-i-checkbox { - border: 0; - width: auto; - color: #50162d; - text-indent: 0; -} -.mce-window .mce-checkbox i.mce-i-checkbox:before { +div.tox .tox-listbox__select-label { margin: 0; - content: "\f204"; } -.mce-window .mce-checkbox.mce-checked i.mce-i-checkbox:before { - content: "\f205"; +div.tox .tox-color-input span { + top: 5px; } -.mce-window .mce-checkbox:focus i.mce-i-checkbox { - border: 0; +div.tox .custom-switch { + position: relative; + font-size: 1rem; + margin-top: 0.15rem; } -.mce-window .mce-combobox { - display: flex; +div.tox .custom-switch .tox-checkbox__icons { + display: none; } -.mce-window .mce-combobox input { - border-radius: 0.3rem 0 0 0.3rem; +div.tox .custom-switch .tox-checkbox__label { + margin: 0; +} +div.tox .image-selector { + font-size: 1rem; +} +div.tox .image-selector button { + color: #fff; + background: #782144; + border-color: #782144; + padding: 0.5rem 0.75rem; + line-height: 1.5; +} +div.tox .image-selector button:focus { + background: #641c38; + border-color: #5c1934; + box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.5); +} +div.tox .image-selector button:hover { + background: #641c38; + border-color: #5c1934; +} +div.tox .image-selector button.disabled, +div.tox .image-selector button:disabled { + background: #782144; + border-color: #782144; +} +div.tox .image-selector button:not(:disabled):not(.disabled):active, +div.tox .image-selector button:not(:disabled):not(.disabled).active { + background: #50162d; + border-color: #481429; +} +div.tox .image-selector button:not(:disabled):not(.disabled):active:focus, +div.tox .image-selector button:not(:disabled):not(.disabled).active:focus { + box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.53); +} +div.tox .tox-form__controls-h-stack div:not(:last-child) { flex: 1; } -.mce-window .mce-combobox input:focus { - z-index: 1; -} -.mce-window .mce-combobox.mce-combobox-fake input { - border-radius: 0.3rem; -} -.mce-window .mce-combobox button { - padding: 0.4rem 0.6rem; -} -.mce-window .mce-combobox .mce-btn { - border-radius: 0 0.3rem 0.3rem 0; - background: #f1f3f4; -} -.mce-window .mce-combobox .mce-btn:focus { - background-color: rgba(80, 22, 45, 0.25); - border-color: #c5c5c5; -} -.mce-window .mce-tabs { - padding-top: 1rem; - margin: 0 1rem; - border-color: #d4dbde; -} -.mce-window .mce-tabs .mce-tab { - border-radius: 0.25rem 0.25rem 0 0; - padding: 0.5rem 1rem; - height: auto !important; - border: 1px solid transparent; - color: #bd139a; - background: transparent; - margin-bottom: -1px; -} -.mce-window .mce-tabs .mce-tab.mce-active { - border: 1px solid #d4dbde; - border-bottom-color: #fff; - color: #2c363a !important; -} -.mce-window .mce-tabs .mce-tab:not(.mce-active):hover { - border: 1px solid #f1f3f4; - border-bottom-color: transparent; - border-bottom: 0; -} -.mce-window .mce-tabs .mce-tab:focus { - outline: unset !important; -} -.mce-window .mce-label { - text-shadow: none; - color: #2c363a; -} -.mce-menu, -.mce-floatpanel.mce-popover { - box-shadow: 3px 3px 5px #f1f3f4 !important; - border-color: #d4dbde !important; - border-radius: 0.3rem; -} -.mce-menu .mce-menu-item.mce-active { - color: #fff; - background-color: #50162d; -} -.mce-menu .popover-header { - display: none !important; -} -div.mce-menubtn.mce-opened { - z-index: 65530 !important; -} -#mce-modal-block.mce-in { - background-color: rgba(44, 54, 58, 0.5); - opacity: 1 !important; +div.tox .tox-collection__item-label { + white-space: nowrap; } @media screen and (max-width: 480px) { - .mce-window { + div.tox .tox-dialog { + margin: 0 !important; width: 100% !important; - height: 100% !important; + height: 100%; left: 0 !important; top: 0 !important; border-width: 0 !important; } - .mce-window > .mce-reset { - display: flex; - flex-direction: column; - height: 100%; - } - .mce-window .mce-window-body { - flex: 1; - overflow-y: auto !important; - } - .mce-window > .mce-reset > div, - .mce-window .mce-container-body { - width: 100% !important; - } - .mce-window .mce-window-head { + div.tox .tox-dialog__header { background-color: #50162d; } - .mce-window .mce-window-head .mce-title { + div.tox .tox-dialog__header .tox-button { + display: none; + } + div.tox .tox-dialog__title { font-size: 1rem; text-align: center; padding: 0 1rem; } - .mce-window .mce-window-head .mce-close { - display: none; - } - .mce-window .mce-foot { + div.tox .tox-dialog__footer { background-color: #50162d; } - .mce-window .mce-foot .mce-container-body { - justify-content: space-evenly; - } - .mce-window .mce-foot .mce-container-body .mce-btn { - position: initial; - height: 100% !important; - margin: 0; - background: transparent; - border-width: 0; - } - .mce-window .mce-foot .mce-container-body .mce-btn:focus { - box-shadow: none; - } - .mce-window .mce-foot .mce-container-body .mce-btn:hover { - background: transparent; - } - .mce-window .mce-foot .mce-container-body .mce-btn:last-child { - margin: 0; - } - .mce-window .mce-foot .mce-container-body .mce-btn button { - color: #2c363a; + div.tox .tox-dialog__footer .tox-button { + color: #2c363a !important; + background: transparent !important; padding: 0.45rem; - font-size: 0.9rem; + margin: 0 !important; + border: 0; + font-size: 90%; } - .mce-window .mce-foot .mce-container-body .mce-btn button:before { + div.tox .tox-dialog__footer .tox-button:before { display: block; float: none; width: 100%; @@ -5185,190 +5119,25 @@ div.mce-menubtn.mce-opened { line-height: 1.75; height: 1.75rem; } - .mce-window .mce-foot .mce-container-body .mce-abs-end { - display: none; + div.tox .tox-dialog__footer .tox-button:active, + div.tox .tox-dialog__footer .tox-button:focus, + div.tox .tox-dialog__footer .tox-button:hover { + background: transparent; + border: 0; + box-shadow: none; + color: #2c363a; } - .mce-window .mce-foot .mce-search-foot div:nth-of-type(7) button:after { - display: none; - } - .mce-window .mce-form, - .mce-window .mce-form + .mce-container, - .mce-window .mce-formitem, - .mce-window .mce-combobox, - .mce-window .mce-panel:not(.mce-popover) { - width: 100% !important; - } - .mce-window .mce-formitem { - min-width: unset; - } - .mce-window .mce-form > .mce-container-body { + div.tox .tox-dialog__footer > div { + justify-content: space-evenly; display: flex; - flex-direction: column; - left: 0; - right: 0; - box-sizing: border-box; + width: 100%; } - .mce-window .mce-form .mce-container-body { - height: auto !important; - flex-direction: column; - } - .mce-window .mce-form .mce-container-body > label { - position: unset !important; - width: 100% !important; - max-width: 100%; - } - .mce-window .mce-form .mce-container-body > label + * { - position: unset !important; - width: auto !important; - } - .mce-window .mce-form .mce-container-body > .mce-checkbox { - position: absolute; - left: 0 !important; - top: 3rem !important; - } - .mce-window .mce-combobox input { - max-width: calc(100% - 4rem); - } - .mce-window .mce-combobox-fake input { - max-width: calc(100% - 1.7rem); - } - .mce-menu { - width: 272px !important; - right: 0; - top: 0 !important; - left: auto !important; - height: 100% !important; - max-height: unset !important; - padding: 0 !important; - margin: 0 !important; - border-radius: 0; - border: 0 !important; - } - .mce-menu .popover-header { - display: block !important; - } - .mce-menu .popover-header a { - font-size: 1.2rem; - line-height: 58px; - } - .mce-menu .popover-header a:before { - content: "\f00d"; - } - .mce-menu .mce-container-body { - width: 100% !important; - } - .mce-menu .mce-menu-item { - height: 47px; - line-height: 47px; - padding: 0 0.5rem; - border-left: 0; - border-bottom: 1px solid #f1f3f4; - margin: 0; - } - .mce-menu .mce-menu-item .mce-ico { - font-size: 150%; - padding: 0 0.7rem 0 0.25rem; - margin-top: -0.2rem; - } - .mce-menu .mce-menu-item .mce-text { - font-size: 1.2rem; - font-family: Roboto, sans-serif; - line-height: 47px; - color: #2c363a; - } - .mce-menu .mce-menu-item .mce-caret { + div.tox .tox-dialog__footer > div:empty { display: none; } - .mce-menu .mce-menu-item.mce-menu-item-preview.mce-active { - border-left: none; - position: relative; - } - .mce-menu .mce-menu-item.mce-menu-item-preview.mce-active:after { - font-size: 1.25em; - display: block; - float: left; - margin: 0 0.25rem 0 0; - width: 1.18em; - height: 1em; - font-family: 'Icons'; - font-style: normal; - font-weight: 900; - text-decoration: inherit; - text-align: center; - speak: none; - font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - content: "\f00c"; - position: absolute; - right: 0.5rem; - top: 0; - color: #2c363a; - } - .mce-menu .mce-menu-item.mce-menu-item-expand { - position: relative; - } - .mce-menu .mce-menu-item.mce-menu-item-expand:after { - font-size: 1.25em; - display: block; - float: left; - margin: 0 0.25rem 0 0; - width: 1.18em; - height: 1em; - font-family: 'Icons'; - font-style: normal; - font-weight: 900; - text-decoration: inherit; - text-align: center; - speak: none; - font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - content: "\f105"; - position: absolute; - right: 0.5rem; - top: 0; - color: #2c363a; - } - .mce-menu-item-sep, - .mce-menu-shortcut { - display: none !important; - } - .mce-charmap-dialog { - position: unset !important; - } - .mce-charmap-dialog + .mce-container { - display: none; - } - .mce-charmap { - display: block; - } - .mce-charmap tbody { - display: block; - } - .mce-charmap tr { - display: flex; - flex-wrap: wrap; - } - .mce-charmap td { - flex: 1; - height: auto !important; - min-width: 17%; - padding: 0 !important; - border: 0 !important; - border-bottom: 1px solid #f1f3f4 !important; - } - .mce-charmap td div { - font-size: 3rem; - line-height: 2; - } -} -html.touch .mce-grid td { - padding: 0.5rem; } /*** Media file selector for TinyMCE ***/ .image-selector { - margin: 1rem 1rem 1rem 1rem !important; padding: 1rem 0.5rem 10rem 0.5rem !important; } .image-selector.droptarget { @@ -5377,48 +5146,16 @@ html.touch .mce-grid td { .image-selector.droptarget:after { margin-top: 2rem; } -.image-selector button { - color: #fff; - background: #782144; - border-color: #782144; - padding: 0.5rem 0.75rem; - line-height: 1.5; - position: relative; -} -.image-selector button:focus { - box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.5); -} -.image-selector button:hover { - background: #641c38; - border-color: #5c1934; -} -.image-selector button.disabled, -.image-selector button:disabled { - background: #c83771; - border-color: #c83771; - opacity: 1; -} -.image-selector button:not(:disabled):not(.disabled):active, -.image-selector button:not(:disabled):not(.disabled).active { - background: #50162d; - border-color: #481429; -} -.image-selector button:not(:disabled):not(.disabled):active:focus, -.image-selector button:not(:disabled):not(.disabled).active:focus { - box-shadow: 0 0 0 0.2rem rgba(120, 33, 68, 0.53); -} -.image-selector button:before { - line-height: 1; -} .image-selector form { position: absolute; top: 0; } .image-selector .attachmentslist { - margin-left: 0; + margin: 0; overflow-x: hidden; overflow-y: auto; height: 19.1em; + padding: 0 !important; } .image-selector .attachmentslist li { padding: 0.25rem; @@ -5469,41 +5206,34 @@ html.layout-phone .image-selector .attachmentslist { } .html-editor .editor-toolbar .mce-i-html { display: block; - padding: 1px 5px; - margin: 2px; - width: 2rem; - height: 24px; - border: 1px solid transparent; - color: #595959; + margin: 2px 2px 2px 4px; + width: 34px; + height: 28px; + border-radius: 0.25rem; + color: #222f3e; } .html-editor .editor-toolbar .mce-i-html:focus, .html-editor .editor-toolbar .mce-i-html:hover { text-decoration: none; border-color: #e2e4e7; - background-color: #fff; + background-color: #dee0e2; +} +.html-editor .editor-toolbar .mce-i-html:before { + content: "\f03e"; + margin: 0; + width: 34px; + line-height: 28px; } .html-editor.mailvelope .editor-toolbar, -.html-editor .mce-tinymce + textarea + .editor-toolbar { +.html-editor .tox-tinymce + .editor-toolbar { display: none; } -.html-editor .mce-i-html:before, -.html-editor .mce-i-plaintext:before { - margin: 0; - width: 1em; - font-size: 1.2rem; -} -.html-editor .mce-i-html:before { - content: "\f03e"; - line-height: 1.2em; -} -.html-editor .mce-i-plaintext:before { - content: "\f410"; -} .html-editor > .googie_edit_layer, .html-editor > textarea { font-family: monospace; + font-size: 13px; width: 100% !important; - padding-top: 2.5rem; + padding-top: 40px; resize: none; } .html-editor > iframe { @@ -5511,9 +5241,6 @@ html.layout-phone .image-selector .attachmentslist { border: 1px solid #ced4da; min-height: 30em; } -.html-editor #composebody_ifr { - min-height: 30em; -} /*** GoogieSpell widget ***/ .googie_window { width: 16rem; @@ -5576,6 +5303,13 @@ html.layout-phone .image-selector .attachmentslist { margin-right: 0; margin-left: 0; } +#login-form .oauthlogin { + margin-top: 1em; + padding-top: 1em; +} +#login-form .formbuttons + .oauthlogin { + border-top: 1px solid #ccc; +} #rcmloginsubmit:before { display: none !important; } @@ -5642,18 +5376,21 @@ body.task-error-login #layout #layout-content > .header { #message-header { margin-bottom: 1rem; } -#message-header .subject { +#message-header > .subject { font-size: 1.5rem; font-weight: bold; } -body.status-flagged #message-header .subject:before { +body.status-flagged #message-header > .subject:before { display: inline; float: none; content: "\f024"; font-size: 1em; color: #ff5552; } -#message-header .subject a.extwin:before { +#message-header > .subject a.extwin { + text-decoration: none; +} +#message-header > .subject a.extwin:before { float: none; display: inline-block; font-size: 75%; @@ -5661,68 +5398,109 @@ body.status-flagged #message-header .subject:before { margin: 0; content: "\f360"; } -#message-header .subject span.inner { +#message-header > .subject span.inner { display: none; } -#message-header .short-header { +#message-header > .header { display: flex; } -#message-header .short-header img.contactphoto { +#message-header > .header img.contactphoto { margin: 0 1rem 0 0; border-radius: 50%; width: 4rem; height: 4rem; object-fit: cover; + background: #f4f4f4; } -#message-header .short-header div.header-content { +#message-header .header-content { min-height: 4rem; flex: 1; } -#message-header .short-header div.header-subject { - line-height: 2rem; +#message-header .header-content.details-view .header-summary { + display: none; } -#message-header .short-header div.header-subject > span { - line-height: 1.5; +#message-header .header-content.details-view .header-headers { + display: initial; +} +#message-header .header-summary { + margin-top: 0.25rem; +} +#message-header .header-summary > span { display: inline-block; - vertical-align: middle; } -#message-header .short-header div.header-links a { +#message-header .header-headers { + display: none; +} +#message-header .header-headers .header-title { + white-space: nowrap; + color: #737677; + font-weight: bold; + padding-right: 1rem; + vertical-align: top; +} +#message-header .header-links { + margin-top: 0.25rem; +} +#message-header .header-links a { font-size: 90%; margin-right: 0.5rem; text-decoration: none; white-space: nowrap; display: inline-block; } -#message-header .short-header div.header-links a:before { +#message-header .header-links a:before { height: 1.5rem; line-height: 1.3; } -#message-header .short-header div.header-links a.envelope:before { +#message-header .header-links a.headers-details:before { content: "\f0e0"; } -#message-header .short-header div.header-links a.html:before { +#message-header .header-links a.headers-summary:before { + content: "\f0e0"; + font-weight: 400; +} +#message-header .header-links a.headers-all:before { + content: "\f05a"; +} +#message-header .header-links a.html:before { content: "\f03e"; } -#message-header .short-header div.header-links a.plain:before { +#message-header .header-links a.plain:before { content: "\f039"; } -#message-header .short-header div.header-links a.zipdownload:before { +#message-header .header-links a.zipdownload:before { content: "\f019"; } -#message-header .short-header .message-partheaders { - margin: 0 !important; - padding: 0.25rem 0 !important; +.message-partheaders { + padding: 0.25rem 0.5rem; + margin: 0.5rem 0 -0.5rem 0; + border-top: 1px solid #f4f4f4; + background-color: #fcfcfc; } -#message-header a.extwin, -#message-header a.headers { - text-decoration: none; +.message-partheaders table.headers-table { + font-size: 90%; + color: #737677; +} +.message-partheaders table.headers-table .header-title { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + max-width: 8em; + font-weight: bold; + padding-right: 1rem; + vertical-align: top; +} +.message-partheaders table.headers-table .subject { + font-weight: bold; +} +.message-partheaders table.headers-table + .message-part, +.message-partheaders table.headers-table + .message-htmlpart { + border-top: 0; + margin: 0; } #message-content .attachmentslist:not(:empty) { margin-bottom: 1rem; } -#messagebody.mailvelope { - margin: 0; -} #messagebody.mailvelope iframe { min-height: 75vh; } @@ -5733,12 +5511,16 @@ body.status-flagged #message-header .subject:before { } .message-part:not(:first-child), .message-htmlpart:not(:first-child) { - border-top: 1px solid #f5f5f5; + border-top: 1px solid #f4f4f4; margin-top: 0.5rem; } +.message-part:last-child, +.message-htmlpart:last-child { + margin-bottom: 0.5rem; +} .message-part div.rcmBody, .message-htmlpart div.rcmBody { - margin: 0 !important; + margin: 0 auto !important; } .message-part blockquote, .message-htmlpart blockquote { @@ -5801,31 +5583,7 @@ body.status-flagged #message-header .subject:before { } .message-part div.pre { font-family: monospace; -} -.message-partheaders { - padding: 0.5rem 0; - margin: 0.5rem 0 0 0; - font-size: 90%; - border-top: 1px solid #f1f3f4; - border-bottom: 1px solid #f1f3f4; - color: #737677; -} -.message-partheaders .header-title { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; - max-width: 8em; - font-weight: bold; - padding-right: 1rem; - vertical-align: top; -} -.message-partheaders .subject { - font-weight: bold; -} -.message-partheaders + .message-part, -.message-partheaders + .message-htmlpart { - border-top: 0; - margin: 0; + font-size: 13px; } #compose-attachments { margin: 1rem 1rem 0 1rem; @@ -5851,6 +5609,879 @@ body.status-flagged #message-header .subject:before { .settings-default-icon li > a:before { content: "\f013"; } +/** + * Roundcube webmail styles for the Elastic skin + * + * Copyright (c) The Roundcube Dev Team + * + * The contents are subject to the Creative Commons Attribution-ShareAlike + * License. It is allowed to copy, distribute, transmit and to adapt the work + * by keeping credits to the original authors in the README.md file. + * See http://creativecommons.org/licenses/by-sa/3.0/ for details. + */ +html.dark-mode { + scrollbar-color: #000000 #4d6066; + scrollbar-width: thin; +} +html.dark-mode textarea, +html.dark-mode select, +html.dark-mode .popover-body, +html.dark-mode .popupmenu, +html.dark-mode .ui-dialog-content, +html.dark-mode .frame-content, +html.dark-mode .formcontent, +html.dark-mode .table-responsive, +html.dark-mode .table-responsive-sm, +html.dark-mode .scroller { + scrollbar-width: thin; +} +html.dark-mode:not(.touch) ::-webkit-scrollbar { + width: 6px; +} +html.dark-mode:not(.touch) ::-webkit-scrollbar-track { + background-color: #4d6066; +} +html.dark-mode:not(.touch) ::-webkit-scrollbar-thumb { + background-color: #000000; +} +html.dark-mode body { + color: #c5d1d3; + background-color: #21292c; +} +html.dark-mode #logo { + opacity: 0.8; +} +html.dark-mode #layout-list, +html.dark-mode #layout-content, +html.dark-mode #layout-sidebar, +html.dark-mode #layout > div > .header, +html.dark-mode #layout > div > .footer, +html.dark-mode .popup .listbox .footer, +html.dark-mode .menu.pagenav.pagenav-list, +html.dark-mode .menu.pagenav.pagenav-list + .navlist, +html.dark-mode .menu.pagenav.pagenav-list.expanded + .navlist { + background-color: transparent; + border-color: #4d6066; +} +html.dark-mode #layout > div > .footer { + font-weight: normal; +} +html.dark-mode #layout > div > .header, +html.dark-mode #layout > div > .footer { + color: unset; +} +html.dark-mode #layout > div > .header a.button, +html.dark-mode #layout > div > .footer a.button { + color: #c5d1d3; +} +html.dark-mode #layout-menu { + background: unset; + border-right: 1px solid #4d6066; +} +html.dark-mode #layout-menu .popover-header, +html.dark-mode #layout-menu .special-buttons { + background: transparent !important; +} +@media screen and (max-width: 480px) { + html.dark-mode #layout-menu { + border-left: 0; + } + html.dark-mode #layout-menu .popover-header { + border-bottom: 1px solid #4d6066; + } +} +html.dark-mode #layout-menu .special-buttons a:not(:focus) { + background: #21292c; +} +html.dark-mode.layout-phone #layout-menu { + background: #161b1d; +} +html.dark-mode .searchbar { + background-color: transparent; + border-color: #4d6066; +} +html.dark-mode .searchbar form:before, +html.dark-mode .searchbar a, +html.dark-mode .searchbar input { + color: unset; +} +html.dark-mode .searchbar a.selected { + color: #50162d; +} +html.dark-mode #messagestack div { + color: #c5d1d3; +} +html.dark-mode #messagestack div i.icon:before { + color: #c5d1d3; +} +html.dark-mode .ui.alert.boxinformation, +html.dark-mode #messagestack .alert-info { + background-color: #300d1b; +} +html.dark-mode .ui.alert.boxerror, +html.dark-mode #messagestack .alert-danger { + background-color: #993331; +} +html.dark-mode .ui.alert.boxwarning, +html.dark-mode #messagestack .alert-warning { + background-color: #943a5e; +} +html.dark-mode .ui.alert.boxconfirmation, +html.dark-mode #messagestack .alert-success { + background-color: #300d1b; +} +html.dark-mode #messagestack .loading { + background-color: #374449; +} +html.dark-mode .ui.alert.boxinformation, +html.dark-mode .ui.alert.boxerror, +html.dark-mode .ui.alert.boxwarning, +html.dark-mode .ui.alert.boxconfirmation { + color: #c5d1d3; +} +html.dark-mode .ui.alert.boxinformation i.icon:before, +html.dark-mode .ui.alert.boxerror i.icon:before, +html.dark-mode .ui.alert.boxwarning i.icon:before, +html.dark-mode .ui.alert.boxconfirmation i.icon:before { + color: #c5d1d3; +} +html.dark-mode .ui.alert a:not(.btn) { + color: #c5d1d3; + text-decoration: underline; +} +html.dark-mode .iframe-loader { + background-color: rgba(33, 41, 44, 0.9); +} +html.dark-mode .iframe-loader .spinner-border { + color: #7d989c; + border-color: currentColor #425457 currentColor currentColor; +} +html.dark-mode #taskmenu a, +html.dark-mode .menu.toolbar a { + color: #c5d1d3; +} +html.dark-mode #taskmenu a.selected, +html.dark-mode .menu.toolbar a.selected { + background-color: #374549; +} +html.dark-mode pre, +html.dark-mode .popover .menu li a[aria-haspopup]::after, +html.dark-mode .menu.pagenav .pagenav-text, +html.dark-mode .menu.pagenav a { + color: unset; +} +html.dark-mode #taskmenu .action-buttons a { + color: #50162d; +} +@media screen and (max-width: 480px) { + html.dark-mode #taskmenu a { + border-color: #2c373a !important; + } + html.dark-mode #taskmenu a.selected { + background: transparent; + } +} +@media screen and (min-width: 481px) and (max-width: 1024px) { + html.dark-mode #taskmenu a { + width: 41px; + } +} +@media screen and (min-width: 1025px) { + html.dark-mode #taskmenu a { + width: 77px; + } +} +html.dark-mode.layout-small .popover, +html.dark-mode.layout-phone .popover { + border-left: 1px solid #4d6066; +} +html.dark-mode.layout-small .popover .menu .dropbutton a.dropdown, +html.dark-mode.layout-phone .popover .menu .dropbutton a.dropdown { + background: transparent; +} +html.dark-mode.layout-small .popover:not(.select-menu) .listing li:last-child, +html.dark-mode.layout-phone .popover:not(.select-menu) .listing li:last-child { + border-color: #2c373a; +} +html.dark-mode.layout-small .popover-header, +html.dark-mode.layout-phone .popover-header { + background: #161b1d; + border-bottom: 1px solid #4d6066; + color: unset; +} +html.dark-mode.layout-small .popover-overlay, +html.dark-mode.layout-phone .popover-overlay { + background: rgba(0, 0, 0, 0.7); +} +html.dark-mode #taskmenu a:hover, +html.dark-mode .popupmenu .listing li > a:not(.disabled):hover, +html.dark-mode .header a.button.icon:not(.disabled):focus, +html.dark-mode .header a.button.icon:not(.disabled):hover, +html.dark-mode .menu.toolbar .dropbutton:not(.disabled):hover, +html.dark-mode .menu a:not(.disabled):focus, +html.dark-mode .menu a:not(.disabled):hover { + background-color: #374549; +} +html.dark-mode .menu.toolbar a.selected { + color: #50162d; + background: transparent; +} +html.dark-mode .menu.toolbar .dropbutton a.dropdown:hover { + background-color: #425358; +} +html.dark-mode .listing tbody td, +html.dark-mode .listing tbody td a, +html.dark-mode .listing li a { + color: #c5d1d3; +} +html.dark-mode .listing li ul, +html.dark-mode .listing tbody td, +html.dark-mode .listing li { + border-color: #2c373a; +} +html.dark-mode .listing li.selected, +html.dark-mode .listing li.selected > a, +html.dark-mode .listing li.selected > div > a, +html.dark-mode .listing tr.selected td { + color: #50162d; + background-color: #374549; +} +html.dark-mode .listing li.selected ul { + background-color: #21292c; +} +html.dark-mode .listing li.selected ul div.treetoggle { + color: #c5d1d3; +} +html.dark-mode .listing li.disabled, +html.dark-mode .listing tr.disabled td { + color: #637e82; +} +html.dark-mode .listing li.droptarget > a, +html.dark-mode .listing tr.droptarget > td { + background-color: #4d4d00; +} +html.dark-mode .messagelist { + color: #c5d1d3; +} +html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.size, +html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.date, +html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.fromto { + color: #8ba3a7; +} +html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.msgicon.status { + color: #c5d1d3; +} +html.dark-mode .messagelist tr:not(.flagged):not(.deleted) td.subject span.msgicon.status.unread::before { + color: #b30a4f; +} +html.dark-mode .messagelist tr:not(.flagged):not(.deleted) span.flag { + color: #c5d1d3; +} +html.dark-mode .messagelist tr:not(.flagged):not(.deleted).selected td.subject a, +html.dark-mode .messagelist tr:not(.flagged):not(.deleted).selected td.subject span.msgicon.status { + color: #50162d; +} +html.dark-mode .messagelist tr.flagged:not(.deleted) td, +html.dark-mode .messagelist tr.flagged:not(.deleted) span.attachment span { + color: #ff5552; +} +html.dark-mode .messagelist tr.deleted td span.flag, +html.dark-mode .messagelist tr.deleted td span.attachment span, +html.dark-mode .messagelist tr.deleted td.subject span.msgicon.status, +html.dark-mode .messagelist tr.deleted td.subject span.msgicon.status.unread:before, +html.dark-mode .messagelist tr.deleted td.subject span.subject a, +html.dark-mode .messagelist tr.deleted td.subject span.date, +html.dark-mode .messagelist tr.deleted td.subject span.fromto { + color: #637e82; +} +html.dark-mode .messagelist span.attachment span { + color: #8ba3a7; +} +html.dark-mode .folderlist li.mailbox .unreadcount { + background-color: #4d6066; + color: #e2e8e9; + font-weight: normal; +} +html.dark-mode .attachmentslist { + background-color: #374549; + border: 0; +} +html.dark-mode .attachmentslist a { + color: #c5d1d3; +} +html.dark-mode .attachmentslist li .attachment-name { + color: #c5d1d3; +} +html.dark-mode .attachmentslist li .attachment-size { + color: #8ba3a7; +} +html.dark-mode .btn { + color: #c5d1d3; +} +html.dark-mode .btn:focus, +html.dark-mode .btn:hover { + color: #e2e8e9; +} +html.dark-mode .btn:disabled { + opacity: 0.5 !important; +} +html.dark-mode .btn-primary { + background-color: #000000; + color: #e2e8e9; +} +html.dark-mode .btn-primary:hover:not(:disabled) { + background-color: #0d0d0d; +} +html.dark-mode .btn-secondary { + background-color: #4d6066; + color: #e2e8e9; +} +html.dark-mode .btn-secondary:hover:not(:disabled) { + background-color: #586e75; +} +html.dark-mode .btn-danger { + background-color: #993331; + color: #e2e8e9; +} +html.dark-mode .btn-danger:hover:not(:disabled) { + background-color: #ac3937; +} +html.dark-mode .floating-action-buttons a.button { + box-shadow: none; + background: #000000; +} +html.dark-mode .custom-file-label, +html.dark-mode .form-control { + background-color: #21292c; + color: #c5d1d3; +} +html.dark-mode .custom-file-label:not(.is-invalid), +html.dark-mode .form-control:not(.is-invalid) { + border-color: #7c949c; +} +html.dark-mode .custom-file-label:focus, +html.dark-mode .form-control:focus { + background-color: #2c373b; +} +html.dark-mode .custom-file-label:focus:not(.is-invalid), +html.dark-mode .form-control:focus:not(.is-invalid) { + color: #e2e7e9 !important; + border-color: #50162d; +} +html.dark-mode .custom-file-label::after { + color: #c5d1d3; + background-color: #374549; +} +html.dark-mode .custom-select { + background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23c5d1d3' viewBox='0 0 4 5'%3e%3cpath d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center / 8px 10px; +} +html.dark-mode .custom-switch .custom-control-label::before { + background-color: #4d6066; +} +html.dark-mode .custom-switch .custom-control-label::after { + background-color: #c5d1d3; +} +html.dark-mode .custom-switch .custom-control-input:disabled ~ .custom-control-label { + opacity: 0.4; +} +html.dark-mode .custom-switch .custom-control-input:checked ~ .custom-control-label::before { + background-color: #000000; +} +html.dark-mode .custom-switch .custom-control-input:checked ~ .custom-control-label::after { + background-color: #c5d1d3; +} +html.dark-mode input:disabled, +html.dark-mode select:disabled { + opacity: 0.5; +} +html.dark-mode .multi-input:not(.is-invalid) > .content { + border-color: #7c949c; +} +html.dark-mode .multi-input:not(.is-invalid) > .content.focused { + border-color: #50162d; +} +html.dark-mode .input-group-text { + color: #c5d1d3; + background-color: #374549; + border-color: #7c949c; +} +html.dark-mode .input-group a:focus { + border-color: #50162d; + box-shadow: 0 0 0 0.2rem rgba(80, 22, 45, 0.25); + z-index: 1; +} +html.dark-mode .form-control-plaintext { + color: unset; +} +html.dark-mode .recipient-input.focus { + color: #e2e7e9; + background-color: #2c373b; + border-color: #50162d; +} +html.dark-mode .recipient-input a.button.icon, +html.dark-mode .recipient-input input { + color: #c5d1d3; +} +html.dark-mode .recipient-input .recipient { + background-color: #374549; + border-color: #7c949c; +} +html.dark-mode .file-upload { + border-color: #4d6066; +} +html.dark-mode .file-upload:after { + mix-blend-mode: soft-light; +} +html.dark-mode .file-upload.droptarget.active { + border-color: #c5d1d3; +} +html.dark-mode .file-upload.droptarget.hover { + border-color: #c5d1d3; + background-color: #374549; +} +html.dark-mode .file-upload .attachmentslist { + background: transparent; +} +html.dark-mode .image-upload { + background-color: #374549; +} +html.dark-mode .image-upload a.button { + background-color: rgba(33, 41, 44, 0.25); +} +html.dark-mode .formcontent.raweditor .CodeMirror { + color: #c5d1d3; + background-color: #21292c; + border-color: #7c949c; +} +html.dark-mode .formcontent.raweditor .CodeMirror-focused { + background-color: #2c373b; + border-color: #50162d; +} +html.dark-mode .CodeMirror-selected, +html.dark-mode .CodeMirror-line::selection, +html.dark-mode .CodeMirror-line > span::selection, +html.dark-mode .CodeMirror-line > span > span::selection { + background: #374549; +} +html.dark-mode .CodeMirror-gutters { + background-color: #212a2c; + border: 0; +} +html.dark-mode .CodeMirror-activeline-background { + background: #374549; +} +html.dark-mode .skinselection .skinthumbnail { + border-color: #7c949c; + background: transparent; +} +html.dark-mode .html-editor .editor-toolbar { + background-color: #374549; + border-color: #7c949c; +} +html.dark-mode .html-editor .editor-toolbar .mce-i-html { + color: unset; +} +html.dark-mode .html-editor .editor-toolbar .mce-i-html:hover, +html.dark-mode .html-editor .editor-toolbar .mce-i-html:focus { + background-color: #586e75; + border-color: transparent; +} +html.dark-mode .tox.tox-tinymce { + border-color: #7c949c; +} +html.dark-mode .tox .tox-toolbar { + background-color: #374549; + border-color: #7c949c; +} +html.dark-mode .tox .tox-toolbar-overlord > div { + background: url("data:image/svg+xml,%3Csvg height='33px' viewBox='0 0 40 33px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='32px' width='100' height='1' fill='%237c949c'/%3E%3C/svg%3E") #374549; +} +html.dark-mode .tox .tox-pop.tox-pop--top:before, +html.dark-mode .tox .tox-pop.tox-pop--top:after { + border-bottom-color: #8b9fa7; +} +html.dark-mode .tox .tox-pop__dialog { + box-shadow: none; + border-color: #8b9fa7; +} +html.dark-mode .tox .tox-tbtn, +html.dark-mode .tox .tox-split-button, +html.dark-mode .tox .tox-swatches__picker-btn { + color: #c5d1d3; +} +html.dark-mode .tox .tox-tbtn svg, +html.dark-mode .tox .tox-split-button svg, +html.dark-mode .tox .tox-swatches__picker-btn svg { + fill: #c5d1d3 !important; +} +html.dark-mode .tox .tox-tbtn:hover, +html.dark-mode .tox .tox-split-button:hover, +html.dark-mode .tox .tox-swatches__picker-btn:hover, +html.dark-mode .tox .tox-tbtn:focus, +html.dark-mode .tox .tox-split-button:focus, +html.dark-mode .tox .tox-swatches__picker-btn:focus { + color: #c5d1d3; + background: #586e75; + box-shadow: none; +} +html.dark-mode .tox .tox-tbtn--enabled { + background: #586e75; +} +html.dark-mode .tox .tox-button--naked:focus:not(:disabled), +html.dark-mode .tox .tox-button--naked.tox-button--icon:hover:not(:disabled) { + color: #d4ddde; + background-color: #586e75; + border-color: transparent; +} +html.dark-mode .tox .tox-button--naked:disabled { + background: transparent; + border: transparent; +} +html.dark-mode .tox .tox-dialog__header .tox-button--naked:hover { + background: transparent !important; +} +html.dark-mode .tox .tox-selectfield select { + background: transparent; + color: #c5d1d3; +} +html.dark-mode .tox .tox-selectfield svg { + fill: #c5d1d3; +} +html.dark-mode .tox .tox-color-input span::before { + background-color: #c5d1d3; +} +html.dark-mode .tox .tox-toolbar__group:not(:last-of-type) { + border-color: #7c949c; +} +html.dark-mode .tox .tox-dialog, +html.dark-mode .tox .tox-dialog__header, +html.dark-mode .tox .tox-dialog__body, +html.dark-mode .tox .tox-dialog__footer, +html.dark-mode .tox .tox-dialog__title { + color: #c5d1d3; + border-color: #4d6066; + background-color: #21292c; +} +html.dark-mode .tox .tox-textfield, +html.dark-mode .tox .tox-color-input > input, +html.dark-mode .tox .tox-label, +html.dark-mode .tox .tox-dialog__body-nav-item, +html.dark-mode .tox .tox-button--naked, +html.dark-mode .tox .tox-dialog__header .tox-button, +html.dark-mode .tox .tox-insert-table-picker__label { + color: #c5d1d3; +} +html.dark-mode .tox .tox-dialog__footer .tox-button { + background-color: #000000; + color: #e2e8e9; +} +html.dark-mode .tox .tox-dialog__footer .tox-button:disabled { + opacity: 0.5; +} +@media screen and (max-width: 480px) { + html.dark-mode .tox .tox-dialog__footer .tox-button { + color: #c5d1d3 !important; + } +} +html.dark-mode .tox .tox-dialog__footer .tox-button:focus:not(:disabled) { + background-color: #000000; +} +html.dark-mode .tox .tox-dialog__footer .tox-button:hover:not(:disabled) { + background-color: #0d0d0d; +} +html.dark-mode .tox .tox-dialog__footer .tox-button.tox-button--secondary { + background-color: #4d6066; + color: #e2e8e9; +} +html.dark-mode .tox .tox-dialog__footer .tox-button.tox-button--secondary:focus:not(:disabled) { + background-color: #4d6066; +} +html.dark-mode .tox .tox-dialog__footer .tox-button.tox-button--secondary:hover:not(:disabled) { + background-color: #586e75; +} +html.dark-mode .tox .tox-dialog__body-nav-item--active { + color: #50162d; +} +html.dark-mode .tox .tox-dialog-wrap__backdrop { + background-color: rgba(0, 0, 0, 0.7); +} +html.dark-mode .tox .tox-menu { + scrollbar-width: thin; + background-color: #161b1d; + border-color: #8b9fa7; + box-shadow: none; +} +html.dark-mode .tox .tox-dialog__body-nav, +html.dark-mode .tox .tox-collection__group { + scrollbar-width: thin; +} +html.dark-mode .tox .tox-collection__item-caret svg { + fill: #c5d1d3; +} +html.dark-mode .tox .tox-collection__item { + color: #c5d1d3; +} +html.dark-mode .tox .tox-collection__item:not(:last-child) { + border-bottom: 1px solid #2c373a; +} +html.dark-mode .tox .tox-collection--grid .tox-collection__item { + border: 0; +} +html.dark-mode .tox .tox-collection__item--active, +html.dark-mode .tox .tox-collection__item--active:not(.tox-collection__item--state-disabled) { + color: #c5d1d3; + background-color: #374549; +} +html.dark-mode .tox .tox-collection__item--enabled { + color: #50162d; + background-color: #374549; +} +html.dark-mode .message-part, +html.dark-mode .message-htmlpart { + border-color: #4d6066; +} +html.dark-mode .message-part blockquote, +html.dark-mode .message-htmlpart blockquote { + background-color: #21292c; + border-color: #782144; + color: #782144; +} +html.dark-mode .message-part blockquote span.blockquote-link, +html.dark-mode .message-htmlpart blockquote span.blockquote-link { + color: currentColor; + background: #21292c; + border-color: currentColor; +} +html.dark-mode .message-part blockquote blockquote, +html.dark-mode .message-htmlpart blockquote blockquote { + color: #782144; + border-color: #782144; +} +html.dark-mode .message-part blockquote blockquote blockquote, +html.dark-mode .message-htmlpart blockquote blockquote blockquote { + color: #ff8785; + border-color: #ff8785; +} +html.dark-mode .message-part span.sig { + color: #8ba3a7; +} +html.dark-mode .message-htmlpart { + background-color: white; + color: #2c363a; + padding: 0; + margin-top: 0.5rem; +} +html.dark-mode #message-header .header-headers .header-title { + color: #c5d1d3; + font-weight: normal; +} +html.dark-mode .message-partheaders { + background-color: #374549; + border: 0; +} +html.dark-mode .message-partheaders table.headers-table { + color: #c5d1d3; +} +html.dark-mode .message-partheaders table.headers-table * { + font-weight: normal; +} +html.dark-mode p.image-attachment { + border-color: #4d6066; + background-color: #374549; +} +html.dark-mode p.image-attachment span { + color: #8ba3a7; +} +html.dark-mode fieldset.image-attachment legend { + color: #8ba3a7; + border-color: #4d6066; +} +html.dark-mode #messagepartframe { + background: #fff; +} +html.dark-mode .ui-widget { + border-color: #4d6066; +} +html.dark-mode .ui-widget-overlay { + background-color: rgba(0, 0, 0, 0.7); +} +html.dark-mode .ui-widget-header, +html.dark-mode .ui-widget-content { + background-color: #21292c; +} +html.dark-mode .ui-dialog .ui-dialog-titlebar { + border-color: #4d6066; +} +html.dark-mode .ui-dialog .ui-dialog-title, +html.dark-mode .ui-dialog .ui-dialog-titlebar-close { + color: #c5d1d3; + background: transparent; +} +html.dark-mode .ui-dialog .ui-dialog-buttonpane { + border-color: #4d6066; +} +html.dark-mode .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset a.btn-link { + color: #c5d1d3; +} +html.dark-mode .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset a.btn-link:focus { + background: transparent; +} +@media screen and (max-width: 480px) { + html.dark-mode .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button.btn-primary:not(.btn-danger), + html.dark-mode .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button.btn-secondary { + color: #c5d1d3; + } +} +html.dark-mode .ui-datepicker .ui-datepicker-header { + border-color: #4d6066; +} +html.dark-mode .ui-datepicker th { + color: #8ba3a7; + font-size: 80%; + font-weight: normal; +} +html.dark-mode .ui-datepicker .ui-datepicker-prev, +html.dark-mode .ui-datepicker .ui-datepicker-next, +html.dark-mode .ui-datepicker .ui-state-default, +html.dark-mode .ui-datepicker.ui-widget-content .ui-state-default { + color: #c5d1d3; +} +html.dark-mode .ui-datepicker .ui-state-highlight, +html.dark-mode .ui-datepicker.ui-widget-content .ui-state-highlight { + color: #50162d; + background-color: #374549; +} +html.dark-mode .ui-datepicker .ui-datepicker-days-cell-over a { + background-color: #4d6066; +} +html.dark-mode .ui-menu { + scrollbar-width: thin; + background-color: #161b1d; + border-color: #8b9fa7; + box-shadow: none; +} +html.dark-mode .ui-menu .ui-menu-item { + border-bottom: 1px solid #2c373a; +} +html.dark-mode .ui-menu .ui-state-active { + background-color: #374549 !important; +} +html.dark-mode .minicolors-panel { + box-shadow: none; + border-color: #4d6066; + background: #161b1d; +} +html.dark-mode ::placeholder, +html.dark-mode ::-webkit-input-placeholder, +html.dark-mode .listing-info, +html.dark-mode .listing span.secondary, +html.dark-mode .file-upload .hint, +html.dark-mode .contactlist span.email, +html.dark-mode #login-footer, +html.dark-mode #contacthead.readonly .source.row, +html.dark-mode .formcontent .hint { + font-weight: normal; + color: #8ba3a7; +} +html.dark-mode .popover { + background-color: #161b1d; + border-color: #8b9fa7; + box-shadow: none; +} +html.dark-mode .popover .menu li.separator { + background-color: transparent; + color: #8ba3a7; +} +html.dark-mode .popover .menu ul + li.separator { + border-top: 1px solid #2c373a; +} +html.dark-mode .popover-body { + color: #c5d1d3; +} +html.dark-mode .bs-popover-auto[x-placement^="right"] > .arrow::after, +html.dark-mode .bs-popover-right > .arrow::after { + border-right-color: #8b9fa7; +} +html.dark-mode .bs-popover-auto[x-placement^="left"] > .arrow::after, +html.dark-mode .bs-popover-left > .arrow::after { + border-left-color: #8b9fa7; +} +html.dark-mode .bs-popover-auto[x-placement^="top"] > .arrow::after, +html.dark-mode .bs-popover-top > .arrow::after { + border-top-color: #8b9fa7; +} +html.dark-mode .bs-popover-auto[x-placement^="bottom"] > .arrow::after, +html.dark-mode .bs-popover-bottom > .arrow::after { + border-bottom-color: #8b9fa7; +} +html.dark-mode .nav-tabs { + border-color: #4d6066; +} +html.dark-mode .nav-tabs .nav-link { + color: #c5d1d3; + border-color: transparent; + border-bottom-color: #4d6066; +} +html.dark-mode .nav-tabs .nav-link:hover { + background: #21292c; + border-color: #4d6066; + color: #c5d1d3; +} +html.dark-mode .nav-tabs .nav-link.active { + background: #21292c; + border-color: #4d6066; + border-bottom-color: transparent; + color: #fff; +} +html.dark-mode .table { + color: #c5d1d3; +} +html.dark-mode .table td, +html.dark-mode .table th, +html.dark-mode .table thead th { + border-color: #4d6066; +} +html.dark-mode .table-widget { + border-color: #4d6066; +} +html.dark-mode .table-widget > .footer { + border-color: #4d6066; +} +html.dark-mode .table-widget table.options-table tr:last-child td { + border-color: #4d6066; +} +html.dark-mode .table-widget table.options-table tr.selected td { + background-color: #374549; + color: #c5d1d3; +} +html.dark-mode #rcmdraglayer { + background-color: #161b1d; + border: 1px solid #8b9fa7; + box-shadow: none; + color: #c5d1d3; +} +html.dark-mode .quota-widget { + color: unset; +} +html.dark-mode .quota-widget .bar { + border-color: #4d6066; + background-color: #4d6066; +} +html.dark-mode .quota-info .root { + color: #8ba3a7; + background-color: transparent; +} +html.dark-mode img.contactphoto, +html.dark-mode #contactpic { + background-color: #374549 !important; +} +html.dark-mode .pgpkeyimport div.key.revoked, +html.dark-mode .pgpkeyimport div.key.disabled { + color: #637e82; +} +html.dark-mode .pgpkeyimport li.uid::before { + opacity: 1; +} /* Here you can put your custom styles that will be appended to the output css file */ /* top bar text in white */ #layout > div > .header { diff --git a/styles/variables.less b/styles/variables.less index 7b764c2..3027aa9 100644 --- a/styles/variables.less +++ b/styles/variables.less @@ -12,6 +12,8 @@ @import (reference) "fontawesome"; @import (reference) "colors"; +@dark-mode-enabled: true; // on change also have to change dark_mode_support in meta.json + @screen-width-large: 1200px; @screen-width-medium: 1024px; @screen-width-small: 768px; @@ -55,4 +57,4 @@ @icon-resize-corner: data-uri("image/svg+xml;charset=utf-8", "../images/corner-handle.svg"); // size: 16x16 @icon-file-drop: data-uri("image/svg+xml;charset=utf-8", "../images/download.svg"); -@import (reference) "_variables"; +@import (reference, optional) "_variables"; diff --git a/styles/widgets/buttons.less b/styles/widgets/buttons.less index 537317d..b4c02e4 100644 --- a/styles/widgets/buttons.less +++ b/styles/widgets/buttons.less @@ -17,7 +17,7 @@ } a.button { - text-decoration: none; + text-decoration: none !important; } @@ -139,6 +139,9 @@ button.btn { &.sso:before { content: @fa-var-sign-in-alt; } + &.extwin:before { + content: @fa-var-external-link-square-alt; + } } a.btn, @@ -149,6 +152,24 @@ button.btn { vertical-align: middle; margin-right: .4rem !important; // !important needed for a.btn } + + &.oauth.google:before, + &.oauth.outlook:before { + content: " "; + display: inline-block !important; + height: 1.5rem; + width: 1.5rem; + margin-right: .8rem !important; + background-size: 100% auto; + } + + &.oauth.google:before { + background: url('../images/google-icon.svg') top left no-repeat; + } + + &.oauth.outlook:before { + background: url('../images/microsoft-icon.svg') top left no-repeat; + } } a.button.icon { @@ -218,12 +239,18 @@ html.touch { } } +.btn-link { + color: @color-link; +} + .btn-secondary { color: @color-btn-secondary; background: @color-btn-secondary-background; border-color: @color-btn-secondary-background; &:focus { + background: darken(@color-btn-secondary-background, 5%); + border-color: darken(@color-btn-secondary-background, 7%); box-shadow: 0 0 0 .2rem fade(@color-btn-secondary-background, 50%); } @@ -234,9 +261,8 @@ html.touch { &.disabled, &:disabled { - background: lighten(@color-btn-secondary-background, 20%); - border-color: lighten(@color-btn-secondary-background, 20%); - opacity: 1; + background: @color-btn-secondary-background; + border-color: @color-btn-secondary-background; } &:not(:disabled):not(.disabled) { @@ -258,6 +284,8 @@ html.touch { border-color: @color-btn-primary-background; &:focus { + background: darken(@color-btn-primary-background, 5%); + border-color: darken(@color-btn-primary-background, 7%); box-shadow: 0 0 0 .2rem fade(@color-btn-primary-background, 50%); } @@ -268,9 +296,8 @@ html.touch { &.disabled, &:disabled { - background: lighten(@color-btn-primary-background, 20%); - border-color: lighten(@color-btn-primary-background, 20%); - opacity: 1; + background: @color-btn-primary-background; + border-color: @color-btn-primary-background; } &:not(:disabled):not(.disabled) { @@ -292,6 +319,8 @@ html.touch { border-color: @color-btn-danger-background; &:focus { + background: darken(@color-btn-danger-background, 5%); + border-color: darken(@color-btn-danger-background, 7%); box-shadow: 0 0 0 .2rem fade(@color-btn-danger-background, 50%); } @@ -302,9 +331,8 @@ html.touch { &.disabled, &:disabled { - background: lighten(@color-btn-danger-background, 20%); - border-color: lighten(@color-btn-danger-background, 20%); - opacity: 1; + background: @color-btn-danger-background; + border-color: @color-btn-danger-background; } &:not(:disabled):not(.disabled) { diff --git a/styles/widgets/common.less b/styles/widgets/common.less index 3b3eab7..87a16ff 100644 --- a/styles/widgets/common.less +++ b/styles/widgets/common.less @@ -285,7 +285,6 @@ fieldset.image-attachment { } .count { - color: @color-quota-text; font-size: 80%; order: 2; } @@ -430,7 +429,7 @@ fieldset.image-attachment { a { padding: .2rem .45rem !important; - height: 3.5rem !important; + height: ~"calc(3.5rem - 1px)" !important; } } diff --git a/styles/widgets/dialogs.less b/styles/widgets/dialogs.less index 666f94e..2d946cb 100644 --- a/styles/widgets/dialogs.less +++ b/styles/widgets/dialogs.less @@ -49,6 +49,7 @@ box-shadow: 3px 3px 5px @color-popover-shadow; border-color: @color-layout-border; padding: 0; + z-index: 1300; .popover-header { // On mobile don't display popup arrows and titles @@ -62,7 +63,12 @@ } li:last-child { - border-radius: 0 0 .25rem .25rem; + border-bottom-right-radius: .25rem; + border-bottom-left-radius: .25rem; + } + + ul.rounded-0 > li { + border-radius: 0; } } } @@ -95,7 +101,7 @@ html.layout-phone { } .popover-overlay { - z-index: 1000; + z-index: 1299; background-color: @color-dialog-overlay-background; position: absolute; top: 0; @@ -148,6 +154,7 @@ html.touch .popover { max-width: initial; margin: 0; height: auto; + z-index: 1301; // above TinyMCE dialogs .popover-header { border-radius: .25rem .25rem 0 0 !important; diff --git a/styles/widgets/editor.less b/styles/widgets/editor.less index aefbbf5..fab8800 100644 --- a/styles/widgets/editor.less +++ b/styles/widgets/editor.less @@ -12,758 +12,344 @@ /*** Text Editor widget (and TinyMCE editor) ***/ -.mce-tinymce { - &.mce-container.mce-panel { +// use of div.tox instead of just .tox is to have prio over TinyMCE styles +div.tox { + font-size: 1rem; + + &, :not(.svg) { + .font-family(); + } + + &.tox-tinymce { border-radius: .25rem; - border-color: @color-input-border; - overflow: hidden; - } - - .mce-btn, - .mce-panel { - background-color: @color-input-addon-background; - } - - .mce-panel { - border-color: @color-input-border; + border: 1px solid @color-input-border; } &.focused { border-color: @color-input-border-focus !important; box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow !important; } -} -.mce-top-part::before, -.mce-tinymce, -.mce-window { - box-shadow: none !important; -} + .tox-toolbar-overlord { + z-index: 1; // for sticky header feature -.mce-btn { - &.mce-active { - background: @color-btn-secondary-background !important; + & > div { + // The svg is copied from TinyMCE with modified height params + background: url("data:image/svg+xml;charset=utf8,%3Csvg height='33px' viewBox='0 0 40 33px' width='40' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='32px' width='100' height='1' fill='%23cccccc'/%3E%3C/svg%3E"); + background-color: @color-input-addon-background; + } } -} -.mce-window { - &.mce-container { + .tox-toolbar__primary { + border-top: 0; + } + + // This one is for mobile + .tox-toolbar { + background-color: @color-input-addon-background; + } + + .tox-edit-area { border: 0; + } - & :not(.mce-ico) { - .font-family(); + .tox-dialog { + border-radius: 0; + border-color: @color-layout-border; + box-shadow: none; + align-self: unset !important; + + .tox-form__group { + margin-top: 0; + margin-bottom: .75rem; + } + + .tox-dialog__body-nav-item--active { + color: @color-link; + border-color: transparent; + + &:hover { + color: @color-link-hover; + } } } - .mce-reset { - background: #fff; + .tox-dialog__body-content { + overflow: unset; } - .mce-container-body { - &.mce-abs-layout { - overflow: unset; - } - - .mce-abs-end { - display: none; - } + .tox-dialog-wrap__backdrop { + background-color: @color-dialog-overlay-background; } - .mce-window-head { - height: @layout-header-height; + .tox-dialog__header { + height: (@layout-header-height - 1px); border-bottom: 1px solid @color-dialog-header-border; + justify-content: flex-end; // fixes close button position when dialog has no title padding: 0; - .mce-title { - line-height: @layout-header-height; - font-size: 1.25rem; - padding: 0 3rem 0 1rem; + .tox-button { color: @color-dialog-header; - } - - .mce-close { - border: 0; - color: @color-dialog-header; - background: transparent; right: 0; - top: 0; - position: absolute; - height: (@layout-header-height - .75rem); - width: 1.25em; - margin: 0 .25rem; - padding: .1rem .75rem; - cursor: pointer; - outline: 0; + height: (@layout-header-height - .7rem); + width: 2.25em; + margin-right: .4rem; + + &:hover { + background: transparent; + border-color: transparent; + } + + .tox-icon { + display: none; + } &:before { &:extend(.font-icon-class); content: @fa-var-times; - margin: 0; - } - - i { - display: none; + line-height: 1.5rem; + margin: 0 !important; } } } - .mce-foot { + .tox-dialog__footer { + height: (@layout-footer-height - 1px) !important; border: 0; - height: @layout-header-height !important; - position: relative; + margin: 0; + padding: 0 1rem; @media screen and (max-width: @screen-width-xs) { border-top: 1px solid @color-dialog-header-border; } - .mce-container-body { - height: 100% !important; - display: flex; - align-items: center; - justify-content: flex-end; // just 'end' does not work in Chrome + & > div { + white-space: nowrap; + max-height: (@layout-footer-height - 1px); - .mce-btn { - position: initial; - margin-right: .5rem; - line-height: 1; - width: auto !important; - height: auto !important; - - &:last-child { - margin-right: 1rem; - } - - .mce-txt { - line-height: 1.5; - vertical-align: unset; - } - - button:before { - &:extend(.font-icon-class); - display: inline; - float: none; - vertical-align: middle; - margin-right: .4rem; - } - } - - .mce-abs-end { - position: initial; - width: 1rem; - order: 9; + button:first-child { + margin: 0; } } - .mce-btn { - .btn-secondary(); - border-radius: .3rem; - border-color: transparent; - - &:focus { - border-color: transparent !important; - color: @color-btn-secondary; - background: @color-btn-secondary-background; - } - - &.mce-primary { - .btn-primary(); - } - - button:hover, - button { - color: @color-btn-secondary; - padding: .5rem .75rem; - } - } - - .mce-btn:last-child button:before { - content: @fa-var-times; - } - - .mce-btn.mce-primary button:before { - content: @fa-var-check; - } - - .mce-search-foot { - div:nth-of-type(2) button:before { - content: @fa-var-search; - } - div:nth-of-type(3) button:before, - div:nth-of-type(4) button:before { - content: @fa-var-pencil-alt; - } - div:nth-of-type(6) button:before { - content: @fa-var-chevron-left; - } - div:nth-of-type(7) button:before { - content: @fa-var-chevron-right; - } - div:nth-of-type(7) button:after { - &:extend(.font-icon-class); - display: inline; - float: none; - margin: 0 0 0 .2rem; - content: @fa-var-chevron-right; - } - - @media screen and (min-width: (@screen-width-xs + 1px)) { - div:nth-of-type(6) { - margin-left: .5rem; - } - div:nth-of-type(7) button { - &:before { - display: none; - } - } - } - } - } - - // Form elements, let's keep'em in .mce-window to make overwriting simpler - - .mce-formitem { - min-width: 450px; - position: unset !important; - - & > .mce-container-body { - margin-bottom: .5rem; - - & > * { - width: 75% !important; - position: unset !important; - } - - & > label { - max-width: 25%; - min-width: 25%; - line-height: 2.5 !important; - } - } - - .mce-widget { - border-radius: .25rem; - } - } - - .mce-form { - padding: 1rem; - box-sizing: border-box; - - .mce-form { - padding: 0; - position: unset !important; - width: 100% !important; - - & > .mce-container-body { - flex-wrap: wrap; - height: auto !important; - } - - .mce-formitem { - min-width: 100%; - width: 100% !important; - } - } - - .mce-container { - height: auto !important; - - .mce-container-body { - display: flex; - height: auto !important; - - & > input:not([size="5"]) { - position: relative; - left: 0 !important; - flex: 1; - } - - } - } - - & > .mce-container-body { - box-sizing: border-box; - width: 100% !important; - } - - .mce-form-split { - .mce-formitem { - min-width: auto; - - & > .mce-container-body { - width: 100% !important; - } - } - } - - label { - position: unset; - line-height: 2.5 !important; - height: auto !important; - } - } - - .mce-colorpicker { - & + .mce-form { - width: 150px !important; - padding: 0; - - .mce-formitem { - min-width: unset; - - & + :not(.mce-formitem) { - height: 50px !important; - } - } - } - } - - .mce-textbox { - padding: .375rem .75rem !important; - line-height: 1.5; - color: @color-font; - - &:not(textarea) { - height: auto !important; - } - - &:focus { - color: @color-font; - border-color: @color-input-border-focus; - box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow; - } - - &[size="5"] { - width: auto !important; - } - - &.mce-multiline { - line-height: 1.25; - width: 100% !important; - position: unset; - box-sizing: border-box; - display: block; - } - } - - .mce-listbox { - button { - line-height: 1.5; - padding: .375rem .75rem; - } - - &:focus { - border-color: @color-input-border-focus !important; - box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow !important; - } - } - - .mce-checkbox { - line-height: 2.5; - - i.mce-i-checkbox { - border: 0; - width: auto; - color: @color-checkbox; - text-indent: 0; + .tox-button { + .btn-primary(); + font-weight: normal; + padding: .5rem .75rem; &:before { &:extend(.font-icon-class); - margin: 0; - content: @fa-var-toggle-off; - } - } - - &.mce-checked i.mce-i-checkbox:before { - content: @fa-var-toggle-on; - } - - &:focus { - i.mce-i-checkbox { - border: 0; - } - } - } - - .mce-combobox { - display: flex; - - input { - border-radius: .3rem 0 0 .3rem; - flex: 1; - - &:focus { - z-index: 1; - } - } - - &.mce-combobox-fake { - input { - border-radius: .3rem; - } - } - - button { - padding: .4rem .6rem; - } - - .mce-btn { - border-radius: 0 .3rem .3rem 0; - background: @color-input-addon-background; - - &:focus { - background-color: @color-input-border-focus-shadow; - border-color: #c5c5c5; - } - } - } - - .mce-tabs { - padding-top: 1rem; - margin: 0 1rem; - border-color: @color-layout-border; - - .mce-tab { - border-radius: .25rem .25rem 0 0; - padding: .5rem 1rem; - height: auto !important; - border: 1px solid transparent; - color: @color-link; - background: transparent; - margin-bottom: -1px; - - &.mce-active { - border: 1px solid @color-layout-border; - border-bottom-color: #fff; - color: @color-font !important; + width: 1em; + content: @fa-var-check; + line-height: 1; } - &:not(.mce-active):hover { - border: 1px solid @color-list-border; - border-bottom-color: transparent; - border-bottom: 0; + // this is redundant, but required because of tinymce styles interference + &:focus:not(:disabled) { + background: @color-btn-primary-background; + border-color: @color-btn-primary-background; } - &:focus { - outline: unset !important; - } - } - } - - .mce-label { - text-shadow: none; - color: @color-font; - } -} - - -// Menus and popovers, e.g. color selector, emoticons selector, font selector -.mce-menu, -.mce-floatpanel.mce-popover { - box-shadow: 3px 3px 5px @color-popover-shadow !important; - border-color: @color-layout-border !important; - border-radius: .3rem; -} - -.mce-menu { - .mce-menu-item.mce-active { - color: @color-menu-hover; - background-color: @color-menu-hover-background; - } - - .popover-header { - display: none !important; - } -} - -div.mce-menubtn.mce-opened { - z-index: 65530 !important; // BUG: https://github.com/tinymce/tinymce/issues/4542 -} - -#mce-modal-block.mce-in { - background-color: @color-dialog-overlay-background; - opacity: 1 !important; -} - -@media screen and (max-width: @screen-width-xs) { - .mce-window { - width: 100% !important; - height: 100% !important; - left: 0 !important; - top: 0 !important; - border-width: 0 !important; - - & > .mce-reset { - display: flex; - flex-direction: column; - height: 100%; - } - - .mce-window-body { - flex: 1; - overflow-y: auto !important; - } - - & > .mce-reset > div, - .mce-container-body { - width: 100% !important; - } - - .mce-window-head { - background-color: @color-layout-mobile-header-background; - - .mce-title { - font-size: 1rem; - text-align: center; - padding: 0 1rem; - } - - .mce-close { - display: none; - } - } - - .mce-foot { - background-color: @color-layout-mobile-footer-background; - - .mce-container-body { - justify-content: space-evenly; - - .mce-btn { - position: initial; - height: 100% !important; - margin: 0; - background: transparent; - border-width: 0; - - &:focus { - box-shadow: none; - } - - &:hover { - background: transparent; - } - - &:last-child { - margin: 0; - } - - button { - color: @color-font; - padding: .45rem; - font-size: .9rem; - - &:before { - display: block; - float: none; - width: 100%; - margin: 0; - line-height: 1.75; - height: 1.75rem; - } - } - } - - .mce-abs-end { - display: none; - } - } - - .mce-search-foot { - div:nth-of-type(7) button:after { - display: none; - } - } - } - - .mce-form, - .mce-form + .mce-container, // for Embed tab in Media dialog - .mce-formitem, - .mce-combobox, - .mce-panel:not(.mce-popover) { - width: 100% !important; - } - - .mce-formitem { - min-width: unset; - } - - .mce-form { - & > .mce-container-body { - display: flex; - flex-direction: column; - left: 0; - right: 0; - box-sizing: border-box; - } - - .mce-container-body { - height: auto !important; - flex-direction: column; - - & > label { - position: unset !important; - width: 100% !important; - max-width: 100%; - } - - & > label + * { - position: unset !important; - width: auto !important; - } - - & > .mce-checkbox { - position: absolute; - left: 0 !important; - top: 3rem !important; - } - } - } - - // FIXME: How to fix the input width in less hacky way? - .mce-combobox input { - max-width: ~"calc(100% - 4rem)"; - } - .mce-combobox-fake input { - max-width: ~"calc(100% - 1.7rem)"; - } - } - - .mce-menu { - width: @layout-mobile-menu-width !important; - right: 0; - top: 0 !important; - left: auto !important; - height: 100% !important; - max-height: unset !important; - padding: 0 !important; - margin: 0 !important; - border-radius: 0; - border: 0 !important; - - .popover-header { - display: block !important; - - a { - font-size: 1.2rem; - line-height: @layout-touch-header-height; + &.tox-button--secondary { + .btn-secondary(); + color: @color-btn-secondary; &:before { content: @fa-var-times; } - } - } - .mce-container-body { - width: 100% !important; - } - - .mce-menu-item { - height: @layout-touch-menu-record-height; - line-height: @layout-touch-menu-record-height; - padding: 0 .5rem; - border-left: 0; - border-bottom: 1px solid @color-list-border; - margin: 0; - - .mce-ico { - font-size: 150%; - padding: 0 .7rem 0 .25rem; - margin-top: -.2rem; - } - - .mce-text { - font-size: 1.2rem; - .font-family(); - line-height: @layout-touch-menu-record-height; - color: @color-font; - } - - .mce-caret { - display: none; - } - - &.mce-menu-item-preview { - &.mce-active { - border-left: none; - position: relative; - - &:after { - .font-icon-class(); // :extend() does not work here - content: @fa-var-check; - position: absolute; - right: .5rem; - top: 0; - color: @color-font; - } + // this is redundant, but required because of tinymce styles interference + &:focus:not(:disabled) { + background: @color-btn-secondary-background; + border-color: @color-btn-secondary-background; } } + } + } - &.mce-menu-item-expand { - position: relative; + .tox-search-dialog { + .tox-form__group:not(:first-child) { + flex: initial !important; + } - &:after { - .font-icon-class(); // :extend() does not work here - content: @fa-var-angle-right; - position: absolute; - right: .5rem; - top: 0; + .tox-dialog__footer-start { + button { + padding: .25rem; + } + } + + .tox-dialog__footer-end { + button { + &:before { + content: @fa-var-pencil-alt !important; + } + + &:nth-of-type(1):before { + content: @fa-var-search !important; + } + } + } + } + + .tox-dialog__title { + line-height: calc(@layout-header-height - 1px); + font-size: 1.25rem; + font-weight: bold; + padding: 0 0 0 1rem; + width: 100%; + color: @color-dialog-header; + } + + // Make toolbar buttons smaller + .tox-tbtn { + height: 28px; + + &:not(.tox-tbtn--select,.tox-split-button__chevron) { + width: 32px; + } + } + + .tox-button { + line-height: 1.5; + } + + .tox-label { + color: @color-font; + padding-bottom: .25rem; + } + + // Adding .form-control does not work with TinyMCE skins, + // so we have to overwrite some props here + .tox-color-input > input, + .tox-listboxfield .tox-listbox--select, + .tox-textarea, + .tox-textfield { + .font-family() !important; + font-size: @page-font-size; + line-height: 1.5; + color: @color-font; + border-radius: .25rem; + min-height: 0; + padding: .375rem .75rem; + + &:focus { + border-color: @color-input-border-focus; + box-shadow: 0 0 0 .2rem @color-input-border-focus-shadow; + } + } + + .tox-listbox__select-label { + margin: 0; + } + + .tox-color-input span { + top: 5px; + } + + .custom-switch { + position: relative; + font-size: 1rem; + margin-top: .15rem; + + .tox-checkbox__icons { + display: none; + } + + .tox-checkbox__label { + margin: 0; + } + } + + .image-selector { + font-size: 1rem; + button { + .btn-secondary(); + padding: .5rem .75rem; + line-height: 1.5; + } + } + + // small fix for image dialog + .tox-form__controls-h-stack div:not(:last-child) { + flex: 1; + } + + .tox-collection__item-label { + white-space: nowrap; // fix TinyMCE bug + } +} + +@media screen and (max-width: @screen-width-xs) { + div.tox { + .tox-dialog { + margin: 0 !important; + width: 100% !important; + height: 100%; + left: 0 !important; + top: 0 !important; + border-width: 0 !important; + } + + .tox-dialog__header { + background-color: @color-layout-mobile-header-background; + + .tox-button { + display: none; + } + } + + .tox-dialog__title { + font-size: 1rem; + text-align: center; + padding: 0 1rem; + } + + .tox-dialog__footer { + background-color: @color-layout-mobile-footer-background; + + .tox-button { + color: @color-font !important; + background: transparent !important; + padding: .45rem; + margin: 0 !important; + border: 0; + font-size: 90%; + + &:before { + display: block; + float: none; + width: 100%; + margin: 0; + line-height: 1.75; + height: 1.75rem; + } + + &:active, + &:focus, + &:hover { + background: transparent; + border: 0; + box-shadow: none; color: @color-font; } } - } - } - .mce-menu-item-sep, - .mce-menu-shortcut { - display: none !important; - } + & > div { + justify-content: space-evenly; + display: flex; + width: 100%; - .mce-charmap-dialog { - position: unset !important; - - + .mce-container { - display: none; - } - } - - .mce-charmap { - display: block; - - tbody { - display: block; - } - - tr { - display: flex; - flex-wrap: wrap; - } - - td { - flex: 1; - height: auto !important; - min-width: 17%; - padding: 0 !important; - border: 0 !important; - border-bottom: 1px solid @color-list-border !important; - - div { - font-size: 3rem; - line-height: 2; + &:empty { + display: none; + } } } } } -html.touch .mce-grid td { - padding: .5rem; -} - - /*** Media file selector for TinyMCE ***/ .image-selector { - margin: 1rem 1rem 1rem 1rem !important; padding: 1rem .5rem 10rem .5rem !important; &.droptarget { @@ -774,27 +360,17 @@ html.touch .mce-grid td { } } - button { - .btn-secondary(); - padding: .5rem .75rem; - line-height: 1.5; - position: relative; - - &:before { - line-height: 1; - } - } - form { position: absolute; top: 0; } .attachmentslist { - margin-left: 0; + margin: 0; overflow-x: hidden; overflow-y: auto; height: 19.1em; + padding: 0 !important; li { padding: .25rem; @@ -855,50 +431,41 @@ html.touch .mce-grid td { .mce-i-html { display: block; - padding: 1px 5px; - margin: 2px; - width: 2rem; - height: 24px; - border: 1px solid transparent; - color: #595959; + margin: 2px 2px 2px 4px; + width: 34px; + height: 28px; + border-radius: .25rem; + color: #222f3e; // from TinyMCE &:focus, &:hover { text-decoration: none; border-color: #e2e4e7; - background-color: #fff; + background-color: #dee0e2; // from TinyMCE + } + + &:before { + &:extend(.font-icon-class); + content: @fa-var-image; + margin: 0; + width: 34px; + line-height: 28px; } } } // hide toolbar in html mode and in mailvelope mode &.mailvelope .editor-toolbar, - .mce-tinymce + textarea + .editor-toolbar { + .tox-tinymce + .editor-toolbar { display: none; } - .mce-i-html:before, - .mce-i-plaintext:before { - &:extend(.font-icon-class); - margin: 0; - width: 1em; - font-size: 1.2rem; - } - - .mce-i-html:before { - content: @fa-var-image; - line-height: 1.2em; - } - - .mce-i-plaintext:before { - content: @fa-var-window-close; //@fa-var-align-justify; - } - & > .googie_edit_layer, & > textarea { font-family: monospace; + font-size: 13px; width: 100% !important; - padding-top: 2.5rem; + padding-top: 40px; resize: none; } @@ -907,10 +474,6 @@ html.touch .mce-grid td { border: 1px solid @color-input-border; min-height: 30em; } - - #composebody_ifr { - min-height: 30em; - } } diff --git a/styles/widgets/forms.less b/styles/widgets/forms.less index b05d1ee..fd68feb 100644 --- a/styles/widgets/forms.less +++ b/styles/widgets/forms.less @@ -151,7 +151,7 @@ input.smart-upload { } } - &.groupped { + &.grouped { &.readonly { legend { margin: 0; @@ -214,6 +214,7 @@ input.smart-upload { display: flex; flex-wrap: wrap; border-radius: 0; + border-left-color: transparent; input { border-radius: 0; @@ -471,7 +472,7 @@ html.ms .propform { } .row { - margin-right: 0; // without these the form is too wide causing horizontal scrollbar appearence + margin-right: 0; // without these the form is too wide causing horizontal scrollbar appearance margin-left: 0; // Note: We never use odd numbers here @@ -505,7 +506,7 @@ html.ms .propform { display: flex; // https://github.com/twbs/bootstrap/issues/22348 flex-wrap: nowrap; - // alignment fixes needed because we do not stick precissely to Bootstrap's form structure + // alignment fixes needed because we do not stick precisely to Bootstrap's form structure @media screen and (max-width: @screen-width-bs-phone) { .col-6 { max-width: 100%; @@ -976,15 +977,15 @@ html.ms .propform { } a.button.icon { - font-size: .8em; + font-size: .75em; cursor: pointer; padding: 0; + color: @color-font; &:before { - float: none; display: inline-block; width: 1em; - line-height: 1.5; + line-height: 1.6; } } @@ -1271,6 +1272,13 @@ html.ms .propform { margin-bottom: .5rem; } +// This one is to fix height of an input-group child that usually we put +// in between inputs, e.g. in managesieve forms it is '@' in email input +// with a separate local part and domain selector. +.input-group-append.input-group-prepend { + display: inline; +} + .input-group-text { color: @color-input; background-color: @color-input-addon-background; @@ -1287,6 +1295,7 @@ html.ms .propform { .custom-control-input { left: 0; + opacity: 0 !important; // fixes input in dark mode &:focus ~ .custom-control-label:before { box-shadow: 0 0 0 .2rem @color-checkbox-focus-shadow; @@ -1379,7 +1388,6 @@ html.ms .propform { white-space: nowrap; .overflow-ellipsis(); padding-right: 100px; - line-height: 1.5 !important; } & + .hint { diff --git a/styles/widgets/jqueryui.less b/styles/widgets/jqueryui.less index 383f142..cd11bbb 100644 --- a/styles/widgets/jqueryui.less +++ b/styles/widgets/jqueryui.less @@ -333,6 +333,8 @@ .ui-datepicker-next { cursor: pointer; width: auto; + color: @color-font; + text-decoration: none; &:before { &:extend(.font-icon-class); diff --git a/styles/widgets/lists.less b/styles/widgets/lists.less index 7ce3c8b..1bca62e 100644 --- a/styles/widgets/lists.less +++ b/styles/widgets/lists.less @@ -279,6 +279,7 @@ html.touch { &.enigma.keys > a:before { content: @fa-var-key; } + &.info > a:before, &.userinfo > a:before { content: @fa-var-info-circle; } @@ -343,7 +344,7 @@ html.ie11 .listing.iconized li a:before { &.server > td.section:before { content: @fa-var-server; } - &.enigma > td.section:before { + &.encryption > td.section:before { content: @fa-var-lock; } &.calendar > td.section:before { @@ -354,7 +355,7 @@ html.ie11 .listing.iconized li a:before { } } -/* selecatable list: e.g. spellcheck language selection */ +/* selectable list: e.g. spellcheck language selection */ .listing.iconized.selectable li { a:before { &:extend(.font-icon-class); @@ -542,6 +543,12 @@ ul.treelist { &.archive > a:before { .font-icon-solid(@fa-var-archive); } + &.ns-shared > a:before { + .font-icon-solid(@fa-var-share-alt); + } + &.ns-other > a:before { + .font-icon-solid(@fa-var-user-friends); + } } // folder-selector fix for left padding @@ -581,6 +588,7 @@ table.fixedcopy { span { line-height: 2em; + &.size, &.date { font-size: 90%; color: @color-list-secondary; @@ -598,6 +606,7 @@ table.fixedcopy { &.subject { .overflow-ellipsis(); width: 100%; + user-select: none } } } @@ -745,6 +754,37 @@ table.fixedcopy { &:extend(.font-icon-class); .font-icon-regular(@fa-var-flag); } + + span.size { + display: none; + } + + tr:hover { + span.date { + display: none; + } + span.size { + display: inline; + } + } + + &.sort-size { + span.date { + display: none; + } + span.size { + display: inline; + } + + tr:hover { + span.date { + display: inline; + } + span.size { + display: none; + } + } + } } // On touch devices hide flag icon, but do it in a way @@ -756,9 +796,11 @@ html.touch { position: relative; } td.flags { + position: absolute; top: .25rem; right: 0; bottom: 0; + background-color: transparent; .flag { visibility: hidden; diff --git a/styles/widgets/menu.less b/styles/widgets/menu.less index 8b831b9..251202b 100644 --- a/styles/widgets/menu.less +++ b/styles/widgets/menu.less @@ -422,6 +422,12 @@ a.toolbar-button { &.settings:before { content: @fa-var-cog; } + &.theme.light:before { + content: @fa-var-sun; + } + &.theme.dark:before { + content: @fa-var-moon; + } &.help:before { content: @fa-var-life-ring; } @@ -476,7 +482,7 @@ a.toolbar-button { content: @fa-var-arrow-left; } &.check:before { - content: ""; + content: "\00a0"; // just a space } &.check.selected:before { content: @fa-var-check; @@ -685,6 +691,9 @@ a.toolbar-button { &.submit:before { content: @fa-var-check; } + &.info:before { + content: @fa-var-info-circle; + } &.threads:before { content: @fa-var-comments; } @@ -894,7 +903,11 @@ a.toolbar-button { } a.logout { - color: @color-taskmenu-button-logout-hover !important; + color: @color-taskmenu-button-logout !important; + + &:hover { + color: @color-taskmenu-button-logout-hover !important; + } } } diff --git a/templates/addressbook.html b/templates/addressbook.html index ce8886e..3845f42 100644 --- a/templates/addressbook.html +++ b/templates/addressbook.html @@ -121,8 +121,7 @@