Image optimization & Lazy Load by Optimole - Version 2.1.2

Version Description

Download this release

Release Info

Developer optimole
Plugin Icon 128x128 Image optimization & Lazy Load by Optimole
Version 2.1.2
Comparing to
See all releases

Code changes from version 2.1.1 to 2.1.2

CHANGELOG.md CHANGED
@@ -1,3 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  #### [Version 2.1.1](https://github.com/Codeinwp/optimole-wp/compare/v2.1.0...v2.1.1) (2019-07-22)
2
 
3
  * **Bug Fixes**
1
+ #### [Version 2.1.2](https://github.com/Codeinwp/optimole-wp/compare/v2.1.1...v2.1.2) (2019-09-25)
2
+
3
+ * **Bug Fixes**
4
+ * adds preconnect hint for image domain and js library domain ([11b697d](https://github.com/Codeinwp/optimole-wp/commit/11b697d))
5
+ * compatibility with cache_enabler [#136](https://github.com/Codeinwp/optimole-wp/issues/136) ([483262f](https://github.com/Codeinwp/optimole-wp/commit/483262f))
6
+ * improve checking for editing context when the replacement should be off ([e7510f6](https://github.com/Codeinwp/optimole-wp/commit/e7510f6))
7
+ * lazyload query urls part of [#145](https://github.com/Codeinwp/optimole-wp/issues/145) ([a048f68](https://github.com/Codeinwp/optimole-wp/commit/a048f68))
8
+ * preload lazyload js file when lazyload setting is active ([828e1de](https://github.com/Codeinwp/optimole-wp/commit/828e1de))
9
+ * remove replacement on Divi theme builder ([86ab6d2](https://github.com/Codeinwp/optimole-wp/commit/86ab6d2))
10
+ * replacement was not working for urls with special chars ([48a4966](https://github.com/Codeinwp/optimole-wp/commit/48a4966))
11
+ * replacing url's with query strings without the query in the modified url [#141](https://github.com/Codeinwp/optimole-wp/issues/141) ([0025559](https://github.com/Codeinwp/optimole-wp/commit/0025559))
12
+ * replacing url's with regex in <a> tags [#141](https://github.com/Codeinwp/optimole-wp/issues/141) ([4b2264f](https://github.com/Codeinwp/optimole-wp/commit/4b2264f))
13
+ * resource hints condition check [skip release] ([a0f30e7](https://github.com/Codeinwp/optimole-wp/commit/a0f30e7))
14
+
15
+ * **Features**
16
+ * adds retina settings control which enable/disable serving of HiDPI images ([73c8712](https://github.com/Codeinwp/optimole-wp/commit/73c8712))
17
+ * adds visitors based plan integration ([ea07a94](https://github.com/Codeinwp/optimole-wp/commit/ea07a94))
18
+
19
  #### [Version 2.1.1](https://github.com/Codeinwp/optimole-wp/compare/v2.1.0...v2.1.1) (2019-07-22)
20
 
21
  * **Bug Fixes**
README.md CHANGED
@@ -7,7 +7,7 @@
7
  **License:** GPLv3
8
  **License URI:** https://www.gnu.org/licenses/gpl-3.0.en.html
9
 
10
- Improve your site loading speed by delivering optimized WebP image for each device. Lazy load included.
11
 
12
  ## Description ##
13
 
@@ -34,21 +34,21 @@ So, if you have been looking for one plugin that provides lazy loading with a CD
34
 
35
 
36
  **How does it do all these great things?**
37
- Optimole's format based optimization is handled in the cloud on a case-by-case basis. Once you have the plugin installed, Optimole will replace all of your image URLs with cloud-based URLs. We don't replace any images on your website.
38
  When the image is requested, Optimole will apply the specific transformations required by the device and deliver it to your visitors. This means every image is perfectly sized for every device. The final result will be cached for a month to ensure ongoing fast delivery and more site speed.
39
 
40
  **How many images can be optimized?**
41
- With the basic plan, you will be able to optimize 1GB of images per month with 5GB viewing bandwidth. All delivered from 7 edge locations all over the world.
42
  Better yet. The free version is fully functional and includes all of the following great features.
43
 
44
  **Format Based Optimization**
45
- Our cloud-based transformation process means we can offer optimizations based on the format. If your visitor is using a WebP capable browser, then Optimole will convert to WebP the image and send it to their device.
46
 
47
  **Image Optimization**
48
  Our algorithms crunch the numbers to provide the best lossy or lossless optimization for the best-looking image at the smallest size.
49
 
50
  **Exact Used Size**
51
- Optimole will use just one image and resize it delivering a responsive image to fit perfectly on your visitors' devices. No more awkward guesses at potential screen widths.
52
 
53
  **Retina Support**
54
  Optimole can detect Retina screens and deliver an image with the perfect Digital Pixel Ratio (DPR).
@@ -57,13 +57,13 @@ Optimole can detect Retina screens and deliver an image with the perfect Digital
57
  If you'd like to keep the most interesting part of an image; then you can enable smart cropping to help keep the image well sized without losing focus.
58
 
59
  **No Content Shifting**
60
- The lazy load option is perfectly sized for the container to provide a seamless viewing experience without any content shifting.
61
 
62
  **Watermarks**
63
  Who has time for adding watermarks? Optimole will do the hard work for you. Just set it up and pick your preferred location and Optimole will add the watermark to all of your future images.
64
 
65
  **Downgrade Quality For Slower Connections**
66
- Optimole provides an option to downgrade the image quality when it detects a slower network. Make the images up to 40% smaller with this neat feature to help visitors in a bottleneck.
67
  **Compatibility**
68
  Optimole loves page builders and has unique tweaks to solve image replacements. It also has full compatibility with the new block editor in WordPress 5.0
69
 
@@ -88,6 +88,26 @@ Premium users will be able to optimize 10GB images per month with a 50GB viewing
88
 
89
  ## Changelog ##
90
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  #### [Version 2.1.1](https://github.com/Codeinwp/optimole-wp/compare/v2.1.0...v2.1.1) (2019-07-22)
92
 
93
  * **Bug Fixes**
7
  **License:** GPLv3
8
  **License URI:** https://www.gnu.org/licenses/gpl-3.0.en.html
9
 
10
+ Automatically compress, optimize and serve scaled images along with next-gen WebP all from CloudFront CDN. Lazy load included
11
 
12
  ## Description ##
13
 
34
 
35
 
36
  **How does it do all these great things?**
37
+ Optimole's format based optimization is handled in the cloud on a case-by-case basis. Once you have the plugin installed, Optimole will replace all of your image URLs with cloud-based URLs. We don't replace any images on your website, we compress images on the fly.
38
  When the image is requested, Optimole will apply the specific transformations required by the device and deliver it to your visitors. This means every image is perfectly sized for every device. The final result will be cached for a month to ensure ongoing fast delivery and more site speed.
39
 
40
  **How many images can be optimized?**
41
+ With the basic plan, you will be able to optimize unmetered number of images for up to 5k monthly active [users](https://docs.optimole.com/article/1134-how-optimole-counts-the-number-of-visitors). All delivered from 7 edge locations all over the world.
42
  Better yet. The free version is fully functional and includes all of the following great features.
43
 
44
  **Format Based Optimization**
45
+ Our cloud-based transformation process means we can optimize images based on the format as well as serve images in next-gen formats. If your visitor is using a WebP capable browser, then Optimole will convert to WebP the image and send it to their device.
46
 
47
  **Image Optimization**
48
  Our algorithms crunch the numbers to provide the best lossy or lossless optimization for the best-looking image at the smallest size.
49
 
50
  **Exact Used Size**
51
+ Optimole will use just one image and resize it delivering a responsive image to fit perfectly on your visitors' devices. No more awkward guesses at potential screen widths. Serve scaled images instantly.
52
 
53
  **Retina Support**
54
  Optimole can detect Retina screens and deliver an image with the perfect Digital Pixel Ratio (DPR).
57
  If you'd like to keep the most interesting part of an image; then you can enable smart cropping to help keep the image well sized without losing focus.
58
 
59
  **No Content Shifting**
60
+ The lazy load option defer offscreen images and is perfectly sized for the container to provide a seamless viewing experience without any content shifting.
61
 
62
  **Watermarks**
63
  Who has time for adding watermarks? Optimole will do the hard work for you. Just set it up and pick your preferred location and Optimole will add the watermark to all of your future images.
64
 
65
  **Downgrade Quality For Slower Connections**
66
+ Optimole provides an option to downgrade the image quality when it detects a slower network. Efficiently encode images by making up to 40% smaller with this neat feature to help visitors in a bottleneck.
67
  **Compatibility**
68
  Optimole loves page builders and has unique tweaks to solve image replacements. It also has full compatibility with the new block editor in WordPress 5.0
69
 
88
 
89
  ## Changelog ##
90
 
91
+ #### [Version 2.1.2](https://github.com/Codeinwp/optimole-wp/compare/v2.1.1...v2.1.2) (2019-09-25)
92
+
93
+ * **Bug Fixes**
94
+ * adds preconnect hint for image domain and js library domain ([11b697d](https://github.com/Codeinwp/optimole-wp/commit/11b697d))
95
+ * compatibility with cache_enabler [#136](https://github.com/Codeinwp/optimole-wp/issues/136) ([483262f](https://github.com/Codeinwp/optimole-wp/commit/483262f))
96
+ * improve checking for editing context when the replacement should be off ([e7510f6](https://github.com/Codeinwp/optimole-wp/commit/e7510f6))
97
+ * lazyload query urls part of [#145](https://github.com/Codeinwp/optimole-wp/issues/145) ([a048f68](https://github.com/Codeinwp/optimole-wp/commit/a048f68))
98
+ * preload lazyload js file when lazyload setting is active ([828e1de](https://github.com/Codeinwp/optimole-wp/commit/828e1de))
99
+ * remove replacement on Divi theme builder ([86ab6d2](https://github.com/Codeinwp/optimole-wp/commit/86ab6d2))
100
+ * replacement was not working for urls with special chars ([48a4966](https://github.com/Codeinwp/optimole-wp/commit/48a4966))
101
+ * replacing url's with query strings without the query in the modified url [#141](https://github.com/Codeinwp/optimole-wp/issues/141) ([0025559](https://github.com/Codeinwp/optimole-wp/commit/0025559))
102
+ * replacing url's with regex in <a> tags [#141](https://github.com/Codeinwp/optimole-wp/issues/141) ([4b2264f](https://github.com/Codeinwp/optimole-wp/commit/4b2264f))
103
+ * resource hints condition check [skip release] ([a0f30e7](https://github.com/Codeinwp/optimole-wp/commit/a0f30e7))
104
+
105
+ * **Features**
106
+ * adds retina settings control which enable/disable serving of HiDPI images ([73c8712](https://github.com/Codeinwp/optimole-wp/commit/73c8712))
107
+ * adds visitors based plan integration ([ea07a94](https://github.com/Codeinwp/optimole-wp/commit/ea07a94))
108
+
109
+
110
+
111
  #### [Version 2.1.1](https://github.com/Codeinwp/optimole-wp/compare/v2.1.0...v2.1.1) (2019-07-22)
112
 
113
  * **Bug Fixes**
assets/js/bundle.min.js CHANGED
@@ -8,7 +8,7 @@ var _a=Object.freeze({}),Ca=Object.prototype.toString,za=h("slot,component",!0),
8
  * https://github.com/pagekit/vue-resource
9
  * Released under the MIT License.
10
  */
11
- var st=2;o.reject=function(t){return new o(function(e,n){n(t)})},o.resolve=function(t){return new o(function(e,n){e(t)})},o.all=function(t){return new o(function(e,n){var i=0,a=[];0===t.length&&e(a);for(var r=0;r<t.length;r+=1)o.resolve(t[r]).then(function(n){return function(o){a[n]=o,(i+=1)===t.length&&e(a)}}(r),n)})},o.race=function(t){return new o(function(e,n){for(var i=0;i<t.length;i+=1)o.resolve(t[i]).then(e,n)})};var lt=o.prototype;lt.resolve=function(t){var e=this;if(e.state===st){if(t===e)throw new TypeError("Promise settled with itself.");var n=!1;try{var o=t&&t.then;if(null!==t&&"object"==typeof t&&"function"==typeof o)return void o.call(t,function(t){n||e.resolve(t),n=!0},function(t){n||e.reject(t),n=!0})}catch(t){return void(n||e.reject(t))}e.state=0,e.value=t,e.notify()}},lt.reject=function(t){var e=this;if(e.state===st){if(t===e)throw new TypeError("Promise settled with itself.");e.state=1,e.value=t,e.notify()}},lt.notify=function(){var t=this;l(function(){if(t.state!==st)for(;t.deferred.length;){var e=t.deferred.shift(),n=e[0],o=e[1],i=e[2],a=e[3];try{0===t.state?i("function"==typeof n?n.call(void 0,t.value):t.value):1===t.state&&("function"==typeof o?i(o.call(void 0,t.value)):a(t.value))}catch(t){a(t)}}})},lt.then=function(t,e){var n=this;return new o(function(o,i){n.deferred.push([t,e,o,i]),n.notify()})},lt.catch=function(t){return this.then(void 0,t)},"undefined"==typeof Promise&&(window.Promise=o),i.all=function(t,e){return new i(Promise.all(t),e)},i.resolve=function(t,e){return new i(Promise.resolve(t),e)},i.reject=function(t,e){return new i(Promise.reject(t),e)},i.race=function(t,e){return new i(Promise.race(t),e)};var pt=i.prototype;pt.bind=function(t){return this.context=t,this},pt.then=function(t,e){return t&&t.bind&&this.context&&(t=t.bind(this.context)),e&&e.bind&&this.context&&(e=e.bind(this.context)),new i(this.promise.then(t,e),this.context)},pt.catch=function(t){return t&&t.bind&&this.context&&(t=t.bind(this.context)),new i(this.promise.catch(t),this.context)},pt.finally=function(t){return this.then(function(e){return t.call(this),e},function(e){return t.call(this),Promise.reject(e)})};var ct,dt={},mt=dt.hasOwnProperty,ut=[],ft=ut.slice,ht=!1,bt="undefined"!=typeof window,vt=Array.isArray,gt=Object.assign||C;M.options={url:"",root:null,params:{}},M.transform={template:R,query:S,root:O},M.transforms=["template","query","root"],M.params=function(t){var e=[],n=encodeURIComponent;return e.add=function(t,e){f(e)&&(e=e()),null===e&&(e=""),this.push(n(t)+"="+n(e))},L(e,t),e.join("&").replace(/%20/g,"+")},M.parse=function(t){var e=document.createElement("a");return document.documentMode&&(e.href=t,t=e.href),e.href=t,{href:e.href,protocol:e.protocol?e.protocol.replace(/:$/,""):"",port:e.port,host:e.host,hostname:e.hostname,pathname:"/"===e.pathname.charAt(0)?e.pathname:"/"+e.pathname,search:e.search?e.search.replace(/^\?/,""):"",hash:e.hash?e.hash.replace(/^#/,""):""}};var xt=bt&&"withCredentials"in new XMLHttpRequest,yt=function(t){var e=this;this.map={},w(t,function(t,n){return e.append(n,t)})};yt.prototype.has=function(t){return null!==Q(this.map,t)},yt.prototype.get=function(t){var e=this.map[Q(this.map,t)];return e?e.join():null},yt.prototype.getAll=function(t){return this.map[Q(this.map,t)]||[]},yt.prototype.set=function(t,e){this.map[tt(Q(this.map,t)||t)]=[p(e)]},yt.prototype.append=function(t,e){var n=this.map[Q(this.map,t)];n?n.push(p(e)):this.set(t,e)},yt.prototype.delete=function(t){delete this.map[Q(this.map,t)]},yt.prototype.deleteAll=function(){this.map={}},yt.prototype.forEach=function(t,e){var n=this;w(this.map,function(o,i){w(o,function(o){return t.call(e,o,i,n)})})};var wt=function(t,e){var n=e.url,o=e.headers,i=e.status,a=e.statusText;this.url=n,this.ok=i>=200&&i<300,this.status=i||0,this.statusText=a||"",this.headers=new yt(o),this.body=t,u(t)?this.bodyText=t:v(t)&&(this.bodyBlob=t,nt(t)&&(this.bodyText=et(t)))};wt.prototype.blob=function(){return x(this.bodyBlob)},wt.prototype.text=function(){return x(this.bodyText)},wt.prototype.json=function(){return x(this.text(),function(t){return JSON.parse(t)})},Object.defineProperty(wt.prototype,"data",{get:function(){return this.body},set:function(t){this.body=t}});var kt=function(t){this.body=null,this.params={},gt(this,t,{method:m(t.method||"GET")}),this.headers instanceof yt||(this.headers=new yt(this.headers))};kt.prototype.getUrl=function(){return M(this)},kt.prototype.getBody=function(){return this.body},kt.prototype.respondWith=function(t,e){return new wt(t,gt(e||{},{url:this.getUrl()}))};var _t={Accept:"application/json, text/plain, */*"},Ct={"Content-Type":"application/json;charset=utf-8"};ot.options={},ot.headers={put:Ct,post:Ct,patch:Ct,delete:Ct,common:_t,custom:{}},ot.interceptor={before:q,method:W,jsonp:V,json:U,form:B,header:K,cors:F},ot.interceptors=["before","method","jsonp","json","form","header","cors"],["get","delete","head","jsonp"].forEach(function(t){ot[t]=function(e,n){return this(gt(n||{},{url:e,method:t}))}}),["post","put","patch"].forEach(function(t){ot[t]=function(e,n,o){return this(gt(o||{},{url:e,method:t,body:n}))}}),it.actions={get:{method:"GET"},save:{method:"POST"},query:{method:"GET"},update:{method:"PUT"},remove:{method:"DELETE"},delete:{method:"DELETE"}},"undefined"!=typeof window&&window.Vue&&window.Vue.use(rt),e.default=rt},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}var i=n(2),a=o(i),r=n(11),s=o(r),l=n(96),p=o(l),c=n(101),d=o(c),m=n(102),u=o(m);a.default.use(u.default),a.default.use(d.default),window.addEventListener("load",function(){new a.default({el:"#optimole-app",store:p.default,components:{App:s.default}})})},function(t,e,n){(function(t){function o(t,e){this._id=t,this._clearFn=e}var i=void 0!==t&&t||"undefined"!=typeof self&&self||window,a=Function.prototype.apply;e.setTimeout=function(){return new o(a.call(setTimeout,i,arguments),clearTimeout)},e.setInterval=function(){return new o(a.call(setInterval,i,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(i,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n(9),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(e,n(3))},function(t,e,n){(function(t,e){!function(t,n){"use strict";function o(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n<e.length;n++)e[n]=arguments[n+1];var o={callback:t,args:e};return p[l]=o,s(l),l++}function i(t){delete p[t]}function a(t){var e=t.callback,o=t.args;switch(o.length){case 0:e();break;case 1:e(o[0]);break;case 2:e(o[0],o[1]);break;case 3:e(o[0],o[1],o[2]);break;default:e.apply(n,o)}}function r(t){if(c)setTimeout(r,0,t);else{var e=p[t];if(e){c=!0;try{a(e)}finally{i(t),c=!1}}}}if(!t.setImmediate){var s,l=1,p={},c=!1,d=t.document,m=Object.getPrototypeOf&&Object.getPrototypeOf(t);m=m&&m.setTimeout?m:t,"[object process]"==={}.toString.call(t.process)?function(){s=function(t){e.nextTick(function(){r(t)})}}():function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?function(){var e="setImmediate$"+Math.random()+"$",n=function(n){n.source===t&&"string"==typeof n.data&&0===n.data.indexOf(e)&&r(+n.data.slice(e.length))};t.addEventListener?t.addEventListener("message",n,!1):t.attachEvent("onmessage",n),s=function(n){t.postMessage(e+n,"*")}}():t.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){r(t.data)},s=function(e){t.port2.postMessage(e)}}():d&&"onreadystatechange"in d.createElement("script")?function(){var t=d.documentElement;s=function(e){var n=d.createElement("script");n.onreadystatechange=function(){r(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():function(){s=function(t){setTimeout(r,0,t)}}(),m.setImmediate=o,m.clearImmediate=i}}("undefined"==typeof self?void 0===t?this:t:self)}).call(e,n(3),n(10))},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function i(t){if(c===setTimeout)return setTimeout(t,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===o||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){h&&u&&(h=!1,u.length?f=u.concat(f):b=-1,f.length&&s())}function s(){if(!h){var t=i(r);h=!0;for(var e=f.length;e;){for(u=f,f=[];++b<e;)u&&u[b].run();b=-1,e=f.length}u=null,h=!1,a(t)}}function l(t,e){this.fun=t,this.array=e}function p(){}var c,d,m=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:n}catch(t){c=n}try{d="function"==typeof clearTimeout?clearTimeout:o}catch(t){d=o}}();var u,f=[],h=!1,b=-1;m.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];f.push(new l(t,e)),1!==f.length||h||i(s)},l.prototype.run=function(){this.fun.apply(null,this.array)},m.title="browser",m.browser=!0,m.env={},m.argv=[],m.version="",m.versions={},m.on=p,m.addListener=p,m.once=p,m.off=p,m.removeListener=p,m.removeAllListeners=p,m.emit=p,m.prependListener=p,m.prependOnceListener=p,m.listeners=function(t){return[]},m.binding=function(t){throw new Error("process.binding is not supported")},m.cwd=function(){return"/"},m.chdir=function(t){throw new Error("process.chdir is not supported")},m.umask=function(){return 0}},function(t,e,n){var o,i;n(12),o=n(14),i=n(95),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(13);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,'#optimole-app {\n padding: 0 30px 0 20px;\n /*! bulma.io v0.7.4 | MIT License | github.com/jgthms/bulma */\n /*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */ }\n\n@keyframes spinAround {\n from {\n transform: rotate(0deg); }\n to {\n transform: rotate(359deg); } }\n #optimole-app .delete, #optimole-app .modal-close, #optimole-app .is-unselectable, #optimole-app .button, #optimole-app .file, #optimole-app .breadcrumb, #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link,\n #optimole-app .pagination-ellipsis, #optimole-app .tabs {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none; }\n #optimole-app .select:not(.is-multiple):not(.is-loading)::after, #optimole-app .navbar-link:not(.is-arrowless)::after {\n border: 3px solid transparent;\n border-radius: 2px;\n border-right: 0;\n border-top: 0;\n content: " ";\n display: block;\n height: 0.625em;\n margin-top: -0.4375em;\n pointer-events: none;\n position: absolute;\n top: 50%;\n transform: rotate(-45deg);\n transform-origin: center;\n width: 0.625em; }\n #optimole-app .box:not(:last-child), #optimole-app .content:not(:last-child), #optimole-app .notification:not(:last-child), #optimole-app .progress:not(:last-child), #optimole-app .table:not(:last-child), #optimole-app .table-container:not(:last-child), #optimole-app .title:not(:last-child),\n #optimole-app .subtitle:not(:last-child), #optimole-app .block:not(:last-child), #optimole-app .highlight:not(:last-child), #optimole-app .breadcrumb:not(:last-child), #optimole-app .level:not(:last-child), #optimole-app .list:not(:last-child), #optimole-app .message:not(:last-child), #optimole-app .tabs:not(:last-child) {\n margin-bottom: 1.5rem; }\n #optimole-app .delete, #optimole-app .modal-close {\n -moz-appearance: none;\n -webkit-appearance: none;\n background-color: rgba(10, 10, 10, 0.2);\n border: none;\n border-radius: 290486px;\n cursor: pointer;\n pointer-events: auto;\n display: inline-block;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n font-size: 0;\n height: 20px;\n max-height: 20px;\n max-width: 20px;\n min-height: 20px;\n min-width: 20px;\n outline: none;\n position: relative;\n vertical-align: top;\n width: 20px; }\n #optimole-app .delete::before, #optimole-app .modal-close::before, #optimole-app .delete::after, #optimole-app .modal-close::after {\n background-color: white;\n content: "";\n display: block;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translateX(-50%) translateY(-50%) rotate(45deg);\n transform-origin: center center; }\n #optimole-app .delete::before, #optimole-app .modal-close::before {\n height: 2px;\n width: 50%; }\n #optimole-app .delete::after, #optimole-app .modal-close::after {\n height: 50%;\n width: 2px; }\n #optimole-app .delete:hover, #optimole-app .modal-close:hover, #optimole-app .delete:focus, #optimole-app .modal-close:focus {\n background-color: rgba(10, 10, 10, 0.3); }\n #optimole-app .delete:active, #optimole-app .modal-close:active {\n background-color: rgba(10, 10, 10, 0.4); }\n #optimole-app .is-small.delete, #optimole-app .is-small.modal-close {\n height: 16px;\n max-height: 16px;\n max-width: 16px;\n min-height: 16px;\n min-width: 16px;\n width: 16px; }\n #optimole-app .is-medium.delete, #optimole-app .is-medium.modal-close {\n height: 24px;\n max-height: 24px;\n max-width: 24px;\n min-height: 24px;\n min-width: 24px;\n width: 24px; }\n #optimole-app .is-large.delete, #optimole-app .is-large.modal-close {\n height: 32px;\n max-height: 32px;\n max-width: 32px;\n min-height: 32px;\n min-width: 32px;\n width: 32px; }\n #optimole-app .button.is-loading::after, #optimole-app .select.is-loading::after, #optimole-app .control.is-loading::after, #optimole-app .loader {\n animation: spinAround 500ms infinite linear;\n border: 2px solid #dbdbdb;\n border-radius: 290486px;\n border-right-color: transparent;\n border-top-color: transparent;\n content: "";\n display: block;\n height: 1em;\n position: relative;\n width: 1em; }\n #optimole-app .is-overlay, #optimole-app .image.is-square img,\n #optimole-app .image.is-square .has-ratio, #optimole-app .image.is-1by1 img,\n #optimole-app .image.is-1by1 .has-ratio, #optimole-app .image.is-5by4 img,\n #optimole-app .image.is-5by4 .has-ratio, #optimole-app .image.is-4by3 img,\n #optimole-app .image.is-4by3 .has-ratio, #optimole-app .image.is-3by2 img,\n #optimole-app .image.is-3by2 .has-ratio, #optimole-app .image.is-5by3 img,\n #optimole-app .image.is-5by3 .has-ratio, #optimole-app .image.is-16by9 img,\n #optimole-app .image.is-16by9 .has-ratio, #optimole-app .image.is-2by1 img,\n #optimole-app .image.is-2by1 .has-ratio, #optimole-app .image.is-3by1 img,\n #optimole-app .image.is-3by1 .has-ratio, #optimole-app .image.is-4by5 img,\n #optimole-app .image.is-4by5 .has-ratio, #optimole-app .image.is-3by4 img,\n #optimole-app .image.is-3by4 .has-ratio, #optimole-app .image.is-2by3 img,\n #optimole-app .image.is-2by3 .has-ratio, #optimole-app .image.is-3by5 img,\n #optimole-app .image.is-3by5 .has-ratio, #optimole-app .image.is-9by16 img,\n #optimole-app .image.is-9by16 .has-ratio, #optimole-app .image.is-1by2 img,\n #optimole-app .image.is-1by2 .has-ratio, #optimole-app .image.is-1by3 img,\n #optimole-app .image.is-1by3 .has-ratio, #optimole-app .modal, #optimole-app .modal-background, #optimole-app .hero-video {\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0; }\n #optimole-app .button, #optimole-app .input,\n #optimole-app .textarea, #optimole-app .select select, #optimole-app .file-cta,\n #optimole-app .file-name, #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link,\n #optimole-app .pagination-ellipsis {\n -moz-appearance: none;\n -webkit-appearance: none;\n -ms-flex-align: center;\n align-items: center;\n border: 1px solid transparent;\n border-radius: 4px;\n box-shadow: none;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: 1rem;\n height: 2.25em;\n -ms-flex-pack: start;\n justify-content: flex-start;\n line-height: 1.5;\n padding-bottom: calc(0.375em - 1px);\n padding-left: calc(0.625em - 1px);\n padding-right: calc(0.625em - 1px);\n padding-top: calc(0.375em - 1px);\n position: relative;\n vertical-align: top; }\n #optimole-app .button:focus, #optimole-app .input:focus,\n #optimole-app .textarea:focus, #optimole-app .select select:focus, #optimole-app .file-cta:focus,\n #optimole-app .file-name:focus, #optimole-app .pagination-previous:focus,\n #optimole-app .pagination-next:focus,\n #optimole-app .pagination-link:focus,\n #optimole-app .pagination-ellipsis:focus, #optimole-app .is-focused.button, #optimole-app .is-focused.input,\n #optimole-app .is-focused.textarea, #optimole-app .select select.is-focused, #optimole-app .is-focused.file-cta,\n #optimole-app .is-focused.file-name, #optimole-app .is-focused.pagination-previous,\n #optimole-app .is-focused.pagination-next,\n #optimole-app .is-focused.pagination-link,\n #optimole-app .is-focused.pagination-ellipsis, #optimole-app .button:active, #optimole-app .input:active,\n #optimole-app .textarea:active, #optimole-app .select select:active, #optimole-app .file-cta:active,\n #optimole-app .file-name:active, #optimole-app .pagination-previous:active,\n #optimole-app .pagination-next:active,\n #optimole-app .pagination-link:active,\n #optimole-app .pagination-ellipsis:active, #optimole-app .is-active.button, #optimole-app .is-active.input,\n #optimole-app .is-active.textarea, #optimole-app .select select.is-active, #optimole-app .is-active.file-cta,\n #optimole-app .is-active.file-name, #optimole-app .is-active.pagination-previous,\n #optimole-app .is-active.pagination-next,\n #optimole-app .is-active.pagination-link,\n #optimole-app .is-active.pagination-ellipsis {\n outline: none; }\n #optimole-app .button[disabled], #optimole-app .input[disabled],\n #optimole-app .textarea[disabled], #optimole-app .select select[disabled], #optimole-app .file-cta[disabled],\n #optimole-app .file-name[disabled], #optimole-app .pagination-previous[disabled],\n #optimole-app .pagination-next[disabled],\n #optimole-app .pagination-link[disabled],\n #optimole-app .pagination-ellipsis[disabled],\n fieldset[disabled] #optimole-app .button,\n fieldset[disabled] #optimole-app .input,\n fieldset[disabled] #optimole-app .textarea,\n fieldset[disabled] #optimole-app .select select,\n fieldset[disabled] #optimole-app .file-cta,\n fieldset[disabled] #optimole-app .file-name,\n fieldset[disabled] #optimole-app .pagination-previous,\n fieldset[disabled] #optimole-app .pagination-next,\n fieldset[disabled] #optimole-app .pagination-link,\n fieldset[disabled] #optimole-app .pagination-ellipsis {\n cursor: not-allowed; }\n #optimole-app html,\n #optimole-app body,\n #optimole-app p,\n #optimole-app ol,\n #optimole-app ul,\n #optimole-app li,\n #optimole-app dl,\n #optimole-app dt,\n #optimole-app dd,\n #optimole-app blockquote,\n #optimole-app figure,\n #optimole-app fieldset,\n #optimole-app legend,\n #optimole-app textarea,\n #optimole-app pre,\n #optimole-app iframe,\n #optimole-app hr,\n #optimole-app h1,\n #optimole-app h2,\n #optimole-app h3,\n #optimole-app h4,\n #optimole-app h5,\n #optimole-app h6 {\n margin: 0;\n padding: 0; }\n #optimole-app h1,\n #optimole-app h2,\n #optimole-app h3,\n #optimole-app h4,\n #optimole-app h5,\n #optimole-app h6 {\n font-size: 100%;\n font-weight: normal; }\n #optimole-app ul {\n list-style: none; }\n #optimole-app button,\n #optimole-app input,\n #optimole-app select,\n #optimole-app textarea {\n margin: 0; }\n #optimole-app html {\n box-sizing: border-box; }\n #optimole-app *, #optimole-app *::before, #optimole-app *::after {\n box-sizing: inherit; }\n #optimole-app img,\n #optimole-app embed,\n #optimole-app iframe,\n #optimole-app object,\n #optimole-app video {\n height: auto;\n max-width: 100%; }\n #optimole-app audio {\n max-width: 100%; }\n #optimole-app iframe {\n border: 0; }\n #optimole-app table {\n border-collapse: collapse;\n border-spacing: 0; }\n #optimole-app td,\n #optimole-app th {\n padding: 0;\n text-align: left; }\n #optimole-app html {\n background-color: white;\n font-size: 16px;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n min-width: 300px;\n overflow-x: hidden;\n overflow-y: scroll;\n text-rendering: optimizeLegibility;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n text-size-adjust: 100%; }\n #optimole-app article,\n #optimole-app aside,\n #optimole-app figure,\n #optimole-app footer,\n #optimole-app header,\n #optimole-app hgroup,\n #optimole-app section {\n display: block; }\n #optimole-app body,\n #optimole-app button,\n #optimole-app input,\n #optimole-app select,\n #optimole-app textarea {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }\n #optimole-app code,\n #optimole-app pre {\n -moz-osx-font-smoothing: auto;\n -webkit-font-smoothing: auto;\n font-family: monospace; }\n #optimole-app body {\n color: #4a4a4a;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5; }\n #optimole-app a {\n color: #3273dc;\n cursor: pointer;\n text-decoration: none; }\n #optimole-app a strong {\n color: currentColor; }\n #optimole-app a:hover {\n color: #363636; }\n #optimole-app code {\n background-color: whitesmoke;\n color: #ff3860;\n font-size: 0.875em;\n font-weight: normal;\n padding: 0.25em 0.5em 0.25em; }\n #optimole-app hr {\n background-color: whitesmoke;\n border: none;\n display: block;\n height: 2px;\n margin: 1.5rem 0; }\n #optimole-app img {\n height: auto;\n max-width: 100%; }\n #optimole-app input[type="checkbox"],\n #optimole-app input[type="radio"] {\n vertical-align: baseline; }\n #optimole-app small {\n font-size: 0.875em; }\n #optimole-app span {\n font-style: inherit;\n font-weight: inherit; }\n #optimole-app strong {\n color: #363636;\n font-weight: 700; }\n #optimole-app fieldset {\n border: none; }\n #optimole-app pre {\n -webkit-overflow-scrolling: touch;\n background-color: whitesmoke;\n color: #4a4a4a;\n font-size: 0.875em;\n overflow-x: auto;\n padding: 1.25rem 1.5rem;\n white-space: pre;\n word-wrap: normal; }\n #optimole-app pre code {\n background-color: transparent;\n color: currentColor;\n font-size: 1em;\n padding: 0; }\n #optimole-app table td,\n #optimole-app table th {\n text-align: left;\n vertical-align: top; }\n #optimole-app table th {\n color: #363636; }\n #optimole-app .is-clearfix::after {\n clear: both;\n content: " ";\n display: table; }\n #optimole-app .is-pulled-left {\n float: left !important; }\n #optimole-app .is-pulled-right {\n float: right !important; }\n #optimole-app .is-clipped {\n overflow: hidden !important; }\n #optimole-app .is-size-1 {\n font-size: 3rem !important; }\n #optimole-app .is-size-2 {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3 {\n font-size: 2rem !important; }\n #optimole-app .is-size-4 {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5 {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6 {\n font-size: 1rem !important; }\n #optimole-app .is-size-7 {\n font-size: 0.75rem !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-size-1-mobile {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-mobile {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-mobile {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-mobile {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-mobile {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-mobile {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-mobile {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-size-1-tablet {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-tablet {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-tablet {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-tablet {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-tablet {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-tablet {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-tablet {\n font-size: 0.75rem !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-size-1-touch {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-touch {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-touch {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-touch {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-touch {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-touch {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-touch {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-size-1-desktop {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-desktop {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-desktop {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-desktop {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-desktop {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-desktop {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-desktop {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-size-1-widescreen {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-widescreen {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-widescreen {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-widescreen {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-widescreen {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-widescreen {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-widescreen {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-size-1-fullhd {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-fullhd {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-fullhd {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-fullhd {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-fullhd {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-fullhd {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-fullhd {\n font-size: 0.75rem !important; } }\n #optimole-app .has-text-centered {\n text-align: center !important; }\n #optimole-app .has-text-justified {\n text-align: justify !important; }\n #optimole-app .has-text-left {\n text-align: left !important; }\n #optimole-app .has-text-right {\n text-align: right !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-centered-mobile {\n text-align: center !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-centered-tablet {\n text-align: center !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-centered-tablet-only {\n text-align: center !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-centered-touch {\n text-align: center !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-centered-desktop {\n text-align: center !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-centered-desktop-only {\n text-align: center !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-centered-widescreen {\n text-align: center !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-centered-widescreen-only {\n text-align: center !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-centered-fullhd {\n text-align: center !important; } }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-justified-mobile {\n text-align: justify !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-justified-tablet {\n text-align: justify !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-justified-tablet-only {\n text-align: justify !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-justified-touch {\n text-align: justify !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-justified-desktop {\n text-align: justify !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-justified-desktop-only {\n text-align: justify !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-justified-widescreen {\n text-align: justify !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-justified-widescreen-only {\n text-align: justify !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-justified-fullhd {\n text-align: justify !important; } }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-left-mobile {\n text-align: left !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-left-tablet {\n text-align: left !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-left-tablet-only {\n text-align: left !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-left-touch {\n text-align: left !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-left-desktop {\n text-align: left !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-left-desktop-only {\n text-align: left !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-left-widescreen {\n text-align: left !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-left-widescreen-only {\n text-align: left !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-left-fullhd {\n text-align: left !important; } }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-right-mobile {\n text-align: right !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-right-tablet {\n text-align: right !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-right-tablet-only {\n text-align: right !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-right-touch {\n text-align: right !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-right-desktop {\n text-align: right !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-right-desktop-only {\n text-align: right !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-right-widescreen {\n text-align: right !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-right-widescreen-only {\n text-align: right !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-right-fullhd {\n text-align: right !important; } }\n #optimole-app .is-capitalized {\n text-transform: capitalize !important; }\n #optimole-app .is-lowercase {\n text-transform: lowercase !important; }\n #optimole-app .is-uppercase {\n text-transform: uppercase !important; }\n #optimole-app .is-italic {\n font-style: italic !important; }\n #optimole-app .has-text-white {\n color: white !important; }\n #optimole-app a.has-text-white:hover, #optimole-app a.has-text-white:focus {\n color: #e6e6e6 !important; }\n #optimole-app .has-background-white {\n background-color: white !important; }\n #optimole-app .has-text-black {\n color: #0a0a0a !important; }\n #optimole-app a.has-text-black:hover, #optimole-app a.has-text-black:focus {\n color: black !important; }\n #optimole-app .has-background-black {\n background-color: #0a0a0a !important; }\n #optimole-app .has-text-light {\n color: whitesmoke !important; }\n #optimole-app a.has-text-light:hover, #optimole-app a.has-text-light:focus {\n color: #dbdbdb !important; }\n #optimole-app .has-background-light {\n background-color: whitesmoke !important; }\n #optimole-app .has-text-dark {\n color: #363636 !important; }\n #optimole-app a.has-text-dark:hover, #optimole-app a.has-text-dark:focus {\n color: #1c1c1c !important; }\n #optimole-app .has-background-dark {\n background-color: #363636 !important; }\n #optimole-app .has-text-primary {\n color: #EF686B !important; }\n #optimole-app a.has-text-primary:hover, #optimole-app a.has-text-primary:focus {\n color: #ea3a3e !important; }\n #optimole-app .has-background-primary {\n background-color: #EF686B !important; }\n #optimole-app .has-text-link {\n color: #3273dc !important; }\n #optimole-app a.has-text-link:hover, #optimole-app a.has-text-link:focus {\n color: #205bbc !important; }\n #optimole-app .has-background-link {\n background-color: #3273dc !important; }\n #optimole-app .has-text-info {\n color: #5180C1 !important; }\n #optimole-app a.has-text-info:hover, #optimole-app a.has-text-info:focus {\n color: #3b67a4 !important; }\n #optimole-app .has-background-info {\n background-color: #5180C1 !important; }\n #optimole-app .has-text-success {\n color: #34a85e !important; }\n #optimole-app a.has-text-success:hover, #optimole-app a.has-text-success:focus {\n color: #288148 !important; }\n #optimole-app .has-background-success {\n background-color: #34a85e !important; }\n #optimole-app .has-text-warning {\n color: #ffdd57 !important; }\n #optimole-app a.has-text-warning:hover, #optimole-app a.has-text-warning:focus {\n color: #ffd324 !important; }\n #optimole-app .has-background-warning {\n background-color: #ffdd57 !important; }\n #optimole-app .has-text-danger {\n color: #D54222 !important; }\n #optimole-app a.has-text-danger:hover, #optimole-app a.has-text-danger:focus {\n color: #a9341b !important; }\n #optimole-app .has-background-danger {\n background-color: #D54222 !important; }\n #optimole-app .has-text-black-bis {\n color: #121212 !important; }\n #optimole-app .has-background-black-bis {\n background-color: #121212 !important; }\n #optimole-app .has-text-black-ter {\n color: #242424 !important; }\n #optimole-app .has-background-black-ter {\n background-color: #242424 !important; }\n #optimole-app .has-text-grey-darker {\n color: #363636 !important; }\n #optimole-app .has-background-grey-darker {\n background-color: #363636 !important; }\n #optimole-app .has-text-grey-dark {\n color: #4a4a4a !important; }\n #optimole-app .has-background-grey-dark {\n background-color: #4a4a4a !important; }\n #optimole-app .has-text-grey {\n color: #7a7a7a !important; }\n #optimole-app .has-background-grey {\n background-color: #7a7a7a !important; }\n #optimole-app .has-text-grey-light {\n color: #b5b5b5 !important; }\n #optimole-app .has-background-grey-light {\n background-color: #b5b5b5 !important; }\n #optimole-app .has-text-grey-lighter {\n color: #dbdbdb !important; }\n #optimole-app .has-background-grey-lighter {\n background-color: #dbdbdb !important; }\n #optimole-app .has-text-white-ter {\n color: whitesmoke !important; }\n #optimole-app .has-background-white-ter {\n background-color: whitesmoke !important; }\n #optimole-app .has-text-white-bis {\n color: #fafafa !important; }\n #optimole-app .has-background-white-bis {\n background-color: #fafafa !important; }\n #optimole-app .has-text-weight-light {\n font-weight: 300 !important; }\n #optimole-app .has-text-weight-normal {\n font-weight: 400 !important; }\n #optimole-app .has-text-weight-semibold {\n font-weight: 600 !important; }\n #optimole-app .has-text-weight-bold {\n font-weight: 700 !important; }\n #optimole-app .is-family-primary {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }\n #optimole-app .is-family-secondary {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }\n #optimole-app .is-family-sans-serif {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }\n #optimole-app .is-family-monospace {\n font-family: monospace !important; }\n #optimole-app .is-family-code {\n font-family: monospace !important; }\n #optimole-app .is-block {\n display: block !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-block-mobile {\n display: block !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-block-tablet {\n display: block !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-block-tablet-only {\n display: block !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-block-touch {\n display: block !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-block-desktop {\n display: block !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-block-desktop-only {\n display: block !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-block-widescreen {\n display: block !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-block-widescreen-only {\n display: block !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-block-fullhd {\n display: block !important; } }\n #optimole-app .is-flex {\n display: -ms-flexbox !important;\n display: flex !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-flex-mobile {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-flex-tablet {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-flex-tablet-only {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-flex-touch {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-flex-desktop {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-flex-desktop-only {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-flex-widescreen {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-flex-widescreen-only {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-flex-fullhd {\n display: -ms-flexbox !important;\n display: flex !important; } }\n #optimole-app .is-inline {\n display: inline !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-inline-mobile {\n display: inline !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-inline-tablet {\n display: inline !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-inline-tablet-only {\n display: inline !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-inline-touch {\n display: inline !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-inline-desktop {\n display: inline !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-inline-desktop-only {\n display: inline !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-inline-widescreen {\n display: inline !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-inline-widescreen-only {\n display: inline !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-inline-fullhd {\n display: inline !important; } }\n #optimole-app .is-inline-block {\n display: inline-block !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-inline-block-mobile {\n display: inline-block !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-inline-block-tablet {\n display: inline-block !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-inline-block-tablet-only {\n display: inline-block !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-inline-block-touch {\n display: inline-block !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-inline-block-desktop {\n display: inline-block !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-inline-block-desktop-only {\n display: inline-block !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-inline-block-widescreen {\n display: inline-block !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-inline-block-widescreen-only {\n display: inline-block !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-inline-block-fullhd {\n display: inline-block !important; } }\n #optimole-app .is-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-inline-flex-mobile {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-inline-flex-tablet {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-inline-flex-tablet-only {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-inline-flex-touch {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-inline-flex-desktop {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-inline-flex-desktop-only {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-inline-flex-widescreen {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-inline-flex-widescreen-only {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-inline-flex-fullhd {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n #optimole-app .is-hidden {\n display: none !important; }\n #optimole-app .is-sr-only {\n border: none !important;\n clip: rect(0, 0, 0, 0) !important;\n height: 0.01em !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n white-space: nowrap !important;\n width: 0.01em !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-hidden-mobile {\n display: none !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-hidden-tablet {\n display: none !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-hidden-tablet-only {\n display: none !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-hidden-touch {\n display: none !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-hidden-desktop {\n display: none !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-hidden-desktop-only {\n display: none !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-hidden-widescreen {\n display: none !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-hidden-widescreen-only {\n display: none !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-hidden-fullhd {\n display: none !important; } }\n #optimole-app .is-invisible {\n visibility: hidden !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-invisible-mobile {\n visibility: hidden !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-invisible-tablet {\n visibility: hidden !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-invisible-tablet-only {\n visibility: hidden !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-invisible-touch {\n visibility: hidden !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-invisible-desktop {\n visibility: hidden !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-invisible-desktop-only {\n visibility: hidden !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-invisible-widescreen {\n visibility: hidden !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-invisible-widescreen-only {\n visibility: hidden !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-invisible-fullhd {\n visibility: hidden !important; } }\n #optimole-app .is-marginless {\n margin: 0 !important; }\n #optimole-app .is-paddingless {\n padding: 0 !important; }\n #optimole-app .is-radiusless {\n border-radius: 0 !important; }\n #optimole-app .is-shadowless {\n box-shadow: none !important; }\n #optimole-app .box {\n background-color: white;\n border-radius: 6px;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n color: #4a4a4a;\n display: block;\n padding: 1.25rem; }\n #optimole-app a.box:hover, #optimole-app a.box:focus {\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px #3273dc; }\n #optimole-app a.box:active {\n box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px #3273dc; }\n #optimole-app .button {\n background-color: white;\n border-color: #dbdbdb;\n border-width: 1px;\n color: #363636;\n cursor: pointer;\n -ms-flex-pack: center;\n justify-content: center;\n padding-bottom: calc(0.375em - 1px);\n padding-left: 0.75em;\n padding-right: 0.75em;\n padding-top: calc(0.375em - 1px);\n text-align: center;\n white-space: nowrap; }\n #optimole-app .button strong {\n color: inherit; }\n #optimole-app .button .icon, #optimole-app .button .icon.is-small, #optimole-app .button .icon.is-medium, #optimole-app .button .icon.is-large {\n height: 1.5em;\n width: 1.5em; }\n #optimole-app .button .icon:first-child:not(:last-child) {\n margin-left: calc(-0.375em - 1px);\n margin-right: 0.1875em; }\n #optimole-app .button .icon:last-child:not(:first-child) {\n margin-left: 0.1875em;\n margin-right: calc(-0.375em - 1px); }\n #optimole-app .button .icon:first-child:last-child {\n margin-left: calc(-0.375em - 1px);\n margin-right: calc(-0.375em - 1px); }\n #optimole-app .button:hover, #optimole-app .button.is-hovered {\n border-color: #b5b5b5;\n color: #363636; }\n #optimole-app .button:focus, #optimole-app .button.is-focused {\n border-color: #3273dc;\n color: #363636; }\n #optimole-app .button:focus:not(:active), #optimole-app .button.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .button:active, #optimole-app .button.is-active {\n border-color: #4a4a4a;\n color: #363636; }\n #optimole-app .button.is-text {\n background-color: transparent;\n border-color: transparent;\n color: #4a4a4a;\n text-decoration: underline; }\n #optimole-app .button.is-text:hover, #optimole-app .button.is-text.is-hovered, #optimole-app .button.is-text:focus, #optimole-app .button.is-text.is-focused {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-text:active, #optimole-app .button.is-text.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .button.is-text[disabled],\n fieldset[disabled] #optimole-app .button.is-text {\n background-color: transparent;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-white {\n background-color: white;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white:hover, #optimole-app .button.is-white.is-hovered {\n background-color: #f9f9f9;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white:focus, #optimole-app .button.is-white.is-focused {\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white:focus:not(:active), #optimole-app .button.is-white.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n #optimole-app .button.is-white:active, #optimole-app .button.is-white.is-active {\n background-color: #f2f2f2;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white[disabled],\n fieldset[disabled] #optimole-app .button.is-white {\n background-color: white;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-white.is-inverted {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .button.is-white.is-inverted:hover {\n background-color: black; }\n #optimole-app .button.is-white.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-white.is-inverted {\n background-color: #0a0a0a;\n border-color: transparent;\n box-shadow: none;\n color: white; }\n #optimole-app .button.is-white.is-loading::after {\n border-color: transparent transparent #0a0a0a #0a0a0a !important; }\n #optimole-app .button.is-white.is-outlined {\n background-color: transparent;\n border-color: white;\n color: white; }\n #optimole-app .button.is-white.is-outlined:hover, #optimole-app .button.is-white.is-outlined:focus {\n background-color: white;\n border-color: white;\n color: #0a0a0a; }\n #optimole-app .button.is-white.is-outlined.is-loading::after {\n border-color: transparent transparent white white !important; }\n #optimole-app .button.is-white.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-white.is-outlined {\n background-color: transparent;\n border-color: white;\n box-shadow: none;\n color: white; }\n #optimole-app .button.is-white.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n color: #0a0a0a; }\n #optimole-app .button.is-white.is-inverted.is-outlined:hover, #optimole-app .button.is-white.is-inverted.is-outlined:focus {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .button.is-white.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-white.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n box-shadow: none;\n color: #0a0a0a; }\n #optimole-app .button.is-black {\n background-color: #0a0a0a;\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black:hover, #optimole-app .button.is-black.is-hovered {\n background-color: #040404;\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black:focus, #optimole-app .button.is-black.is-focused {\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black:focus:not(:active), #optimole-app .button.is-black.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); }\n #optimole-app .button.is-black:active, #optimole-app .button.is-black.is-active {\n background-color: black;\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black[disabled],\n fieldset[disabled] #optimole-app .button.is-black {\n background-color: #0a0a0a;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-black.is-inverted {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-black.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-black.is-inverted {\n background-color: white;\n border-color: transparent;\n box-shadow: none;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-loading::after {\n border-color: transparent transparent white white !important; }\n #optimole-app .button.is-black.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-outlined:hover, #optimole-app .button.is-black.is-outlined:focus {\n background-color: #0a0a0a;\n border-color: #0a0a0a;\n color: white; }\n #optimole-app .button.is-black.is-outlined.is-loading::after {\n border-color: transparent transparent #0a0a0a #0a0a0a !important; }\n #optimole-app .button.is-black.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-black.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n box-shadow: none;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-inverted.is-outlined {\n background-color: transparent;\n border-color: white;\n color: white; }\n #optimole-app .button.is-black.is-inverted.is-outlined:hover, #optimole-app .button.is-black.is-inverted.is-outlined:focus {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-black.is-inverted.is-outlined {\n background-color: transparent;\n border-color: white;\n box-shadow: none;\n color: white; }\n #optimole-app .button.is-light {\n background-color: whitesmoke;\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light:hover, #optimole-app .button.is-light.is-hovered {\n background-color: #eeeeee;\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light:focus, #optimole-app .button.is-light.is-focused {\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light:focus:not(:active), #optimole-app .button.is-light.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); }\n #optimole-app .button.is-light:active, #optimole-app .button.is-light.is-active {\n background-color: #e8e8e8;\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light[disabled],\n fieldset[disabled] #optimole-app .button.is-light {\n background-color: whitesmoke;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-light.is-inverted {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-inverted:hover {\n background-color: #292929; }\n #optimole-app .button.is-light.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-light.is-inverted {\n background-color: #363636;\n border-color: transparent;\n box-shadow: none;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-loading::after {\n border-color: transparent transparent #363636 #363636 !important; }\n #optimole-app .button.is-light.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-outlined:hover, #optimole-app .button.is-light.is-outlined:focus {\n background-color: whitesmoke;\n border-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-light.is-outlined.is-loading::after {\n border-color: transparent transparent whitesmoke whitesmoke !important; }\n #optimole-app .button.is-light.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-light.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n box-shadow: none;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #363636;\n color: #363636; }\n #optimole-app .button.is-light.is-inverted.is-outlined:hover, #optimole-app .button.is-light.is-inverted.is-outlined:focus {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-light.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #363636;\n box-shadow: none;\n color: #363636; }\n #optimole-app .button.is-dark {\n background-color: #363636;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark:hover, #optimole-app .button.is-dark.is-hovered {\n background-color: #2f2f2f;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark:focus, #optimole-app .button.is-dark.is-focused {\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark:focus:not(:active), #optimole-app .button.is-dark.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); }\n #optimole-app .button.is-dark:active, #optimole-app .button.is-dark.is-active {\n background-color: #292929;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark[disabled],\n fieldset[disabled] #optimole-app .button.is-dark {\n background-color: #363636;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-dark.is-inverted {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-dark.is-inverted:hover {\n background-color: #e8e8e8; }\n #optimole-app .button.is-dark.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-dark.is-inverted {\n background-color: whitesmoke;\n border-color: transparent;\n box-shadow: none;\n color: #363636; }\n #optimole-app .button.is-dark.is-loading::after {\n border-color: transparent transparent whitesmoke whitesmoke !important; }\n #optimole-app .button.is-dark.is-outlined {\n background-color: transparent;\n border-color: #363636;\n color: #363636; }\n #optimole-app .button.is-dark.is-outlined:hover, #optimole-app .button.is-dark.is-outlined:focus {\n background-color: #363636;\n border-color: #363636;\n color: whitesmoke; }\n #optimole-app .button.is-dark.is-outlined.is-loading::after {\n border-color: transparent transparent #363636 #363636 !important; }\n #optimole-app .button.is-dark.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-dark.is-outlined {\n background-color: transparent;\n border-color: #363636;\n box-shadow: none;\n color: #363636; }\n #optimole-app .button.is-dark.is-inverted.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n color: whitesmoke; }\n #optimole-app .button.is-dark.is-inverted.is-outlined:hover, #optimole-app .button.is-dark.is-inverted.is-outlined:focus {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-dark.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-dark.is-inverted.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n box-shadow: none;\n color: whitesmoke; }\n #optimole-app .button.is-primary {\n background-color: #EF686B;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary:hover, #optimole-app .button.is-primary.is-hovered {\n background-color: #ee5c60;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary:focus, #optimole-app .button.is-primary.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary:focus:not(:active), #optimole-app .button.is-primary.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(239, 104, 107, 0.25); }\n #optimole-app .button.is-primary:active, #optimole-app .button.is-primary.is-active {\n background-color: #ed5154;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary[disabled],\n fieldset[disabled] #optimole-app .button.is-primary {\n background-color: #EF686B;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-primary.is-inverted {\n background-color: #fff;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-primary.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-primary.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-primary.is-outlined {\n background-color: transparent;\n border-color: #EF686B;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-outlined:hover, #optimole-app .button.is-primary.is-outlined:focus {\n background-color: #EF686B;\n border-color: #EF686B;\n color: #fff; }\n #optimole-app .button.is-primary.is-outlined.is-loading::after {\n border-color: transparent transparent #EF686B #EF686B !important; }\n #optimole-app .button.is-primary.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-primary.is-outlined {\n background-color: transparent;\n border-color: #EF686B;\n box-shadow: none;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-primary.is-inverted.is-outlined:hover, #optimole-app .button.is-primary.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-primary.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-link {\n background-color: #3273dc;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link:hover, #optimole-app .button.is-link.is-hovered {\n background-color: #276cda;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link:focus, #optimole-app .button.is-link.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link:focus:not(:active), #optimole-app .button.is-link.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .button.is-link:active, #optimole-app .button.is-link.is-active {\n background-color: #2366d1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link[disabled],\n fieldset[disabled] #optimole-app .button.is-link {\n background-color: #3273dc;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-link.is-inverted {\n background-color: #fff;\n color: #3273dc; }\n #optimole-app .button.is-link.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-link.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-link.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #3273dc; }\n #optimole-app .button.is-link.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-link.is-outlined {\n background-color: transparent;\n border-color: #3273dc;\n color: #3273dc; }\n #optimole-app .button.is-link.is-outlined:hover, #optimole-app .button.is-link.is-outlined:focus {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff; }\n #optimole-app .button.is-link.is-outlined.is-loading::after {\n border-color: transparent transparent #3273dc #3273dc !important; }\n #optimole-app .button.is-link.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-link.is-outlined {\n background-color: transparent;\n border-color: #3273dc;\n box-shadow: none;\n color: #3273dc; }\n #optimole-app .button.is-link.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-link.is-inverted.is-outlined:hover, #optimole-app .button.is-link.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #3273dc; }\n #optimole-app .button.is-link.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-link.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-info {\n background-color: #5180C1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info:hover, #optimole-app .button.is-info.is-hovered {\n background-color: #4879be;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info:focus, #optimole-app .button.is-info.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info:focus:not(:active), #optimole-app .button.is-info.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(81, 128, 193, 0.25); }\n #optimole-app .button.is-info:active, #optimole-app .button.is-info.is-active {\n background-color: #4173b7;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info[disabled],\n fieldset[disabled] #optimole-app .button.is-info {\n background-color: #5180C1;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-info.is-inverted {\n background-color: #fff;\n color: #5180C1; }\n #optimole-app .button.is-info.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-info.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-info.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #5180C1; }\n #optimole-app .button.is-info.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-info.is-outlined {\n background-color: transparent;\n border-color: #5180C1;\n color: #5180C1; }\n #optimole-app .button.is-info.is-outlined:hover, #optimole-app .button.is-info.is-outlined:focus {\n background-color: #5180C1;\n border-color: #5180C1;\n color: #fff; }\n #optimole-app .button.is-info.is-outlined.is-loading::after {\n border-color: transparent transparent #5180C1 #5180C1 !important; }\n #optimole-app .button.is-info.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-info.is-outlined {\n background-color: transparent;\n border-color: #5180C1;\n box-shadow: none;\n color: #5180C1; }\n #optimole-app .button.is-info.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-info.is-inverted.is-outlined:hover, #optimole-app .button.is-info.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #5180C1; }\n #optimole-app .button.is-info.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-info.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-success {\n background-color: #34a85e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success:hover, #optimole-app .button.is-success.is-hovered {\n background-color: #319e59;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success:focus, #optimole-app .button.is-success.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success:focus:not(:active), #optimole-app .button.is-success.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(52, 168, 94, 0.25); }\n #optimole-app .button.is-success:active, #optimole-app .button.is-success.is-active {\n background-color: #2e9553;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success[disabled],\n fieldset[disabled] #optimole-app .button.is-success {\n background-color: #34a85e;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-success.is-inverted {\n background-color: #fff;\n color: #34a85e; }\n #optimole-app .button.is-success.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-success.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-success.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #34a85e; }\n #optimole-app .button.is-success.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-success.is-outlined {\n background-color: transparent;\n border-color: #34a85e;\n color: #34a85e; }\n #optimole-app .button.is-success.is-outlined:hover, #optimole-app .button.is-success.is-outlined:focus {\n background-color: #34a85e;\n border-color: #34a85e;\n color: #fff; }\n #optimole-app .button.is-success.is-outlined.is-loading::after {\n border-color: transparent transparent #34a85e #34a85e !important; }\n #optimole-app .button.is-success.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-success.is-outlined {\n background-color: transparent;\n border-color: #34a85e;\n box-shadow: none;\n color: #34a85e; }\n #optimole-app .button.is-success.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-success.is-inverted.is-outlined:hover, #optimole-app .button.is-success.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #34a85e; }\n #optimole-app .button.is-success.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-success.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-warning {\n background-color: #ffdd57;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning:hover, #optimole-app .button.is-warning.is-hovered {\n background-color: #ffdb4a;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning:focus, #optimole-app .button.is-warning.is-focused {\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning:focus:not(:active), #optimole-app .button.is-warning.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); }\n #optimole-app .button.is-warning:active, #optimole-app .button.is-warning.is-active {\n background-color: #ffd83d;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning[disabled],\n fieldset[disabled] #optimole-app .button.is-warning {\n background-color: #ffdd57;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-warning.is-inverted {\n background-color: rgba(0, 0, 0, 0.7);\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-inverted:hover {\n background-color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-warning.is-inverted {\n background-color: rgba(0, 0, 0, 0.7);\n border-color: transparent;\n box-shadow: none;\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-loading::after {\n border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; }\n #optimole-app .button.is-warning.is-outlined {\n background-color: transparent;\n border-color: #ffdd57;\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-outlined:hover, #optimole-app .button.is-warning.is-outlined:focus {\n background-color: #ffdd57;\n border-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning.is-outlined.is-loading::after {\n border-color: transparent transparent #ffdd57 #ffdd57 !important; }\n #optimole-app .button.is-warning.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-warning.is-outlined {\n background-color: transparent;\n border-color: #ffdd57;\n box-shadow: none;\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-inverted.is-outlined {\n background-color: transparent;\n border-color: rgba(0, 0, 0, 0.7);\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning.is-inverted.is-outlined:hover, #optimole-app .button.is-warning.is-inverted.is-outlined:focus {\n background-color: rgba(0, 0, 0, 0.7);\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-warning.is-inverted.is-outlined {\n background-color: transparent;\n border-color: rgba(0, 0, 0, 0.7);\n box-shadow: none;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-danger {\n background-color: #D54222;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger:hover, #optimole-app .button.is-danger.is-hovered {\n background-color: #ca3f20;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger:focus, #optimole-app .button.is-danger.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger:focus:not(:active), #optimole-app .button.is-danger.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(213, 66, 34, 0.25); }\n #optimole-app .button.is-danger:active, #optimole-app .button.is-danger.is-active {\n background-color: #bf3b1e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger[disabled],\n fieldset[disabled] #optimole-app .button.is-danger {\n background-color: #D54222;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-danger.is-inverted {\n background-color: #fff;\n color: #D54222; }\n #optimole-app .button.is-danger.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-danger.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-danger.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #D54222; }\n #optimole-app .button.is-danger.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-danger.is-outlined {\n background-color: transparent;\n border-color: #D54222;\n color: #D54222; }\n #optimole-app .button.is-danger.is-outlined:hover, #optimole-app .button.is-danger.is-outlined:focus {\n background-color: #D54222;\n border-color: #D54222;\n color: #fff; }\n #optimole-app .button.is-danger.is-outlined.is-loading::after {\n border-color: transparent transparent #D54222 #D54222 !important; }\n #optimole-app .button.is-danger.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-danger.is-outlined {\n background-color: transparent;\n border-color: #D54222;\n box-shadow: none;\n color: #D54222; }\n #optimole-app .button.is-danger.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-danger.is-inverted.is-outlined:hover, #optimole-app .button.is-danger.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #D54222; }\n #optimole-app .button.is-danger.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-danger.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-small {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .button.is-normal {\n font-size: 1rem; }\n #optimole-app .button.is-medium {\n font-size: 1.25rem; }\n #optimole-app .button.is-large {\n font-size: 1.5rem; }\n #optimole-app .button[disabled],\n fieldset[disabled] #optimole-app .button {\n background-color: white;\n border-color: #dbdbdb;\n box-shadow: none;\n opacity: 0.5; }\n #optimole-app .button.is-fullwidth {\n display: -ms-flexbox;\n display: flex;\n width: 100%; }\n #optimole-app .button.is-loading {\n color: transparent !important;\n pointer-events: none; }\n #optimole-app .button.is-loading::after {\n position: absolute;\n left: calc(50% - (1em / 2));\n top: calc(50% - (1em / 2));\n position: absolute !important; }\n #optimole-app .button.is-static {\n background-color: whitesmoke;\n border-color: #dbdbdb;\n color: #7a7a7a;\n box-shadow: none;\n pointer-events: none; }\n #optimole-app .button.is-rounded {\n border-radius: 290486px;\n padding-left: 1em;\n padding-right: 1em; }\n #optimole-app .buttons {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .buttons .button {\n margin-bottom: 0.5rem; }\n #optimole-app .buttons .button:not(:last-child):not(.is-fullwidth) {\n margin-right: 0.5rem; }\n #optimole-app .buttons:last-child {\n margin-bottom: -0.5rem; }\n #optimole-app .buttons:not(:last-child) {\n margin-bottom: 1rem; }\n #optimole-app .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large) {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large) {\n font-size: 1.25rem; }\n #optimole-app .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium) {\n font-size: 1.5rem; }\n #optimole-app .buttons.has-addons .button:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .buttons.has-addons .button:not(:last-child) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n margin-right: -1px; }\n #optimole-app .buttons.has-addons .button:last-child {\n margin-right: 0; }\n #optimole-app .buttons.has-addons .button:hover, #optimole-app .buttons.has-addons .button.is-hovered {\n z-index: 2; }\n #optimole-app .buttons.has-addons .button:focus, #optimole-app .buttons.has-addons .button.is-focused, #optimole-app .buttons.has-addons .button:active, #optimole-app .buttons.has-addons .button.is-active, #optimole-app .buttons.has-addons .button.is-selected {\n z-index: 3; }\n #optimole-app .buttons.has-addons .button:focus:hover, #optimole-app .buttons.has-addons .button.is-focused:hover, #optimole-app .buttons.has-addons .button:active:hover, #optimole-app .buttons.has-addons .button.is-active:hover, #optimole-app .buttons.has-addons .button.is-selected:hover {\n z-index: 4; }\n #optimole-app .buttons.has-addons .button.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n #optimole-app .buttons.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .buttons.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .container {\n margin: 0 auto;\n position: relative; }\n @media screen and (min-width: 1088px) {\n #optimole-app .container {\n max-width: 960px;\n width: 960px; }\n #optimole-app .container.is-fluid {\n margin-left: 64px;\n margin-right: 64px;\n max-width: none;\n width: auto; } }\n @media screen and (max-width: 1279px) {\n #optimole-app .container.is-widescreen {\n max-width: 1152px;\n width: auto; } }\n @media screen and (max-width: 1471px) {\n #optimole-app .container.is-fullhd {\n max-width: 1344px;\n width: auto; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .container {\n max-width: 1152px;\n width: 1152px; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .container {\n max-width: 1344px;\n width: 1344px; } }\n #optimole-app .content li + li {\n margin-top: 0.25em; }\n #optimole-app .content p:not(:last-child),\n #optimole-app .content dl:not(:last-child),\n #optimole-app .content ol:not(:last-child),\n #optimole-app .content ul:not(:last-child),\n #optimole-app .content blockquote:not(:last-child),\n #optimole-app .content pre:not(:last-child),\n #optimole-app .content table:not(:last-child) {\n margin-bottom: 1em; }\n #optimole-app .content h1,\n #optimole-app .content h2,\n #optimole-app .content h3,\n #optimole-app .content h4,\n #optimole-app .content h5,\n #optimole-app .content h6 {\n color: #363636;\n font-weight: 600;\n line-height: 1.125; }\n #optimole-app .content h1 {\n font-size: 2em;\n margin-bottom: 0.5em; }\n #optimole-app .content h1:not(:first-child) {\n margin-top: 1em; }\n #optimole-app .content h2 {\n font-size: 1.75em;\n margin-bottom: 0.5714em; }\n #optimole-app .content h2:not(:first-child) {\n margin-top: 1.1428em; }\n #optimole-app .content h3 {\n font-size: 1.5em;\n margin-bottom: 0.6666em; }\n #optimole-app .content h3:not(:first-child) {\n margin-top: 1.3333em; }\n #optimole-app .content h4 {\n font-size: 1.25em;\n margin-bottom: 0.8em; }\n #optimole-app .content h5 {\n font-size: 1.125em;\n margin-bottom: 0.8888em; }\n #optimole-app .content h6 {\n font-size: 1em;\n margin-bottom: 1em; }\n #optimole-app .content blockquote {\n background-color: whitesmoke;\n border-left: 5px solid #dbdbdb;\n padding: 1.25em 1.5em; }\n #optimole-app .content ol {\n list-style-position: outside;\n margin-left: 2em;\n margin-top: 1em; }\n #optimole-app .content ol:not([type]) {\n list-style-type: decimal; }\n #optimole-app .content ol:not([type]).is-lower-alpha {\n list-style-type: lower-alpha; }\n #optimole-app .content ol:not([type]).is-lower-roman {\n list-style-type: lower-roman; }\n #optimole-app .content ol:not([type]).is-upper-alpha {\n list-style-type: upper-alpha; }\n #optimole-app .content ol:not([type]).is-upper-roman {\n list-style-type: upper-roman; }\n #optimole-app .content ul {\n list-style: disc outside;\n margin-left: 2em;\n margin-top: 1em; }\n #optimole-app .content ul ul {\n list-style-type: circle;\n margin-top: 0.5em; }\n #optimole-app .content ul ul ul {\n list-style-type: square; }\n #optimole-app .content dd {\n margin-left: 2em; }\n #optimole-app .content figure {\n margin-left: 2em;\n margin-right: 2em;\n text-align: center; }\n #optimole-app .content figure:not(:first-child) {\n margin-top: 2em; }\n #optimole-app .content figure:not(:last-child) {\n margin-bottom: 2em; }\n #optimole-app .content figure img {\n display: inline-block; }\n #optimole-app .content figure figcaption {\n font-style: italic; }\n #optimole-app .content pre {\n -webkit-overflow-scrolling: touch;\n overflow-x: auto;\n padding: 1.25em 1.5em;\n white-space: pre;\n word-wrap: normal; }\n #optimole-app .content sup,\n #optimole-app .content sub {\n font-size: 75%; }\n #optimole-app .content table {\n width: 100%; }\n #optimole-app .content table td,\n #optimole-app .content table th {\n border: 1px solid #dbdbdb;\n border-width: 0 0 1px;\n padding: 0.5em 0.75em;\n vertical-align: top; }\n #optimole-app .content table th {\n color: #363636;\n text-align: left; }\n #optimole-app .content table thead td,\n #optimole-app .content table thead th {\n border-width: 0 0 2px;\n color: #363636; }\n #optimole-app .content table tfoot td,\n #optimole-app .content table tfoot th {\n border-width: 2px 0 0;\n color: #363636; }\n #optimole-app .content table tbody tr:last-child td,\n #optimole-app .content table tbody tr:last-child th {\n border-bottom-width: 0; }\n #optimole-app .content.is-small {\n font-size: 0.75rem; }\n #optimole-app .content.is-medium {\n font-size: 1.25rem; }\n #optimole-app .content.is-large {\n font-size: 1.5rem; }\n #optimole-app .input,\n #optimole-app .textarea {\n background-color: white;\n border-color: #dbdbdb;\n color: #363636;\n box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);\n max-width: 100%;\n width: 100%; }\n #optimole-app .input::-moz-placeholder,\n #optimole-app .textarea::-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input::-webkit-input-placeholder,\n #optimole-app .textarea::-webkit-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input:-moz-placeholder,\n #optimole-app .textarea:-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input:-ms-input-placeholder,\n #optimole-app .textarea:-ms-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input:hover, #optimole-app .input.is-hovered,\n #optimole-app .textarea:hover,\n #optimole-app .textarea.is-hovered {\n border-color: #b5b5b5; }\n #optimole-app .input:focus, #optimole-app .input.is-focused, #optimole-app .input:active, #optimole-app .input.is-active,\n #optimole-app .textarea:focus,\n #optimole-app .textarea.is-focused,\n #optimole-app .textarea:active,\n #optimole-app .textarea.is-active {\n border-color: #3273dc;\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .input[disabled],\n fieldset[disabled] #optimole-app .input,\n #optimole-app .textarea[disabled],\n fieldset[disabled]\n #optimole-app .textarea {\n background-color: whitesmoke;\n border-color: whitesmoke;\n box-shadow: none;\n color: #7a7a7a; }\n #optimole-app .input[disabled]::-moz-placeholder,\n fieldset[disabled] #optimole-app .input::-moz-placeholder,\n #optimole-app .textarea[disabled]::-moz-placeholder,\n fieldset[disabled]\n #optimole-app .textarea::-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[disabled]::-webkit-input-placeholder,\n fieldset[disabled] #optimole-app .input::-webkit-input-placeholder,\n #optimole-app .textarea[disabled]::-webkit-input-placeholder,\n fieldset[disabled]\n #optimole-app .textarea::-webkit-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[disabled]:-moz-placeholder,\n fieldset[disabled] #optimole-app .input:-moz-placeholder,\n #optimole-app .textarea[disabled]:-moz-placeholder,\n fieldset[disabled]\n #optimole-app .textarea:-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[disabled]:-ms-input-placeholder,\n fieldset[disabled] #optimole-app .input:-ms-input-placeholder,\n #optimole-app .textarea[disabled]:-ms-input-placeholder,\n fieldset[disabled]\n #optimole-app .textarea:-ms-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[readonly],\n #optimole-app .textarea[readonly] {\n box-shadow: none; }\n #optimole-app .input.is-white,\n #optimole-app .textarea.is-white {\n border-color: white; }\n #optimole-app .input.is-white:focus, #optimole-app .input.is-white.is-focused, #optimole-app .input.is-white:active, #optimole-app .input.is-white.is-active,\n #optimole-app .textarea.is-white:focus,\n #optimole-app .textarea.is-white.is-focused,\n #optimole-app .textarea.is-white:active,\n #optimole-app .textarea.is-white.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n #optimole-app .input.is-black,\n #optimole-app .textarea.is-black {\n border-color: #0a0a0a; }\n #optimole-app .input.is-black:focus, #optimole-app .input.is-black.is-focused, #optimole-app .input.is-black:active, #optimole-app .input.is-black.is-active,\n #optimole-app .textarea.is-black:focus,\n #optimole-app .textarea.is-black.is-focused,\n #optimole-app .textarea.is-black:active,\n #optimole-app .textarea.is-black.is-active {\n box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); }\n #optimole-app .input.is-light,\n #optimole-app .textarea.is-light {\n border-color: whitesmoke; }\n #optimole-app .input.is-light:focus, #optimole-app .input.is-light.is-focused, #optimole-app .input.is-light:active, #optimole-app .input.is-light.is-active,\n #optimole-app .textarea.is-light:focus,\n #optimole-app .textarea.is-light.is-focused,\n #optimole-app .textarea.is-light:active,\n #optimole-app .textarea.is-light.is-active {\n box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); }\n #optimole-app .input.is-dark,\n #optimole-app .textarea.is-dark {\n border-color: #363636; }\n #optimole-app .input.is-dark:focus, #optimole-app .input.is-dark.is-focused, #optimole-app .input.is-dark:active, #optimole-app .input.is-dark.is-active,\n #optimole-app .textarea.is-dark:focus,\n #optimole-app .textarea.is-dark.is-focused,\n #optimole-app .textarea.is-dark:active,\n #optimole-app .textarea.is-dark.is-active {\n box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); }\n #optimole-app .input.is-primary,\n #optimole-app .textarea.is-primary {\n border-color: #EF686B; }\n #optimole-app .input.is-primary:focus, #optimole-app .input.is-primary.is-focused, #optimole-app .input.is-primary:active, #optimole-app .input.is-primary.is-active,\n #optimole-app .textarea.is-primary:focus,\n #optimole-app .textarea.is-primary.is-focused,\n #optimole-app .textarea.is-primary:active,\n #optimole-app .textarea.is-primary.is-active {\n box-shadow: 0 0 0 0.125em rgba(239, 104, 107, 0.25); }\n #optimole-app .input.is-link,\n #optimole-app .textarea.is-link {\n border-color: #3273dc; }\n #optimole-app .input.is-link:focus, #optimole-app .input.is-link.is-focused, #optimole-app .input.is-link:active, #optimole-app .input.is-link.is-active,\n #optimole-app .textarea.is-link:focus,\n #optimole-app .textarea.is-link.is-focused,\n #optimole-app .textarea.is-link:active,\n #optimole-app .textarea.is-link.is-active {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .input.is-info,\n #optimole-app .textarea.is-info {\n border-color: #5180C1; }\n #optimole-app .input.is-info:focus, #optimole-app .input.is-info.is-focused, #optimole-app .input.is-info:active, #optimole-app .input.is-info.is-active,\n #optimole-app .textarea.is-info:focus,\n #optimole-app .textarea.is-info.is-focused,\n #optimole-app .textarea.is-info:active,\n #optimole-app .textarea.is-info.is-active {\n box-shadow: 0 0 0 0.125em rgba(81, 128, 193, 0.25); }\n #optimole-app .input.is-success,\n #optimole-app .textarea.is-success {\n border-color: #34a85e; }\n #optimole-app .input.is-success:focus, #optimole-app .input.is-success.is-focused, #optimole-app .input.is-success:active, #optimole-app .input.is-success.is-active,\n #optimole-app .textarea.is-success:focus,\n #optimole-app .textarea.is-success.is-focused,\n #optimole-app .textarea.is-success:active,\n #optimole-app .textarea.is-success.is-active {\n box-shadow: 0 0 0 0.125em rgba(52, 168, 94, 0.25); }\n #optimole-app .input.is-warning,\n #optimole-app .textarea.is-warning {\n border-color: #ffdd57; }\n #optimole-app .input.is-warning:focus, #optimole-app .input.is-warning.is-focused, #optimole-app .input.is-warning:active, #optimole-app .input.is-warning.is-active,\n #optimole-app .textarea.is-warning:focus,\n #optimole-app .textarea.is-warning.is-focused,\n #optimole-app .textarea.is-warning:active,\n #optimole-app .textarea.is-warning.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); }\n #optimole-app .input.is-danger,\n #optimole-app .textarea.is-danger {\n border-color: #D54222; }\n #optimole-app .input.is-danger:focus, #optimole-app .input.is-danger.is-focused, #optimole-app .input.is-danger:active, #optimole-app .input.is-danger.is-active,\n #optimole-app .textarea.is-danger:focus,\n #optimole-app .textarea.is-danger.is-focused,\n #optimole-app .textarea.is-danger:active,\n #optimole-app .textarea.is-danger.is-active {\n box-shadow: 0 0 0 0.125em rgba(213, 66, 34, 0.25); }\n #optimole-app .input.is-small,\n #optimole-app .textarea.is-small {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .input.is-medium,\n #optimole-app .textarea.is-medium {\n font-size: 1.25rem; }\n #optimole-app .input.is-large,\n #optimole-app .textarea.is-large {\n font-size: 1.5rem; }\n #optimole-app .input.is-fullwidth,\n #optimole-app .textarea.is-fullwidth {\n display: block;\n width: 100%; }\n #optimole-app .input.is-inline,\n #optimole-app .textarea.is-inline {\n display: inline;\n width: auto; }\n #optimole-app .input.is-rounded {\n border-radius: 290486px;\n padding-left: 1em;\n padding-right: 1em; }\n #optimole-app .input.is-static {\n background-color: transparent;\n border-color: transparent;\n box-shadow: none;\n padding-left: 0;\n padding-right: 0; }\n #optimole-app .textarea {\n display: block;\n max-width: 100%;\n min-width: 100%;\n padding: 0.625em;\n resize: vertical; }\n #optimole-app .textarea:not([rows]) {\n max-height: 600px;\n min-height: 120px; }\n #optimole-app .textarea[rows] {\n height: initial; }\n #optimole-app .textarea.has-fixed-size {\n resize: none; }\n #optimole-app .checkbox,\n #optimole-app .radio {\n cursor: pointer;\n display: inline-block;\n line-height: 1.25;\n position: relative; }\n #optimole-app .checkbox input,\n #optimole-app .radio input {\n cursor: pointer; }\n #optimole-app .checkbox:hover,\n #optimole-app .radio:hover {\n color: #363636; }\n #optimole-app .checkbox[disabled],\n fieldset[disabled] #optimole-app .checkbox,\n #optimole-app .radio[disabled],\n fieldset[disabled]\n #optimole-app .radio {\n color: #7a7a7a;\n cursor: not-allowed; }\n #optimole-app .radio + .radio {\n margin-left: 0.5em; }\n #optimole-app .select {\n display: inline-block;\n max-width: 100%;\n position: relative;\n vertical-align: top; }\n #optimole-app .select:not(.is-multiple) {\n height: 2.25em; }\n #optimole-app .select:not(.is-multiple):not(.is-loading)::after {\n border-color: #3273dc;\n right: 1.125em;\n z-index: 4; }\n #optimole-app .select.is-rounded select {\n border-radius: 290486px;\n padding-left: 1em; }\n #optimole-app .select select {\n background-color: white;\n border-color: #dbdbdb;\n color: #363636;\n cursor: pointer;\n display: block;\n font-size: 1em;\n max-width: 100%;\n outline: none; }\n #optimole-app .select select::-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select::-webkit-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select:-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select:-ms-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select:hover, #optimole-app .select select.is-hovered {\n border-color: #b5b5b5; }\n #optimole-app .select select:focus, #optimole-app .select select.is-focused, #optimole-app .select select:active, #optimole-app .select select.is-active {\n border-color: #3273dc;\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .select select[disabled],\n fieldset[disabled] #optimole-app .select select {\n background-color: whitesmoke;\n border-color: whitesmoke;\n box-shadow: none;\n color: #7a7a7a; }\n #optimole-app .select select[disabled]::-moz-placeholder,\n fieldset[disabled] #optimole-app .select select::-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select[disabled]::-webkit-input-placeholder,\n fieldset[disabled] #optimole-app .select select::-webkit-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select[disabled]:-moz-placeholder,\n fieldset[disabled] #optimole-app .select select:-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select[disabled]:-ms-input-placeholder,\n fieldset[disabled] #optimole-app .select select:-ms-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select::-ms-expand {\n display: none; }\n #optimole-app .select select[disabled]:hover,\n fieldset[disabled] #optimole-app .select select:hover {\n border-color: whitesmoke; }\n #optimole-app .select select:not([multiple]) {\n padding-right: 2.5em; }\n #optimole-app .select select[multiple] {\n height: auto;\n padding: 0; }\n #optimole-app .select select[multiple] option {\n padding: 0.5em 1em; }\n #optimole-app .select:not(.is-multiple):not(.is-loading):hover::after {\n border-color: #363636; }\n #optimole-app .select.is-white:not(:hover)::after {\n border-color: white; }\n #optimole-app .select.is-white select {\n border-color: white; }\n #optimole-app .select.is-white select:hover, #optimole-app .select.is-white select.is-hovered {\n border-color: #f2f2f2; }\n #optimole-app .select.is-white select:focus, #optimole-app .select.is-white select.is-focused, #optimole-app .select.is-white select:active, #optimole-app .select.is-white select.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n #optimole-app .select.is-black:not(:hover)::after {\n border-color: #0a0a0a; }\n #optimole-app .select.is-black select {\n border-color: #0a0a0a; }\n #optimole-app .select.is-black select:hover, #optimole-app .select.is-black select.is-hovered {\n border-color: black; }\n #optimole-app .select.is-black select:focus, #optimole-app .select.is-black select.is-focused, #optimole-app .select.is-black select:active, #optimole-app .select.is-black select.is-active {\n box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); }\n #optimole-app .select.is-light:not(:hover)::after {\n border-color: whitesmoke; }\n #optimole-app .select.is-light select {\n border-color: whitesmoke; }\n #optimole-app .select.is-light select:hover, #optimole-app .select.is-light select.is-hovered {\n border-color: #e8e8e8; }\n #optimole-app .select.is-light select:focus, #optimole-app .select.is-light select.is-focused, #optimole-app .select.is-light select:active, #optimole-app .select.is-light select.is-active {\n box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); }\n #optimole-app .select.is-dark:not(:hover)::after {\n border-color: #363636; }\n #optimole-app .select.is-dark select {\n border-color: #363636; }\n #optimole-app .select.is-dark select:hover, #optimole-app .select.is-dark select.is-hovered {\n border-color: #292929; }\n #optimole-app .select.is-dark select:focus, #optimole-app .select.is-dark select.is-focused, #optimole-app .select.is-dark select:active, #optimole-app .select.is-dark select.is-active {\n box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); }\n #optimole-app .select.is-primary:not(:hover)::after {\n border-color: #EF686B; }\n #optimole-app .select.is-primary select {\n border-color: #EF686B; }\n #optimole-app .select.is-primary select:hover, #optimole-app .select.is-primary select.is-hovered {\n border-color: #ed5154; }\n #optimole-app .select.is-primary select:focus, #optimole-app .select.is-primary select.is-focused, #optimole-app .select.is-primary select:active, #optimole-app .select.is-primary select.is-active {\n box-shadow: 0 0 0 0.125em rgba(239, 104, 107, 0.25); }\n #optimole-app .select.is-link:not(:hover)::after {\n border-color: #3273dc; }\n #optimole-app .select.is-link select {\n border-color: #3273dc; }\n #optimole-app .select.is-link select:hover, #optimole-app .select.is-link select.is-hovered {\n border-color: #2366d1; }\n #optimole-app .select.is-link select:focus, #optimole-app .select.is-link select.is-focused, #optimole-app .select.is-link select:active, #optimole-app .select.is-link select.is-active {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .select.is-info:not(:hover)::after {\n border-color: #5180C1; }\n #optimole-app .select.is-info select {\n border-color: #5180C1; }\n #optimole-app .select.is-info select:hover, #optimole-app .select.is-info select.is-hovered {\n border-color: #4173b7; }\n #optimole-app .select.is-info select:focus, #optimole-app .select.is-info select.is-focused, #optimole-app .select.is-info select:active, #optimole-app .select.is-info select.is-active {\n box-shadow: 0 0 0 0.125em rgba(81, 128, 193, 0.25); }\n #optimole-app .select.is-success:not(:hover)::after {\n border-color: #34a85e; }\n #optimole-app .select.is-success select {\n border-color: #34a85e; }\n #optimole-app .select.is-success select:hover, #optimole-app .select.is-success select.is-hovered {\n border-color: #2e9553; }\n #optimole-app .select.is-success select:focus, #optimole-app .select.is-success select.is-focused, #optimole-app .select.is-success select:active, #optimole-app .select.is-success select.is-active {\n box-shadow: 0 0 0 0.125em rgba(52, 168, 94, 0.25); }\n #optimole-app .select.is-warning:not(:hover)::after {\n border-color: #ffdd57; }\n #optimole-app .select.is-warning select {\n border-color: #ffdd57; }\n #optimole-app .select.is-warning select:hover, #optimole-app .select.is-warning select.is-hovered {\n border-color: #ffd83d; }\n #optimole-app .select.is-warning select:focus, #optimole-app .select.is-warning select.is-focused, #optimole-app .select.is-warning select:active, #optimole-app .select.is-warning select.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); }\n #optimole-app .select.is-danger:not(:hover)::after {\n border-color: #D54222; }\n #optimole-app .select.is-danger select {\n border-color: #D54222; }\n #optimole-app .select.is-danger select:hover, #optimole-app .select.is-danger select.is-hovered {\n border-color: #bf3b1e; }\n #optimole-app .select.is-danger select:focus, #optimole-app .select.is-danger select.is-focused, #optimole-app .select.is-danger select:active, #optimole-app .select.is-danger select.is-active {\n box-shadow: 0 0 0 0.125em rgba(213, 66, 34, 0.25); }\n #optimole-app .select.is-small {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .select.is-medium {\n font-size: 1.25rem; }\n #optimole-app .select.is-large {\n font-size: 1.5rem; }\n #optimole-app .select.is-disabled::after {\n border-color: #7a7a7a; }\n #optimole-app .select.is-fullwidth {\n width: 100%; }\n #optimole-app .select.is-fullwidth select {\n width: 100%; }\n #optimole-app .select.is-loading::after {\n margin-top: 0;\n position: absolute;\n right: 0.625em;\n top: 0.625em;\n transform: none; }\n #optimole-app .select.is-loading.is-small:after {\n font-size: 0.75rem; }\n #optimole-app .select.is-loading.is-medium:after {\n font-size: 1.25rem; }\n #optimole-app .select.is-loading.is-large:after {\n font-size: 1.5rem; }\n #optimole-app .file {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start;\n position: relative; }\n #optimole-app .file.is-white .file-cta {\n background-color: white;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .file.is-white:hover .file-cta, #optimole-app .file.is-white.is-hovered .file-cta {\n background-color: #f9f9f9;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .file.is-white:focus .file-cta, #optimole-app .file.is-white.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.25);\n color: #0a0a0a; }\n #optimole-app .file.is-white:active .file-cta, #optimole-app .file.is-white.is-active .file-cta {\n background-color: #f2f2f2;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .file.is-black .file-cta {\n background-color: #0a0a0a;\n border-color: transparent;\n color: white; }\n #optimole-app .file.is-black:hover .file-cta, #optimole-app .file.is-black.is-hovered .file-cta {\n background-color: #040404;\n border-color: transparent;\n color: white; }\n #optimole-app .file.is-black:focus .file-cta, #optimole-app .file.is-black.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(10, 10, 10, 0.25);\n color: white; }\n #optimole-app .file.is-black:active .file-cta, #optimole-app .file.is-black.is-active .file-cta {\n background-color: black;\n border-color: transparent;\n color: white; }\n #optimole-app .file.is-light .file-cta {\n background-color: whitesmoke;\n border-color: transparent;\n color: #363636; }\n #optimole-app .file.is-light:hover .file-cta, #optimole-app .file.is-light.is-hovered .file-cta {\n background-color: #eeeeee;\n border-color: transparent;\n color: #363636; }\n #optimole-app .file.is-light:focus .file-cta, #optimole-app .file.is-light.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(245, 245, 245, 0.25);\n color: #363636; }\n #optimole-app .file.is-light:active .file-cta, #optimole-app .file.is-light.is-active .file-cta {\n background-color: #e8e8e8;\n border-color: transparent;\n color: #363636; }\n #optimole-app .file.is-dark .file-cta {\n background-color: #363636;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .file.is-dark:hover .file-cta, #optimole-app .file.is-dark.is-hovered .file-cta {\n background-color: #2f2f2f;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .file.is-dark:focus .file-cta, #optimole-app .file.is-dark.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(54, 54, 54, 0.25);\n color: whitesmoke; }\n #optimole-app .file.is-dark:active .file-cta, #optimole-app .file.is-dark.is-active .file-cta {\n background-color: #292929;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .file.is-primary .file-cta {\n background-color: #EF686B;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-primary:hover .file-cta, #optimole-app .file.is-primary.is-hovered .file-cta {\n background-color: #ee5c60;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-primary:focus .file-cta, #optimole-app .file.is-primary.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(239, 104, 107, 0.25);\n color: #fff; }\n #optimole-app .file.is-primary:active .file-cta, #optimole-app .file.is-primary.is-active .file-cta {\n background-color: #ed5154;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-link .file-cta {\n background-color: #3273dc;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-link:hover .file-cta, #optimole-app .file.is-link.is-hovered .file-cta {\n background-color: #276cda;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-link:focus .file-cta, #optimole-app .file.is-link.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(50, 115, 220, 0.25);\n color: #fff; }\n #optimole-app .file.is-link:active .file-cta, #optimole-app .file.is-link.is-active .file-cta {\n background-color: #2366d1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-info .file-cta {\n background-color: #5180C1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-info:hover .file-cta, #optimole-app .file.is-info.is-hovered .file-cta {\n background-color: #4879be;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-info:focus .file-cta, #optimole-app .file.is-info.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(81, 128, 193, 0.25);\n color: #fff; }\n #optimole-app .file.is-info:active .file-cta, #optimole-app .file.is-info.is-active .file-cta {\n background-color: #4173b7;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-success .file-cta {\n background-color: #34a85e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-success:hover .file-cta, #optimole-app .file.is-success.is-hovered .file-cta {\n background-color: #319e59;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-success:focus .file-cta, #optimole-app .file.is-success.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(52, 168, 94, 0.25);\n color: #fff; }\n #optimole-app .file.is-success:active .file-cta, #optimole-app .file.is-success.is-active .file-cta {\n background-color: #2e9553;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-warning .file-cta {\n background-color: #ffdd57;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-warning:hover .file-cta, #optimole-app .file.is-warning.is-hovered .file-cta {\n background-color: #ffdb4a;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-warning:focus .file-cta, #optimole-app .file.is-warning.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(255, 221, 87, 0.25);\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-warning:active .file-cta, #optimole-app .file.is-warning.is-active .file-cta {\n background-color: #ffd83d;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-danger .file-cta {\n background-color: #D54222;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-danger:hover .file-cta, #optimole-app .file.is-danger.is-hovered .file-cta {\n background-color: #ca3f20;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-danger:focus .file-cta, #optimole-app .file.is-danger.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(213, 66, 34, 0.25);\n color: #fff; }\n #optimole-app .file.is-danger:active .file-cta, #optimole-app .file.is-danger.is-active .file-cta {\n background-color: #bf3b1e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-small {\n font-size: 0.75rem; }\n #optimole-app .file.is-medium {\n font-size: 1.25rem; }\n #optimole-app .file.is-medium .file-icon .fa {\n font-size: 21px; }\n #optimole-app .file.is-large {\n font-size: 1.5rem; }\n #optimole-app .file.is-large .file-icon .fa {\n font-size: 28px; }\n #optimole-app .file.has-name .file-cta {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .file.has-name .file-name {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .file.has-name.is-empty .file-cta {\n border-radius: 4px; }\n #optimole-app .file.has-name.is-empty .file-name {\n display: none; }\n #optimole-app .file.is-boxed .file-label {\n -ms-flex-direction: column;\n flex-direction: column; }\n #optimole-app .file.is-boxed .file-cta {\n -ms-flex-direction: column;\n flex-direction: column;\n height: auto;\n padding: 1em 3em; }\n #optimole-app .file.is-boxed .file-name {\n border-width: 0 1px 1px; }\n #optimole-app .file.is-boxed .file-icon {\n height: 1.5em;\n width: 1.5em; }\n #optimole-app .file.is-boxed .file-icon .fa {\n font-size: 21px; }\n #optimole-app .file.is-boxed.is-small .file-icon .fa {\n font-size: 14px; }\n #optimole-app .file.is-boxed.is-medium .file-icon .fa {\n font-size: 28px; }\n #optimole-app .file.is-boxed.is-large .file-icon .fa {\n font-size: 35px; }\n #optimole-app .file.is-boxed.has-name .file-cta {\n border-radius: 4px 4px 0 0; }\n #optimole-app .file.is-boxed.has-name .file-name {\n border-radius: 0 0 4px 4px;\n border-width: 0 1px 1px; }\n #optimole-app .file.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .file.is-fullwidth .file-label {\n width: 100%; }\n #optimole-app .file.is-fullwidth .file-name {\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: none; }\n #optimole-app .file.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .file.is-right .file-cta {\n border-radius: 0 4px 4px 0; }\n #optimole-app .file.is-right .file-name {\n border-radius: 4px 0 0 4px;\n border-width: 1px 0 1px 1px;\n -ms-flex-order: -1;\n order: -1; }\n #optimole-app .file-label {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n cursor: pointer;\n -ms-flex-pack: start;\n justify-content: flex-start;\n overflow: hidden;\n position: relative; }\n #optimole-app .file-label:hover .file-cta {\n background-color: #eeeeee;\n color: #363636; }\n #optimole-app .file-label:hover .file-name {\n border-color: #d5d5d5; }\n #optimole-app .file-label:active .file-cta {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .file-label:active .file-name {\n border-color: #cfcfcf; }\n #optimole-app .file-input {\n height: 100%;\n left: 0;\n opacity: 0;\n outline: none;\n position: absolute;\n top: 0;\n width: 100%; }\n #optimole-app .file-cta,\n #optimole-app .file-name {\n border-color: #dbdbdb;\n border-radius: 4px;\n font-size: 1em;\n padding-left: 1em;\n padding-right: 1em;\n white-space: nowrap; }\n #optimole-app .file-cta {\n background-color: whitesmoke;\n color: #4a4a4a; }\n #optimole-app .file-name {\n border-color: #dbdbdb;\n border-style: solid;\n border-width: 1px 1px 1px 0;\n display: block;\n max-width: 16em;\n overflow: hidden;\n text-align: left;\n text-overflow: ellipsis; }\n #optimole-app .file-icon {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n height: 1em;\n -ms-flex-pack: center;\n justify-content: center;\n margin-right: 0.5em;\n width: 1em; }\n #optimole-app .file-icon .fa {\n font-size: 14px; }\n #optimole-app .label {\n color: #363636;\n display: block;\n font-size: 1rem;\n font-weight: 700; }\n #optimole-app .label:not(:last-child) {\n margin-bottom: 0.5em; }\n #optimole-app .label.is-small {\n font-size: 0.75rem; }\n #optimole-app .label.is-medium {\n font-size: 1.25rem; }\n #optimole-app .label.is-large {\n font-size: 1.5rem; }\n #optimole-app .help {\n display: block;\n font-size: 0.75rem;\n margin-top: 0.25rem; }\n #optimole-app .help.is-white {\n color: white; }\n #optimole-app .help.is-black {\n color: #0a0a0a; }\n #optimole-app .help.is-light {\n color: whitesmoke; }\n #optimole-app .help.is-dark {\n color: #363636; }\n #optimole-app .help.is-primary {\n color: #EF686B; }\n #optimole-app .help.is-link {\n color: #3273dc; }\n #optimole-app .help.is-info {\n color: #5180C1; }\n #optimole-app .help.is-success {\n color: #34a85e; }\n #optimole-app .help.is-warning {\n color: #ffdd57; }\n #optimole-app .help.is-danger {\n color: #D54222; }\n #optimole-app .field:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .field.has-addons {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .field.has-addons .control:not(:last-child) {\n margin-right: -1px; }\n #optimole-app .field.has-addons .control:not(:first-child):not(:last-child) .button,\n #optimole-app .field.has-addons .control:not(:first-child):not(:last-child) .input,\n #optimole-app .field.has-addons .control:not(:first-child):not(:last-child) .select select {\n border-radius: 0; }\n #optimole-app .field.has-addons .control:first-child:not(:only-child) .button,\n #optimole-app .field.has-addons .control:first-child:not(:only-child) .input,\n #optimole-app .field.has-addons .control:first-child:not(:only-child) .select select {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .field.has-addons .control:last-child:not(:only-child) .button,\n #optimole-app .field.has-addons .control:last-child:not(:only-child) .input,\n #optimole-app .field.has-addons .control:last-child:not(:only-child) .select select {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .field.has-addons .control .button:not([disabled]):hover, #optimole-app .field.has-addons .control .button:not([disabled]).is-hovered,\n #optimole-app .field.has-addons .control .input:not([disabled]):hover,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-hovered,\n #optimole-app .field.has-addons .control .select select:not([disabled]):hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-hovered {\n z-index: 2; }\n #optimole-app .field.has-addons .control .button:not([disabled]):focus, #optimole-app .field.has-addons .control .button:not([disabled]).is-focused, #optimole-app .field.has-addons .control .button:not([disabled]):active, #optimole-app .field.has-addons .control .button:not([disabled]).is-active,\n #optimole-app .field.has-addons .control .input:not([disabled]):focus,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-focused,\n #optimole-app .field.has-addons .control .input:not([disabled]):active,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-active,\n #optimole-app .field.has-addons .control .select select:not([disabled]):focus,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-focused,\n #optimole-app .field.has-addons .control .select select:not([disabled]):active,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-active {\n z-index: 3; }\n #optimole-app .field.has-addons .control .button:not([disabled]):focus:hover, #optimole-app .field.has-addons .control .button:not([disabled]).is-focused:hover, #optimole-app .field.has-addons .control .button:not([disabled]):active:hover, #optimole-app .field.has-addons .control .button:not([disabled]).is-active:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]):focus:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-focused:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]):active:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-active:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]):focus:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-focused:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]):active:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-active:hover {\n z-index: 4; }\n #optimole-app .field.has-addons .control.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n #optimole-app .field.has-addons.has-addons-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .field.has-addons.has-addons-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .field.has-addons.has-addons-fullwidth .control {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .field.is-grouped {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .field.is-grouped > .control {\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .field.is-grouped > .control:not(:last-child) {\n margin-bottom: 0;\n margin-right: 0.75rem; }\n #optimole-app .field.is-grouped > .control.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .field.is-grouped.is-grouped-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .field.is-grouped.is-grouped-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .field.is-grouped.is-grouped-multiline {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .field.is-grouped.is-grouped-multiline > .control:last-child, #optimole-app .field.is-grouped.is-grouped-multiline > .control:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .field.is-grouped.is-grouped-multiline:last-child {\n margin-bottom: -0.75rem; }\n #optimole-app .field.is-grouped.is-grouped-multiline:not(:last-child) {\n margin-bottom: 0; }\n @media screen and (min-width: 769px), print {\n #optimole-app .field.is-horizontal {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .field-label .label {\n font-size: inherit; }\n @media screen and (max-width: 768px) {\n #optimole-app .field-label {\n margin-bottom: 0.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .field-label {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-right: 1.5rem;\n text-align: right; }\n #optimole-app .field-label.is-small {\n font-size: 0.75rem;\n padding-top: 0.375em; }\n #optimole-app .field-label.is-normal {\n padding-top: 0.375em; }\n #optimole-app .field-label.is-medium {\n font-size: 1.25rem;\n padding-top: 0.375em; }\n #optimole-app .field-label.is-large {\n font-size: 1.5rem;\n padding-top: 0.375em; } }\n #optimole-app .field-body .field .field {\n margin-bottom: 0; }\n @media screen and (min-width: 769px), print {\n #optimole-app .field-body {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 5;\n flex-grow: 5;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .field-body .field {\n margin-bottom: 0; }\n #optimole-app .field-body > .field {\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .field-body > .field:not(.is-narrow) {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n #optimole-app .field-body > .field:not(:last-child) {\n margin-right: 0.75rem; } }\n #optimole-app .control {\n box-sizing: border-box;\n clear: both;\n font-size: 1rem;\n position: relative;\n text-align: left; }\n #optimole-app .control.has-icons-left .input:focus ~ .icon,\n #optimole-app .control.has-icons-left .select:focus ~ .icon, #optimole-app .control.has-icons-right .input:focus ~ .icon,\n #optimole-app .control.has-icons-right .select:focus ~ .icon {\n color: #7a7a7a; }\n #optimole-app .control.has-icons-left .input.is-small ~ .icon,\n #optimole-app .control.has-icons-left .select.is-small ~ .icon, #optimole-app .control.has-icons-right .input.is-small ~ .icon,\n #optimole-app .control.has-icons-right .select.is-small ~ .icon {\n font-size: 0.75rem; }\n #optimole-app .control.has-icons-left .input.is-medium ~ .icon,\n #optimole-app .control.has-icons-left .select.is-medium ~ .icon, #optimole-app .control.has-icons-right .input.is-medium ~ .icon,\n #optimole-app .control.has-icons-right .select.is-medium ~ .icon {\n font-size: 1.25rem; }\n #optimole-app .control.has-icons-left .input.is-large ~ .icon,\n #optimole-app .control.has-icons-left .select.is-large ~ .icon, #optimole-app .control.has-icons-right .input.is-large ~ .icon,\n #optimole-app .control.has-icons-right .select.is-large ~ .icon {\n font-size: 1.5rem; }\n #optimole-app .control.has-icons-left .icon, #optimole-app .control.has-icons-right .icon {\n color: #dbdbdb;\n height: 2.25em;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 2.25em;\n z-index: 4; }\n #optimole-app .control.has-icons-left .input,\n #optimole-app .control.has-icons-left .select select {\n padding-left: 2.25em; }\n #optimole-app .control.has-icons-left .icon.is-left {\n left: 0; }\n #optimole-app .control.has-icons-right .input,\n #optimole-app .control.has-icons-right .select select {\n padding-right: 2.25em; }\n #optimole-app .control.has-icons-right .icon.is-right {\n right: 0; }\n #optimole-app .control.is-loading::after {\n position: absolute !important;\n right: 0.625em;\n top: 0.625em;\n z-index: 4; }\n #optimole-app .control.is-loading.is-small:after {\n font-size: 0.75rem; }\n #optimole-app .control.is-loading.is-medium:after {\n font-size: 1.25rem; }\n #optimole-app .control.is-loading.is-large:after {\n font-size: 1.5rem; }\n #optimole-app .icon {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-pack: center;\n justify-content: center;\n height: 1.5rem;\n width: 1.5rem; }\n #optimole-app .icon.is-small {\n height: 1rem;\n width: 1rem; }\n #optimole-app .icon.is-medium {\n height: 2rem;\n width: 2rem; }\n #optimole-app .icon.is-large {\n height: 3rem;\n width: 3rem; }\n #optimole-app .image {\n display: block;\n position: relative; }\n #optimole-app .image img {\n display: block;\n height: auto;\n width: 100%; }\n #optimole-app .image img.is-rounded {\n border-radius: 290486px; }\n #optimole-app .image.is-square img,\n #optimole-app .image.is-square .has-ratio, #optimole-app .image.is-1by1 img,\n #optimole-app .image.is-1by1 .has-ratio, #optimole-app .image.is-5by4 img,\n #optimole-app .image.is-5by4 .has-ratio, #optimole-app .image.is-4by3 img,\n #optimole-app .image.is-4by3 .has-ratio, #optimole-app .image.is-3by2 img,\n #optimole-app .image.is-3by2 .has-ratio, #optimole-app .image.is-5by3 img,\n #optimole-app .image.is-5by3 .has-ratio, #optimole-app .image.is-16by9 img,\n #optimole-app .image.is-16by9 .has-ratio, #optimole-app .image.is-2by1 img,\n #optimole-app .image.is-2by1 .has-ratio, #optimole-app .image.is-3by1 img,\n #optimole-app .image.is-3by1 .has-ratio, #optimole-app .image.is-4by5 img,\n #optimole-app .image.is-4by5 .has-ratio, #optimole-app .image.is-3by4 img,\n #optimole-app .image.is-3by4 .has-ratio, #optimole-app .image.is-2by3 img,\n #optimole-app .image.is-2by3 .has-ratio, #optimole-app .image.is-3by5 img,\n #optimole-app .image.is-3by5 .has-ratio, #optimole-app .image.is-9by16 img,\n #optimole-app .image.is-9by16 .has-ratio, #optimole-app .image.is-1by2 img,\n #optimole-app .image.is-1by2 .has-ratio, #optimole-app .image.is-1by3 img,\n #optimole-app .image.is-1by3 .has-ratio {\n height: 100%;\n width: 100%; }\n #optimole-app .image.is-square, #optimole-app .image.is-1by1 {\n padding-top: 100%; }\n #optimole-app .image.is-5by4 {\n padding-top: 80%; }\n #optimole-app .image.is-4by3 {\n padding-top: 75%; }\n #optimole-app .image.is-3by2 {\n padding-top: 66.6666%; }\n #optimole-app .image.is-5by3 {\n padding-top: 60%; }\n #optimole-app .image.is-16by9 {\n padding-top: 56.25%; }\n #optimole-app .image.is-2by1 {\n padding-top: 50%; }\n #optimole-app .image.is-3by1 {\n padding-top: 33.3333%; }\n #optimole-app .image.is-4by5 {\n padding-top: 125%; }\n #optimole-app .image.is-3by4 {\n padding-top: 133.3333%; }\n #optimole-app .image.is-2by3 {\n padding-top: 150%; }\n #optimole-app .image.is-3by5 {\n padding-top: 166.6666%; }\n #optimole-app .image.is-9by16 {\n padding-top: 177.7777%; }\n #optimole-app .image.is-1by2 {\n padding-top: 200%; }\n #optimole-app .image.is-1by3 {\n padding-top: 300%; }\n #optimole-app .image.is-16x16 {\n height: 16px;\n width: 16px; }\n #optimole-app .image.is-24x24 {\n height: 24px;\n width: 24px; }\n #optimole-app .image.is-32x32 {\n height: 32px;\n width: 32px; }\n #optimole-app .image.is-48x48 {\n height: 48px;\n width: 48px; }\n #optimole-app .image.is-64x64 {\n height: 64px;\n width: 64px; }\n #optimole-app .image.is-96x96 {\n height: 96px;\n width: 96px; }\n #optimole-app .image.is-128x128 {\n height: 128px;\n width: 128px; }\n #optimole-app .notification {\n background-color: whitesmoke;\n border-radius: 4px;\n padding: 1.25rem 2.5rem 1.25rem 1.5rem;\n position: relative; }\n #optimole-app .notification a:not(.button):not(.dropdown-item) {\n color: currentColor;\n text-decoration: underline; }\n #optimole-app .notification strong {\n color: currentColor; }\n #optimole-app .notification code,\n #optimole-app .notification pre {\n background: white; }\n #optimole-app .notification pre code {\n background: transparent; }\n #optimole-app .notification > .delete {\n position: absolute;\n right: 0.5rem;\n top: 0.5rem; }\n #optimole-app .notification .title,\n #optimole-app .notification .subtitle,\n #optimole-app .notification .content {\n color: currentColor; }\n #optimole-app .notification.is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .notification.is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .notification.is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .notification.is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .notification.is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .notification.is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .notification.is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .notification.is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .notification.is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .notification.is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .progress {\n -moz-appearance: none;\n -webkit-appearance: none;\n border: none;\n border-radius: 290486px;\n display: block;\n height: 1rem;\n overflow: hidden;\n padding: 0;\n width: 100%; }\n #optimole-app .progress::-webkit-progress-bar {\n background-color: #dbdbdb; }\n #optimole-app .progress::-webkit-progress-value {\n background-color: #4a4a4a; }\n #optimole-app .progress::-moz-progress-bar {\n background-color: #4a4a4a; }\n #optimole-app .progress::-ms-fill {\n background-color: #4a4a4a;\n border: none; }\n #optimole-app .progress:indeterminate {\n animation-duration: 1.5s;\n animation-iteration-count: infinite;\n animation-name: moveIndeterminate;\n animation-timing-function: linear;\n background-color: #dbdbdb;\n background-image: linear-gradient(to right, #4a4a4a 30%, #dbdbdb 30%);\n background-position: top left;\n background-repeat: no-repeat;\n background-size: 150% 150%; }\n #optimole-app .progress:indeterminate::-webkit-progress-bar {\n background-color: transparent; }\n #optimole-app .progress:indeterminate::-moz-progress-bar {\n background-color: transparent; }\n #optimole-app .progress.is-white::-webkit-progress-value {\n background-color: white; }\n #optimole-app .progress.is-white::-moz-progress-bar {\n background-color: white; }\n #optimole-app .progress.is-white::-ms-fill {\n background-color: white; }\n #optimole-app .progress.is-white:indeterminate {\n background-image: linear-gradient(to right, white 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-black::-webkit-progress-value {\n background-color: #0a0a0a; }\n #optimole-app .progress.is-black::-moz-progress-bar {\n background-color: #0a0a0a; }\n #optimole-app .progress.is-black::-ms-fill {\n background-color: #0a0a0a; }\n #optimole-app .progress.is-black:indeterminate {\n background-image: linear-gradient(to right, #0a0a0a 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-light::-webkit-progress-value {\n background-color: whitesmoke; }\n #optimole-app .progress.is-light::-moz-progress-bar {\n background-color: whitesmoke; }\n #optimole-app .progress.is-light::-ms-fill {\n background-color: whitesmoke; }\n #optimole-app .progress.is-light:indeterminate {\n background-image: linear-gradient(to right, whitesmoke 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-dark::-webkit-progress-value {\n background-color: #363636; }\n #optimole-app .progress.is-dark::-moz-progress-bar {\n background-color: #363636; }\n #optimole-app .progress.is-dark::-ms-fill {\n background-color: #363636; }\n #optimole-app .progress.is-dark:indeterminate {\n background-image: linear-gradient(to right, #363636 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-primary::-webkit-progress-value {\n background-color: #EF686B; }\n #optimole-app .progress.is-primary::-moz-progress-bar {\n background-color: #EF686B; }\n #optimole-app .progress.is-primary::-ms-fill {\n background-color: #EF686B; }\n #optimole-app .progress.is-primary:indeterminate {\n background-image: linear-gradient(to right, #EF686B 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-link::-webkit-progress-value {\n background-color: #3273dc; }\n #optimole-app .progress.is-link::-moz-progress-bar {\n background-color: #3273dc; }\n #optimole-app .progress.is-link::-ms-fill {\n background-color: #3273dc; }\n #optimole-app .progress.is-link:indeterminate {\n background-image: linear-gradient(to right, #3273dc 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-info::-webkit-progress-value {\n background-color: #5180C1; }\n #optimole-app .progress.is-info::-moz-progress-bar {\n background-color: #5180C1; }\n #optimole-app .progress.is-info::-ms-fill {\n background-color: #5180C1; }\n #optimole-app .progress.is-info:indeterminate {\n background-image: linear-gradient(to right, #5180C1 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-success::-webkit-progress-value {\n background-color: #34a85e; }\n #optimole-app .progress.is-success::-moz-progress-bar {\n background-color: #34a85e; }\n #optimole-app .progress.is-success::-ms-fill {\n background-color: #34a85e; }\n #optimole-app .progress.is-success:indeterminate {\n background-image: linear-gradient(to right, #34a85e 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-warning::-webkit-progress-value {\n background-color: #ffdd57; }\n #optimole-app .progress.is-warning::-moz-progress-bar {\n background-color: #ffdd57; }\n #optimole-app .progress.is-warning::-ms-fill {\n background-color: #ffdd57; }\n #optimole-app .progress.is-warning:indeterminate {\n background-image: linear-gradient(to right, #ffdd57 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-danger::-webkit-progress-value {\n background-color: #D54222; }\n #optimole-app .progress.is-danger::-moz-progress-bar {\n background-color: #D54222; }\n #optimole-app .progress.is-danger::-ms-fill {\n background-color: #D54222; }\n #optimole-app .progress.is-danger:indeterminate {\n background-image: linear-gradient(to right, #D54222 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-small {\n height: 0.75rem; }\n #optimole-app .progress.is-medium {\n height: 1.25rem; }\n #optimole-app .progress.is-large {\n height: 1.5rem; }\n\n@keyframes moveIndeterminate {\n from {\n background-position: 200% 0; }\n to {\n background-position: -200% 0; } }\n #optimole-app .table {\n background-color: white;\n color: #363636; }\n #optimole-app .table td,\n #optimole-app .table th {\n border: 1px solid #dbdbdb;\n border-width: 0 0 1px;\n padding: 0.5em 0.75em;\n vertical-align: top; }\n #optimole-app .table td.is-white,\n #optimole-app .table th.is-white {\n background-color: white;\n border-color: white;\n color: #0a0a0a; }\n #optimole-app .table td.is-black,\n #optimole-app .table th.is-black {\n background-color: #0a0a0a;\n border-color: #0a0a0a;\n color: white; }\n #optimole-app .table td.is-light,\n #optimole-app .table th.is-light {\n background-color: whitesmoke;\n border-color: whitesmoke;\n color: #363636; }\n #optimole-app .table td.is-dark,\n #optimole-app .table th.is-dark {\n background-color: #363636;\n border-color: #363636;\n color: whitesmoke; }\n #optimole-app .table td.is-primary,\n #optimole-app .table th.is-primary {\n background-color: #EF686B;\n border-color: #EF686B;\n color: #fff; }\n #optimole-app .table td.is-link,\n #optimole-app .table th.is-link {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff; }\n #optimole-app .table td.is-info,\n #optimole-app .table th.is-info {\n background-color: #5180C1;\n border-color: #5180C1;\n color: #fff; }\n #optimole-app .table td.is-success,\n #optimole-app .table th.is-success {\n background-color: #34a85e;\n border-color: #34a85e;\n color: #fff; }\n #optimole-app .table td.is-warning,\n #optimole-app .table th.is-warning {\n background-color: #ffdd57;\n border-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .table td.is-danger,\n #optimole-app .table th.is-danger {\n background-color: #D54222;\n border-color: #D54222;\n color: #fff; }\n #optimole-app .table td.is-narrow,\n #optimole-app .table th.is-narrow {\n white-space: nowrap;\n width: 1%; }\n #optimole-app .table td.is-selected,\n #optimole-app .table th.is-selected {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .table td.is-selected a,\n #optimole-app .table td.is-selected strong,\n #optimole-app .table th.is-selected a,\n #optimole-app .table th.is-selected strong {\n color: currentColor; }\n #optimole-app .table th {\n color: #363636;\n text-align: left; }\n #optimole-app .table tr.is-selected {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .table tr.is-selected a,\n #optimole-app .table tr.is-selected strong {\n color: currentColor; }\n #optimole-app .table tr.is-selected td,\n #optimole-app .table tr.is-selected th {\n border-color: #fff;\n color: currentColor; }\n #optimole-app .table thead {\n background-color: transparent; }\n #optimole-app .table thead td,\n #optimole-app .table thead th {\n border-width: 0 0 2px;\n color: #363636; }\n #optimole-app .table tfoot {\n background-color: transparent; }\n #optimole-app .table tfoot td,\n #optimole-app .table tfoot th {\n border-width: 2px 0 0;\n color: #363636; }\n #optimole-app .table tbody {\n background-color: transparent; }\n #optimole-app .table tbody tr:last-child td,\n #optimole-app .table tbody tr:last-child th {\n border-bottom-width: 0; }\n #optimole-app .table.is-bordered td,\n #optimole-app .table.is-bordered th {\n border-width: 1px; }\n #optimole-app .table.is-bordered tr:last-child td,\n #optimole-app .table.is-bordered tr:last-child th {\n border-bottom-width: 1px; }\n #optimole-app .table.is-fullwidth {\n width: 100%; }\n #optimole-app .table.is-hoverable tbody tr:not(.is-selected):hover {\n background-color: #fafafa; }\n #optimole-app .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover {\n background-color: #fafafa; }\n #optimole-app .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) {\n background-color: whitesmoke; }\n #optimole-app .table.is-narrow td,\n #optimole-app .table.is-narrow th {\n padding: 0.25em 0.5em; }\n #optimole-app .table.is-striped tbody tr:not(.is-selected):nth-child(even) {\n background-color: #fafafa; }\n #optimole-app .table-container {\n -webkit-overflow-scrolling: touch;\n overflow: auto;\n overflow-y: hidden;\n max-width: 100%; }\n #optimole-app .tags {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .tags .tag {\n margin-bottom: 0.5rem; }\n #optimole-app .tags .tag:not(:last-child) {\n margin-right: 0.5rem; }\n #optimole-app .tags:last-child {\n margin-bottom: -0.5rem; }\n #optimole-app .tags:not(:last-child) {\n margin-bottom: 1rem; }\n #optimole-app .tags.are-medium .tag:not(.is-normal):not(.is-large) {\n font-size: 1rem; }\n #optimole-app .tags.are-large .tag:not(.is-normal):not(.is-medium) {\n font-size: 1.25rem; }\n #optimole-app .tags.has-addons .tag {\n margin-right: 0; }\n #optimole-app .tags.has-addons .tag:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .tags.has-addons .tag:not(:last-child) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .tags.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .tags.is-centered .tag {\n margin-right: 0.25rem;\n margin-left: 0.25rem; }\n #optimole-app .tags.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .tags.is-right .tag:not(:first-child) {\n margin-left: 0.5rem; }\n #optimole-app .tags.is-right .tag:not(:last-child) {\n margin-right: 0; }\n #optimole-app .tags.has-addons .tag {\n margin-right: 0; }\n #optimole-app .tags.has-addons .tag:not(:first-child) {\n margin-left: 0;\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .tags.has-addons .tag:not(:last-child) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .tag:not(body) {\n -ms-flex-align: center;\n align-items: center;\n background-color: whitesmoke;\n border-radius: 4px;\n color: #4a4a4a;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: 0.75rem;\n height: 2em;\n -ms-flex-pack: center;\n justify-content: center;\n line-height: 1.5;\n padding-left: 0.75em;\n padding-right: 0.75em;\n white-space: nowrap; }\n #optimole-app .tag:not(body) .delete {\n margin-left: 0.25rem;\n margin-right: -0.375rem; }\n #optimole-app .tag:not(body).is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .tag:not(body).is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .tag:not(body).is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .tag:not(body).is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .tag:not(body).is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .tag:not(body).is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .tag:not(body).is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .tag:not(body).is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .tag:not(body).is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .tag:not(body).is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .tag:not(body).is-normal {\n font-size: 0.75rem; }\n #optimole-app .tag:not(body).is-medium {\n font-size: 1rem; }\n #optimole-app .tag:not(body).is-large {\n font-size: 1.25rem; }\n #optimole-app .tag:not(body) .icon:first-child:not(:last-child) {\n margin-left: -0.375em;\n margin-right: 0.1875em; }\n #optimole-app .tag:not(body) .icon:last-child:not(:first-child) {\n margin-left: 0.1875em;\n margin-right: -0.375em; }\n #optimole-app .tag:not(body) .icon:first-child:last-child {\n margin-left: -0.375em;\n margin-right: -0.375em; }\n #optimole-app .tag:not(body).is-delete {\n margin-left: 1px;\n padding: 0;\n position: relative;\n width: 2em; }\n #optimole-app .tag:not(body).is-delete::before, #optimole-app .tag:not(body).is-delete::after {\n background-color: currentColor;\n content: "";\n display: block;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translateX(-50%) translateY(-50%) rotate(45deg);\n transform-origin: center center; }\n #optimole-app .tag:not(body).is-delete::before {\n height: 1px;\n width: 50%; }\n #optimole-app .tag:not(body).is-delete::after {\n height: 50%;\n width: 1px; }\n #optimole-app .tag:not(body).is-delete:hover, #optimole-app .tag:not(body).is-delete:focus {\n background-color: #e8e8e8; }\n #optimole-app .tag:not(body).is-delete:active {\n background-color: #dbdbdb; }\n #optimole-app .tag:not(body).is-rounded {\n border-radius: 290486px; }\n #optimole-app a.tag:hover {\n text-decoration: underline; }\n #optimole-app .title,\n #optimole-app .subtitle {\n word-break: break-word; }\n #optimole-app .title em,\n #optimole-app .title span,\n #optimole-app .subtitle em,\n #optimole-app .subtitle span {\n font-weight: inherit; }\n #optimole-app .title sub,\n #optimole-app .subtitle sub {\n font-size: 0.75em; }\n #optimole-app .title sup,\n #optimole-app .subtitle sup {\n font-size: 0.75em; }\n #optimole-app .title .tag,\n #optimole-app .subtitle .tag {\n vertical-align: middle; }\n #optimole-app .title {\n color: #363636;\n font-size: 2rem;\n font-weight: 600;\n line-height: 1.125; }\n #optimole-app .title strong {\n color: inherit;\n font-weight: inherit; }\n #optimole-app .title + .highlight {\n margin-top: -0.75rem; }\n #optimole-app .title:not(.is-spaced) + .subtitle {\n margin-top: -1.25rem; }\n #optimole-app .title.is-1 {\n font-size: 3rem; }\n #optimole-app .title.is-2 {\n font-size: 2.5rem; }\n #optimole-app .title.is-3 {\n font-size: 2rem; }\n #optimole-app .title.is-4 {\n font-size: 1.5rem; }\n #optimole-app .title.is-5 {\n font-size: 1.25rem; }\n #optimole-app .title.is-6 {\n font-size: 1rem; }\n #optimole-app .title.is-7 {\n font-size: 0.75rem; }\n #optimole-app .subtitle {\n color: #4a4a4a;\n font-size: 1.25rem;\n font-weight: 400;\n line-height: 1.25; }\n #optimole-app .subtitle strong {\n color: #363636;\n font-weight: 600; }\n #optimole-app .subtitle:not(.is-spaced) + .title {\n margin-top: -1.25rem; }\n #optimole-app .subtitle.is-1 {\n font-size: 3rem; }\n #optimole-app .subtitle.is-2 {\n font-size: 2.5rem; }\n #optimole-app .subtitle.is-3 {\n font-size: 2rem; }\n #optimole-app .subtitle.is-4 {\n font-size: 1.5rem; }\n #optimole-app .subtitle.is-5 {\n font-size: 1.25rem; }\n #optimole-app .subtitle.is-6 {\n font-size: 1rem; }\n #optimole-app .subtitle.is-7 {\n font-size: 0.75rem; }\n #optimole-app .heading {\n display: block;\n font-size: 11px;\n letter-spacing: 1px;\n margin-bottom: 5px;\n text-transform: uppercase; }\n #optimole-app .highlight {\n font-weight: 400;\n max-width: 100%;\n overflow: hidden;\n padding: 0; }\n #optimole-app .highlight pre {\n overflow: auto;\n max-width: 100%; }\n #optimole-app .number {\n -ms-flex-align: center;\n align-items: center;\n background-color: whitesmoke;\n border-radius: 290486px;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: 1.25rem;\n height: 2em;\n -ms-flex-pack: center;\n justify-content: center;\n margin-right: 1.5rem;\n min-width: 2.5em;\n padding: 0.25rem 0.5rem;\n text-align: center;\n vertical-align: top; }\n #optimole-app .breadcrumb {\n font-size: 1rem;\n white-space: nowrap; }\n #optimole-app .breadcrumb a {\n -ms-flex-align: center;\n align-items: center;\n color: #3273dc;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0 0.75em; }\n #optimole-app .breadcrumb a:hover {\n color: #363636; }\n #optimole-app .breadcrumb li {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .breadcrumb li:first-child a {\n padding-left: 0; }\n #optimole-app .breadcrumb li.is-active a {\n color: #363636;\n cursor: default;\n pointer-events: none; }\n #optimole-app .breadcrumb li + li::before {\n color: #b5b5b5;\n content: "/"; }\n #optimole-app .breadcrumb ul,\n #optimole-app .breadcrumb ol {\n -ms-flex-align: start;\n align-items: flex-start;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .breadcrumb .icon:first-child {\n margin-right: 0.5em; }\n #optimole-app .breadcrumb .icon:last-child {\n margin-left: 0.5em; }\n #optimole-app .breadcrumb.is-centered ol,\n #optimole-app .breadcrumb.is-centered ul {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .breadcrumb.is-right ol,\n #optimole-app .breadcrumb.is-right ul {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .breadcrumb.is-small {\n font-size: 0.75rem; }\n #optimole-app .breadcrumb.is-medium {\n font-size: 1.25rem; }\n #optimole-app .breadcrumb.is-large {\n font-size: 1.5rem; }\n #optimole-app .breadcrumb.has-arrow-separator li + li::before {\n content: "\\2192"; }\n #optimole-app .breadcrumb.has-bullet-separator li + li::before {\n content: "\\2022"; }\n #optimole-app .breadcrumb.has-dot-separator li + li::before {\n content: "\\B7"; }\n #optimole-app .breadcrumb.has-succeeds-separator li + li::before {\n content: "\\227B"; }\n #optimole-app .card {\n background-color: white;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n color: #4a4a4a;\n max-width: 100%;\n position: relative; }\n #optimole-app .card-header {\n background-color: transparent;\n -ms-flex-align: stretch;\n align-items: stretch;\n box-shadow: 0 1px 2px rgba(10, 10, 10, 0.1);\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .card-header-title {\n -ms-flex-align: center;\n align-items: center;\n color: #363636;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-positive: 1;\n flex-grow: 1;\n font-weight: 700;\n padding: 0.75rem; }\n #optimole-app .card-header-title.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .card-header-icon {\n -ms-flex-align: center;\n align-items: center;\n cursor: pointer;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0.75rem; }\n #optimole-app .card-image {\n display: block;\n position: relative; }\n #optimole-app .card-content {\n background-color: transparent;\n padding: 1.5rem; }\n #optimole-app .card-footer {\n background-color: transparent;\n border-top: 1px solid #dbdbdb;\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .card-footer-item {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0.75rem; }\n #optimole-app .card-footer-item:not(:last-child) {\n border-right: 1px solid #dbdbdb; }\n #optimole-app .card .media:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .dropdown {\n display: -ms-inline-flexbox;\n display: inline-flex;\n position: relative;\n vertical-align: top; }\n #optimole-app .dropdown.is-active .dropdown-menu, #optimole-app .dropdown.is-hoverable:hover .dropdown-menu {\n display: block; }\n #optimole-app .dropdown.is-right .dropdown-menu {\n left: auto;\n right: 0; }\n #optimole-app .dropdown.is-up .dropdown-menu {\n bottom: 100%;\n padding-bottom: 4px;\n padding-top: initial;\n top: auto; }\n #optimole-app .dropdown-menu {\n display: none;\n left: 0;\n min-width: 12rem;\n padding-top: 4px;\n position: absolute;\n top: 100%;\n z-index: 20; }\n #optimole-app .dropdown-content {\n background-color: white;\n border-radius: 4px;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n padding-bottom: 0.5rem;\n padding-top: 0.5rem; }\n #optimole-app .dropdown-item {\n color: #4a4a4a;\n display: block;\n font-size: 0.875rem;\n line-height: 1.5;\n padding: 0.375rem 1rem;\n position: relative; }\n #optimole-app a.dropdown-item,\n #optimole-app button.dropdown-item {\n padding-right: 3rem;\n text-align: left;\n white-space: nowrap;\n width: 100%; }\n #optimole-app a.dropdown-item:hover,\n #optimole-app button.dropdown-item:hover {\n background-color: whitesmoke;\n color: #0a0a0a; }\n #optimole-app a.dropdown-item.is-active,\n #optimole-app button.dropdown-item.is-active {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .dropdown-divider {\n background-color: #dbdbdb;\n border: none;\n display: block;\n height: 1px;\n margin: 0.5rem 0; }\n #optimole-app .level {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between; }\n #optimole-app .level code {\n border-radius: 4px; }\n #optimole-app .level img {\n display: inline-block;\n vertical-align: top; }\n #optimole-app .level.is-mobile {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .level.is-mobile .level-left,\n #optimole-app .level.is-mobile .level-right {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .level.is-mobile .level-left + .level-right {\n margin-top: 0; }\n #optimole-app .level.is-mobile .level-item:not(:last-child) {\n margin-bottom: 0;\n margin-right: 0.75rem; }\n #optimole-app .level.is-mobile .level-item:not(.is-narrow) {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n @media screen and (min-width: 769px), print {\n #optimole-app .level {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .level > .level-item:not(.is-narrow) {\n -ms-flex-positive: 1;\n flex-grow: 1; } }\n #optimole-app .level-item {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .level-item .title,\n #optimole-app .level-item .subtitle {\n margin-bottom: 0; }\n @media screen and (max-width: 768px) {\n #optimole-app .level-item:not(:last-child) {\n margin-bottom: 0.75rem; } }\n #optimole-app .level-left,\n #optimole-app .level-right {\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .level-left .level-item.is-flexible,\n #optimole-app .level-right .level-item.is-flexible {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n @media screen and (min-width: 769px), print {\n #optimole-app .level-left .level-item:not(:last-child),\n #optimole-app .level-right .level-item:not(:last-child) {\n margin-right: 0.75rem; } }\n #optimole-app .level-left {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n @media screen and (max-width: 768px) {\n #optimole-app .level-left + .level-right {\n margin-top: 1.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .level-left {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .level-right {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: end;\n justify-content: flex-end; }\n @media screen and (min-width: 769px), print {\n #optimole-app .level-right {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .list {\n background-color: white;\n border-radius: 4px;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); }\n #optimole-app .list-item {\n display: block;\n padding: 0.5em 1em; }\n #optimole-app .list-item:not(a) {\n color: #4a4a4a; }\n #optimole-app .list-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px; }\n #optimole-app .list-item:last-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px; }\n #optimole-app .list-item:not(:last-child) {\n border-bottom: 1px solid #dbdbdb; }\n #optimole-app .list-item.is-active {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app a.list-item {\n background-color: whitesmoke;\n cursor: pointer; }\n #optimole-app .media {\n -ms-flex-align: start;\n align-items: flex-start;\n display: -ms-flexbox;\n display: flex;\n text-align: left; }\n #optimole-app .media .content:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .media .media {\n border-top: 1px solid rgba(219, 219, 219, 0.5);\n display: -ms-flexbox;\n display: flex;\n padding-top: 0.75rem; }\n #optimole-app .media .media .content:not(:last-child),\n #optimole-app .media .media .control:not(:last-child) {\n margin-bottom: 0.5rem; }\n #optimole-app .media .media .media {\n padding-top: 0.5rem; }\n #optimole-app .media .media .media + .media {\n margin-top: 0.5rem; }\n #optimole-app .media + .media {\n border-top: 1px solid rgba(219, 219, 219, 0.5);\n margin-top: 1rem;\n padding-top: 1rem; }\n #optimole-app .media.is-large + .media {\n margin-top: 1.5rem;\n padding-top: 1.5rem; }\n #optimole-app .media-left,\n #optimole-app .media-right {\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .media-left {\n margin-right: 1rem; }\n #optimole-app .media-right {\n margin-left: 1rem; }\n #optimole-app .media-content {\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n text-align: left; }\n @media screen and (max-width: 768px) {\n #optimole-app .media-content {\n overflow-x: auto; } }\n #optimole-app .menu {\n font-size: 1rem; }\n #optimole-app .menu.is-small {\n font-size: 0.75rem; }\n #optimole-app .menu.is-medium {\n font-size: 1.25rem; }\n #optimole-app .menu.is-large {\n font-size: 1.5rem; }\n #optimole-app .menu-list {\n line-height: 1.25; }\n #optimole-app .menu-list a {\n border-radius: 2px;\n color: #4a4a4a;\n display: block;\n padding: 0.5em 0.75em; }\n #optimole-app .menu-list a:hover {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .menu-list a.is-active {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .menu-list li ul {\n border-left: 1px solid #dbdbdb;\n margin: 0.75em;\n padding-left: 0.75em; }\n #optimole-app .menu-label {\n color: #7a7a7a;\n font-size: 0.75em;\n letter-spacing: 0.1em;\n text-transform: uppercase; }\n #optimole-app .menu-label:not(:first-child) {\n margin-top: 1em; }\n #optimole-app .menu-label:not(:last-child) {\n margin-bottom: 1em; }\n #optimole-app .message {\n background-color: whitesmoke;\n border-radius: 4px;\n font-size: 1rem; }\n #optimole-app .message strong {\n color: currentColor; }\n #optimole-app .message a:not(.button):not(.tag):not(.dropdown-item) {\n color: currentColor;\n text-decoration: underline; }\n #optimole-app .message.is-small {\n font-size: 0.75rem; }\n #optimole-app .message.is-medium {\n font-size: 1.25rem; }\n #optimole-app .message.is-large {\n font-size: 1.5rem; }\n #optimole-app .message.is-white {\n background-color: white; }\n #optimole-app .message.is-white .message-header {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .message.is-white .message-body {\n border-color: white;\n color: #4d4d4d; }\n #optimole-app .message.is-black {\n background-color: #fafafa; }\n #optimole-app .message.is-black .message-header {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .message.is-black .message-body {\n border-color: #0a0a0a;\n color: #090909; }\n #optimole-app .message.is-light {\n background-color: #fafafa; }\n #optimole-app .message.is-light .message-header {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .message.is-light .message-body {\n border-color: whitesmoke;\n color: #505050; }\n #optimole-app .message.is-dark {\n background-color: #fafafa; }\n #optimole-app .message.is-dark .message-header {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .message.is-dark .message-body {\n border-color: #363636;\n color: #2a2a2a; }\n #optimole-app .message.is-primary {\n background-color: #fef6f6; }\n #optimole-app .message.is-primary .message-header {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .message.is-primary .message-body {\n border-color: #EF686B;\n color: #bd2124; }\n #optimole-app .message.is-link {\n background-color: #f6f9fe; }\n #optimole-app .message.is-link .message-header {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .message.is-link .message-body {\n border-color: #3273dc;\n color: #22509a; }\n #optimole-app .message.is-info {\n background-color: #f7fafc; }\n #optimole-app .message.is-info .message-header {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .message.is-info .message-body {\n border-color: #5180C1;\n color: #36537c; }\n #optimole-app .message.is-success {\n background-color: #f7fdf9; }\n #optimole-app .message.is-success .message-header {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .message.is-success .message-body {\n border-color: #34a85e;\n color: #1b432a; }\n #optimole-app .message.is-warning {\n background-color: #fffdf5; }\n #optimole-app .message.is-warning .message-header {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .message.is-warning .message-body {\n border-color: #ffdd57;\n color: #3b3108; }\n #optimole-app .message.is-danger {\n background-color: #fef8f6; }\n #optimole-app .message.is-danger .message-header {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .message.is-danger .message-body {\n border-color: #D54222;\n color: #8d311d; }\n #optimole-app .message-header {\n -ms-flex-align: center;\n align-items: center;\n background-color: #4a4a4a;\n border-radius: 4px 4px 0 0;\n color: #fff;\n display: -ms-flexbox;\n display: flex;\n font-weight: 700;\n -ms-flex-pack: justify;\n justify-content: space-between;\n line-height: 1.25;\n padding: 0.75em 1em;\n position: relative; }\n #optimole-app .message-header .delete {\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-left: 0.75em; }\n #optimole-app .message-header + .message-body {\n border-width: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .message-body {\n border-color: #dbdbdb;\n border-radius: 4px;\n border-style: solid;\n border-width: 0 0 0 4px;\n color: #4a4a4a;\n padding: 1.25em 1.5em; }\n #optimole-app .message-body code,\n #optimole-app .message-body pre {\n background-color: white; }\n #optimole-app .message-body pre code {\n background-color: transparent; }\n #optimole-app .modal {\n -ms-flex-align: center;\n align-items: center;\n display: none;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n overflow: hidden;\n position: fixed;\n z-index: 40; }\n #optimole-app .modal.is-active {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .modal-background {\n background-color: rgba(10, 10, 10, 0.86); }\n #optimole-app .modal-content,\n #optimole-app .modal-card {\n margin: 0 20px;\n max-height: calc(100vh - 160px);\n overflow: auto;\n position: relative;\n width: 100%; }\n @media screen and (min-width: 769px), print {\n #optimole-app .modal-content,\n #optimole-app .modal-card {\n margin: 0 auto;\n max-height: calc(100vh - 40px);\n width: 640px; } }\n #optimole-app .modal-close {\n background: none;\n height: 40px;\n position: fixed;\n right: 20px;\n top: 20px;\n width: 40px; }\n #optimole-app .modal-card {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n max-height: calc(100vh - 40px);\n overflow: hidden;\n -ms-overflow-y: visible; }\n #optimole-app .modal-card-head,\n #optimole-app .modal-card-foot {\n -ms-flex-align: center;\n align-items: center;\n background-color: whitesmoke;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: start;\n justify-content: flex-start;\n padding: 20px;\n position: relative; }\n #optimole-app .modal-card-head {\n border-bottom: 1px solid #dbdbdb;\n border-top-left-radius: 6px;\n border-top-right-radius: 6px; }\n #optimole-app .modal-card-title {\n color: #363636;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n font-size: 1.5rem;\n line-height: 1; }\n #optimole-app .modal-card-foot {\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n border-top: 1px solid #dbdbdb; }\n #optimole-app .modal-card-foot .button:not(:last-child) {\n margin-right: 10px; }\n #optimole-app .modal-card-body {\n -webkit-overflow-scrolling: touch;\n background-color: white;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n overflow: auto;\n padding: 20px; }\n #optimole-app .navbar {\n background-color: white;\n min-height: 3.25rem;\n position: relative;\n z-index: 30; }\n #optimole-app .navbar.is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-white .navbar-brand .navbar-link {\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-white .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-white .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-white .navbar-brand .navbar-link.is-active {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-brand .navbar-link::after {\n border-color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-burger {\n color: #0a0a0a; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-white .navbar-start > .navbar-item,\n #optimole-app .navbar.is-white .navbar-start .navbar-link,\n #optimole-app .navbar.is-white .navbar-end > .navbar-item,\n #optimole-app .navbar.is-white .navbar-end .navbar-link {\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-white .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-white .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-white .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-white .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-white .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-white .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-white .navbar-end .navbar-link.is-active {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-white .navbar-end .navbar-link::after {\n border-color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-dropdown a.navbar-item.is-active {\n background-color: white;\n color: #0a0a0a; } }\n #optimole-app .navbar.is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .navbar.is-black .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-black .navbar-brand .navbar-link {\n color: white; }\n #optimole-app .navbar.is-black .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-black .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-black .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-black .navbar-brand .navbar-link.is-active {\n background-color: black;\n color: white; }\n #optimole-app .navbar.is-black .navbar-brand .navbar-link::after {\n border-color: white; }\n #optimole-app .navbar.is-black .navbar-burger {\n color: white; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-black .navbar-start > .navbar-item,\n #optimole-app .navbar.is-black .navbar-start .navbar-link,\n #optimole-app .navbar.is-black .navbar-end > .navbar-item,\n #optimole-app .navbar.is-black .navbar-end .navbar-link {\n color: white; }\n #optimole-app .navbar.is-black .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-black .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-black .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-black .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-black .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-black .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-black .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-black .navbar-end .navbar-link.is-active {\n background-color: black;\n color: white; }\n #optimole-app .navbar.is-black .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-black .navbar-end .navbar-link::after {\n border-color: white; }\n #optimole-app .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: black;\n color: white; }\n #optimole-app .navbar.is-black .navbar-dropdown a.navbar-item.is-active {\n background-color: #0a0a0a;\n color: white; } }\n #optimole-app .navbar.is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-light .navbar-brand .navbar-link {\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-light .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-light .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-light .navbar-brand .navbar-link.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-brand .navbar-link::after {\n border-color: #363636; }\n #optimole-app .navbar.is-light .navbar-burger {\n color: #363636; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-light .navbar-start > .navbar-item,\n #optimole-app .navbar.is-light .navbar-start .navbar-link,\n #optimole-app .navbar.is-light .navbar-end > .navbar-item,\n #optimole-app .navbar.is-light .navbar-end .navbar-link {\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-light .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-light .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-light .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-light .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-light .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-light .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-light .navbar-end .navbar-link.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-light .navbar-end .navbar-link::after {\n border-color: #363636; }\n #optimole-app .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-dropdown a.navbar-item.is-active {\n background-color: whitesmoke;\n color: #363636; } }\n #optimole-app .navbar.is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link {\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-dark .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link.is-active {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link::after {\n border-color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-burger {\n color: whitesmoke; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-dark .navbar-start > .navbar-item,\n #optimole-app .navbar.is-dark .navbar-start .navbar-link,\n #optimole-app .navbar.is-dark .navbar-end > .navbar-item,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link {\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-dark .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-dark .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-dark .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-dark .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-dark .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link.is-active {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link::after {\n border-color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-dropdown a.navbar-item.is-active {\n background-color: #363636;\n color: whitesmoke; } }\n #optimole-app .navbar.is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-primary .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link.is-active {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-primary .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-primary .navbar-start > .navbar-item,\n #optimole-app .navbar.is-primary .navbar-start .navbar-link,\n #optimole-app .navbar.is-primary .navbar-end > .navbar-item,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-primary .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-primary .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-primary .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-primary .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-primary .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link.is-active {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-dropdown a.navbar-item.is-active {\n background-color: #EF686B;\n color: #fff; } }\n #optimole-app .navbar.is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-link .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-link .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-link .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-link .navbar-brand .navbar-link.is-active {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-link .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-link .navbar-start > .navbar-item,\n #optimole-app .navbar.is-link .navbar-start .navbar-link,\n #optimole-app .navbar.is-link .navbar-end > .navbar-item,\n #optimole-app .navbar.is-link .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-link .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-link .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-link .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-link .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-link .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-link .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-link .navbar-end .navbar-link.is-active {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-link .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-dropdown a.navbar-item.is-active {\n background-color: #3273dc;\n color: #fff; } }\n #optimole-app .navbar.is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-info .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-info .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-info .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-info .navbar-brand .navbar-link.is-active {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-info .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-info .navbar-start > .navbar-item,\n #optimole-app .navbar.is-info .navbar-start .navbar-link,\n #optimole-app .navbar.is-info .navbar-end > .navbar-item,\n #optimole-app .navbar.is-info .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-info .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-info .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-info .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-info .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-info .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-info .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-info .navbar-end .navbar-link.is-active {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-info .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-dropdown a.navbar-item.is-active {\n background-color: #5180C1;\n color: #fff; } }\n #optimole-app .navbar.is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-success .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-success .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-success .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-success .navbar-brand .navbar-link.is-active {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-success .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-success .navbar-start > .navbar-item,\n #optimole-app .navbar.is-success .navbar-start .navbar-link,\n #optimole-app .navbar.is-success .navbar-end > .navbar-item,\n #optimole-app .navbar.is-success .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-success .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-success .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-success .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-success .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-success .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-success .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-success .navbar-end .navbar-link.is-active {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-success .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-dropdown a.navbar-item.is-active {\n background-color: #34a85e;\n color: #fff; } }\n #optimole-app .navbar.is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-warning .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link.is-active {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link::after {\n border-color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-burger {\n color: rgba(0, 0, 0, 0.7); }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-warning .navbar-start > .navbar-item,\n #optimole-app .navbar.is-warning .navbar-start .navbar-link,\n #optimole-app .navbar.is-warning .navbar-end > .navbar-item,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-warning .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-warning .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-warning .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-warning .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-warning .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link.is-active {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link::after {\n border-color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-dropdown a.navbar-item.is-active {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); } }\n #optimole-app .navbar.is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-danger .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link.is-active {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-danger .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-danger .navbar-start > .navbar-item,\n #optimole-app .navbar.is-danger .navbar-start .navbar-link,\n #optimole-app .navbar.is-danger .navbar-end > .navbar-item,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-danger .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-danger .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-danger .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-danger .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-danger .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link.is-active {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-dropdown a.navbar-item.is-active {\n background-color: #D54222;\n color: #fff; } }\n #optimole-app .navbar > .container {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n min-height: 3.25rem;\n width: 100%; }\n #optimole-app .navbar.has-shadow {\n box-shadow: 0 2px 0 0 whitesmoke; }\n #optimole-app .navbar.is-fixed-bottom, #optimole-app .navbar.is-fixed-top {\n left: 0;\n position: fixed;\n right: 0;\n z-index: 30; }\n #optimole-app .navbar.is-fixed-bottom {\n bottom: 0; }\n #optimole-app .navbar.is-fixed-bottom.has-shadow {\n box-shadow: 0 -2px 0 0 whitesmoke; }\n #optimole-app .navbar.is-fixed-top {\n top: 0; }\n #optimole-app html.has-navbar-fixed-top,\n #optimole-app body.has-navbar-fixed-top {\n padding-top: 3.25rem; }\n #optimole-app html.has-navbar-fixed-bottom,\n #optimole-app body.has-navbar-fixed-bottom {\n padding-bottom: 3.25rem; }\n #optimole-app .navbar-brand,\n #optimole-app .navbar-tabs {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n min-height: 3.25rem; }\n #optimole-app .navbar-brand a.navbar-item:hover {\n background-color: transparent; }\n #optimole-app .navbar-tabs {\n -webkit-overflow-scrolling: touch;\n max-width: 100vw;\n overflow-x: auto;\n overflow-y: hidden; }\n #optimole-app .navbar-burger {\n color: #4a4a4a;\n cursor: pointer;\n display: block;\n height: 3.25rem;\n position: relative;\n width: 3.25rem;\n margin-left: auto; }\n #optimole-app .navbar-burger span {\n background-color: currentColor;\n display: block;\n height: 1px;\n left: calc(50% - 8px);\n position: absolute;\n transform-origin: center;\n transition-duration: 86ms;\n transition-property: background-color, opacity, transform;\n transition-timing-function: ease-out;\n width: 16px; }\n #optimole-app .navbar-burger span:nth-child(1) {\n top: calc(50% - 6px); }\n #optimole-app .navbar-burger span:nth-child(2) {\n top: calc(50% - 1px); }\n #optimole-app .navbar-burger span:nth-child(3) {\n top: calc(50% + 4px); }\n #optimole-app .navbar-burger:hover {\n background-color: rgba(0, 0, 0, 0.05); }\n #optimole-app .navbar-burger.is-active span:nth-child(1) {\n transform: translateY(5px) rotate(45deg); }\n #optimole-app .navbar-burger.is-active span:nth-child(2) {\n opacity: 0; }\n #optimole-app .navbar-burger.is-active span:nth-child(3) {\n transform: translateY(-5px) rotate(-45deg); }\n #optimole-app .navbar-menu {\n display: none; }\n #optimole-app .navbar-item,\n #optimole-app .navbar-link {\n color: #4a4a4a;\n display: block;\n line-height: 1.5;\n padding: 0.5rem 0.75rem;\n position: relative; }\n #optimole-app .navbar-item .icon:only-child,\n #optimole-app .navbar-link .icon:only-child {\n margin-left: -0.25rem;\n margin-right: -0.25rem; }\n #optimole-app a.navbar-item,\n #optimole-app .navbar-link {\n cursor: pointer; }\n #optimole-app a.navbar-item:hover, #optimole-app a.navbar-item.is-active,\n #optimole-app .navbar-link:hover,\n #optimole-app .navbar-link.is-active {\n background-color: #fafafa;\n color: #3273dc; }\n #optimole-app .navbar-item {\n display: block;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .navbar-item img {\n max-height: 1.75rem; }\n #optimole-app .navbar-item.has-dropdown {\n padding: 0; }\n #optimole-app .navbar-item.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .navbar-item.is-tab {\n border-bottom: 1px solid transparent;\n min-height: 3.25rem;\n padding-bottom: calc(0.5rem - 1px); }\n #optimole-app .navbar-item.is-tab:hover {\n background-color: transparent;\n border-bottom-color: #3273dc; }\n #optimole-app .navbar-item.is-tab.is-active {\n background-color: transparent;\n border-bottom-color: #3273dc;\n border-bottom-style: solid;\n border-bottom-width: 3px;\n color: #3273dc;\n padding-bottom: calc(0.5rem - 3px); }\n #optimole-app .navbar-content {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .navbar-link:not(.is-arrowless) {\n padding-right: 2.5em; }\n #optimole-app .navbar-link:not(.is-arrowless)::after {\n border-color: #3273dc;\n margin-top: -0.375em;\n right: 1.125em; }\n #optimole-app .navbar-dropdown {\n font-size: 0.875rem;\n padding-bottom: 0.5rem;\n padding-top: 0.5rem; }\n #optimole-app .navbar-dropdown .navbar-item {\n padding-left: 1.5rem;\n padding-right: 1.5rem; }\n #optimole-app .navbar-divider {\n background-color: whitesmoke;\n border: none;\n display: none;\n height: 2px;\n margin: 0.5rem 0; }\n @media screen and (max-width: 1087px) {\n #optimole-app .navbar > .container {\n display: block; }\n #optimole-app .navbar-brand .navbar-item,\n #optimole-app .navbar-tabs .navbar-item {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar-link::after {\n display: none; }\n #optimole-app .navbar-menu {\n background-color: white;\n box-shadow: 0 8px 16px rgba(10, 10, 10, 0.1);\n padding: 0.5rem 0; }\n #optimole-app .navbar-menu.is-active {\n display: block; }\n #optimole-app .navbar.is-fixed-bottom-touch, #optimole-app .navbar.is-fixed-top-touch {\n left: 0;\n position: fixed;\n right: 0;\n z-index: 30; }\n #optimole-app .navbar.is-fixed-bottom-touch {\n bottom: 0; }\n #optimole-app .navbar.is-fixed-bottom-touch.has-shadow {\n box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); }\n #optimole-app .navbar.is-fixed-top-touch {\n top: 0; }\n #optimole-app .navbar.is-fixed-top .navbar-menu, #optimole-app .navbar.is-fixed-top-touch .navbar-menu {\n -webkit-overflow-scrolling: touch;\n max-height: calc(100vh - 3.25rem);\n overflow: auto; }\n #optimole-app html.has-navbar-fixed-top-touch,\n #optimole-app body.has-navbar-fixed-top-touch {\n padding-top: 3.25rem; }\n #optimole-app html.has-navbar-fixed-bottom-touch,\n #optimole-app body.has-navbar-fixed-bottom-touch {\n padding-bottom: 3.25rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar,\n #optimole-app .navbar-menu,\n #optimole-app .navbar-start,\n #optimole-app .navbar-end {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar {\n min-height: 3.25rem; }\n #optimole-app .navbar.is-spaced {\n padding: 1rem 2rem; }\n #optimole-app .navbar.is-spaced .navbar-start,\n #optimole-app .navbar.is-spaced .navbar-end {\n -ms-flex-align: center;\n align-items: center; }\n #optimole-app .navbar.is-spaced a.navbar-item,\n #optimole-app .navbar.is-spaced .navbar-link {\n border-radius: 4px; }\n #optimole-app .navbar.is-transparent a.navbar-item:hover, #optimole-app .navbar.is-transparent a.navbar-item.is-active,\n #optimole-app .navbar.is-transparent .navbar-link:hover,\n #optimole-app .navbar.is-transparent .navbar-link.is-active {\n background-color: transparent !important; }\n #optimole-app .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link, #optimole-app .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link {\n background-color: transparent !important; }\n #optimole-app .navbar.is-transparent .navbar-dropdown a.navbar-item:hover {\n background-color: whitesmoke;\n color: #0a0a0a; }\n #optimole-app .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active {\n background-color: whitesmoke;\n color: #3273dc; }\n #optimole-app .navbar-burger {\n display: none; }\n #optimole-app .navbar-item,\n #optimole-app .navbar-link {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar-item {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar-item.has-dropdown {\n -ms-flex-align: stretch;\n align-items: stretch; }\n #optimole-app .navbar-item.has-dropdown-up .navbar-link::after {\n transform: rotate(135deg) translate(0.25em, -0.25em); }\n #optimole-app .navbar-item.has-dropdown-up .navbar-dropdown {\n border-bottom: 2px solid #dbdbdb;\n border-radius: 6px 6px 0 0;\n border-top: none;\n bottom: 100%;\n box-shadow: 0 -8px 8px rgba(10, 10, 10, 0.1);\n top: auto; }\n #optimole-app .navbar-item.is-active .navbar-dropdown, #optimole-app .navbar-item.is-hoverable:hover .navbar-dropdown {\n display: block; }\n .navbar.is-spaced #optimole-app .navbar-item.is-active .navbar-dropdown, #optimole-app .navbar-item.is-active .navbar-dropdown.is-boxed, .navbar.is-spaced #optimole-app .navbar-item.is-hoverable:hover .navbar-dropdown, #optimole-app .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed {\n opacity: 1;\n pointer-events: auto;\n transform: translateY(0); }\n #optimole-app .navbar-menu {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .navbar-start {\n -ms-flex-pack: start;\n justify-content: flex-start;\n margin-right: auto; }\n #optimole-app .navbar-end {\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-left: auto; }\n #optimole-app .navbar-dropdown {\n background-color: white;\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n border-top: 2px solid #dbdbdb;\n box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1);\n display: none;\n font-size: 0.875rem;\n left: 0;\n min-width: 100%;\n position: absolute;\n top: 100%;\n z-index: 20; }\n #optimole-app .navbar-dropdown .navbar-item {\n padding: 0.375rem 1rem;\n white-space: nowrap; }\n #optimole-app .navbar-dropdown a.navbar-item {\n padding-right: 3rem; }\n #optimole-app .navbar-dropdown a.navbar-item:hover {\n background-color: whitesmoke;\n color: #0a0a0a; }\n #optimole-app .navbar-dropdown a.navbar-item.is-active {\n background-color: whitesmoke;\n color: #3273dc; }\n .navbar.is-spaced #optimole-app .navbar-dropdown, #optimole-app .navbar-dropdown.is-boxed {\n border-radius: 6px;\n border-top: none;\n box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n display: block;\n opacity: 0;\n pointer-events: none;\n top: calc(100% + (-4px));\n transform: translateY(-5px);\n transition-duration: 86ms;\n transition-property: opacity, transform; }\n #optimole-app .navbar-dropdown.is-right {\n left: auto;\n right: 0; }\n #optimole-app .navbar-divider {\n display: block; }\n #optimole-app .navbar > .container .navbar-brand,\n #optimole-app .container > .navbar .navbar-brand {\n margin-left: -.75rem; }\n #optimole-app .navbar > .container .navbar-menu,\n #optimole-app .container > .navbar .navbar-menu {\n margin-right: -.75rem; }\n #optimole-app .navbar.is-fixed-bottom-desktop, #optimole-app .navbar.is-fixed-top-desktop {\n left: 0;\n position: fixed;\n right: 0;\n z-index: 30; }\n #optimole-app .navbar.is-fixed-bottom-desktop {\n bottom: 0; }\n #optimole-app .navbar.is-fixed-bottom-desktop.has-shadow {\n box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); }\n #optimole-app .navbar.is-fixed-top-desktop {\n top: 0; }\n #optimole-app html.has-navbar-fixed-top-desktop,\n #optimole-app body.has-navbar-fixed-top-desktop {\n padding-top: 3.25rem; }\n #optimole-app html.has-navbar-fixed-bottom-desktop,\n #optimole-app body.has-navbar-fixed-bottom-desktop {\n padding-bottom: 3.25rem; }\n #optimole-app html.has-spaced-navbar-fixed-top,\n #optimole-app body.has-spaced-navbar-fixed-top {\n padding-top: 5.25rem; }\n #optimole-app html.has-spaced-navbar-fixed-bottom,\n #optimole-app body.has-spaced-navbar-fixed-bottom {\n padding-bottom: 5.25rem; }\n #optimole-app a.navbar-item.is-active,\n #optimole-app .navbar-link.is-active {\n color: #0a0a0a; }\n #optimole-app a.navbar-item.is-active:not(:hover),\n #optimole-app .navbar-link.is-active:not(:hover) {\n background-color: transparent; }\n #optimole-app .navbar-item.has-dropdown:hover .navbar-link, #optimole-app .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #fafafa; } }\n #optimole-app .hero.is-fullheight-with-navbar {\n min-height: calc(100vh - 3.25rem); }\n #optimole-app .pagination {\n font-size: 1rem;\n margin: -0.25rem; }\n #optimole-app .pagination.is-small {\n font-size: 0.75rem; }\n #optimole-app .pagination.is-medium {\n font-size: 1.25rem; }\n #optimole-app .pagination.is-large {\n font-size: 1.5rem; }\n #optimole-app .pagination.is-rounded .pagination-previous,\n #optimole-app .pagination.is-rounded .pagination-next {\n padding-left: 1em;\n padding-right: 1em;\n border-radius: 290486px; }\n #optimole-app .pagination.is-rounded .pagination-link {\n border-radius: 290486px; }\n #optimole-app .pagination,\n #optimole-app .pagination-list {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n text-align: center; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link,\n #optimole-app .pagination-ellipsis {\n font-size: 1em;\n padding-left: 0.5em;\n padding-right: 0.5em;\n -ms-flex-pack: center;\n justify-content: center;\n margin: 0.25rem;\n text-align: center; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link {\n border-color: #dbdbdb;\n color: #363636;\n min-width: 2.25em; }\n #optimole-app .pagination-previous:hover,\n #optimole-app .pagination-next:hover,\n #optimole-app .pagination-link:hover {\n border-color: #b5b5b5;\n color: #363636; }\n #optimole-app .pagination-previous:focus,\n #optimole-app .pagination-next:focus,\n #optimole-app .pagination-link:focus {\n border-color: #3273dc; }\n #optimole-app .pagination-previous:active,\n #optimole-app .pagination-next:active,\n #optimole-app .pagination-link:active {\n box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2); }\n #optimole-app .pagination-previous[disabled],\n #optimole-app .pagination-next[disabled],\n #optimole-app .pagination-link[disabled] {\n background-color: #dbdbdb;\n border-color: #dbdbdb;\n box-shadow: none;\n color: #7a7a7a;\n opacity: 0.5; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next {\n padding-left: 0.75em;\n padding-right: 0.75em;\n white-space: nowrap; }\n #optimole-app .pagination-link.is-current {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff; }\n #optimole-app .pagination-ellipsis {\n color: #b5b5b5;\n pointer-events: none; }\n #optimole-app .pagination-list {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n @media screen and (max-width: 768px) {\n #optimole-app .pagination {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .pagination-list li {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .pagination-list {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n -ms-flex-pack: start;\n justify-content: flex-start;\n -ms-flex-order: 1;\n order: 1; }\n #optimole-app .pagination-previous {\n -ms-flex-order: 2;\n order: 2; }\n #optimole-app .pagination-next {\n -ms-flex-order: 3;\n order: 3; }\n #optimole-app .pagination {\n -ms-flex-pack: justify;\n justify-content: space-between; }\n #optimole-app .pagination.is-centered .pagination-previous {\n -ms-flex-order: 1;\n order: 1; }\n #optimole-app .pagination.is-centered .pagination-list {\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-order: 2;\n order: 2; }\n #optimole-app .pagination.is-centered .pagination-next {\n -ms-flex-order: 3;\n order: 3; }\n #optimole-app .pagination.is-right .pagination-previous {\n -ms-flex-order: 1;\n order: 1; }\n #optimole-app .pagination.is-right .pagination-next {\n -ms-flex-order: 2;\n order: 2; }\n #optimole-app .pagination.is-right .pagination-list {\n -ms-flex-pack: end;\n justify-content: flex-end;\n -ms-flex-order: 3;\n order: 3; } }\n #optimole-app .panel {\n font-size: 1rem; }\n #optimole-app .panel:not(:last-child) {\n margin-bottom: 1.5rem; }\n #optimole-app .panel-heading,\n #optimole-app .panel-tabs,\n #optimole-app .panel-block {\n border-bottom: 1px solid #dbdbdb;\n border-left: 1px solid #dbdbdb;\n border-right: 1px solid #dbdbdb; }\n #optimole-app .panel-heading:first-child,\n #optimole-app .panel-tabs:first-child,\n #optimole-app .panel-block:first-child {\n border-top: 1px solid #dbdbdb; }\n #optimole-app .panel-heading {\n background-color: whitesmoke;\n border-radius: 4px 4px 0 0;\n color: #363636;\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1.25;\n padding: 0.5em 0.75em; }\n #optimole-app .panel-tabs {\n -ms-flex-align: end;\n align-items: flex-end;\n display: -ms-flexbox;\n display: flex;\n font-size: 0.875em;\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .panel-tabs a {\n border-bottom: 1px solid #dbdbdb;\n margin-bottom: -1px;\n padding: 0.5em; }\n #optimole-app .panel-tabs a.is-active {\n border-bottom-color: #4a4a4a;\n color: #363636; }\n #optimole-app .panel-list a {\n color: #4a4a4a; }\n #optimole-app .panel-list a:hover {\n color: #3273dc; }\n #optimole-app .panel-block {\n -ms-flex-align: center;\n align-items: center;\n color: #363636;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start;\n padding: 0.5em 0.75em; }\n #optimole-app .panel-block input[type="checkbox"] {\n margin-right: 0.75em; }\n #optimole-app .panel-block > .control {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n width: 100%; }\n #optimole-app .panel-block.is-wrapped {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .panel-block.is-active {\n border-left-color: #3273dc;\n color: #363636; }\n #optimole-app .panel-block.is-active .panel-icon {\n color: #3273dc; }\n #optimole-app a.panel-block,\n #optimole-app label.panel-block {\n cursor: pointer; }\n #optimole-app a.panel-block:hover,\n #optimole-app label.panel-block:hover {\n background-color: whitesmoke; }\n #optimole-app .panel-icon {\n display: inline-block;\n font-size: 14px;\n height: 1em;\n line-height: 1em;\n text-align: center;\n vertical-align: top;\n width: 1em;\n color: #7a7a7a;\n margin-right: 0.75em; }\n #optimole-app .panel-icon .fa {\n font-size: inherit;\n line-height: inherit; }\n #optimole-app .tabs {\n -webkit-overflow-scrolling: touch;\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n font-size: 1rem;\n -ms-flex-pack: justify;\n justify-content: space-between;\n overflow: hidden;\n overflow-x: auto;\n white-space: nowrap; }\n #optimole-app .tabs a {\n -ms-flex-align: center;\n align-items: center;\n border-bottom-color: #dbdbdb;\n border-bottom-style: solid;\n border-bottom-width: 1px;\n color: #4a4a4a;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n margin-bottom: -1px;\n padding: 0.5em 1em;\n vertical-align: top; }\n #optimole-app .tabs a:hover {\n border-bottom-color: #363636;\n color: #363636; }\n #optimole-app .tabs li {\n display: block; }\n #optimole-app .tabs li.is-active a {\n border-bottom-color: #3273dc;\n color: #3273dc; }\n #optimole-app .tabs ul {\n -ms-flex-align: center;\n align-items: center;\n border-bottom-color: #dbdbdb;\n border-bottom-style: solid;\n border-bottom-width: 1px;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .tabs ul.is-left {\n padding-right: 0.75em; }\n #optimole-app .tabs ul.is-center {\n -ms-flex: none;\n flex: none;\n -ms-flex-pack: center;\n justify-content: center;\n padding-left: 0.75em;\n padding-right: 0.75em; }\n #optimole-app .tabs ul.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding-left: 0.75em; }\n #optimole-app .tabs .icon:first-child {\n margin-right: 0.5em; }\n #optimole-app .tabs .icon:last-child {\n margin-left: 0.5em; }\n #optimole-app .tabs.is-centered ul {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .tabs.is-right ul {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .tabs.is-boxed a {\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0; }\n #optimole-app .tabs.is-boxed a:hover {\n background-color: whitesmoke;\n border-bottom-color: #dbdbdb; }\n #optimole-app .tabs.is-boxed li.is-active a {\n background-color: white;\n border-color: #dbdbdb;\n border-bottom-color: transparent !important; }\n #optimole-app .tabs.is-fullwidth li {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .tabs.is-toggle a {\n border-color: #dbdbdb;\n border-style: solid;\n border-width: 1px;\n margin-bottom: 0;\n position: relative; }\n #optimole-app .tabs.is-toggle a:hover {\n background-color: whitesmoke;\n border-color: #b5b5b5;\n z-index: 2; }\n #optimole-app .tabs.is-toggle li + li {\n margin-left: -1px; }\n #optimole-app .tabs.is-toggle li:first-child a {\n border-radius: 4px 0 0 4px; }\n #optimole-app .tabs.is-toggle li:last-child a {\n border-radius: 0 4px 4px 0; }\n #optimole-app .tabs.is-toggle li.is-active a {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff;\n z-index: 1; }\n #optimole-app .tabs.is-toggle ul {\n border-bottom: none; }\n #optimole-app .tabs.is-toggle.is-toggle-rounded li:first-child a {\n border-bottom-left-radius: 290486px;\n border-top-left-radius: 290486px;\n padding-left: 1.25em; }\n #optimole-app .tabs.is-toggle.is-toggle-rounded li:last-child a {\n border-bottom-right-radius: 290486px;\n border-top-right-radius: 290486px;\n padding-right: 1.25em; }\n #optimole-app .tabs.is-small {\n font-size: 0.75rem; }\n #optimole-app .tabs.is-medium {\n font-size: 1.25rem; }\n #optimole-app .tabs.is-large {\n font-size: 1.5rem; }\n #optimole-app .column {\n display: block;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n padding: 0.75rem; }\n .columns.is-mobile > #optimole-app .column.is-narrow {\n -ms-flex: none;\n flex: none; }\n .columns.is-mobile > #optimole-app .column.is-full {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n .columns.is-mobile > #optimole-app .column.is-three-quarters {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n .columns.is-mobile > #optimole-app .column.is-two-thirds {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n .columns.is-mobile > #optimole-app .column.is-half {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n .columns.is-mobile > #optimole-app .column.is-one-third {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n .columns.is-mobile > #optimole-app .column.is-one-quarter {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n .columns.is-mobile > #optimole-app .column.is-one-fifth {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n .columns.is-mobile > #optimole-app .column.is-two-fifths {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n .columns.is-mobile > #optimole-app .column.is-three-fifths {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n .columns.is-mobile > #optimole-app .column.is-four-fifths {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n .columns.is-mobile > #optimole-app .column.is-offset-three-quarters {\n margin-left: 75%; }\n .columns.is-mobile > #optimole-app .column.is-offset-two-thirds {\n margin-left: 66.6666%; }\n .columns.is-mobile > #optimole-app .column.is-offset-half {\n margin-left: 50%; }\n .columns.is-mobile > #optimole-app .column.is-offset-one-third {\n margin-left: 33.3333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-one-quarter {\n margin-left: 25%; }\n .columns.is-mobile > #optimole-app .column.is-offset-one-fifth {\n margin-left: 20%; }\n .columns.is-mobile > #optimole-app .column.is-offset-two-fifths {\n margin-left: 40%; }\n .columns.is-mobile > #optimole-app .column.is-offset-three-fifths {\n margin-left: 60%; }\n .columns.is-mobile > #optimole-app .column.is-offset-four-fifths {\n margin-left: 80%; }\n .columns.is-mobile > #optimole-app .column.is-1 {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-1 {\n margin-left: 8.33333%; }\n .columns.is-mobile > #optimole-app .column.is-2 {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-2 {\n margin-left: 16.66667%; }\n .columns.is-mobile > #optimole-app .column.is-3 {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n .columns.is-mobile > #optimole-app .column.is-offset-3 {\n margin-left: 25%; }\n .columns.is-mobile > #optimole-app .column.is-4 {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-4 {\n margin-left: 33.33333%; }\n .columns.is-mobile > #optimole-app .column.is-5 {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-5 {\n margin-left: 41.66667%; }\n .columns.is-mobile > #optimole-app .column.is-6 {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n .columns.is-mobile > #optimole-app .column.is-offset-6 {\n margin-left: 50%; }\n .columns.is-mobile > #optimole-app .column.is-7 {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-7 {\n margin-left: 58.33333%; }\n .columns.is-mobile > #optimole-app .column.is-8 {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-8 {\n margin-left: 66.66667%; }\n .columns.is-mobile > #optimole-app .column.is-9 {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n .columns.is-mobile > #optimole-app .column.is-offset-9 {\n margin-left: 75%; }\n .columns.is-mobile > #optimole-app .column.is-10 {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-10 {\n margin-left: 83.33333%; }\n .columns.is-mobile > #optimole-app .column.is-11 {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-11 {\n margin-left: 91.66667%; }\n .columns.is-mobile > #optimole-app .column.is-12 {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n .columns.is-mobile > #optimole-app .column.is-offset-12 {\n margin-left: 100%; }\n @media screen and (max-width: 768px) {\n #optimole-app .column.is-narrow-mobile {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-mobile {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-mobile {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-mobile {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-mobile {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-mobile {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-mobile {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-mobile {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-mobile {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-mobile {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-mobile {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-mobile {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-mobile {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-mobile {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-mobile {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-mobile {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-mobile {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-mobile {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-mobile {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-mobile {\n margin-left: 80%; }\n #optimole-app .column.is-1-mobile {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-mobile {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-mobile {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-mobile {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-mobile {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-mobile {\n margin-left: 25%; }\n #optimole-app .column.is-4-mobile {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-mobile {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-mobile {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-mobile {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-mobile {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-mobile {\n margin-left: 50%; }\n #optimole-app .column.is-7-mobile {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-mobile {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-mobile {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-mobile {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-mobile {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-mobile {\n margin-left: 75%; }\n #optimole-app .column.is-10-mobile {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-mobile {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-mobile {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-mobile {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-mobile {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-mobile {\n margin-left: 100%; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .column.is-narrow, #optimole-app .column.is-narrow-tablet {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full, #optimole-app .column.is-full-tablet {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters, #optimole-app .column.is-three-quarters-tablet {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds, #optimole-app .column.is-two-thirds-tablet {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half, #optimole-app .column.is-half-tablet {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third, #optimole-app .column.is-one-third-tablet {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter, #optimole-app .column.is-one-quarter-tablet {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth, #optimole-app .column.is-one-fifth-tablet {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths, #optimole-app .column.is-two-fifths-tablet {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths, #optimole-app .column.is-three-fifths-tablet {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths, #optimole-app .column.is-four-fifths-tablet {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters, #optimole-app .column.is-offset-three-quarters-tablet {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds, #optimole-app .column.is-offset-two-thirds-tablet {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half, #optimole-app .column.is-offset-half-tablet {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third, #optimole-app .column.is-offset-one-third-tablet {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter, #optimole-app .column.is-offset-one-quarter-tablet {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth, #optimole-app .column.is-offset-one-fifth-tablet {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths, #optimole-app .column.is-offset-two-fifths-tablet {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths, #optimole-app .column.is-offset-three-fifths-tablet {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths, #optimole-app .column.is-offset-four-fifths-tablet {\n margin-left: 80%; }\n #optimole-app .column.is-1, #optimole-app .column.is-1-tablet {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1, #optimole-app .column.is-offset-1-tablet {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2, #optimole-app .column.is-2-tablet {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2, #optimole-app .column.is-offset-2-tablet {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3, #optimole-app .column.is-3-tablet {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3, #optimole-app .column.is-offset-3-tablet {\n margin-left: 25%; }\n #optimole-app .column.is-4, #optimole-app .column.is-4-tablet {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4, #optimole-app .column.is-offset-4-tablet {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5, #optimole-app .column.is-5-tablet {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5, #optimole-app .column.is-offset-5-tablet {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6, #optimole-app .column.is-6-tablet {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6, #optimole-app .column.is-offset-6-tablet {\n margin-left: 50%; }\n #optimole-app .column.is-7, #optimole-app .column.is-7-tablet {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7, #optimole-app .column.is-offset-7-tablet {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8, #optimole-app .column.is-8-tablet {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8, #optimole-app .column.is-offset-8-tablet {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9, #optimole-app .column.is-9-tablet {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9, #optimole-app .column.is-offset-9-tablet {\n margin-left: 75%; }\n #optimole-app .column.is-10, #optimole-app .column.is-10-tablet {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10, #optimole-app .column.is-offset-10-tablet {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11, #optimole-app .column.is-11-tablet {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11, #optimole-app .column.is-offset-11-tablet {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12, #optimole-app .column.is-12-tablet {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12, #optimole-app .column.is-offset-12-tablet {\n margin-left: 100%; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .column.is-narrow-touch {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-touch {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-touch {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-touch {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-touch {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-touch {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-touch {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-touch {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-touch {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-touch {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-touch {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-touch {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-touch {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-touch {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-touch {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-touch {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-touch {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-touch {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-touch {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-touch {\n margin-left: 80%; }\n #optimole-app .column.is-1-touch {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-touch {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-touch {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-touch {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-touch {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-touch {\n margin-left: 25%; }\n #optimole-app .column.is-4-touch {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-touch {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-touch {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-touch {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-touch {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-touch {\n margin-left: 50%; }\n #optimole-app .column.is-7-touch {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-touch {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-touch {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-touch {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-touch {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-touch {\n margin-left: 75%; }\n #optimole-app .column.is-10-touch {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-touch {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-touch {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-touch {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-touch {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-touch {\n margin-left: 100%; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .column.is-narrow-desktop {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-desktop {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-desktop {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-desktop {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-desktop {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-desktop {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-desktop {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-desktop {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-desktop {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-desktop {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-desktop {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-desktop {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-desktop {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-desktop {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-desktop {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-desktop {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-desktop {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-desktop {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-desktop {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-desktop {\n margin-left: 80%; }\n #optimole-app .column.is-1-desktop {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-desktop {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-desktop {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-desktop {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-desktop {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-desktop {\n margin-left: 25%; }\n #optimole-app .column.is-4-desktop {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-desktop {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-desktop {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-desktop {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-desktop {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-desktop {\n margin-left: 50%; }\n #optimole-app .column.is-7-desktop {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-desktop {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-desktop {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-desktop {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-desktop {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-desktop {\n margin-left: 75%; }\n #optimole-app .column.is-10-desktop {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-desktop {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-desktop {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-desktop {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-desktop {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-desktop {\n margin-left: 100%; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .column.is-narrow-widescreen {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-widescreen {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-widescreen {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-widescreen {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-widescreen {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-widescreen {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-widescreen {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-widescreen {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-widescreen {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-widescreen {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-widescreen {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-widescreen {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-widescreen {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-widescreen {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-widescreen {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-widescreen {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-widescreen {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-widescreen {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-widescreen {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-widescreen {\n margin-left: 80%; }\n #optimole-app .column.is-1-widescreen {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-widescreen {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-widescreen {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-widescreen {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-widescreen {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-widescreen {\n margin-left: 25%; }\n #optimole-app .column.is-4-widescreen {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-widescreen {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-widescreen {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-widescreen {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-widescreen {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-widescreen {\n margin-left: 50%; }\n #optimole-app .column.is-7-widescreen {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-widescreen {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-widescreen {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-widescreen {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-widescreen {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-widescreen {\n margin-left: 75%; }\n #optimole-app .column.is-10-widescreen {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-widescreen {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-widescreen {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-widescreen {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-widescreen {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-widescreen {\n margin-left: 100%; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .column.is-narrow-fullhd {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-fullhd {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-fullhd {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-fullhd {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-fullhd {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-fullhd {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-fullhd {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-fullhd {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-fullhd {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-fullhd {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-fullhd {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-fullhd {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-fullhd {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-fullhd {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-fullhd {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-fullhd {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-fullhd {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-fullhd {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-fullhd {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-fullhd {\n margin-left: 80%; }\n #optimole-app .column.is-1-fullhd {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-fullhd {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-fullhd {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-fullhd {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-fullhd {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-fullhd {\n margin-left: 25%; }\n #optimole-app .column.is-4-fullhd {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-fullhd {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-fullhd {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-fullhd {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-fullhd {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-fullhd {\n margin-left: 50%; }\n #optimole-app .column.is-7-fullhd {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-fullhd {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-fullhd {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-fullhd {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-fullhd {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-fullhd {\n margin-left: 75%; }\n #optimole-app .column.is-10-fullhd {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-fullhd {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-fullhd {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-fullhd {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-fullhd {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-fullhd {\n margin-left: 100%; } }\n #optimole-app .columns {\n margin-left: -0.75rem;\n margin-right: -0.75rem;\n margin-top: -0.75rem; }\n #optimole-app .columns:last-child {\n margin-bottom: -0.75rem; }\n #optimole-app .columns:not(:last-child) {\n margin-bottom: calc(1.5rem - 0.75rem); }\n #optimole-app .columns.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .columns.is-gapless {\n margin-left: 0;\n margin-right: 0;\n margin-top: 0; }\n #optimole-app .columns.is-gapless > .column {\n margin: 0;\n padding: 0 !important; }\n #optimole-app .columns.is-gapless:not(:last-child) {\n margin-bottom: 1.5rem; }\n #optimole-app .columns.is-gapless:last-child {\n margin-bottom: 0; }\n #optimole-app .columns.is-mobile {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .columns.is-multiline {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .columns.is-vcentered {\n -ms-flex-align: center;\n align-items: center; }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns:not(.is-desktop) {\n display: -ms-flexbox;\n display: flex; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-desktop {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .columns.is-variable {\n --columnGap: 0.75rem;\n margin-left: calc(-1 * var(--columnGap));\n margin-right: calc(-1 * var(--columnGap)); }\n #optimole-app .columns.is-variable .column {\n padding-left: var(--columnGap);\n padding-right: var(--columnGap); }\n #optimole-app .columns.is-variable.is-0 {\n --columnGap: 0rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-0-mobile {\n --columnGap: 0rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-0-tablet {\n --columnGap: 0rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-0-tablet-only {\n --columnGap: 0rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-0-touch {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-0-desktop {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-0-desktop-only {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-0-widescreen {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-0-widescreen-only {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-0-fullhd {\n --columnGap: 0rem; } }\n #optimole-app .columns.is-variable.is-1 {\n --columnGap: 0.25rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-1-mobile {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-1-tablet {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-1-tablet-only {\n --columnGap: 0.25rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-1-touch {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-1-desktop {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-1-desktop-only {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-1-widescreen {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-1-widescreen-only {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-1-fullhd {\n --columnGap: 0.25rem; } }\n #optimole-app .columns.is-variable.is-2 {\n --columnGap: 0.5rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-2-mobile {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-2-tablet {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-2-tablet-only {\n --columnGap: 0.5rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-2-touch {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-2-desktop {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-2-desktop-only {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-2-widescreen {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-2-widescreen-only {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-2-fullhd {\n --columnGap: 0.5rem; } }\n #optimole-app .columns.is-variable.is-3 {\n --columnGap: 0.75rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-3-mobile {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-3-tablet {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-3-tablet-only {\n --columnGap: 0.75rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-3-touch {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-3-desktop {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-3-desktop-only {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-3-widescreen {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-3-widescreen-only {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-3-fullhd {\n --columnGap: 0.75rem; } }\n #optimole-app .columns.is-variable.is-4 {\n --columnGap: 1rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-4-mobile {\n --columnGap: 1rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-4-tablet {\n --columnGap: 1rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-4-tablet-only {\n --columnGap: 1rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-4-touch {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-4-desktop {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-4-desktop-only {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-4-widescreen {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-4-widescreen-only {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-4-fullhd {\n --columnGap: 1rem; } }\n #optimole-app .columns.is-variable.is-5 {\n --columnGap: 1.25rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-5-mobile {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-5-tablet {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-5-tablet-only {\n --columnGap: 1.25rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-5-touch {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-5-desktop {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-5-desktop-only {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-5-widescreen {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-5-widescreen-only {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-5-fullhd {\n --columnGap: 1.25rem; } }\n #optimole-app .columns.is-variable.is-6 {\n --columnGap: 1.5rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-6-mobile {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-6-tablet {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-6-tablet-only {\n --columnGap: 1.5rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-6-touch {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-6-desktop {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-6-desktop-only {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-6-widescreen {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-6-widescreen-only {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-6-fullhd {\n --columnGap: 1.5rem; } }\n #optimole-app .columns.is-variable.is-7 {\n --columnGap: 1.75rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-7-mobile {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-7-tablet {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-7-tablet-only {\n --columnGap: 1.75rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-7-touch {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-7-desktop {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-7-desktop-only {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-7-widescreen {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-7-widescreen-only {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-7-fullhd {\n --columnGap: 1.75rem; } }\n #optimole-app .columns.is-variable.is-8 {\n --columnGap: 2rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-8-mobile {\n --columnGap: 2rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-8-tablet {\n --columnGap: 2rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-8-tablet-only {\n --columnGap: 2rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-8-touch {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-8-desktop {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-8-desktop-only {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-8-widescreen {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-8-widescreen-only {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-8-fullhd {\n --columnGap: 2rem; } }\n #optimole-app .tile {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: block;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n min-height: -webkit-min-content;\n min-height: -moz-min-content;\n min-height: min-content; }\n #optimole-app .tile.is-ancestor {\n margin-left: -0.75rem;\n margin-right: -0.75rem;\n margin-top: -0.75rem; }\n #optimole-app .tile.is-ancestor:last-child {\n margin-bottom: -0.75rem; }\n #optimole-app .tile.is-ancestor:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .tile.is-child {\n margin: 0 !important; }\n #optimole-app .tile.is-parent {\n padding: 0.75rem; }\n #optimole-app .tile.is-vertical {\n -ms-flex-direction: column;\n flex-direction: column; }\n #optimole-app .tile.is-vertical > .tile.is-child:not(:last-child) {\n margin-bottom: 1.5rem !important; }\n @media screen and (min-width: 769px), print {\n #optimole-app .tile:not(.is-child) {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .tile.is-1 {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .tile.is-2 {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .tile.is-3 {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .tile.is-4 {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .tile.is-5 {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .tile.is-6 {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .tile.is-7 {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .tile.is-8 {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .tile.is-9 {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .tile.is-10 {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .tile.is-11 {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .tile.is-12 {\n -ms-flex: none;\n flex: none;\n width: 100%; } }\n #optimole-app .hero {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: justify;\n justify-content: space-between; }\n #optimole-app .hero .navbar {\n background: none; }\n #optimole-app .hero .tabs ul {\n border-bottom: none; }\n #optimole-app .hero.is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .hero.is-white a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-white strong {\n color: inherit; }\n #optimole-app .hero.is-white .title {\n color: #0a0a0a; }\n #optimole-app .hero.is-white .subtitle {\n color: rgba(10, 10, 10, 0.9); }\n #optimole-app .hero.is-white .subtitle a:not(.button),\n #optimole-app .hero.is-white .subtitle strong {\n color: #0a0a0a; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-white .navbar-menu {\n background-color: white; } }\n #optimole-app .hero.is-white .navbar-item,\n #optimole-app .hero.is-white .navbar-link {\n color: rgba(10, 10, 10, 0.7); }\n #optimole-app .hero.is-white a.navbar-item:hover, #optimole-app .hero.is-white a.navbar-item.is-active,\n #optimole-app .hero.is-white .navbar-link:hover,\n #optimole-app .hero.is-white .navbar-link.is-active {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .hero.is-white .tabs a {\n color: #0a0a0a;\n opacity: 0.9; }\n #optimole-app .hero.is-white .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-white .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-white .tabs.is-boxed a, #optimole-app .hero.is-white .tabs.is-toggle a {\n color: #0a0a0a; }\n #optimole-app .hero.is-white .tabs.is-boxed a:hover, #optimole-app .hero.is-white .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-white .tabs.is-boxed li.is-active a, #optimole-app .hero.is-white .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-white .tabs.is-toggle li.is-active a, #optimole-app .hero.is-white .tabs.is-toggle li.is-active a:hover {\n background-color: #0a0a0a;\n border-color: #0a0a0a;\n color: white; }\n #optimole-app .hero.is-white.is-bold {\n background-image: linear-gradient(141deg, #e6e6e6 0%, white 71%, white 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-white.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #e6e6e6 0%, white 71%, white 100%); } }\n #optimole-app .hero.is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .hero.is-black a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-black strong {\n color: inherit; }\n #optimole-app .hero.is-black .title {\n color: white; }\n #optimole-app .hero.is-black .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-black .subtitle a:not(.button),\n #optimole-app .hero.is-black .subtitle strong {\n color: white; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-black .navbar-menu {\n background-color: #0a0a0a; } }\n #optimole-app .hero.is-black .navbar-item,\n #optimole-app .hero.is-black .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-black a.navbar-item:hover, #optimole-app .hero.is-black a.navbar-item.is-active,\n #optimole-app .hero.is-black .navbar-link:hover,\n #optimole-app .hero.is-black .navbar-link.is-active {\n background-color: black;\n color: white; }\n #optimole-app .hero.is-black .tabs a {\n color: white;\n opacity: 0.9; }\n #optimole-app .hero.is-black .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-black .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-black .tabs.is-boxed a, #optimole-app .hero.is-black .tabs.is-toggle a {\n color: white; }\n #optimole-app .hero.is-black .tabs.is-boxed a:hover, #optimole-app .hero.is-black .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-black .tabs.is-boxed li.is-active a, #optimole-app .hero.is-black .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-black .tabs.is-toggle li.is-active a, #optimole-app .hero.is-black .tabs.is-toggle li.is-active a:hover {\n background-color: white;\n border-color: white;\n color: #0a0a0a; }\n #optimole-app .hero.is-black.is-bold {\n background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-black.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); } }\n #optimole-app .hero.is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .hero.is-light a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-light strong {\n color: inherit; }\n #optimole-app .hero.is-light .title {\n color: #363636; }\n #optimole-app .hero.is-light .subtitle {\n color: rgba(54, 54, 54, 0.9); }\n #optimole-app .hero.is-light .subtitle a:not(.button),\n #optimole-app .hero.is-light .subtitle strong {\n color: #363636; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-light .navbar-menu {\n background-color: whitesmoke; } }\n #optimole-app .hero.is-light .navbar-item,\n #optimole-app .hero.is-light .navbar-link {\n color: rgba(54, 54, 54, 0.7); }\n #optimole-app .hero.is-light a.navbar-item:hover, #optimole-app .hero.is-light a.navbar-item.is-active,\n #optimole-app .hero.is-light .navbar-link:hover,\n #optimole-app .hero.is-light .navbar-link.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .hero.is-light .tabs a {\n color: #363636;\n opacity: 0.9; }\n #optimole-app .hero.is-light .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-light .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-light .tabs.is-boxed a, #optimole-app .hero.is-light .tabs.is-toggle a {\n color: #363636; }\n #optimole-app .hero.is-light .tabs.is-boxed a:hover, #optimole-app .hero.is-light .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-light .tabs.is-boxed li.is-active a, #optimole-app .hero.is-light .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-light .tabs.is-toggle li.is-active a, #optimole-app .hero.is-light .tabs.is-toggle li.is-active a:hover {\n background-color: #363636;\n border-color: #363636;\n color: whitesmoke; }\n #optimole-app .hero.is-light.is-bold {\n background-image: linear-gradient(141deg, #dfd8d9 0%, whitesmoke 71%, white 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-light.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #dfd8d9 0%, whitesmoke 71%, white 100%); } }\n #optimole-app .hero.is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-dark strong {\n color: inherit; }\n #optimole-app .hero.is-dark .title {\n color: whitesmoke; }\n #optimole-app .hero.is-dark .subtitle {\n color: rgba(245, 245, 245, 0.9); }\n #optimole-app .hero.is-dark .subtitle a:not(.button),\n #optimole-app .hero.is-dark .subtitle strong {\n color: whitesmoke; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-dark .navbar-menu {\n background-color: #363636; } }\n #optimole-app .hero.is-dark .navbar-item,\n #optimole-app .hero.is-dark .navbar-link {\n color: rgba(245, 245, 245, 0.7); }\n #optimole-app .hero.is-dark a.navbar-item:hover, #optimole-app .hero.is-dark a.navbar-item.is-active,\n #optimole-app .hero.is-dark .navbar-link:hover,\n #optimole-app .hero.is-dark .navbar-link.is-active {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .hero.is-dark .tabs a {\n color: whitesmoke;\n opacity: 0.9; }\n #optimole-app .hero.is-dark .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-dark .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-dark .tabs.is-boxed a, #optimole-app .hero.is-dark .tabs.is-toggle a {\n color: whitesmoke; }\n #optimole-app .hero.is-dark .tabs.is-boxed a:hover, #optimole-app .hero.is-dark .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-dark .tabs.is-boxed li.is-active a, #optimole-app .hero.is-dark .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-dark .tabs.is-toggle li.is-active a, #optimole-app .hero.is-dark .tabs.is-toggle li.is-active a:hover {\n background-color: whitesmoke;\n border-color: whitesmoke;\n color: #363636; }\n #optimole-app .hero.is-dark.is-bold {\n background-image: linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-dark.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%); } }\n #optimole-app .hero.is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-primary strong {\n color: inherit; }\n #optimole-app .hero.is-primary .title {\n color: #fff; }\n #optimole-app .hero.is-primary .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-primary .subtitle a:not(.button),\n #optimole-app .hero.is-primary .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-primary .navbar-menu {\n background-color: #EF686B; } }\n #optimole-app .hero.is-primary .navbar-item,\n #optimole-app .hero.is-primary .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-primary a.navbar-item:hover, #optimole-app .hero.is-primary a.navbar-item.is-active,\n #optimole-app .hero.is-primary .navbar-link:hover,\n #optimole-app .hero.is-primary .navbar-link.is-active {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .hero.is-primary .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-primary .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-primary .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-primary .tabs.is-boxed a, #optimole-app .hero.is-primary .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-primary .tabs.is-boxed a:hover, #optimole-app .hero.is-primary .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-primary .tabs.is-boxed li.is-active a, #optimole-app .hero.is-primary .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-primary .tabs.is-toggle li.is-active a, #optimole-app .hero.is-primary .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #EF686B; }\n #optimole-app .hero.is-primary.is-bold {\n background-image: linear-gradient(141deg, #f52f54 0%, #EF686B 71%, #f58d7c 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-primary.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #f52f54 0%, #EF686B 71%, #f58d7c 100%); } }\n #optimole-app .hero.is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .hero.is-link a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-link strong {\n color: inherit; }\n #optimole-app .hero.is-link .title {\n color: #fff; }\n #optimole-app .hero.is-link .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-link .subtitle a:not(.button),\n #optimole-app .hero.is-link .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-link .navbar-menu {\n background-color: #3273dc; } }\n #optimole-app .hero.is-link .navbar-item,\n #optimole-app .hero.is-link .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-link a.navbar-item:hover, #optimole-app .hero.is-link a.navbar-item.is-active,\n #optimole-app .hero.is-link .navbar-link:hover,\n #optimole-app .hero.is-link .navbar-link.is-active {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .hero.is-link .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-link .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-link .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-link .tabs.is-boxed a, #optimole-app .hero.is-link .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-link .tabs.is-boxed a:hover, #optimole-app .hero.is-link .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-link .tabs.is-boxed li.is-active a, #optimole-app .hero.is-link .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-link .tabs.is-toggle li.is-active a, #optimole-app .hero.is-link .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #3273dc; }\n #optimole-app .hero.is-link.is-bold {\n background-image: linear-gradient(141deg, #1577c6 0%, #3273dc 71%, #4366e5 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-link.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #1577c6 0%, #3273dc 71%, #4366e5 100%); } }\n #optimole-app .hero.is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .hero.is-info a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-info strong {\n color: inherit; }\n #optimole-app .hero.is-info .title {\n color: #fff; }\n #optimole-app .hero.is-info .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-info .subtitle a:not(.button),\n #optimole-app .hero.is-info .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-info .navbar-menu {\n background-color: #5180C1; } }\n #optimole-app .hero.is-info .navbar-item,\n #optimole-app .hero.is-info .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-info a.navbar-item:hover, #optimole-app .hero.is-info a.navbar-item.is-active,\n #optimole-app .hero.is-info .navbar-link:hover,\n #optimole-app .hero.is-info .navbar-link.is-active {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .hero.is-info .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-info .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-info .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-info .tabs.is-boxed a, #optimole-app .hero.is-info .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-info .tabs.is-boxed a:hover, #optimole-app .hero.is-info .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-info .tabs.is-boxed li.is-active a, #optimole-app .hero.is-info .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-info .tabs.is-toggle li.is-active a, #optimole-app .hero.is-info .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #5180C1; }\n #optimole-app .hero.is-info.is-bold {\n background-image: linear-gradient(141deg, #2f7bb0 0%, #5180C1 71%, #5f7acd 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-info.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #2f7bb0 0%, #5180C1 71%, #5f7acd 100%); } }\n #optimole-app .hero.is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .hero.is-success a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-success strong {\n color: inherit; }\n #optimole-app .hero.is-success .title {\n color: #fff; }\n #optimole-app .hero.is-success .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-success .subtitle a:not(.button),\n #optimole-app .hero.is-success .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-success .navbar-menu {\n background-color: #34a85e; } }\n #optimole-app .hero.is-success .navbar-item,\n #optimole-app .hero.is-success .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-success a.navbar-item:hover, #optimole-app .hero.is-success a.navbar-item.is-active,\n #optimole-app .hero.is-success .navbar-link:hover,\n #optimole-app .hero.is-success .navbar-link.is-active {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .hero.is-success .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-success .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-success .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-success .tabs.is-boxed a, #optimole-app .hero.is-success .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-success .tabs.is-boxed a:hover, #optimole-app .hero.is-success .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-success .tabs.is-boxed li.is-active a, #optimole-app .hero.is-success .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-success .tabs.is-toggle li.is-active a, #optimole-app .hero.is-success .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #34a85e; }\n #optimole-app .hero.is-success.is-bold {\n background-image: linear-gradient(141deg, #1f8a34 0%, #34a85e 71%, #34c27f 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-success.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #1f8a34 0%, #34a85e 71%, #34c27f 100%); } }\n #optimole-app .hero.is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-warning strong {\n color: inherit; }\n #optimole-app .hero.is-warning .title {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning .subtitle {\n color: rgba(0, 0, 0, 0.9); }\n #optimole-app .hero.is-warning .subtitle a:not(.button),\n #optimole-app .hero.is-warning .subtitle strong {\n color: rgba(0, 0, 0, 0.7); }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-warning .navbar-menu {\n background-color: #ffdd57; } }\n #optimole-app .hero.is-warning .navbar-item,\n #optimole-app .hero.is-warning .navbar-link {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning a.navbar-item:hover, #optimole-app .hero.is-warning a.navbar-item.is-active,\n #optimole-app .hero.is-warning .navbar-link:hover,\n #optimole-app .hero.is-warning .navbar-link.is-active {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning .tabs a {\n color: rgba(0, 0, 0, 0.7);\n opacity: 0.9; }\n #optimole-app .hero.is-warning .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-warning .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-warning .tabs.is-boxed a, #optimole-app .hero.is-warning .tabs.is-toggle a {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning .tabs.is-boxed a:hover, #optimole-app .hero.is-warning .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-warning .tabs.is-boxed li.is-active a, #optimole-app .hero.is-warning .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-warning .tabs.is-toggle li.is-active a, #optimole-app .hero.is-warning .tabs.is-toggle li.is-active a:hover {\n background-color: rgba(0, 0, 0, 0.7);\n border-color: rgba(0, 0, 0, 0.7);\n color: #ffdd57; }\n #optimole-app .hero.is-warning.is-bold {\n background-image: linear-gradient(141deg, #ffaf24 0%, #ffdd57 71%, #fffa70 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-warning.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #ffaf24 0%, #ffdd57 71%, #fffa70 100%); } }\n #optimole-app .hero.is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-danger strong {\n color: inherit; }\n #optimole-app .hero.is-danger .title {\n color: #fff; }\n #optimole-app .hero.is-danger .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-danger .subtitle a:not(.button),\n #optimole-app .hero.is-danger .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-danger .navbar-menu {\n background-color: #D54222; } }\n #optimole-app .hero.is-danger .navbar-item,\n #optimole-app .hero.is-danger .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-danger a.navbar-item:hover, #optimole-app .hero.is-danger a.navbar-item.is-active,\n #optimole-app .hero.is-danger .navbar-link:hover,\n #optimole-app .hero.is-danger .navbar-link.is-active {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .hero.is-danger .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-danger .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-danger .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-danger .tabs.is-boxed a, #optimole-app .hero.is-danger .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-danger .tabs.is-boxed a:hover, #optimole-app .hero.is-danger .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-danger .tabs.is-boxed li.is-active a, #optimole-app .hero.is-danger .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-danger .tabs.is-toggle li.is-active a, #optimole-app .hero.is-danger .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #D54222; }\n #optimole-app .hero.is-danger.is-bold {\n background-image: linear-gradient(141deg, #b31311 0%, #D54222 71%, #e46c2c 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-danger.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #b31311 0%, #D54222 71%, #e46c2c 100%); } }\n #optimole-app .hero.is-small .hero-body {\n padding-bottom: 1.5rem;\n padding-top: 1.5rem; }\n @media screen and (min-width: 769px), print {\n #optimole-app .hero.is-medium .hero-body {\n padding-bottom: 9rem;\n padding-top: 9rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .hero.is-large .hero-body {\n padding-bottom: 18rem;\n padding-top: 18rem; } }\n #optimole-app .hero.is-halfheight .hero-body, #optimole-app .hero.is-fullheight .hero-body, #optimole-app .hero.is-fullheight-with-navbar .hero-body {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .hero.is-halfheight .hero-body > .container, #optimole-app .hero.is-fullheight .hero-body > .container, #optimole-app .hero.is-fullheight-with-navbar .hero-body > .container {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .hero.is-halfheight {\n min-height: 50vh; }\n #optimole-app .hero.is-fullheight {\n min-height: 100vh; }\n #optimole-app .hero-video {\n overflow: hidden; }\n #optimole-app .hero-video video {\n left: 50%;\n min-height: 100%;\n min-width: 100%;\n position: absolute;\n top: 50%;\n transform: translate3d(-50%, -50%, 0); }\n #optimole-app .hero-video.is-transparent {\n opacity: 0.3; }\n @media screen and (max-width: 768px) {\n #optimole-app .hero-video {\n display: none; } }\n #optimole-app .hero-buttons {\n margin-top: 1.5rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .hero-buttons .button {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .hero-buttons .button:not(:last-child) {\n margin-bottom: 0.75rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .hero-buttons {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .hero-buttons .button:not(:last-child) {\n margin-right: 1.5rem; } }\n #optimole-app .hero-head,\n #optimole-app .hero-foot {\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .hero-body {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n padding: 3rem 1.5rem; }\n #optimole-app .section {\n padding: 3rem 1.5rem; }\n @media screen and (min-width: 1088px) {\n #optimole-app .section.is-medium {\n padding: 9rem 1.5rem; }\n #optimole-app .section.is-large {\n padding: 18rem 1.5rem; } }\n #optimole-app .footer {\n background-color: #fafafa;\n padding: 3rem 1.5rem 6rem; }\n #optimole-app .card {\n transition: all 750ms ease-in-out;\n border: 0;\n border-radius: .1875rem;\n box-shadow: 0 1px 15px 1px rgba(39, 39, 39, 0.1); }\n #optimole-app .logo {\n margin-bottom: 10px; }\n #optimole-app .logo img {\n max-width: 180px;\n margin: 0 auto; }\n #optimole-app .vue-js-switch {\n -ms-flex-item-align: center;\n -ms-grid-row-align: center;\n align-self: center; }\n #optimole-app .api-key-control {\n padding: 0; }\n #optimole-app .is-vertical-center {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center; }\n #optimole-app .api-key-field .button.is-danger {\n padding-left: 20px;\n padding-right: 20px; }\n #optimole-app .api-key-label {\n -ms-flex-item-align: center;\n -ms-grid-row-align: center;\n align-self: center;\n margin: 0.5em 10px 0.5em 0;\n font-size: 1em; }\n #optimole-app .header {\n padding: 0 1.5rem 0; }\n #optimole-app .header.level {\n margin-bottom: 0; }\n #optimole-app .account img {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px; }\n #optimole-app .account .label {\n margin-bottom: 0; }\n #optimole-app .optimized-images table td, #optimole-app .optimized-images table th {\n vertical-align: middle; }\n #optimole-app .media-diff {\n position: relative;\n margin: 0 auto; }\n #optimole-app .media-diff video, #optimole-app .media-diff img {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%; }\n #optimole-app .origin-wrapper {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n z-index: 1;\n transform: translateZ(0);\n will-change: width; }\n #optimole-app .handle {\n position: absolute;\n top: 0;\n bottom: 0;\n color: rgba(255, 255, 255, 0.8);\n background-color: rgba(255, 255, 255, 0.8);\n width: 2px;\n cursor: ew-resize;\n transform: translateX(-50%) translateZ(0);\n z-index: 2;\n will-change: left;\n left: 200px; }\n #optimole-app .cursor {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translateX(-50%) translateZ(0); }\n #optimole-app .cursor .circle {\n background-color: rgba(255, 255, 255, 0.8);\n width: 24px;\n height: 24px;\n border-radius: 50%; }\n #optimole-app .no-padding-right {\n padding-right: 0px !important; }\n #optimole-app #filters-list .list {\n border: none;\n background: none;\n box-shadow: none; }\n #optimole-app #filters-list .list-item {\n border: none; }\n #optimole-app #filters-list .exclusion-filter .tag.is-link strong {\n white-space: initial; }\n #optimole-app #filters-list .exclusion-filter .tag.is-link i {\n margin-right: 5px; }\n #optimole-app #filters-list .exclusion-filter .tag.is-link {\n text-decoration: none;\n width: 80%;\n height: auto;\n min-height: 2em;\n -ms-flex-pack: left;\n justify-content: left; }\n\n.fade-enter-active, .fade-leave-active {\n transition: opacity .5s; }\n\n.fade-enter, .fade-leave-to {\n opacity: 0; }\n\n.media_page_optimole #wpbody-content > * {\n display: none !important; }\n\n.media_page_optimole #wpbody-content > #optimole-app {\n display: block !important; }\n\n#optimole-app img.optml-image {\n float: left;\n max-width: 100px;\n width: auto;\n margin: auto; }\n\n#optimole-app img.optml-image-watermark {\n width: 50px; }\n\n.optml-ratio-feedback .emoji {\n font-size: 1.5em; }\n\n.optml-ratio-feedback {\n float: right;\n padding-right: 20px; }\n\n.optml-image-heading {\n text-align: left; }\n\nth.optml-image-ratio-heading {\n text-align: right !important;\n font-size: 150%; }\n\n@media screen and (max-width: 768px) {\n li:not(.is-active) > a > span:not(.icon) {\n visibility: hidden;\n position: absolute; }\n nav.tabs li:not(.is-active) {\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n .tabs .icon {\n margin-left: 0.5em; } }\n\n.tabs li {\n transition: flex-grow 1s ease;\n transition: flex-grow 1s ease, -ms-flex-positive 1s ease; }\n\n#optimole-app .tabs a {\n margin-bottom: -4px; }\n\n#optimole-app .optml-upgrade {\n min-width: 200px; }\n\n#optimole-app .is-tab.no-images {\n min-height: 400px; }\n\n#optimole-app .is-tab {\n min-height: 700px; }\n\n.optml-tabs {\n position: relative; }\n\n.optml-tabs .optml-conflicts-tabs {\n position: absolute;\n right: 0;\n top: 0; }\n\n#optml-loader {\n min-height: 400px;\n margin-top: 150px; }\n\n.slide-fade-enter-active {\n transition: all .3s ease; }\n\n.slide-fade-leave-active {\n transition: all 0.8s cubic-bezier(1, 0.5, 0.8, 1); }\n\n.slide-fade-enter, .slide-fade-leave-to {\n transform: translateX(10px);\n opacity: 0; }\n\n#optml-progress-bar.progress.optml-progres-0:indeterminate {\n background-image: linear-gradient(to right, #5180C1 5%, #dbdbdb 5%); }\n\n#optml-progress-bar.progress.optml-progres-1:indeterminate {\n background-image: linear-gradient(to right, #5180C1 10%, #dbdbdb 10%); }\n\n#optml-progress-bar.progress.optml-progres-2:indeterminate {\n background-image: linear-gradient(to right, #5180C1 20%, #dbdbdb 20%); }\n\n#optml-progress-bar.progress.optml-progres-3:indeterminate {\n background-image: linear-gradient(to right, #5180C1 30%, #dbdbdb 30%); }\n\n#optml-progress-bar.progress.optml-progres-4:indeterminate {\n background-image: linear-gradient(to right, #5180C1 40%, #dbdbdb 40%); }\n\n#optml-progress-bar.progress.optml-progres-5:indeterminate {\n background-image: linear-gradient(to right, #5180C1 50%, #dbdbdb 50%); }\n\n#optml-progress-bar.progress.optml-progres-6:indeterminate {\n background-image: linear-gradient(to right, #5180C1 60%, #dbdbdb 60%); }\n\n#optml-progress-bar.progress.optml-progres-7:indeterminate {\n background-image: linear-gradient(to right, #5180C1 70%, #dbdbdb 70%); }\n\n#optml-progress-bar.progress.optml-progres-8:indeterminate {\n background-image: linear-gradient(to right, #5180C1 80%, #dbdbdb 80%); }\n\n#optml-progress-bar.progress.optml-progres-9:indeterminate {\n background-image: linear-gradient(to right, #5180C1 90%, #dbdbdb 90%); }\n\n.notification .dashicons-external {\n text-decoration: none;\n font-size: 18px; }\n',""])},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}var i=n(15),a=o(i),r=n(20),s=o(r),l=n(25),p=o(l),c=n(32),d=o(c),m=n(37),u=o(m),f=n(4),h=o(f),b=n(45),v=o(b),g=n(5),x=o(g);t.exports={name:"app",data:function(){return{strings:optimoleDashboardApp.strings,home:optimoleDashboardApp.home_url,remove_images:"yes"===optimoleDashboardApp.remove_latest_images,fetchStatus:!1,step_no:0,timer:0,max_time:25,loading_percent:0,tab:"dashboard"}},computed:{conflictCount:function(){return this.$store.state.conflicts.count||0},is_connected:function(){return this.$store.state.connected},is_loaded:function(){return this.$store.state.is_loaded}},components:{AppHeader:a.default,Options:v.default,Watermarks:x.default,ConnectLayout:p.default,ApiKeyForm:h.default,CdnDetails:s.default,Conflicts:u.default,LastImages:d.default},watch:{is_connected:function(t){console.log(t),t&&!this.is_loaded&&this.triggerLoading()}},mounted:function(){var t=this;this.$store.state.connected&&(this.$store.dispatch("retrieveOptimizedImages",{waitTime:0,component:null}),this.$store.dispatch("retrieveConflicts",{waitTime:0,component:null}),t.fetchStatus=!0)},methods:{changeTab:function(t){this.tab=t},getProgressMessage:function(){var t="";return 0===this.step_no&&(t=this.strings.options_strings.connect_step_0),1===this.step_no&&(t=this.strings.options_strings.connect_step_1),2===this.step_no&&(t=this.strings.options_strings.connect_step_2),3===this.step_no&&(t=this.strings.options_strings.connect_step_3),t+" ("+this.loading_percent+"%)"},doLoading:function(){if(++this.timer>=this.max_time)return this.$store.commit("toggleIsServiceLoaded",!0),this.timer=0,this.step_no=0,void(this.loading_percent=0);this.loading_percent=Math.floor(this.timer/this.max_time*100),this.loading_percent>30*(this.step_no+1)&&this.step_no++,this.timer<this.max_time&&this.triggerLoading()},triggerLoading:function(){var t=this;setTimeout(function(){t.doLoading()},1e3)}}}},function(t,e,n){var o,i;n(16),o=n(18),i=n(19),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(17);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t@media ( min-width: 769px ) {\n\t\t#optimole-app hr[_v-316d7377] {\n\t\t\tmargin: 0;\n\t\t}\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"app-header",data:function(){return{logo:optimoleDashboardApp.assets_url+"img/logo.png",strings:optimoleDashboardApp.strings}},computed:{connected:function(){return this.$store.state.connected}}}},function(t,e){t.exports='\n\t<div _v-316d7377="">\n\t\t<div class="header has-text-centered level" _v-316d7377="">\n\t\t\t\n\t\t\t<div class="level-left" _v-316d7377="">\n\t\t\t\t<a class="logo level-item" href="https://optimole.com" target="_blank" _v-316d7377="">\n\t\t\t\t\t<figure class="image is-96x96 is-hidden-touch" _v-316d7377="">\n\t\t\t\t\t\t<img :src="logo" :alt="strings.optimole + \' \' + strings.service_details" _v-316d7377="">\n\t\t\t\t\t</figure>\n\t\t\t\t\t<figure class="image is-48x48 is-hidden-desktop" _v-316d7377="">\n\t\t\t\t\t\t<img :src="logo" :alt="strings.optimole + \' \' + strings.service_details" _v-316d7377="">\n\t\t\t\t\t</figure>\n\t\t\t\t</a>\n\t\t\t\t<h3 class="has-text-centered has-text-grey-dark is-size-5 is-size-4-widescreen is-size-6-touch level-item" _v-316d7377="">\n\t\t\t\t\t<span class="has-text-weight-semibold" _v-316d7377="">\n\t\t\t\t\tOptiMole - {{strings.service_details}}\n\t\t\t\t\t</span>\n\t\t\t\t</h3>\n\t\t\t</div>\n\t\t\t<div class="level-right" _v-316d7377="">\n\t\t\t\t<div class="tags has-addons level-item" _v-316d7377="">\n\t\t\t\t\t<span class="tag is-dark" _v-316d7377="">{{strings.status}}</span>\n\t\t\t\t\t<span v-if="connected" class="tag is-success" _v-316d7377="">{{strings.connected}}</span>\n\t\t\t\t\t<span v-else="" class="tag is-danger" _v-316d7377="">{{strings.not_connected}}</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t</div>\n\t\t<hr _v-316d7377="">\n\t</div>\n'},function(t,e,n){var o,i;n(21),o=n(23),i=n(24),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(22);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t#optimole-app .label[_v-7f71b554] {\n\t\tmargin-top: 0;\n\t}\n\t.optml-refresh-wrapper i.dashicons[_v-7f71b554]{\n\t\twidth:auto;\n\t\theight:auto;\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"cdn-details",data:function(){return{strings:optimoleDashboardApp.strings}},computed:{userData:function(){return this.$store.state.userData}},methods:{computedPercentage:function(){return(this.userData.usage/this.userData.quota*100).toFixed(2)},requestUpdate:function(){this.$store.dispatch("requestStatsUpdate",{waitTime:0,component:null})}}}},function(t,e){t.exports='\n\t<div class="cdn-details" _v-7f71b554="">\n\t\t<hr _v-7f71b554="">\n\t\t<div class="account level has-text-centered" _v-7f71b554="">\n\t\t\t<div class="level-left" _v-7f71b554="">\n\t\t\t\t<span class="label level-item" _v-7f71b554="">{{strings.logged_in_as}}:</span>\n\t\t\t\t<p class="details level-item tags has-addons" _v-7f71b554="">\n\t\t\t\t\t<span class="tag is-light" _v-7f71b554="">{{userData.display_name}}</span>\n\t\t\t\t\t<span class="tag is-paddingless" _v-7f71b554=""><img :src="userData.picture" class="image is-24x24 is-rounded" :alt="userData.display_name" _v-7f71b554=""></span>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\t<span class="label level-item" _v-7f71b554="">{{strings.private_cdn_url}}:</span>\n\t\t\t\t<p class="details level-item tag is-light" _v-7f71b554="">{{userData.cdn_key}}.i.optimole.com</p>\n\t\t\t</div>\n\t\t</div>\n\t\t<hr _v-7f71b554="">\n\t\t<div class="level stats" _v-7f71b554="">\n\t\t\t<div class="level-left" _v-7f71b554="">\n\t\t\t\t<div class="level-item" _v-7f71b554="">\n\t\t\t\t\t<div class="tags has-addons" _v-7f71b554="">\n\t\t\t\t\t\t<span class="tag is-info" _v-7f71b554="">{{strings.usage}}:</span>\n\t\t\t\t\t\t<span class="tag" _v-7f71b554="">{{this.userData.usage_pretty}}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<h4 class="level-item is-size-5 is-marginless has-text-grey" _v-7f71b554="">\n\t\t\t\t{{computedPercentage()}}%\n\t\t\t</h4>\n\t\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\t<div class="level-item" _v-7f71b554="">\n\t\t\t\t\t<div class="tags has-addons" _v-7f71b554="">\n\t\t\t\t\t\t<span class="tag is-info" _v-7f71b554="">{{strings.quota}}:</span>\n\t\t\t\t\t\t<span class="tag" _v-7f71b554="">{{this.userData.quota_pretty}}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t\n\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\n\t\t\t<div class="level-item optml-refresh-wrapper" _v-7f71b554="">\n\t\t\t<a class="button is-small is-warning" v-if="this.$store.state.loading" _v-7f71b554=""><span class="icon" _v-7f71b554=""><i class="dashicons dashicons-backup is-size-6" _v-7f71b554=""></i></span> <span _v-7f71b554="">{{strings.updating_stats_cta}}</span>\n\t\t\t</a>\n\t\t\t<a class="button is-small is-info" v-else="" v-on:click="requestUpdate" _v-7f71b554=""><span class="icon" _v-7f71b554=""><i class="dashicons dashicons-image-rotate is-size-6" _v-7f71b554=""></i></span> <span _v-7f71b554="">{{strings.refresh_stats_cta}}</span>\n\t\t\t</a>\n\t\t\t</div>\n\t\t</div>\n\t\t<hr _v-7f71b554="">\n\t\t<progress class="progress is-success" :value="this.userData.usage" :max="this.userData.quota" _v-7f71b554="">60%</progress>\n\t\n\t</div>\n'},function(t,e,n){var o,i;n(26),o=n(28),i=n(31),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(27);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\tinput[_v-398fcc2b], .notification .delete[_v-398fcc2b], button[_v-398fcc2b] {\n\t\tbox-sizing: border-box !important;\n\t}\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),i=function(t){return t&&t.__esModule?t:{default:t}}(o);e.default={name:"connect-layout",components:{ApiKeyForm:i.default},data:function(){return{email:optimoleDashboardApp.current_user.email,strings:optimoleDashboardApp.strings,showApiKey:!1,error:!1,showRegisterField:!1,from_register:!1}},computed:{isLoading:function(){return this.$store.state.loading},isRestApiWorking:function(){return this.$store.state.apiError}},methods:{toggleApiForm:function(){this.error=!1,this.from_register=!1,this.showApiKey=!this.showApiKey},registerAccount:function(){var t=this;if(!this.showRegisterField)return void(this.showRegisterField=!0);this.error=!1,this.$store.dispatch("registerOptimole",{email:this.email}).then(function(e){"success"===e.code?(t.showApiKey=!0,t.from_register=!0):t.error=!0})}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"api-key-form",data:function(){return{apiKey:this.$store.state.apiKey?this.$store.state.apiKey:"",connected:this.$store.state.connected,strings:optimoleDashboardApp.strings,isLoading:!1}},mounted:function(){},computed:{validKey:function(){return this.$store.state.apiKeyValidity},connectionError:function(){return this.$store.state.connectError},isConnected:function(){return this.$store.state.connected}},methods:{connect:function(){this.$store.dispatch("connectOptimole",{apiKey:this.apiKey})},disconnect:function(){this.apiKey="",this.$store.dispatch("disconnectOptimole",{})}}}},function(t,e){t.exports='\n\t<div>\n\t\t<div class="field has-addons api-key-field">\n\t\t\t<label v-if="isConnected"\n\t\t\t\t\tclass="label api-key-label has-text-grey-dark">{{strings.api_key_placeholder}}:</label>\n\t\t\t<div class="control is-expanded api-key-control">\n\t\t\t\t<input :type="isConnected ? \'password\' : \'text\'" :disabled="isConnected" name="api_key" class="input "\n\t\t\t\t\t\t:class="validKey ? \'\' : \'is-danger\'" :placeholder="strings.api_key_placeholder"\n\t\t\t\t\t\tv-model="apiKey">\n\t\t\t</div>\n\t\t\t<div class="control">\n\t\t\t\t<button v-if="! isConnected" class="button button is-success "\n\t\t\t\t\t\t@click="connect" :class="{ \'is-loading\' : this.$store.state.isConnecting }">\n\t\t\t\t\t<span class="icon"><i class="dashicons dashicons-admin-plugins"></i></span>\n\t\t\t\t\t<span>{{strings.connect_btn}}</span>\n\t\t\t\t</button>\n\t\t\t\t<button v-else class="button is-danger " @click="disconnect"\n\t\t\t\t\t\t:class="{ \'is-loading\' : this.$store.state.isConnecting }">\n\t\t\t\t\t<span class="icon"><i class="dashicons dashicons-dismiss"></i></span>\n\t\t\t\t\t<span>{{strings.disconnect_btn}}</span>\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\t\t<p v-if="! validKey" class="help is-danger">\n\t\t\t{{connectionError}}\n\t\t</p>\n\t</div>\n'},function(t,e){t.exports='\n\t<section class="is-clearfix" _v-398fcc2b="">\n\t\t<nav class="breadcrumb" aria-label="breadcrumbs" v-if="showApiKey" _v-398fcc2b="">\n\t\t\t<ul _v-398fcc2b="">\n\t\t\t\t<li _v-398fcc2b=""><a @click="toggleApiForm" href="#" _v-398fcc2b="">{{strings.back_to_register}}</a></li>\n\t\t\t\t<li class="is-active is-marginless" v-if="showApiKey" _v-398fcc2b=""><a href="#" aria-current="page" _v-398fcc2b="">{{strings.back_to_connect}}</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</nav>\n\t\t<div class="notification is-danger" v-if="isRestApiWorking" v-html="strings.notice_api_not_working" _v-398fcc2b=""></div>\n\t\t<div class="section" v-if="showApiKey" _v-398fcc2b="">\n\t\t\t<div class="notification is-success" v-if="from_register" _v-398fcc2b="">\n\t\t\t\t{{strings.notification_message_register}}\n\t\t\t</div>\n\t\t\t<api-key-form _v-398fcc2b=""></api-key-form>\n\t\t\t<hr _v-398fcc2b="">\n\t\t\t<div class="columns" _v-398fcc2b="">\n\t\t\t\t\n\t\t\t\t<div class="column columns is-marginless is-vcentered " _v-398fcc2b="">\n\t\t\t\t\t\n\t\t\t\t\t<span class="dashicons dashicons-share column is-2 is-size-3 is-paddingless" _v-398fcc2b=""></span>\n\t\t\t\t\t<div class="is-pulled-left column is-10 is-paddingless" _v-398fcc2b="">\n\t\t\t\t\t\t<p class="title is-size-5 " _v-398fcc2b="">1. {{strings.step_one_api_title}}</p>\n\t\t\t\t\t\t<p class="subtitle is-size-6" v-html="strings.step_one_api_desc" _v-398fcc2b=""></p>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="column is columns is-vcentered is-marginless" _v-398fcc2b="">\n\t\t\t\t\t\n\t\t\t\t\t<span class="dashicons dashicons-admin-plugins column is-2 is-size-3 is-paddingless" _v-398fcc2b=""></span>\n\t\t\t\t\t<div class="is-pulled-left column is-10 is-paddingless" _v-398fcc2b="">\n\t\t\t\t\t\t<p class="title is-size-5" _v-398fcc2b="">2. {{strings.step_two_api_title}}</p>\n\t\t\t\t\t\t<p class="subtitle is-size-6" _v-398fcc2b="">{{strings.step_two_api_desc}}</p>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\n\t\t</div>\n\t\t<div class="columns is-vcentered is-desktop " v-else="" _v-398fcc2b="">\n\t\t\t<div class="column has-text-left is-fluid is-hidden-touch" _v-398fcc2b="">\n\t\t\t\t<div class="hero" _v-398fcc2b="">\n\t\t\t\t\t<div class="hero-body content" _v-398fcc2b="">\n\t\t\t\t\t\t<p class="title" _v-398fcc2b="">{{strings.account_needed_heading}}</p>\n\t\t\t\t\t\t<p class="subtitle " v-html="strings.account_needed_title" _v-398fcc2b=""></p>\n\t\t\t\t\t\t<div class=" is-hidden-touch" _v-398fcc2b="">\n\t\t\t\t\t\t\t<div class="columns is-vcentered " _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<div class=" is-narrow is-hidden-touch column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<span class="dashicons icon dashicons-format-image is-size-4 " _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<p class="subtitle column is-size-6 is-vcentered has-text-left" v-html="strings.account_needed_subtitle_1" _v-398fcc2b=""></p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class="columns is-vcentered" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<div class=" is-narrow is-hidden-touch column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<span class="dashicons icon dashicons-plus is-size-4 " _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<p class="subtitle column is-size-6 is-vcentered has-text-left" v-html="strings.account_needed_subtitle_2" _v-398fcc2b=""></p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class="column is-4-desktop is-full-touch " _v-398fcc2b="">\n\t\t\t\t<p v-html="strings.account_needed_title" class="is-size-6 has-text-centered is-hidden-desktop" _v-398fcc2b=""></p>\n\t\t\t\t<div class="field " v-show="showRegisterField" _v-398fcc2b="">\n\t\t\t\t\t<label for="optml-email" class="label title is-size-5 is-12" _v-398fcc2b="">{{strings.email_address_label}}\n\t\t\t\t\t\t:</label>\n\t\t\t\t\t<div class="control is-12 is-small has-icons-left " _v-398fcc2b="">\n\t\t\t\t\t\t<input name="optml-email" id="optml-email" class="input is-medium is-fullwidth is-danger" type="email" v-model="email" _v-398fcc2b="">\n\t\t\t\t\t\t<span class="icon is-small is-left dashicons dashicons-email" _v-398fcc2b=""></span>\n\t\t\t\t\t\n\t\t\t\t\t</div>\n\t\t\t\t\t\n\t\t\t\t\t<p class="help is-danger" v-if="error" v-html="strings.error_register" _v-398fcc2b=""></p>\n\t\t\t\t</div>\n\t\t\t\t<div class="field " _v-398fcc2b="">\n\t\t\t\t\t<div class="control " _v-398fcc2b="">\n\t\t\t\t\t\t<div class=" has-text-centered-mobile" _v-398fcc2b="">\n\t\t\t\t\t\t\t<button @click="registerAccount" class="button is-fullwidth is-medium is-primary " :class="isLoading ? \'is-loading\' :\'\' " _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<span class="icon dashicons dashicons-admin-users" _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t<span _v-398fcc2b="">{{strings.register_btn}}</span>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<hr _v-398fcc2b="">\n\t\t\t\t\t\t<div class=" is-right has-text-centered-mobile has-text-right" _v-398fcc2b="">\n\t\t\t\t\t\t\t<button @click="toggleApiForm" class="button is-fullwidth is-medium is-outlined is-info" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<span class="icon dashicons dashicons-admin-network is-small" _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t<span _v-398fcc2b="">{{strings.api_exists}}</span>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</section>\n'},function(t,e,n){var o,i;n(33),o=n(35),i=n(36),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(34);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t.loader[_v-1dc903c1] {\n\t\tmargin: 0 auto;\n\t\tfont-size: 10em;\n\t\tborder-left: 2px solid #888 !important;\n\t\tborder-bottom: 2px solid #888 !important;\n\t\tmargin-top: 0.2em;\n\t}\n\t\n\t.progress[_v-1dc903c1]::-webkit-progress-value {\n\t\ttransition: width 0.5s ease;\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"last-images",data:function(){return{loading:!0,startTime:0,maxTime:20,noImages:!1,home_url:optimoleDashboardApp.home_url,strings:optimoleDashboardApp.strings.latest_images}},props:{status:status},mounted:function(){if(this.$store.state.optimizedImages.length>0)return void(this.loading=!1);this.doProgressBar(),this.$store.dispatch("retrieveOptimizedImages",{waitTime:1e3*this.maxTime,component:this})},watch:{imageData:function(){var t=this;this.imageData.length>0&&(this.startTime=this.maxTime,setTimeout(function(){t.loading=!1},1e3))}},computed:{imageData:function(){return null!==this.$store.state.optimizedImages?this.$store.state.optimizedImages:[]}},methods:{doProgressBar:function(){this.startTime!==this.maxTime&&(this.startTime++,setTimeout(this.doProgressBar,1e3))},compressionRate:function(t,e){var n=(parseFloat(t/e*100)-100).toFixed(1);return n<1?this.strings.same_size:n>1&&n<25?this.strings.small_optimization.replace("{ratio}",n.toString()+"%"):n>25&&n<100?this.strings.medium_optimization.replace("{ratio}",n.toString()+"%"):n>100?this.strings.big_optimization.replace("{ratio}",(Math.floor(n/10+10)/10).toFixed(1).toString()+"x"):void 0}}}},function(t,e){t.exports='\n\t<div _v-1dc903c1="">\n\t\t<div class="optimized-images" v-if="! loading " _v-1dc903c1="">\n\t\t\t<div v-if="!noImages" _v-1dc903c1="">\n\t\t\t\t<h3 class="has-text-centered" _v-1dc903c1="">{{strings.last}} {{strings.optimized_images}}</h3>\n\t\t\t\t<table class="table is-striped is-hoverable is-fullwidth" _v-1dc903c1="">\n\t\t\t\t\t<thead _v-1dc903c1="">\n\t\t\t\t\t<tr _v-1dc903c1="">\n\t\t\t\t\t\t<th class="optml-image-heading" _v-1dc903c1="">{{strings.image}}</th>\n\t\t\t\t\t\t<th class="optml-image-ratio-heading" _v-1dc903c1="">{{strings.compression}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</thead>\n\t\t\t\t\t<tbody _v-1dc903c1="">\n\t\t\t\t\t<tr v-for="(item, index) in imageData" _v-1dc903c1="">\n\t\t\t\t\t\t<td _v-1dc903c1=""><a :href="item.url" target="_blank" _v-1dc903c1=""><img :src="item.url" class="optml-image" _v-1dc903c1=""></a></td>\n\t\t\t\t\t\t<td _v-1dc903c1=""><p class="optml-ratio-feedback" v-html="compressionRate(item.ex_size_raw, item.new_size_raw)" _v-1dc903c1=""></p>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</div>\n\t\t<div v-else="" _v-1dc903c1="">\n\t\t\t<iframe width="1" height="1" :src="home_url" style="visibility: hidden" _v-1dc903c1=""></iframe>\n\t\t\t<h6 class="has-text-centered" _v-1dc903c1="">{{strings.loading_latest_images}}</h6>\n\t\t\t<progress class="progress is-large" :value="startTime" :max="maxTime" _v-1dc903c1=""></progress>\n\t\t</div>\n\t\t<table class="table is-striped is-hoverable is-fullwidth" v-if="noImages" _v-1dc903c1="">\n\t\t\t<thead _v-1dc903c1="">\n\t\t\t<tr _v-1dc903c1="">\n\t\t\t\t<th class="optml-image-heading has-text-centered" v-html="strings.no_images_found" _v-1dc903c1=""></th>\n\t\t\t</tr>\n\t\t\t</thead>\n\t\t</table>\n\t</div>\n'},function(t,e,n){var o,i;o=n(38),i=n(44),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(39),i=function(t){return t&&t.__esModule?t:{default:t}}(o);e.default={name:"conflicts",components:{ConflictItem:i.default},data:function(){return{home_url:optimoleDashboardApp.home_url,strings:optimoleDashboardApp.strings.conflicts}},computed:{noConflicts:function(){return 0===this.$store.state.conflicts.count},conflictData:function(){return null!==this.$store.state.conflicts.conflicts?this.$store.state.conflicts.conflicts:[]}}}},function(t,e,n){var o,i;n(40),o=n(42),i=n(43),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(41);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t#optimole-app .optml-conflict-done.button.is-link.is-outlined.is-loading[_v-5dd24740]::after {\n\t\tborder-color: transparent transparent #fff #fff !important;\n\t}\n\n\t.optml-conflict-done[_v-5dd24740]:hover {\n\t\tbackground-color: transparent !important;\n\t\tcolor: #fff !important;\n\t\tborder-color: transparent !important;\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"conflict-item",props:{item:{type:Object},is_loading:{type:Boolean,default:!1}},data:function(){return{home_url:optimoleDashboardApp.home_url,strings:optimoleDashboardApp.strings.conflicts}},methods:{conflictClass:function(t){return"high"===t?"is-danger":"medium"===t?"is-info":"is-primary"},dismissConflict:function(t){this.is_loading=!0,this.$store.dispatch("dismissConflict",{conflictID:t,component:this})}}}},function(t,e){t.exports='\n\t<div class="notification" :class="conflictClass( item.severity )" _v-5dd24740="">\n\t\t<div v-html="item.message" _v-5dd24740=""></div>\n\n\t\t<a :class="is_loading ? \'is-loading\' : \'\' " class="is-pulled-right button optml-conflict-done is-small is-link is-inverted is-outlined" v-on:click="dismissConflict( item.id )" _v-5dd24740=""><span v-if="!is_loading" class="dashicons dashicons-yes" _v-5dd24740=""></span>{{strings.conflict_close}}</a>\n\t\t<div class=" is-clearfix" _v-5dd24740=""></div>\n\t</div>\n'},function(t,e){t.exports='\n\t<div>\n\t\t<div class="conflicts-table">\n\t\t\t<h6 v-if="!noConflicts" class="has-text-centered">{{strings.title}}</h6>\n\t\t\t<div v-if="!noConflicts">\n\n\t\t\t\t<div class="row" v-for="(item, index) in conflictData">\n\t\t\t\t\t<div class="column">\n\t\t\t\t\t\t<conflict-item v-bind:item=item v-bind:is_loading="false"></conflict-item>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div v-if="noConflicts">\n\t\t\t\t<table class="table is-striped is-hoverable is-fullwidth">\n\t\t\t\t\t<tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th class="optml-image-heading has-text-centered" v-html="strings.no_conflicts_found"></th>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n'},function(t,e,n){var o,i;n(46),o=n(48),i=n(94),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(47);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n #optml-settings-menu > ul.menu-list.optml-settings-submenu[_v-5187a250] {\n list-style: none;\n }\n\n #optml-settings-menu li a span.tag.optml-beta[_v-5187a250] {\n border-radius: 2px;\n font-family: Verdana;\n font-size: .5rem;\n height: 2.25em;\n margin-left: .5em;\n vertical-align: text-bottom;\n }\n\n #optml-settings-menu > ul.menu-list > li > ul[_v-5187a250] {\n margin-top: 10px;\n padding-top: 10px;\n border: none;\n font-size: 0.8rem;\n list-style: none;\n }\n\n .subtab-content[_v-5187a250] {\n\n padding: 0.5em 0.75em;\n }\n\n #optml-settings-menu[_v-5187a250] {\n padding-top: 23px;\n }\n\n .subtab-content[_v-5187a250] {\n padding-top: 10px;\n }\n\n .advanced-link[_v-5187a250] {\n font-size: 100%;\n line-height: 20px;\n }\n\n #optimole-app .is-menu-disabled > ul > li > a[_v-5187a250] {\n cursor: not-allowed;\n }\n\n .is-tab-disabled[_v-5187a250]:not(.is-tab-general),\n .is-menu-disabled[_v-5187a250] {\n opacity: 0.4;\n cursor: not-allowed;\n }\n",""])},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(49),a=o(i),r=n(54),s=o(r),l=n(5),p=o(l),c=n(74),d=o(c),m=n(79),u=o(m),f=n(89),h=o(f);e.default={name:"options",components:{Lazyload:h.default,Exclusions:u.default,Resize:d.default,Watermarks:p.default,Compression:s.default,General:a.default},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showNotification:!1,tab:"general",isDisabled:!1,advancedOpen:!1}},mounted:function(){},methods:{ToggleAdvanced:function(){this.advancedOpen=!this.advancedOpen,this.advancedOpen||(this.tab="general"),this.advancedOpen&&(this.tab="compression")},changeTab:function(t){this.tab=t},updateGlobalState:function(t){this.isDisabled=!t}},computed:{}}},function(t,e,n){var o,i;n(50),o=n(52),i=n(53),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(51);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n .is-field-disabled[_v-cb8820cc] {\n opacity: 0.5;\n }\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"general",components:{},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showNotification:!1,showSave:!1,isReplacerOff:!1,new_data:{}}},mounted:function(){this.isReplacerOff="disabled"===this.site_settings.image_replacer,this.$emit("update-status",!this.isReplacerOff)},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})}},computed:{site_settings:function(){return this.$store.state.site_settings},getReplacerStatus:{get:function(){return!("disabled"===this.site_settings.image_replacer)},set:function(t){this.showSave=!0,this.isReplacerOff=!t,this.$emit("update-status",t),this.new_data.image_replacer=t?"enabled":"disabled"}},lazyLoadStatus:{set:function(t){this.showSave=!0,this.new_data.lazyload=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.lazyload)}}}}},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-cb8820cc="">\n <div class="field columns" _v-cb8820cc="">\n <label class="label column has-text-grey-dark" _v-cb8820cc="">\n {{strings.enable_image_replace}}\n <p class="is-italic has-text-weight-normal" _v-cb8820cc="">\n {{strings.replacer_desc}}\n </p>\n </label>\n <div class="column is-3" _v-cb8820cc="">\n <toggle-button :class="\'has-text-dark\'" v-model="getReplacerStatus" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-cb8820cc=""></toggle-button>\n </div>\n\n </div>\n <div class="field is-fullwidth columns" :class="{\'is-field-disabled\':isReplacerOff }" _v-cb8820cc="">\n <label class="label column has-text-grey-dark" _v-cb8820cc="">\n {{strings.toggle_lazyload}}\n <p class="is-italic has-text-weight-normal" _v-cb8820cc="">\n {{strings.lazyload_desc}}\n </p>\n </label>\n\n <div class="column is-3 " _v-cb8820cc="">\n <toggle-button :class="\'has-text-dark\'" v-model="lazyLoadStatus" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-cb8820cc=""></toggle-button>\n </div>\n </div>\n <div class="field is-fullwidth columns " _v-cb8820cc="">\n <div class="column is-left" _v-cb8820cc="">\n <button @click="saveChanges()" class="button is-success is-small " :class="this.$store.state.loading ? \'is-loading\' : \'\' " :disabled="!showSave" _v-cb8820cc="">\n {{strings.save_changes}}\n </button>\n </div>\n </div>\n\n </div>\n'},function(t,e,n){var o,i;n(55),o=n(57),i=n(68),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(56);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n .sample-image[_v-2bdf3418]{\n margin-top:30px;\n }\n .view-sample-image[_v-2bdf3418]{\n\n line-height: 32px;\n margin-left: 20px;\n }\n",""])},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}function i(t){return 90===t?optimoleDashboardApp.strings.options_strings.high_q_title:75===t?optimoleDashboardApp.strings.options_strings.medium_q_title:55===t?optimoleDashboardApp.strings.options_strings.low_q_title:t}function a(t){return"number"==typeof t?t:"auto"===t?90:"high_c"===t?90:"medium_c"===t?75:"low_c"===t?55:90}Object.defineProperty(e,"__esModule",{value:!0});var r=n(58),s=o(r),l=n(59),p=o(l);n(64),e.default={name:"compression",components:{VueSlider:s.default,Image_diff:p.default},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,showSample:!1,loading_images:!1,showComparison:!1,new_data:{quality:a(this.$store.state.site_settings.quality),network_optimization:this.$store.state.site_settings.network_optimization},sliderOptions:{processStyle:{backgroundColor:"#3273dc"},contained:!0,dotStyle:{borderColor:"#3273dc"},min:1,max:100,tooltipFormatter:function(t){return i(t)},marks:function(t){var e={width:"12px",height:"12px",display:"block",backgroundColor:"#3273dc",borderColor:"#3273dc",boxShadow:"none",transform:"translate(-4px, -4px)"},n=i(t);return"number"!=typeof n&&{label:n,style:e}}}}},mounted:function(){},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})},newSample:function(t){return!0!==this.showComparison&&(this.showComparison=!0),this.updateSampleImage(this.new_data.quality,t?"yes":"no"),!1},updateSampleImage:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"no";this.$store.dispatch("sampleRate",{quality:t,force:n,component:this}).then(function(t){setTimeout(function(){e.showNotification=!1},1e3)},function(t){})}},computed:{site_settings:function(){return this.$store.state.site_settings},compressionRatio:function(){return(100*parseFloat(this.sample_images.optimized_size/this.sample_images.original_size)).toFixed(0)},sample_images:function(){return this.$store.state.sample_rate},networkStatus:{set:function(t){this.showSave=!0,this.new_data.network_optimization=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.network_optimization)}}}}},function(t,e,n){!function(e,o){t.exports=o(n(2))}("undefined"!=typeof self&&self,function(t){return function(t){function e(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return t[o].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};return e.m=t,e.c=n,e.d=function(t,n,o){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:o})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(e.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var i in t)e.d(o,i,function(e){return t[e]}.bind(null,i));return o},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s="fb15")}({2350:function(t,e){function n(t,e){var n=t[1]||"",i=t[3];if(!i)return n;if(e&&"function"==typeof btoa){var a=o(i);return[n].concat(i.sources.map(function(t){return"/*# sourceURL="+i.sourceRoot+t+" */"})).concat([a]).join("\n")}return[n].join("\n")}function o(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var o=n(e,t);return e[2]?"@media "+e[2]+"{"+o+"}":o}).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var o={},i=0;i<this.length;i++){var a=this[i][0];"number"==typeof a&&(o[a]=!0)}for(i=0;i<t.length;i++){var r=t[i];"number"==typeof r[0]&&o[r[0]]||(n&&!r[2]?r[2]=n:n&&(r[2]="("+r[2]+") and ("+n+")"),e.push(r))}},e}},"499e":function(t,e,n){"use strict";function o(t,e){for(var n=[],o={},i=0;i<e.length;i++){var a=e[i],r=a[0],s=a[1],l=a[2],p=a[3],c={id:t+":"+i,css:s,media:l,sourceMap:p};o[r]?o[r].parts.push(c):n.push(o[r]={id:r,parts:[c]})}return n}function i(t,e,n,i){h=n,v=i||{};var r=o(t,e);return a(r),function(e){for(var n=[],i=0;i<r.length;i++){var s=r[i],l=d[s.id];l.refs--,n.push(l)}for(e?(r=o(t,e),a(r)):r=[],i=0;i<n.length;i++)if(l=n[i],0===l.refs){for(var p=0;p<l.parts.length;p++)l.parts[p]();delete d[l.id]}}}function a(t){for(var e=0;e<t.length;e++){var n=t[e],o=d[n.id];if(o){o.refs++;for(var i=0;i<o.parts.length;i++)o.parts[i](n.parts[i]);for(;i<n.parts.length;i++)o.parts.push(s(n.parts[i]));o.parts.length>n.parts.length&&(o.parts.length=n.parts.length)}else{var a=[];for(i=0;i<n.parts.length;i++)a.push(s(n.parts[i]));d[n.id]={id:n.id,refs:1,parts:a}}}}function r(){var t=document.createElement("style");return t.type="text/css",m.appendChild(t),t}function s(t){var e,n,o=document.querySelector("style["+g+'~="'+t.id+'"]');if(o){if(h)return b;o.parentNode.removeChild(o)}if(x){var i=f++;o=u||(u=r()),e=l.bind(null,o,i,!1),n=l.bind(null,o,i,!0)}else o=r(),e=p.bind(null,o),n=function(){o.parentNode.removeChild(o)};return e(t),function(o){if(o){if(o.css===t.css&&o.media===t.media&&o.sourceMap===t.sourceMap)return;e(t=o)}else n()}}function l(t,e,n,o){var i=n?"":o.css;if(t.styleSheet)t.styleSheet.cssText=y(e,i);else{var a=document.createTextNode(i),r=t.childNodes;r[e]&&t.removeChild(r[e]),r.length?t.insertBefore(a,r[e]):t.appendChild(a)}}function p(t,e){var n=e.css,o=e.media,i=e.sourceMap;if(o&&t.setAttribute("media",o),v.ssrId&&t.setAttribute(g,e.id),i&&(n+="\n/*# sourceURL="+i.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}n.r(e),n.d(e,"default",function(){return i});var c="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!c)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var d={},m=c&&(document.head||document.getElementsByTagName("head")[0]),u=null,f=0,h=!1,b=function(){},v=null,g="data-vue-ssr-id",x="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase()),y=function(){var t=[];return function(e,n){return t[e]=n,t.filter(Boolean).join("\n")}}()},"4abb":function(t,e,n){var o=n("df80");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals),(0,n("499e").default)("3e7284f8",o,!0,{sourceMap:!1,shadowMode:!1})},"4ed8":function(t,e,n){var o=n("ae61");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals),(0,n("499e").default)("57c2b2f0",o,!0,{sourceMap:!1,shadowMode:!1})},"556c":function(t,e,n){var o=n("d5ac");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals),(0,n("499e").default)("f3ffc7f8",o,!0,{sourceMap:!1,shadowMode:!1})},"65d9":function(t,e,n){"use strict";function o(t,e){i(t,e),Object.getOwnPropertyNames(e.prototype).forEach(function(n){i(t.prototype,e.prototype,n)}),Object.getOwnPropertyNames(e).forEach(function(n){i(t,e,n)})}function i(t,e,n){(n?Reflect.getOwnMetadataKeys(e,n):Reflect.getOwnMetadataKeys(e)).forEach(function(o){var i=n?Reflect.getOwnMetadata(o,e,n):Reflect.getOwnMetadata(o,e);n?Reflect.defineMetadata(o,i,t,n):Reflect.defineMetadata(o,i,t)})}function a(t){return function(e,n,o){var i="function"==typeof e?e:e.constructor;i.__decorators__||(i.__decorators__=[]),"number"!=typeof o&&(o=void 0),i.__decorators__.push(function(e){return t(e,n,o)})}}function r(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return m.extend({mixins:t})}function s(t){var e=typeof t;return null==t||"object"!==e&&"function"!==e}function l(t,e){var n=e.prototype._init;e.prototype._init=function(){var e=this,n=Object.getOwnPropertyNames(t);if(t.$options.props)for(var o in t.$options.props)t.hasOwnProperty(o)||n.push(o);n.forEach(function(n){"_"!==n.charAt(0)&&Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){t[n]=e},configurable:!0})})};var o=new e;e.prototype._init=n;var i={};return Object.keys(o).forEach(function(t){void 0!==o[t]&&(i[t]=o[t])}),i}function p(t,e){void 0===e&&(e={}),e.name=e.name||t._componentTag||t.name;var n=t.prototype;Object.getOwnPropertyNames(n).forEach(function(t){if("constructor"!==t)if(b.indexOf(t)>-1)e[t]=n[t];else{var o=Object.getOwnPropertyDescriptor(n,t);void 0!==o.value?"function"==typeof o.value?(e.methods||(e.methods={}))[t]=o.value:(e.mixins||(e.mixins=[])).push({data:function(){var e;return e={},e[t]=o.value,e}}):(o.get||o.set)&&((e.computed||(e.computed={}))[t]={get:o.get,set:o.set})}}),(e.mixins||(e.mixins=[])).push({data:function(){return l(this,t)}});var i=t.__decorators__;i&&(i.forEach(function(t){return t(e)}),delete t.__decorators__);var a=Object.getPrototypeOf(t.prototype),r=a instanceof m?a.constructor:m,s=r.extend(e);return c(s,t,r),u&&o(s,t),s}function c(t,e,n){Object.getOwnPropertyNames(e).forEach(function(o){if("prototype"!==o){var i=Object.getOwnPropertyDescriptor(t,o);if(!i||i.configurable){var a=Object.getOwnPropertyDescriptor(e,o);if(!h){if("cid"===o)return;var r=Object.getOwnPropertyDescriptor(n,o);if(!s(a.value)&&r&&r.value===a.value)return}Object.defineProperty(t,o,a)}}})}function d(t){return"function"==typeof t?p(t):function(e){return p(e,t)}}Object.defineProperty(e,"__esModule",{value:!0});var m=/**
12
  * vue-class-component v7.0.1
13
  * (c) 2015-present Evan You
14
  * @license MIT
@@ -18,7 +18,7 @@ function(t){return t&&"object"==typeof t&&"default"in t?t.default:t}(n("8bbf")),
18
  * Version: 2.8.19
19
  * Author: LianYue
20
  */
21
- !function(e,n){t.exports=n()}(0,function(){"use strict";function t(t){var e=a(t);return r(e,t.body)}function e(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(){var t=document.head||document.getElementsByTagName("head")[0],e=n.styles||(n.styles={}),o="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(n,i){if(!document.querySelector('style[data-vue-ssr-id~="'+n+'"]')){var a=o?i.media||"default":n,r=e[a]||(e[a]={ids:[],parts:[],element:void 0});if(!r.ids.includes(n)){var s=i.source,l=r.ids.length;if(r.ids.push(n),i.map&&(s+="\n/*# sourceURL="+i.map.sources[0]+" */",s+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i.map))))+" */"),o&&(r.element=r.element||document.querySelector("style[data-group="+a+"]")),!r.element){var p=r.element=document.createElement("style");p.type="text/css",i.media&&p.setAttribute("media",i.media),o&&(p.setAttribute("data-group",a),p.setAttribute("data-next-index","0")),t.appendChild(p)}if(o&&(l=parseInt(r.element.getAttribute("data-next-index")),r.element.setAttribute("data-next-index",l+1)),r.element.styleSheet)r.parts.push(s),r.element.styleSheet.cssText=r.parts.filter(Boolean).join("\n");else{var c=document.createTextNode(s),d=r.element.childNodes;d[l]&&r.element.removeChild(d[l]),d.length?r.element.insertBefore(c,d[l]):r.element.appendChild(c)}}}}}function o(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e<t.length;e++)n[e]=t[e];return n}return Array.from(t)}function i(){var t=document.head||document.getElementsByTagName("head")[0],e=i.styles||(i.styles={}),n="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(o,i){if(!document.querySelector('style[data-vue-ssr-id~="'+o+'"]')){var a=n?i.media||"default":o,r=e[a]||(e[a]={ids:[],parts:[],element:void 0});if(!r.ids.includes(o)){var s=i.source,l=r.ids.length;if(r.ids.push(o),i.map&&(s+="\n/*# sourceURL="+i.map.sources[0]+" */",s+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i.map))))+" */"),n&&(r.element=r.element||document.querySelector("style[data-group="+a+"]")),!r.element){var p=r.element=document.createElement("style");p.type="text/css",i.media&&p.setAttribute("media",i.media),n&&(p.setAttribute("data-group",a),p.setAttribute("data-next-index","0")),t.appendChild(p)}if(n&&(l=parseInt(r.element.getAttribute("data-next-index")),r.element.setAttribute("data-next-index",l+1)),r.element.styleSheet)r.parts.push(s),r.element.styleSheet.cssText=r.parts.filter(Boolean).join("\n");else{var c=document.createTextNode(s),d=r.element.childNodes;d[l]&&r.element.removeChild(d[l]),d.length?r.element.insertBefore(c,d[l]):r.element.appendChild(c)}}}}}var a=function(t){var e=new XMLHttpRequest;return e.open(t.method||"GET",t.url),e.responseType="json",t.headers&&Object.keys(t.headers).forEach(function(n){e.setRequestHeader(n,t.headers[n])}),e},r=function(t,e){return new Promise(function(n,o){t.onload=function(){if(t.status>=200&&t.status<300){var e;try{e=JSON.parse(t.response)}catch(n){e=t.response}n(e)}else o(t.response)},t.onerror=function(){return o(t.response)},t.send(JSON.stringify(e))})},s=function(t,e){var n=new FormData;for(var o in e)n.append(o,e[o]);return new Promise(function(e,o){t.onload=function(){if(t.status>=200&&t.status<300){var n;try{n=JSON.parse(t.response)}catch(e){n=t.response}e(n)}else o(t.response)},t.onerror=function(){return o(t.response)},t.send(n)})},l=function(){function t(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(e,n,o){return n&&t(e.prototype,n),o&&t(e,o),e}}(),p=function(){function n(t,o){e(this,n),this.file=t,this.options=o}return l(n,[{key:"createChunks",value:function(){this.chunks=[];for(var t=0,e=this.chunkSize;t<this.fileSize;)this.chunks.push({blob:this.file.file.slice(t,e),startOffset:t,active:!1,retries:this.maxRetries}),t=e,e=t+this.chunkSize}},{key:"updateFileProgress",value:function(){this.file.progress=this.progress}},{key:"pause",value:function(){this.file.active=!1,this.stopChunks()}},{key:"stopChunks",value:function(){this.chunksUploading.forEach(function(t){t.xhr.abort(),t.active=!1})}},{key:"resume",value:function(){this.file.active=!0,this.startChunking()}},{key:"upload",value:function(){var t=this;return this.promise=new Promise(function(e,n){t.resolve=e,t.reject=n}),this.start(),this.promise}},{key:"start",value:function(){var e=this;t({method:"POST",headers:Object.assign({},this.headers,{"Content-Type":"application/json"}),url:this.action,body:Object.assign(this.startBody,{phase:"start",mime_type:this.fileType,size:this.fileSize,name:this.fileName})}).then(function(t){if("success"!==t.status)return e.file.response=t,e.reject("server");e.sessionId=t.data.session_id,e.chunkSize=t.data.end_offset,e.createChunks(),e.startChunking()}).catch(function(t){e.file.response=t,e.reject("server")})}},{key:"startChunking",value:function(){for(var t=0;t<this.maxActiveChunks;t++)this.uploadNextChunk()}},{key:"uploadNextChunk",value:function(){if(this.file.active){if(this.hasChunksToUpload)return this.uploadChunk(this.chunksToUpload[0]);if(0===this.chunksUploading.length)return this.finish()}}},{key:"uploadChunk",value:function(t){var e=this;t.progress=0,t.active=!0,this.updateFileProgress(),t.xhr=a({method:"POST",headers:this.headers,url:this.action}),t.xhr.upload.addEventListener("progress",function(e){e.lengthComputable&&(t.progress=Math.round(e.loaded/e.total*100))},!1),s(t.xhr,Object.assign(this.uploadBody,{phase:"upload",session_id:this.sessionId,start_offset:t.startOffset,chunk:t.blob})).then(function(n){if(t.active=!1,"success"===n.status)t.uploaded=!0;else if(t.retries--<=0)return e.stopChunks(),e.reject("upload");e.uploadNextChunk()}).catch(function(){if(t.active=!1,t.retries--<=0)return e.stopChunks(),e.reject("upload");e.uploadNextChunk()})}},{key:"finish",value:function(){var e=this;this.updateFileProgress(),t({method:"POST",headers:Object.assign({},this.headers,{"Content-Type":"application/json"}),url:this.action,body:Object.assign(this.finishBody,{phase:"finish",session_id:this.sessionId})}).then(function(t){if(e.file.response=t,"success"!==t.status)return e.reject("server");e.resolve(t)}).catch(function(t){e.file.response=t,e.reject("server")})}},{key:"maxRetries",get:function(){return parseInt(this.options.maxRetries)}},{key:"maxActiveChunks",get:function(){return parseInt(this.options.maxActive)}},{key:"fileType",get:function(){return this.file.type}},{key:"fileSize",get:function(){return this.file.size}},{key:"fileName",get:function(){return this.file.name}},{key:"action",get:function(){return this.options.action||null}},{key:"startBody",get:function(){return this.options.startBody||{}}},{key:"uploadBody",get:function(){return this.options.uploadBody||{}}},{key:"finishBody",get:function(){return this.options.finishBody||{}}},{key:"headers",get:function(){return this.options.headers||{}}},{key:"readyToUpload",get:function(){return!!this.chunks}},{key:"progress",get:function(){var t=this,e=this.chunksUploaded.length/this.chunks.length*100,n=this.chunksUploading.reduce(function(e,n){return e+(0|n.progress)/t.chunks.length},0);return Math.min(e+n,100)}},{key:"chunksToUpload",get:function(){return this.chunks.filter(function(t){return!t.active&&!t.uploaded})}},{key:"hasChunksToUpload",get:function(){return this.chunksToUpload.length>0}},{key:"chunksUploading",get:function(){return this.chunks.filter(function(t){return!!t.xhr&&!!t.active})}},{key:"chunksUploaded",get:function(){return this.chunks.filter(function(t){return!!t.uploaded})}}]),n}(),c={methods:{change:function(t){this.$parent.addInputFile(t.target),t.target.files?(t.target.value="",/safari/i.test(navigator.userAgent)||(t.target.type="",t.target.type="file")):(this.$destroy(),new this.constructor({parent:this.$parent,el:this.$el}))}}},d=c,m=function(){var t=this,e=t.$createElement;return(t._self._c||e)("input",{attrs:{type:"file",name:t.$parent.name,id:t.$parent.inputId||t.$parent.name,accept:t.$parent.accept,capture:t.$parent.capture,disabled:t.$parent.disabled,webkitdirectory:t.$parent.directory&&t.$parent.features.directory,directory:t.$parent.directory&&t.$parent.features.directory,multiple:t.$parent.multiple&&t.$parent.features.html5},on:{change:t.change}})},u=[],f=function(t,e,n,o,i,a,r,s){var l=("function"==typeof n?n.options:n)||{};return l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,i&&(l.functional=!0)),l._scopeId=o,l}({render:m,staticRenderFns:u},void 0,d,void 0,!1,void 0,n,void 0),h=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t},b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v={headers:{},action:"",minSize:1048576,maxActive:3,maxRetries:5,handler:p},g={components:{InputFile:f},props:{inputId:{type:String},name:{type:String,default:"file"},accept:{type:String},capture:{},disabled:{},multiple:{type:Boolean},maximum:{type:Number,default:function(){return this.multiple?0:1}},addIndex:{type:[Boolean,Number]},directory:{type:Boolean},postAction:{type:String},putAction:{type:String},customAction:{type:Function},headers:{type:Object,default:Object},data:{type:Object,default:Object},timeout:{type:Number,default:0},drop:{default:!1},dropDirectory:{type:Boolean,default:!0},size:{type:Number,default:0},extensions:{default:Array},value:{type:Array,default:Array},thread:{type:Number,default:1},chunkEnabled:{type:Boolean,default:!1},chunk:{type:Object,default:function(){return v}}},data:function(){return{files:this.value,features:{html5:!0,directory:!1,drag:!1},active:!1,dropActive:!1,uploading:0,destroy:!1}},mounted:function(){var t=document.createElement("input");if(t.type="file",t.multiple=!0,window.FormData&&t.files?("boolean"!=typeof t.webkitdirectory&&"boolean"!=typeof t.directory||(this.features.directory=!0),this.features.html5&&void 0!==t.ondrop&&(this.features.drop=!0)):this.features.html5=!1,this.maps={},this.files)for(var e=0;e<this.files.length;e++){var n=this.files[e];this.maps[n.id]=n}this.$nextTick(function(){this.$parent&&this.$parent.$forceUpdate(),this.watchDrop(this.drop)})},beforeDestroy:function(){this.destroy=!0,this.active=!1},computed:{uploaded:function(){for(var t=void 0,e=0;e<this.files.length;e++)if(t=this.files[e],t.fileObject&&!t.error&&!t.success)return!1;return!0},chunkOptions:function(){return Object.assign(v,this.chunk)},className:function(){return["file-uploads",this.features.html5?"file-uploads-html5":"file-uploads-html4",this.features.directory&&this.directory?"file-uploads-directory":void 0,this.features.drop&&this.drop?"file-uploads-drop":void 0,this.disabled?"file-uploads-disabled":void 0]}},watch:{active:function(t){this.watchActive(t)},dropActive:function(){this.$parent&&this.$parent.$forceUpdate()},drop:function(t){this.watchDrop(t)},value:function(t){if(this.files!==t){this.files=t;var e=this.maps;this.maps={};for(var n=0;n<this.files.length;n++){var o=this.files[n];this.maps[o.id]=o}for(var i in this.maps){var a=this.maps[i],r=e[i];a!==r&&this.emitFile(a,r)}for(var s in e)this.maps[s]||this.emitFile(void 0,e[s])}}},methods:{clear:function(){if(this.files.length){var t=this.files;this.files=[],this.maps={},this.emitInput();for(var e=0;e<t.length;e++)this.emitFile(void 0,t[e])}return!0},get:function(t){return!!t&&("object"===(void 0===t?"undefined":b(t))?this.maps[t.id]||!1:this.maps[t]||!1)},add:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.addIndex,n=t,o=n instanceof Array;o||(n=[n]);for(var i=[],a=0;a<n.length;a++){var r=n[a];this.features.html5&&r instanceof Blob&&(r={file:r,size:r.size,name:r.webkitRelativePath||r.relativePath||r.name||"unknown",type:r.type});var s=!1;if(!1===r.fileObject||(r.fileObject?s=!0:"undefined"!=typeof Element&&r.el instanceof Element?s=!0:"undefined"!=typeof Blob&&r.file instanceof Blob&&(s=!0)),s&&(r=h({fileObject:!0,size:-1,name:"Filename",type:"",active:!1,error:"",success:!1,putAction:this.putAction,postAction:this.postAction,timeout:this.timeout},r,{response:{},progress:"0.00",speed:0}),r.data=h({},this.data,r.data?r.data:{}),r.headers=h({},this.headers,r.headers?r.headers:{})),r.id||(r.id=Math.random().toString(36).substr(2)),!this.emitFilter(r,void 0)){if(this.maximum>1&&i.length+this.files.length>=this.maximum)break;if(i.push(r),1===this.maximum)break}}if(!i.length)return!1;1===this.maximum&&this.clear();var l=void 0;if(!0===e||0===e)l=i.concat(this.files);else if(e){var p;l=this.files.concat([]),(p=l).splice.apply(p,[e,0].concat(i))}else l=this.files.concat(i);this.files=l;for(var c=0;c<i.length;c++){var d=i[c];this.maps[d.id]=d}this.emitInput();for(var m=0;m<i.length;m++)this.emitFile(i[m],void 0);return o?i:i[0]},addInputFile:function(t){var e=[];if(t.files)for(var n=0;n<t.files.length;n++){var o=t.files[n];e.push({size:o.size,name:o.webkitRelativePath||o.relativePath||o.name,type:o.type,file:o})}else{var i=t.value.replace(/\\/g,"/").split("/");delete t.__vuex__,e.push({name:i[i.length-1],el:t})}return this.add(e)},addDataTransfer:function(t){var e=this,n=[];if(t.items&&t.items.length){for(var i=[],a=0;a<t.items.length;a++){var r=t.items[a];r=r.getAsEntry?r.getAsEntry()||r.getAsFile():r.webkitGetAsEntry?r.webkitGetAsEntry()||r.getAsFile():r.getAsFile(),r&&i.push(r)}return new Promise(function(t,a){!function a(r){var s=i[r];if(!s||e.maximum>0&&n.length>=e.maximum)return t(e.add(n));e.getEntry(s).then(function(t){n.push.apply(n,o(t)),a(r+1)})}(0)})}if(t.files.length){for(var s=0;s<t.files.length&&(n.push(t.files[s]),!(this.maximum>0&&n.length>=this.maximum));s++);return Promise.resolve(this.add(n))}return Promise.resolve([])},getEntry:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return new Promise(function(i,a){if(t.isFile)t.file(function(t){i([{size:t.size,name:n+t.name,type:t.type,file:t}])});else if(t.isDirectory&&e.dropDirectory){var r=[],s=t.createReader();!function a(){s.readEntries(function(s){!function l(p){return!s[p]&&0===p||e.maximum>0&&r.length>=e.maximum?i(r):s[p]?void e.getEntry(s[p],n+t.name+"/").then(function(t){r.push.apply(r,o(t)),l(p+1)}):a()}(0)})}()}else i([])})},replace:function(t,e){var n=this.get(t),o=this.get(e);if(!n||!o||n===o)return!1;var i=this.files.concat([]),a=i.indexOf(n),r=i.indexOf(o);return-1!==a&&-1!==r&&(i[a]=o,i[r]=n,this.files=i,this.emitInput(),!0)},remove:function(t){var e=this.get(t);if(e){if(this.emitFilter(void 0,e))return!1;var n=this.files.concat([]),o=n.indexOf(e);if(-1===o)return console.error("remove",e),!1;n.splice(o,1),this.files=n,delete this.maps[e.id],this.emitInput(),this.emitFile(void 0,e)}return e},update:function(t,e){var n=this.get(t);if(n){var o=h({},n,e);if(!n.fileObject||!n.active||o.active||o.error||o.success||(o.error="abort"),this.emitFilter(o,n))return!1;var i=this.files.concat([]),a=i.indexOf(n);return-1===a?(console.error("update",n),!1):(i.splice(a,1,o),this.files=i,delete this.maps[n.id],this.maps[o.id]=o,this.emitInput(),this.emitFile(o,n),o)}return!1},emitFilter:function(t,e){var n=!1;return this.$emit("input-filter",t,e,function(){return n=!0}),n},emitFile:function(t,e){this.$emit("input-file",t,e),!(t&&t.fileObject&&t.active)||e&&e.active?t&&t.fileObject&&t.active||!e||!e.fileObject||!e.active||this.uploading--:(this.uploading++,this.$nextTick(function(){var e=this;setTimeout(function(){e.upload(t).then(function(){(t=e.get(t))&&t.fileObject&&e.update(t,{active:!1,success:!t.error})}).catch(function(n){e.update(t,{active:!1,success:!1,error:n.code||n.error||n.message||n})})},parseInt(50*Math.random()+50,10))})),!this.active||Boolean(t)===Boolean(e)&&t.active===e.active||this.watchActive(!0)},emitInput:function(){this.$emit("input",this.files)},upload:function(t){var e=this.get(t);if(!e)return Promise.reject("not_exists");if(!e.fileObject)return Promise.reject("file_object");if(e.error)return Promise.reject(e.error);if(e.success)return Promise.resolve(e);var n=this.extensions;if(n&&(n.length||void 0===n.length)&&("object"===(void 0===n?"undefined":b(n))&&n instanceof RegExp||("string"==typeof n&&(n=n.split(",").map(function(t){return t.trim()}).filter(function(t){return t})),n=new RegExp("\\.("+n.join("|").replace(/\./g,"\\.")+")$","i")),-1===e.name.search(n)))return Promise.reject("extension");if(this.size>0&&e.size>=0&&e.size>this.size)return Promise.reject("size");if(this.customAction)return this.customAction(e,this);if(this.features.html5){if(this.shouldUseChunkUpload(e))return this.uploadChunk(e);if(e.putAction)return this.uploadPut(e);if(e.postAction)return this.uploadHtml5(e)}return e.postAction?this.uploadHtml4(e):Promise.reject("No action configured")},shouldUseChunkUpload:function(t){return this.chunkEnabled&&!!this.chunkOptions.handler&&t.size>this.chunkOptions.minSize},uploadChunk:function(t){var e=this.chunkOptions.handler;return t.chunk=new e(t,this.chunkOptions),t.chunk.upload()},uploadPut:function(t){var e=[],n=void 0;for(var o in t.data)null!==(n=t.data[o])&&void 0!==n&&e.push(encodeURIComponent(o)+"="+encodeURIComponent(n));var i=e.length?(-1===t.putAction.indexOf("?")?"?":"&")+e.join("&"):"",a=new XMLHttpRequest;return a.open("PUT",t.putAction+i),this.uploadXhr(a,t,t.file)},uploadHtml5:function(t){var e=new window.FormData,n=void 0;for(var o in t.data)n=t.data[o],n&&"object"===(void 0===n?"undefined":b(n))&&"function"!=typeof n.toString?n instanceof File?e.append(o,n,n.name):e.append(o,JSON.stringify(n)):null!==n&&void 0!==n&&e.append(o,n);e.append(this.name,t.file,t.file.filename||t.name);var i=new XMLHttpRequest;return i.open("POST",t.postAction),this.uploadXhr(i,t,e)},uploadXhr:function(t,e,n){var o=this,i=e,a=0,r=0;t.upload.onprogress=function(t){if(i=o.get(i),t.lengthComputable&&i&&i.fileObject&&i.active){var e=Math.round(Date.now()/1e3);e!==a&&(a=e,i=o.update(i,{progress:(t.loaded/t.total*100).toFixed(2),speed:t.loaded-r}),r=t.loaded)}};var s=setInterval(function(){if(!(i=o.get(i))||!i.fileObject||i.success||i.error||!i.active){s&&(clearInterval(s),s=!1);try{t.abort(),t.timeout=1}catch(t){}}},100);return new Promise(function(e,a){var r=void 0,l=function(n){if(!r){if(r=!0,s&&(clearInterval(s),s=!1),!(i=o.get(i)))return a("not_exists");if(!i.fileObject)return a("file_object");if(i.error)return a(i.error);if(!i.active)return a("abort");if(i.success)return e(i);var l={};switch(n.type){case"timeout":case"abort":l.error=n.type;break;case"error":t.status?t.status>=500?l.error="server":t.status>=400&&(l.error="denied"):l.error="network";break;default:t.status>=500?l.error="server":t.status>=400?l.error="denied":l.progress="100.00"}if(t.responseText){var p=t.getResponseHeader("Content-Type");p&&-1!==p.indexOf("/json")?l.response=JSON.parse(t.responseText):l.response=t.responseText}return i=o.update(i,l),i.error?a(i.error):e(i)}};t.onload=l,t.onerror=l,t.onabort=l,t.ontimeout=l,i.timeout&&(t.timeout=i.timeout);for(var p in i.headers)t.setRequestHeader(p,i.headers[p]);i=o.update(i,{xhr:t}),t.send(n)})},uploadHtml4:function(t){var e=this,n=t,o=function(t){27===t.keyCode&&t.preventDefault()},i=document.createElement("iframe");i.id="upload-iframe-"+n.id,i.name="upload-iframe-"+n.id,i.src="about:blank",i.setAttribute("style","width:1px;height:1px;top:-999em;position:absolute; margin-top:-999em;");var a=document.createElement("form");a.action=n.postAction,a.name="upload-form-"+n.id,a.setAttribute("method","POST"),a.setAttribute("target","upload-iframe-"+n.id),a.setAttribute("enctype","multipart/form-data");var r=void 0,s=void 0;for(var l in n.data)r=n.data[l],r&&"object"===(void 0===r?"undefined":b(r))&&"function"!=typeof r.toString&&(r=JSON.stringify(r)),null!==r&&void 0!==r&&(s=document.createElement("input"),s.type="hidden",s.name=l,s.value=r,a.appendChild(s));a.appendChild(n.el),document.body.appendChild(i).appendChild(a);var p=function(){var t=void 0;try{i.contentWindow&&(t=i.contentWindow.document)}catch(t){}if(!t)try{t=i.contentDocument?i.contentDocument:i.document}catch(e){t=i.document}return t&&t.body?t.body.innerHTML:null};return new Promise(function(t,r){setTimeout(function(){if(!(n=e.update(n,{iframe:i})))return r("not_exists");var s=setInterval(function(){(n=e.get(n))&&n.fileObject&&!n.success&&!n.error&&n.active||(s&&(clearInterval(s),s=!1),i.onabort({type:n?"abort":"not_exists"}))},100),l=void 0,c=function(i){if(!l){if(l=!0,s&&(clearInterval(s),s=!1),document.body.removeEventListener("keydown",o),!(n=e.get(n)))return r("not_exists");if(!n.fileObject)return r("file_object");if(n.error)return r(n.error);if(!n.active)return r("abort");if(n.success)return t(n);var a=p(),c={};switch(i.type){case"abort":c.error="abort";break;case"error":n.error?c.error=n.error:c.error=null===a?"network":"denied";break;default:n.error?c.error=n.error:null===c?c.error="network":c.progress="100.00"}if(null!==a){if(a&&"{"===a.substr(0,1)&&"}"===a.substr(a.length-1,1))try{a=JSON.parse(a)}catch(t){}c.response=a}return n=e.update(n,c),n.error?r(n.error):t(n)}};i.onload=c,i.onerror=c,i.onabort=c,document.body.addEventListener("keydown",o),a.submit()},50)}).then(function(t){return i.parentNode&&i.parentNode.removeChild(i),t}).catch(function(t){return i.parentNode&&i.parentNode.removeChild(i),t})},watchActive:function(t){for(var e=void 0,n=0;e=this.files[n];)if(n++,e.fileObject)if(t&&!this.destroy){if(this.uploading>=this.thread||this.uploading&&!this.features.html5)break;e.active||e.error||e.success||this.update(e,{active:!0})}else e.active&&this.update(e,{active:!1});else;0===this.uploading&&(this.active=!1)},watchDrop:function(t){var e=t;if(this.features.drop){if(this.dropElement)try{document.removeEventListener("dragenter",this.onDragenter,!1),document.removeEventListener("dragleave",this.onDragleave,!1),document.removeEventListener("drop",this.onDocumentDrop,!1),this.dropElement.removeEventListener("dragover",this.onDragover,!1),this.dropElement.removeEventListener("drop",this.onDrop,!1)}catch(t){}e?"string"==typeof e?e=document.querySelector(e)||this.$root.$el.querySelector(e):!0===e&&(e=this.$parent.$el):e=!1,this.dropElement=e,this.dropElement&&(document.addEventListener("dragenter",this.onDragenter,!1),document.addEventListener("dragleave",this.onDragleave,!1),document.addEventListener("drop",this.onDocumentDrop,!1),this.dropElement.addEventListener("dragover",this.onDragover,!1),this.dropElement.addEventListener("drop",this.onDrop,!1))}},onDragenter:function(t){if(t.preventDefault(),!this.dropActive&&t.dataTransfer){var e=t.dataTransfer;e.files&&e.files.length?this.dropActive=!0:e.types?e.types.indexOf&&-1!==e.types.indexOf("Files")?this.dropActive=!0:e.types.contains&&e.types.contains("Files")&&(this.dropActive=!0):this.dropActive=!0}},onDragleave:function(t){t.preventDefault(),this.dropActive&&("HTML"===t.target.nodeName||t.target===t.explicitOriginalTarget||!t.fromElement&&(t.clientX<=0||t.clientY<=0||t.clientX>=window.innerWidth||t.clientY>=window.innerHeight))&&(this.dropActive=!1)},onDragover:function(t){t.preventDefault()},onDocumentDrop:function(){this.dropActive=!1},onDrop:function(t){t.preventDefault(),this.addDataTransfer(t.dataTransfer)}}},x=g,y=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{class:t.className},[t._t("default"),t._v(" "),n("label",{attrs:{for:t.inputId||t.name}}),t._v(" "),n("input-file")],2)},w=[],k=function(t){t&&t("data-v-595958af_0",{source:"\n.file-uploads{overflow:hidden;position:relative;text-align:center;display:inline-block\n}\n.file-uploads.file-uploads-html4 input,.file-uploads.file-uploads-html5 label{background:#fff;opacity:0;font-size:20em;z-index:1;top:0;left:0;right:0;bottom:0;position:absolute;width:100%;height:100%\n}\n.file-uploads.file-uploads-html4 label,.file-uploads.file-uploads-html5 input{background:rgba(255,255,255,0);overflow:hidden;position:fixed;width:1px;height:1px;z-index:-1;opacity:0\n}",map:void 0,media:void 0})},_=function(t,e,n,o,i,a,r,s){var l=("function"==typeof n?n.options:n)||{};l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,i&&(l.functional=!0)),l._scopeId=o;var p=void 0;if(e&&(p=function(t){e.call(this,r(t))}),void 0!==p)if(l.functional){var c=l.render;l.render=function(t,e){return p.call(e),c(t,e)}}else{var d=l.beforeCreate;l.beforeCreate=d?[].concat(d,p):[p]}return l}({render:y,staticRenderFns:w},k,x,void 0,!1,void 0,i,void 0),C=Object.freeze({default:_});return C&&_||C})},function(t,e){t.exports='\n\t<div _v-6d81614d="">\n\t\t<h4 _v-6d81614d="">{{strings.add_desc}}</h4>\n\t\t<div class="field columns" _v-6d81614d="">\n\t\t\t<div class="column" v-for="file in files" _v-6d81614d="">\n <span class="tag" _v-6d81614d="">\n <i _v-6d81614d="">{{file.name}}</i>\n <i v-if="!file.active &amp;&amp; !file.success &amp;&amp; file.error === \'\'" class="dashicons dashicons-yes icon has-text-grey-light" _v-6d81614d=""></i>\n <i v-else-if="file.active" class="dashicons dashicons-marker icon spin has-text-warning" _v-6d81614d=""></i>\n <i v-else-if="!file.active &amp;&amp; file.success" class="dashicons dashicons-yes icon has-text-success" _v-6d81614d=""></i>\n <i v-else="" class="dashicons dashicons-no-alt icon has-text-danger" _v-6d81614d=""></i>\n </span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="column " _v-6d81614d="">\n\t\t\t<file-upload class="button is-secondary is-rounded" :post-action=" global.root + \'/add_watermark\'" :headers="{\'X-WP-Nonce\': global.nonce}" extensions="gif,jpg,jpeg,png,webp" accept="image/png,image/gif,image/jpeg,image/webp" :size="1024 * 1024 * 10" v-model="files" @input-filter="inputFilter" @input-file="inputFile" :disabled="loading" ref="upload" _v-6d81614d="">\n\t\t\t\t<i class="dashicons dashicons-plus icon" _v-6d81614d=""></i>\n\t\t\t\t{{strings.upload}}\n\t\t\t</file-upload>\n\t\t\t<br _v-6d81614d=""><br _v-6d81614d=""><span class="tag is-danger" v-if="is_error" _v-6d81614d="">{{error_message}}</span>\n\t\t</div>\n\t\t<hr _v-6d81614d="">\n\t\t<div class="box" _v-6d81614d="">\n\t\t\t<h3 _v-6d81614d=""><span class="dashicons dashicons-menu" _v-6d81614d=""></span> {{strings.list_header}} </h3>\n\t\t\t<small _v-6d81614d=""><i _v-6d81614d="">{{strings.max_allowed}}</i></small>\n\t\t\t\n\t\t\t<div class="optimized-images" _v-6d81614d="">\n\t\t\t\t<div v-if="!noImages" _v-6d81614d="">\n\t\t\t\t\t<h3 class="has-text-centered" _v-6d81614d="">{{strings.last}} {{strings.optimized_images}}</h3>\n\t\t\t\t\t<table class="table is-striped is-hoverable is-fullwidth" _v-6d81614d="">\n\t\t\t\t\t\t<thead _v-6d81614d="">\n\t\t\t\t\t\t<tr _v-6d81614d="">\n\t\t\t\t\t\t\t<th class="optml-image-heading" _v-6d81614d="">{{strings.id}}</th>\n\t\t\t\t\t\t\t<th class="optml-image-heading" _v-6d81614d="">{{strings.image}}</th>\n\t\t\t\t\t\t\t<th class="optml-image-heading" _v-6d81614d="">{{strings.action}}</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t<tbody _v-6d81614d="">\n\t\t\t\t\t\t<tr v-for="(item, index) in watermarkData" _v-6d81614d="">\n\t\t\t\t\t\t\t<td _v-6d81614d=""><code _v-6d81614d="">#{{item.ID}}</code></td>\n\t\t\t\t\t\t\t<td _v-6d81614d=""><img :src="item.guid" class="optml-image-watermark" width="50" _v-6d81614d=""></td>\n\t\t\t\t\t\t\t<td width="50" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a @click="removeWatermark(item.ID)" class="button is-small is-danger is-rounded" :class="{\'is-loading\':loading}" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t<span class="dashicons dashicons-no-alt icon" _v-6d81614d=""></span>\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t\t\n\t\t\t\t\t<span class="tag is-success" v-if="loading" _v-6d81614d="">\n\t\t\t\t\t{{strings.loading_remove_watermark}}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<table class="table is-striped is-hoverable is-fullwidth" v-if="noImages" _v-6d81614d="">\n\t\t\t\t<thead _v-6d81614d="">\n\t\t\t\t<tr _v-6d81614d="">\n\t\t\t\t\t<th class="optml-image-heading has-text-centered" v-html="strings.no_images_found" _v-6d81614d=""></th>\n\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t</table>\n\t\t\t<hr _v-6d81614d="">\n\t\t\t<h3 _v-6d81614d=""><span class="dashicons dashicons-grid-view" _v-6d81614d=""></span> {{strings.settings_header}} </h3>\n\t\t\t<br _v-6d81614d="">\n\t\t\t<div class="field is-fullwidth columns" _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.wm_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.wm_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow" _v-6d81614d="">\n\t\t\t\t\t\t\t<div class="select" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<select title="Watermark Selection" v-model="selectedWatermark" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t<option value="-1" _v-6d81614d="">No watermark</option>\n\t\t\t\t\t\t\t\t\t<option v-for="(item, index) in watermarkData" :value="item.ID" _v-6d81614d="">#({{item.ID}})\n\t\t\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field is-fullwidth columns" _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.opacity_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.opacity_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.opacity_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkOpacity" class="input is-small" type="number" min="0" max="100" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field columns" _v-6d81614d="">\n\t\t\t\t<label class="label column has-text-grey-dark" _v-6d81614d="">\n\t\t\t\t\t{{strings.position_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.position_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t<div class="column buttons " _v-6d81614d="">\n\t\t\t\t\t<div class="field columns is-gapless is-marginless " _v-6d81614d="">\n\t\t\t\t\t\t<div class="is-fullwidth optml-layout-grid" _v-6d81614d="">\n\t\t\t\t\t\t\t<a @click="changePosition(\'nowe\')" :class="{ \'is-info\':isActivePosition (\'nowe\'), \' is-selected\':watermarkSettings.position === \'nowe\' }" class="grid-button " :title="strings.pos_nowe_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'no\')" :class="{ \'is-info\':isActivePosition (\'no\'), \' is-selected\':watermarkSettings.position === \'no\' }" class="grid-button " :title="strings.pos_no_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'noea\')" :class="{ \'is-info\':isActivePosition (\'noea\'), \' is-selected\':watermarkSettings.position === \'noea\' }" class="grid-button" :title="strings.pos_noea_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'we\')" :class="{ \'is-info\':isActivePosition (\'we\'), \' is-selected\':watermarkSettings.position === \'we\' }" class="grid-button" :title="strings.pos_we_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'ce\')" :class="{ \'is-info\':isActivePosition (\'ce\'), \' is-selected\':watermarkSettings.position === \'ce\' }" class="grid-button" :title="strings.pos_ce_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'ea\')" :class="{ \'is-info\':isActivePosition (\'ea\'), \' is-selected\':watermarkSettings.position === \'ea\' }" class="grid-button" :title="strings.pos_ea_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'sowe\')" :class="{ \'is-info\':isActivePosition (\'sowe\'), \' is-selected\':watermarkSettings.position === \'sowe\' }" class="grid-button" :title="strings.pos_sowe_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'so\')" :class="{ \'is-info\':isActivePosition (\'so\'), \' is-selected\':watermarkSettings.position === \'so\' }" class="grid-button" :title="strings.pos_so_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'soea\')" :class="{ \'is-info\':isActivePosition (\'soea\'), \' is-selected\':watermarkSettings.position === \'soea\' }" class="grid-button" :title="strings.pos_soea_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<br _v-6d81614d="">\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field is-fullwidth columns " _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.offset_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.offset_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.offset_x_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkX" class="input is-tiny is-small" type="number" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.offset_y_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkY" class="input is-small is-tiny" type="number" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field is-fullwidth columns" _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.scale_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.scale_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.scale_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkScale" class="input is-small" type="number" min="0" max="100" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<p class="control column has-text-centered-desktop has-text-left-touch " _v-6d81614d="">\n\t\t\t\t<a @click="saveChanges()" class="button is-small is-success " :class="{\'is-loading\':loading}" _v-6d81614d="">\n\t\t\t\t\t<span class="dashicons dashicons-yes icon" _v-6d81614d=""></span>\n\t\t\t\t\t<span _v-6d81614d="">\t{{strings.save_changes}}</span>\n\t\t\t\t</a>\n\t\t\t</p>\n\t\t</div>\n\t</div>\n'},function(t,e,n){var o,i;n(75),o=n(77),i=n(78),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(76);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"resize",data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,new_data:{}}},mounted:function(){},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})}},computed:{site_settings:function(){return this.$store.state.site_settings},widthStatus:{set:function(t){this.showSave=!0,this.new_data.max_width=t},get:function(){return this.site_settings.max_width}},heightStatus:{set:function(t){this.showSave=!0,this.new_data.max_height=t},get:function(){return this.site_settings.max_height}},resizeSmart:{set:function(t){this.showSave=!0,this.new_data.resize_smart=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.resize_smart)}}}}},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-018981f2="">\n <div class="field columns" _v-018981f2="">\n <label class="label column has-text-grey-dark" _v-018981f2="">\n {{strings.enable_resize_smart_title}}\n <p class="is-italic has-text-weight-normal" _v-018981f2="">\n {{strings.enable_resize_smart_desc}}\n </p>\n </label>\n <div class="column is-3" _v-018981f2="">\n <toggle-button :class="\'has-text-dark\'" v-model="resizeSmart" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-018981f2=""></toggle-button>\n </div>\n\n </div>\n <div class="field columns " _v-018981f2="">\n <label class="label column has-text-grey-dark no-padding-right " _v-018981f2="">\n {{strings.size_title}}\n <p class="is-italic has-text-weight-normal" _v-018981f2="">\n {{strings.size_desc}}\n </p>\n </label>\n\n <div class="column is-6 " _v-018981f2="">\n <div class="columns" _v-018981f2="">\n <div class="field column is-narrow has-addons" _v-018981f2="">\n <p class="control" _v-018981f2="">\n <a class="button is-small is-static" _v-018981f2="">\n {{strings.width_field}}\n </a>\n </p>\n <p class="control " _v-018981f2="">\n <input v-model="widthStatus" class="input is-small" type="number" min="100" max="10000" _v-018981f2="">\n </p>\n </div>\n <div class="field column is-small has-addons" _v-018981f2="">\n <p class="control" _v-018981f2="">\n <a class="button is-small is-static" _v-018981f2="">\n {{strings.height_field}}\n </a>\n </p>\n <p class="control " _v-018981f2="">\n <input v-model="heightStatus" class="input is-small" type="number" min="100" max="10000" _v-018981f2="">\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class="field is-fullwidth columns " _v-018981f2="">\n <div class="column is-left" _v-018981f2="">\n <button @click="saveChanges()" class="button is-success is-small " :class="this.$store.state.loading ? \'is-loading\' : \'\' " :disabled="!showSave" _v-018981f2="">\n {{strings.save_changes}}\n </button>\n </div>\n </div>\n\n </div>\n'},function(t,e,n){var o,i;n(80),o=n(82),i=n(88),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(81);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(83),i=function(t){return t&&t.__esModule?t:{default:t}}(o);e.default={name:"exclusions",components:{FilterControl:i.default},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,new_data:{}}},mounted:function(){},methods:{},computed:{site_settings:function(){return this.$store.state.site_settings}}}},function(t,e,n){var o,i;n(84),o=n(86),i=n(87),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(85);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);!function(t){t&&t.__esModule}(o);e.default={name:"filter-control",props:["type"],data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,selected_filter:"filename",selected_value:"",filter_operator:optimoleDashboardApp.strings.options_strings.filter_operator_contains,FILTER_TYPES:{EXT:"extension",URL:"page_url",FILENAME:"filename"}}},mounted:function(){},methods:{saveRule:function(){var t={};t[this.type]={},t[this.type][this.selected_filter]={},t[this.type][this.selected_filter][this.selected_value]=!0,this.selected_value.length<3||this.$store.dispatch("saveSettings",{settings:{filters:t}})},removeRule:function(t,e){var n={};n[this.type]={},n[this.type][t]={},n[this.type][t][e]="false",this.$store.dispatch("saveSettings",{settings:{filters:n}})},changeFilterType:function(t){this.selected_value="",t.target.value===this.FILTER_TYPES.EXT&&(this.selected_value="svg",this.filter_operator=this.strings.filter_operator_is),t.target.value===this.FILTER_TYPES.URL&&(this.filter_operator=this.strings.filter_operator_contains),t.target.value===this.FILTER_TYPES.FILENAME&&(this.filter_operator=this.strings.filter_operator_contains),this.selected_filter=t.target.value},getFilterOperator:function(){return this.filter_operator}},computed:{filters:function(){return this.$store.state.site_settings.filters[this.type]}}}},function(t,e){t.exports='\n <div :id="\'filter-type-\'+type" _v-2be63146="">\n <div class="field " _v-2be63146="">\n <label class="label column has-text-grey-dark" _v-2be63146="">\n <span v-if="type===\'lazyload\'" _v-2be63146="">{{strings.exclude_title_lazyload}}</span>\n <span v-if="type===\'optimize\'" _v-2be63146="">{{strings.exclude_title_optimize}}</span>\n </label>\n </div>\n <div class="field columns" _v-2be63146="">\n <div class="column is-paddingless is-full " _v-2be63146="">\n <div class="list" _v-2be63146="">\n <div class="list-item exclusion-filter" v-for="(item, index) in filters[this.FILTER_TYPES.EXT]" _v-2be63146="">\n <div class="control" _v-2be63146="">\n <div class="tags is-centered has-addons" _v-2be63146="">\n <a class="tag is-marginless is-link has-text-left" _v-2be63146=""><i _v-2be63146="">{{strings.exclude_ext_desc}}</i>\n <strong _v-2be63146="">{{index}}</strong></a>\n <a class="tag is-marginless is-delete" @click="removeRule(FILTER_TYPES.EXT,index)" _v-2be63146=""></a>\n </div>\n </div>\n </div>\n <div class="list-item exclusion-filter" v-for="(item, index) in filters[this.FILTER_TYPES.URL]" _v-2be63146="">\n <div class="control" _v-2be63146="">\n <div class="tags is-centered has-addons" _v-2be63146="">\n <a class="tag is-marginless is-link has-text-left" _v-2be63146=""><i _v-2be63146="">{{strings.exclude_url_desc}}</i>\n <strong _v-2be63146="">{{index}}</strong></a>\n <a class="tag is-marginless is-delete" @click="removeRule(FILTER_TYPES.URL,index)" _v-2be63146=""></a>\n </div>\n </div>\n </div>\n <div class="list-item exclusion-filter" v-for="(item, index) in filters[this.FILTER_TYPES.FILENAME]" _v-2be63146="">\n <div class="control" _v-2be63146="">\n <div class="tags is-centered has-addons" _v-2be63146="">\n <a class="tag is-marginless is-link has-text-left" _v-2be63146=""><i _v-2be63146="">{{strings.exclude_filename_desc}}</i>\n <strong _v-2be63146="">{{index}}</strong></a>\n <a class="tag is-marginless is-delete" @click="removeRule(FILTER_TYPES.FILENAME,index)" _v-2be63146=""></a>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n <div class="field columns" _v-2be63146="">\n <div class="field has-addons column has-addons-centered" _v-2be63146="">\n <p class="control " _v-2be63146="">\n <span class="select is-small" _v-2be63146="">\n <select @change="changeFilterType($event)" _v-2be63146="">\n <option :value="FILTER_TYPES.FILENAME" _v-2be63146="">{{strings.filter_filename}}</option>\n <option :value="FILTER_TYPES.EXT" _v-2be63146="">{{strings.filter_ext}}</option>\n <option :value="FILTER_TYPES.URL" _v-2be63146="">{{strings.filter_url}}</option>\n </select>\n </span>\n </p>\n <p class="control" _v-2be63146="">\n <a class="button is-small is-static" _v-2be63146="">\n {{getFilterOperator()}}\n </a>\n </p>\n <p class="control" _v-2be63146="">\n <span v-if="this.selected_filter===this.FILTER_TYPES.EXT" class="select is-small" _v-2be63146="">\n <select v-model="selected_value" _v-2be63146="">\n <option value="svg" _v-2be63146="">.SVG</option>\n <option value="jpg" _v-2be63146="">.JPG</option>\n <option value="png" _v-2be63146="">.PNG</option>\n </select>\n </span>\n <input v-else="" v-model="selected_value" class="input is-small" type="text" placeholder="word" _v-2be63146="">\n </p>\n <p class="control" _v-2be63146="">\n <a class="button is-primary is-small" :class="this.$store.state.loading ? \'is-loading\' : \'\' " @click="saveRule()" _v-2be63146="">\n {{strings.add_filter}}\n </a>\n </p>\n </div>\n </div>\n <p class="has-text-centered " v-if="this.selected_filter === FILTER_TYPES.URL" _v-2be63146="">\n <i _v-2be63146="">For homepage use <strong _v-2be63146="">home</strong> keyword.</i>\n </p>\n </div>\n'},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-f5e043ba="">\n <div id="filters-list" _v-f5e043ba="">\n <div class="columns " _v-f5e043ba="">\n <filter-control :type="\'optimize\'" _v-f5e043ba=""></filter-control>\n </div>\n\t <hr _v-f5e043ba="">\n <div class="columns " v-if="this.$store.state.site_settings.lazyload === \'enabled\'" _v-f5e043ba="">\n <filter-control :type="\'lazyload\'" _v-f5e043ba=""></filter-control>\n </div>\n </div>\n\n </div>\n'},function(t,e,n){var o,i;n(90),o=n(92),i=n(93),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(91);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"lazyload",data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,new_data:{}}},mounted:function(){},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})}},computed:{site_settings:function(){return this.$store.state.site_settings},lazyloadPlaceholder:{set:function(t){this.showSave=!0,this.new_data.lazyload_placeholder=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.lazyload_placeholder)}}}}},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-2356e1d0="">\n <div class="field columns" _v-2356e1d0="">\n <label class="label column has-text-grey-dark" _v-2356e1d0="">\n {{strings.enable_lazyload_placeholder_title}}\n <p class="is-italic has-text-weight-normal" _v-2356e1d0="">\n {{strings.enable_lazyload_placeholder_desc}}\n </p>\n </label>\n <div class="column is-3" _v-2356e1d0="">\n <toggle-button :class="\'has-text-dark\'" v-model="lazyloadPlaceholder" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-2356e1d0=""></toggle-button>\n </div>\n\n </div>\n <div class="field is-fullwidth columns " _v-2356e1d0="">\n <div class="column is-left" _v-2356e1d0="">\n <button @click="saveChanges()" class="button is-success is-small " :class="this.$store.state.loading ? \'is-loading\' : \'\' " :disabled="!showSave" _v-2356e1d0="">\n {{strings.save_changes}}\n </button>\n </div>\n </div>\n\n </div>\n'},function(t,e){t.exports='\n <div class="columns" _v-5187a250="">\n <aside id="optml-settings-menu" class="menu column is-2-fullhd is-3-desktop is-3-tablet is-hidden-mobile" _v-5187a250="">\n <ul class="menu-list optml-settings-submenu is-marginless" _v-5187a250="">\n <li _v-5187a250=""><a @click="changeTab(\'general\')" href="#" :class="tab === \'general\' ? \'is-active\' : \'\'" :title="all_strings.general_settings_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.general_settings_menu_item}}</a>\n </li>\n <li :class="isDisabled ? \'is-menu-disabled\' : \'\' " _v-5187a250=""><a @click="ToggleAdvanced()" href="#" title="General settings" _v-5187a250=""><span _v-5187a250="">{{all_strings.advanced_settings_menu_item}}</span>\n <span class=" dashicons advanced-link " :class="advancedOpen ? \'dashicons-arrow-down-alt2\' : \'dashicons-arrow-right-alt2\'" _v-5187a250=""></span>\n </a>\n <ul class="menu-list optml-settings-submenu is-marginless " :class=" ! advancedOpen ? \'is-hidden\' : \'\' " _v-5187a250="">\n <li _v-5187a250=""><a @click="changeTab(\'compression\')" href="#" :class="tab === \'compression\' ? \'is-active\' : \'\'" :title="all_strings.settings_compression_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.settings_compression_menu_item}}</a>\n </li>\n <li _v-5187a250=""><a @click="changeTab(\'resize\')" href="#" :class="tab === \'resize\' ? \'is-active\' : \'\'" :title="all_strings.settings_resize_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.settings_resize_menu_item}}</a>\n </li>\n <li v-if="this.$store.state.site_settings.lazyload===\'enabled\'" _v-5187a250=""><a @click="changeTab(\'lazyload\')" href="#" :class="tab === \'lazyload\' ? \'is-active\' : \'\'" :title="all_strings.lazyload_settings_menu_item+\' \'+all_strings.lazyload_settings_menu_item" _v-5187a250="">{{all_strings.lazyload_settings_menu_item}}</a>\n </li>\n <li _v-5187a250=""><a href="#" @click="changeTab(\'exclusions\')" :class="tab === \'exclusions\' ? \'is-active\' : \'\'" :title="all_strings.settings_exclusions_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.settings_exclusions_menu_item}}</a>\n </li>\n <li _v-5187a250=""><a @click="changeTab(\'watermark\')" href="#" :class="tab === \'watermark\' ? \'is-active\' : \'\'" :title="all_strings.watermarks_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.watermarks_menu_item}}\n <span class=" optml-beta is-normal tag is-warning" _v-5187a250="">Beta</span></a></li>\n </ul>\n </li>\n </ul>\n </aside>\n <div :class="[{ \'saving--option\' : this.$store.state.loading, \'is-tab-disabled\':isDisabled},\'is-tab-\'+tab] " class=" column" _v-5187a250="">\n <div class="subtab-content" _v-5187a250="">\n <general v-if="tab === \'general\' " @update-status="updateGlobalState" _v-5187a250=""></general>\n <compression v-if="tab === \'compression\' " _v-5187a250=""></compression>\n <watermarks v-if="tab ===\'watermark\'" _v-5187a250=""></watermarks>\n <resize v-if="tab ===\'resize\'" _v-5187a250=""></resize>\n <lazyload v-if="tab ===\'lazyload\'" _v-5187a250=""></lazyload>\n <exclusions v-if="tab ===\'exclusions\'" _v-5187a250=""></exclusions>\n </div>\n </div>\n </div>\n'},function(t,e){t.exports='\n <div class="columns is-desktop">\n\n <div class="column ">\n <div class="card">\n <app-header></app-header>\n <div class="card-content">\n <div class="content">\n <connect-layout v-if="!this.$store.state.connected"></connect-layout>\n\n <transition name="slide-fade">\n <div v-if="this.$store.state.connected && ! this.$store.state.is_loaded" id="optml-loader">\n <div class="columns">\n <div class="column">\n\n <transition name="slide-fade">\n <h4 class="has-text-centered">{{this.getProgressMessage()}}</h4>\n </transition>\n </div>\n </div>\n <div class="columns">\n <div class=" column is-vertical-center ">\n <progress id="optml-progress-bar" class="progress is-medium is-info"\n :class="\'optml-progres-\'+(Math.floor(this.loading_percent/10))"\n max="100"></progress>\n </div>\n </div>\n <iframe :src="home" style="opacity:0;" ></iframe>\n </div>\n </transition>\n <transition name="fade" mode="out-in">\n <div v-if="this.$store.state.connected && this.$store.state.is_loaded">\n <div class="tabs is-left is-boxed is-medium">\n <ul class="is-marginless optml-tabs">\n <li :class="tab === \'dashboard\' ? \'is-active\' : \'\'">\n <a @click="changeTab(\'dashboard\')" class="is-size-6-mobile">\n <span class="icon is-size-6-mobile is-size-6-tablet dashicons dashicons-admin-home"></span>\n <span class="is-size-6-mobile is-size-6-touch ">{{strings.dashboard_menu_item}}</span>\n </a>\n </li>\n <li :class="tab === \'conflicts\' ? \'is-active\' : \'\'" v-if="conflictCount > 0">\n <a @click="changeTab(\'conflicts\')" class="is-size-6-mobile">\n <span class="icon is-size-6-mobile is-size-6-tablet dashicons dashicons-warning"></span>\n <span class="is-size-6-mobile is-size-6-touch">{{strings.conflicts_menu_item}}</span>&nbsp;\n <span class="tag is-rounded is-danger">{{conflictCount}}</span>\n </a>\n </li>\n <li :class="tab === \'settings\' ? \'is-active\' : \'\'">\n <a @click="changeTab(\'settings\')" class="is-size-6-mobile ">\n <span class="icon is-size-6-mobile is-size-6-tablet dashicons dashicons-admin-settings"></span>\n <span class="is-size-6-mobile is-size-6-touch">{{strings.settings_menu_item}}</span>\n </a>\n </li>\n\n </ul>\n </div>\n\n <div class="is-tab" v-if="tab === \'dashboard\' "\n :class="remove_images ? \'no-images\' : \'\' ">\n <div class="notification is-success" v-if="strings.notice_just_activated.length > 0"\n v-html="strings.notice_just_activated"></div>\n <api-key-form></api-key-form>\n <cdn-details v-if="this.$store.state.userData"></cdn-details>\n <hr/>\n <last-images :status="fetchStatus" v-if="! remove_images"></last-images>\n </div>\n <div class="is-tab" v-if=" tab === \'settings\'">\n <options></options>\n </div>\n <div class="is-tab" v-if=" tab === \'conflicts\'">\n <conflicts></conflicts>\n </div>\n </div>\n </transition>\n\n </div>\n </div>\n\n <div class="level-right">\n <p class="level-item"><a href="https://optimole.com" target="_blank">Optimole\n v{{strings.version}}</a></p>\n <p class="level-item"><a href="https://optimole.com/terms/"\n target="_blank">{{strings.terms_menu}}</a></p>\n <p class="level-item"><a href="https://optimole.com/privacy-policy/" target="_blank">{{strings.privacy_menu}}</a>\n </p>\n <p class="level-item"><a :href="\'https://speedtest.optimole.com/?url=\' + home " target="_blank">{{strings.testdrive_menu}}</a>\n </p>\n </div>\n </div>\n </div>\n <div v-if="this.$store.state.connected && this.$store.state.userData.plan === \'free\' "\n class="column is-narrow is-hidden-desktop-only is-hidden-tablet-only is-hidden-mobile">\n <div class="card optml-upgrade">\n <div class="card-header">\n <h3 class="is-size-5 card-header-title"><span class="dashicons dashicons-chart-line"></span>\n {{strings.upgrade.title}}</h3>\n </div>\n <div class="card-content">\n <ul>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_1}}</li>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_2}}</li>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_3}}</li>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_4}}</li>\n </ul>\n </div>\n <div class="card-footer ">\n <div class="card-footer-item">\n <a href="https://optimole.com#pricing" target="_blank"\n class="button is-centered is-small is-success"><span\n class="dashicons dashicons-external"></span>{{strings.upgrade.cta}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n'},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),a=o(i),r=n(97),s=o(r),l=n(6),p=o(l),c=n(99),d=o(c),m=n(100),u=o(m);a.default.use(s.default),a.default.use(p.default);var f=new s.default.Store({strict:!0,state:{isConnecting:!1,loading:!1,site_settings:optimoleDashboardApp.site_settings,connected:"yes"===optimoleDashboardApp.connection_status,is_loaded:"yes"===optimoleDashboardApp.connection_status,apiKey:optimoleDashboardApp.api_key?optimoleDashboardApp.api_key:"",apiKeyValidity:!0,connectError:"",sample_rate:{},apiError:!1,userData:optimoleDashboardApp.user_data?optimoleDashboardApp.user_data:null,optimizedImages:[],watermarks:[],conflicts:[]},mutations:d.default,actions:u.default});e.default=f},function(t,e,n){"use strict";function o(t){z&&(t._devtoolHook=z,z.emit("vuex:init",t),z.on("vuex:travel-to-state",function(e){t.replaceState(e)}),t.subscribe(function(t,e){z.emit("vuex:mutation",t,e)}))}function i(t,e){Object.keys(t).forEach(function(n){return e(t[n],n)})}function a(t){return null!==t&&"object"==typeof t}function r(t){return t&&"function"==typeof t.then}function s(t,e,n){if(e.update(n),n.modules)for(var o in n.modules){if(!e.getChild(o))return;s(t.concat(o),e.getChild(o),n.modules[o])}}function l(t,e){return e.indexOf(t)<0&&e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function p(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;d(t,n,[],t._modules.root,!0),c(t,n,e)}function c(t,e,n){var o=t._vm;t.getters={};var a=t._wrappedGetters,r={};i(a,function(e,n){r[n]=function(){return e(t)},Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})});var s=$.config.silent;$.config.silent=!0,t._vm=new $({data:{$$state:e},computed:r}),$.config.silent=s,t.strict&&v(t),o&&(n&&t._withCommit(function(){o._data.$$state=null}),$.nextTick(function(){return o.$destroy()}))}function d(t,e,n,o,i){var a=!n.length,r=t._modules.getNamespace(n);if(o.namespaced&&(t._modulesNamespaceMap[r]=o),!a&&!i){var s=g(e,n.slice(0,-1)),l=n[n.length-1];t._withCommit(function(){$.set(s,l,o.state)})}var p=o.context=m(t,r,n);o.forEachMutation(function(e,n){f(t,r+n,e,p)}),o.forEachAction(function(e,n){var o=e.root?n:r+n,i=e.handler||e;h(t,o,i,p)}),o.forEachGetter(function(e,n){b(t,r+n,e,p)}),o.forEachChild(function(o,a){d(t,e,n.concat(a),o,i)})}function m(t,e,n){var o=""===e,i={dispatch:o?t.dispatch:function(n,o,i){var a=x(n,o,i),r=a.payload,s=a.options,l=a.type;return s&&s.root||(l=e+l),t.dispatch(l,r)},commit:o?t.commit:function(n,o,i){var a=x(n,o,i),r=a.payload,s=a.options,l=a.type;s&&s.root||(l=e+l),t.commit(l,r,s)}};return Object.defineProperties(i,{getters:{get:o?function(){return t.getters}:function(){return u(t,e)}},state:{get:function(){return g(t.state,n)}}}),i}function u(t,e){var n={},o=e.length;return Object.keys(t.getters).forEach(function(i){if(i.slice(0,o)===e){var a=i.slice(o);Object.defineProperty(n,a,{get:function(){return t.getters[i]},enumerable:!0})}}),n}function f(t,e,n,o){(t._mutations[e]||(t._mutations[e]=[])).push(function(e){n.call(t,o.state,e)})}function h(t,e,n,o){(t._actions[e]||(t._actions[e]=[])).push(function(e,i){var a=n.call(t,{dispatch:o.dispatch,commit:o.commit,getters:o.getters,state:o.state,rootGetters:t.getters,rootState:t.state},e,i);return r(a)||(a=Promise.resolve(a)),t._devtoolHook?a.catch(function(e){throw t._devtoolHook.emit("vuex:error",e),e}):a})}function b(t,e,n,o){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(o.state,o.getters,t.state,t.getters)})}function v(t){t._vm.$watch(function(){return this._data.$$state},function(){},{deep:!0,sync:!0})}function g(t,e){return e.length?e.reduce(function(t,e){return t[e]},t):t}function x(t,e,n){return a(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function y(t){$&&t===$||($=t,C($))}function w(t){return Array.isArray(t)?t.map(function(t){return{key:t,val:t}}):Object.keys(t).map(function(e){return{key:e,val:t[e]}})}function k(t){return function(e,n){return"string"!=typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function _(t,e,n){return t._modulesNamespaceMap[n]}Object.defineProperty(e,"__esModule",{value:!0}),n.d(e,"Store",function(){return j}),n.d(e,"install",function(){return y}),n.d(e,"mapState",function(){return T}),n.d(e,"mapMutations",function(){return D}),n.d(e,"mapGetters",function(){return P}),n.d(e,"mapActions",function(){return R}),n.d(e,"createNamespacedHelpers",function(){return M});/**
22
  * vuex v2.5.0
23
  * (c) 2017 Evan You
24
  * @license MIT
8
  * https://github.com/pagekit/vue-resource
9
  * Released under the MIT License.
10
  */
11
+ var st=2;o.reject=function(t){return new o(function(e,n){n(t)})},o.resolve=function(t){return new o(function(e,n){e(t)})},o.all=function(t){return new o(function(e,n){var i=0,a=[];0===t.length&&e(a);for(var r=0;r<t.length;r+=1)o.resolve(t[r]).then(function(n){return function(o){a[n]=o,(i+=1)===t.length&&e(a)}}(r),n)})},o.race=function(t){return new o(function(e,n){for(var i=0;i<t.length;i+=1)o.resolve(t[i]).then(e,n)})};var lt=o.prototype;lt.resolve=function(t){var e=this;if(e.state===st){if(t===e)throw new TypeError("Promise settled with itself.");var n=!1;try{var o=t&&t.then;if(null!==t&&"object"==typeof t&&"function"==typeof o)return void o.call(t,function(t){n||e.resolve(t),n=!0},function(t){n||e.reject(t),n=!0})}catch(t){return void(n||e.reject(t))}e.state=0,e.value=t,e.notify()}},lt.reject=function(t){var e=this;if(e.state===st){if(t===e)throw new TypeError("Promise settled with itself.");e.state=1,e.value=t,e.notify()}},lt.notify=function(){var t=this;l(function(){if(t.state!==st)for(;t.deferred.length;){var e=t.deferred.shift(),n=e[0],o=e[1],i=e[2],a=e[3];try{0===t.state?i("function"==typeof n?n.call(void 0,t.value):t.value):1===t.state&&("function"==typeof o?i(o.call(void 0,t.value)):a(t.value))}catch(t){a(t)}}})},lt.then=function(t,e){var n=this;return new o(function(o,i){n.deferred.push([t,e,o,i]),n.notify()})},lt.catch=function(t){return this.then(void 0,t)},"undefined"==typeof Promise&&(window.Promise=o),i.all=function(t,e){return new i(Promise.all(t),e)},i.resolve=function(t,e){return new i(Promise.resolve(t),e)},i.reject=function(t,e){return new i(Promise.reject(t),e)},i.race=function(t,e){return new i(Promise.race(t),e)};var pt=i.prototype;pt.bind=function(t){return this.context=t,this},pt.then=function(t,e){return t&&t.bind&&this.context&&(t=t.bind(this.context)),e&&e.bind&&this.context&&(e=e.bind(this.context)),new i(this.promise.then(t,e),this.context)},pt.catch=function(t){return t&&t.bind&&this.context&&(t=t.bind(this.context)),new i(this.promise.catch(t),this.context)},pt.finally=function(t){return this.then(function(e){return t.call(this),e},function(e){return t.call(this),Promise.reject(e)})};var ct,dt={},mt=dt.hasOwnProperty,ut=[],ft=ut.slice,ht=!1,bt="undefined"!=typeof window,vt=Array.isArray,gt=Object.assign||C;M.options={url:"",root:null,params:{}},M.transform={template:R,query:S,root:O},M.transforms=["template","query","root"],M.params=function(t){var e=[],n=encodeURIComponent;return e.add=function(t,e){f(e)&&(e=e()),null===e&&(e=""),this.push(n(t)+"="+n(e))},L(e,t),e.join("&").replace(/%20/g,"+")},M.parse=function(t){var e=document.createElement("a");return document.documentMode&&(e.href=t,t=e.href),e.href=t,{href:e.href,protocol:e.protocol?e.protocol.replace(/:$/,""):"",port:e.port,host:e.host,hostname:e.hostname,pathname:"/"===e.pathname.charAt(0)?e.pathname:"/"+e.pathname,search:e.search?e.search.replace(/^\?/,""):"",hash:e.hash?e.hash.replace(/^#/,""):""}};var xt=bt&&"withCredentials"in new XMLHttpRequest,yt=function(t){var e=this;this.map={},w(t,function(t,n){return e.append(n,t)})};yt.prototype.has=function(t){return null!==Q(this.map,t)},yt.prototype.get=function(t){var e=this.map[Q(this.map,t)];return e?e.join():null},yt.prototype.getAll=function(t){return this.map[Q(this.map,t)]||[]},yt.prototype.set=function(t,e){this.map[tt(Q(this.map,t)||t)]=[p(e)]},yt.prototype.append=function(t,e){var n=this.map[Q(this.map,t)];n?n.push(p(e)):this.set(t,e)},yt.prototype.delete=function(t){delete this.map[Q(this.map,t)]},yt.prototype.deleteAll=function(){this.map={}},yt.prototype.forEach=function(t,e){var n=this;w(this.map,function(o,i){w(o,function(o){return t.call(e,o,i,n)})})};var wt=function(t,e){var n=e.url,o=e.headers,i=e.status,a=e.statusText;this.url=n,this.ok=i>=200&&i<300,this.status=i||0,this.statusText=a||"",this.headers=new yt(o),this.body=t,u(t)?this.bodyText=t:v(t)&&(this.bodyBlob=t,nt(t)&&(this.bodyText=et(t)))};wt.prototype.blob=function(){return x(this.bodyBlob)},wt.prototype.text=function(){return x(this.bodyText)},wt.prototype.json=function(){return x(this.text(),function(t){return JSON.parse(t)})},Object.defineProperty(wt.prototype,"data",{get:function(){return this.body},set:function(t){this.body=t}});var kt=function(t){this.body=null,this.params={},gt(this,t,{method:m(t.method||"GET")}),this.headers instanceof yt||(this.headers=new yt(this.headers))};kt.prototype.getUrl=function(){return M(this)},kt.prototype.getBody=function(){return this.body},kt.prototype.respondWith=function(t,e){return new wt(t,gt(e||{},{url:this.getUrl()}))};var _t={Accept:"application/json, text/plain, */*"},Ct={"Content-Type":"application/json;charset=utf-8"};ot.options={},ot.headers={put:Ct,post:Ct,patch:Ct,delete:Ct,common:_t,custom:{}},ot.interceptor={before:q,method:W,jsonp:V,json:U,form:B,header:K,cors:F},ot.interceptors=["before","method","jsonp","json","form","header","cors"],["get","delete","head","jsonp"].forEach(function(t){ot[t]=function(e,n){return this(gt(n||{},{url:e,method:t}))}}),["post","put","patch"].forEach(function(t){ot[t]=function(e,n,o){return this(gt(o||{},{url:e,method:t,body:n}))}}),it.actions={get:{method:"GET"},save:{method:"POST"},query:{method:"GET"},update:{method:"PUT"},remove:{method:"DELETE"},delete:{method:"DELETE"}},"undefined"!=typeof window&&window.Vue&&window.Vue.use(rt),e.default=rt},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}var i=n(2),a=o(i),r=n(11),s=o(r),l=n(96),p=o(l),c=n(101),d=o(c),m=n(102),u=o(m);a.default.use(u.default),a.default.use(d.default),window.addEventListener("load",function(){new a.default({el:"#optimole-app",store:p.default,components:{App:s.default}})})},function(t,e,n){(function(t){function o(t,e){this._id=t,this._clearFn=e}var i=void 0!==t&&t||"undefined"!=typeof self&&self||window,a=Function.prototype.apply;e.setTimeout=function(){return new o(a.call(setTimeout,i,arguments),clearTimeout)},e.setInterval=function(){return new o(a.call(setInterval,i,arguments),clearInterval)},e.clearTimeout=e.clearInterval=function(t){t&&t.close()},o.prototype.unref=o.prototype.ref=function(){},o.prototype.close=function(){this._clearFn.call(i,this._id)},e.enroll=function(t,e){clearTimeout(t._idleTimeoutId),t._idleTimeout=e},e.unenroll=function(t){clearTimeout(t._idleTimeoutId),t._idleTimeout=-1},e._unrefActive=e.active=function(t){clearTimeout(t._idleTimeoutId);var e=t._idleTimeout;e>=0&&(t._idleTimeoutId=setTimeout(function(){t._onTimeout&&t._onTimeout()},e))},n(9),e.setImmediate="undefined"!=typeof self&&self.setImmediate||void 0!==t&&t.setImmediate||this&&this.setImmediate,e.clearImmediate="undefined"!=typeof self&&self.clearImmediate||void 0!==t&&t.clearImmediate||this&&this.clearImmediate}).call(e,n(3))},function(t,e,n){(function(t,e){!function(t,n){"use strict";function o(t){"function"!=typeof t&&(t=new Function(""+t));for(var e=new Array(arguments.length-1),n=0;n<e.length;n++)e[n]=arguments[n+1];var o={callback:t,args:e};return p[l]=o,s(l),l++}function i(t){delete p[t]}function a(t){var e=t.callback,o=t.args;switch(o.length){case 0:e();break;case 1:e(o[0]);break;case 2:e(o[0],o[1]);break;case 3:e(o[0],o[1],o[2]);break;default:e.apply(n,o)}}function r(t){if(c)setTimeout(r,0,t);else{var e=p[t];if(e){c=!0;try{a(e)}finally{i(t),c=!1}}}}if(!t.setImmediate){var s,l=1,p={},c=!1,d=t.document,m=Object.getPrototypeOf&&Object.getPrototypeOf(t);m=m&&m.setTimeout?m:t,"[object process]"==={}.toString.call(t.process)?function(){s=function(t){e.nextTick(function(){r(t)})}}():function(){if(t.postMessage&&!t.importScripts){var e=!0,n=t.onmessage;return t.onmessage=function(){e=!1},t.postMessage("","*"),t.onmessage=n,e}}()?function(){var e="setImmediate$"+Math.random()+"$",n=function(n){n.source===t&&"string"==typeof n.data&&0===n.data.indexOf(e)&&r(+n.data.slice(e.length))};t.addEventListener?t.addEventListener("message",n,!1):t.attachEvent("onmessage",n),s=function(n){t.postMessage(e+n,"*")}}():t.MessageChannel?function(){var t=new MessageChannel;t.port1.onmessage=function(t){r(t.data)},s=function(e){t.port2.postMessage(e)}}():d&&"onreadystatechange"in d.createElement("script")?function(){var t=d.documentElement;s=function(e){var n=d.createElement("script");n.onreadystatechange=function(){r(e),n.onreadystatechange=null,t.removeChild(n),n=null},t.appendChild(n)}}():function(){s=function(t){setTimeout(r,0,t)}}(),m.setImmediate=o,m.clearImmediate=i}}("undefined"==typeof self?void 0===t?this:t:self)}).call(e,n(3),n(10))},function(t,e){function n(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function i(t){if(c===setTimeout)return setTimeout(t,0);if((c===n||!c)&&setTimeout)return c=setTimeout,setTimeout(t,0);try{return c(t,0)}catch(e){try{return c.call(null,t,0)}catch(e){return c.call(this,t,0)}}}function a(t){if(d===clearTimeout)return clearTimeout(t);if((d===o||!d)&&clearTimeout)return d=clearTimeout,clearTimeout(t);try{return d(t)}catch(e){try{return d.call(null,t)}catch(e){return d.call(this,t)}}}function r(){h&&u&&(h=!1,u.length?f=u.concat(f):b=-1,f.length&&s())}function s(){if(!h){var t=i(r);h=!0;for(var e=f.length;e;){for(u=f,f=[];++b<e;)u&&u[b].run();b=-1,e=f.length}u=null,h=!1,a(t)}}function l(t,e){this.fun=t,this.array=e}function p(){}var c,d,m=t.exports={};!function(){try{c="function"==typeof setTimeout?setTimeout:n}catch(t){c=n}try{d="function"==typeof clearTimeout?clearTimeout:o}catch(t){d=o}}();var u,f=[],h=!1,b=-1;m.nextTick=function(t){var e=new Array(arguments.length-1);if(arguments.length>1)for(var n=1;n<arguments.length;n++)e[n-1]=arguments[n];f.push(new l(t,e)),1!==f.length||h||i(s)},l.prototype.run=function(){this.fun.apply(null,this.array)},m.title="browser",m.browser=!0,m.env={},m.argv=[],m.version="",m.versions={},m.on=p,m.addListener=p,m.once=p,m.off=p,m.removeListener=p,m.removeAllListeners=p,m.emit=p,m.prependListener=p,m.prependOnceListener=p,m.listeners=function(t){return[]},m.binding=function(t){throw new Error("process.binding is not supported")},m.cwd=function(){return"/"},m.chdir=function(t){throw new Error("process.chdir is not supported")},m.umask=function(){return 0}},function(t,e,n){var o,i;n(12),o=n(14),i=n(95),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(13);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,'#optimole-app {\n padding: 0 30px 0 20px;\n /*! bulma.io v0.7.4 | MIT License | github.com/jgthms/bulma */\n /*! minireset.css v0.0.4 | MIT License | github.com/jgthms/minireset.css */ }\n\n@keyframes spinAround {\n from {\n transform: rotate(0deg); }\n to {\n transform: rotate(359deg); } }\n #optimole-app .delete, #optimole-app .modal-close, #optimole-app .is-unselectable, #optimole-app .button, #optimole-app .file, #optimole-app .breadcrumb, #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link,\n #optimole-app .pagination-ellipsis, #optimole-app .tabs {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none; }\n #optimole-app .select:not(.is-multiple):not(.is-loading)::after, #optimole-app .navbar-link:not(.is-arrowless)::after {\n border: 3px solid transparent;\n border-radius: 2px;\n border-right: 0;\n border-top: 0;\n content: " ";\n display: block;\n height: 0.625em;\n margin-top: -0.4375em;\n pointer-events: none;\n position: absolute;\n top: 50%;\n transform: rotate(-45deg);\n transform-origin: center;\n width: 0.625em; }\n #optimole-app .box:not(:last-child), #optimole-app .content:not(:last-child), #optimole-app .notification:not(:last-child), #optimole-app .progress:not(:last-child), #optimole-app .table:not(:last-child), #optimole-app .table-container:not(:last-child), #optimole-app .title:not(:last-child),\n #optimole-app .subtitle:not(:last-child), #optimole-app .block:not(:last-child), #optimole-app .highlight:not(:last-child), #optimole-app .breadcrumb:not(:last-child), #optimole-app .level:not(:last-child), #optimole-app .list:not(:last-child), #optimole-app .message:not(:last-child), #optimole-app .tabs:not(:last-child) {\n margin-bottom: 1.5rem; }\n #optimole-app .delete, #optimole-app .modal-close {\n -moz-appearance: none;\n -webkit-appearance: none;\n background-color: rgba(10, 10, 10, 0.2);\n border: none;\n border-radius: 290486px;\n cursor: pointer;\n pointer-events: auto;\n display: inline-block;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n font-size: 0;\n height: 20px;\n max-height: 20px;\n max-width: 20px;\n min-height: 20px;\n min-width: 20px;\n outline: none;\n position: relative;\n vertical-align: top;\n width: 20px; }\n #optimole-app .delete::before, #optimole-app .modal-close::before, #optimole-app .delete::after, #optimole-app .modal-close::after {\n background-color: white;\n content: "";\n display: block;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translateX(-50%) translateY(-50%) rotate(45deg);\n transform-origin: center center; }\n #optimole-app .delete::before, #optimole-app .modal-close::before {\n height: 2px;\n width: 50%; }\n #optimole-app .delete::after, #optimole-app .modal-close::after {\n height: 50%;\n width: 2px; }\n #optimole-app .delete:hover, #optimole-app .modal-close:hover, #optimole-app .delete:focus, #optimole-app .modal-close:focus {\n background-color: rgba(10, 10, 10, 0.3); }\n #optimole-app .delete:active, #optimole-app .modal-close:active {\n background-color: rgba(10, 10, 10, 0.4); }\n #optimole-app .is-small.delete, #optimole-app .is-small.modal-close {\n height: 16px;\n max-height: 16px;\n max-width: 16px;\n min-height: 16px;\n min-width: 16px;\n width: 16px; }\n #optimole-app .is-medium.delete, #optimole-app .is-medium.modal-close {\n height: 24px;\n max-height: 24px;\n max-width: 24px;\n min-height: 24px;\n min-width: 24px;\n width: 24px; }\n #optimole-app .is-large.delete, #optimole-app .is-large.modal-close {\n height: 32px;\n max-height: 32px;\n max-width: 32px;\n min-height: 32px;\n min-width: 32px;\n width: 32px; }\n #optimole-app .button.is-loading::after, #optimole-app .select.is-loading::after, #optimole-app .control.is-loading::after, #optimole-app .loader {\n animation: spinAround 500ms infinite linear;\n border: 2px solid #dbdbdb;\n border-radius: 290486px;\n border-right-color: transparent;\n border-top-color: transparent;\n content: "";\n display: block;\n height: 1em;\n position: relative;\n width: 1em; }\n #optimole-app .is-overlay, #optimole-app .image.is-square img,\n #optimole-app .image.is-square .has-ratio, #optimole-app .image.is-1by1 img,\n #optimole-app .image.is-1by1 .has-ratio, #optimole-app .image.is-5by4 img,\n #optimole-app .image.is-5by4 .has-ratio, #optimole-app .image.is-4by3 img,\n #optimole-app .image.is-4by3 .has-ratio, #optimole-app .image.is-3by2 img,\n #optimole-app .image.is-3by2 .has-ratio, #optimole-app .image.is-5by3 img,\n #optimole-app .image.is-5by3 .has-ratio, #optimole-app .image.is-16by9 img,\n #optimole-app .image.is-16by9 .has-ratio, #optimole-app .image.is-2by1 img,\n #optimole-app .image.is-2by1 .has-ratio, #optimole-app .image.is-3by1 img,\n #optimole-app .image.is-3by1 .has-ratio, #optimole-app .image.is-4by5 img,\n #optimole-app .image.is-4by5 .has-ratio, #optimole-app .image.is-3by4 img,\n #optimole-app .image.is-3by4 .has-ratio, #optimole-app .image.is-2by3 img,\n #optimole-app .image.is-2by3 .has-ratio, #optimole-app .image.is-3by5 img,\n #optimole-app .image.is-3by5 .has-ratio, #optimole-app .image.is-9by16 img,\n #optimole-app .image.is-9by16 .has-ratio, #optimole-app .image.is-1by2 img,\n #optimole-app .image.is-1by2 .has-ratio, #optimole-app .image.is-1by3 img,\n #optimole-app .image.is-1by3 .has-ratio, #optimole-app .modal, #optimole-app .modal-background, #optimole-app .hero-video {\n bottom: 0;\n left: 0;\n position: absolute;\n right: 0;\n top: 0; }\n #optimole-app .button, #optimole-app .input,\n #optimole-app .textarea, #optimole-app .select select, #optimole-app .file-cta,\n #optimole-app .file-name, #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link,\n #optimole-app .pagination-ellipsis {\n -moz-appearance: none;\n -webkit-appearance: none;\n -ms-flex-align: center;\n align-items: center;\n border: 1px solid transparent;\n border-radius: 4px;\n box-shadow: none;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: 1rem;\n height: 2.25em;\n -ms-flex-pack: start;\n justify-content: flex-start;\n line-height: 1.5;\n padding-bottom: calc(0.375em - 1px);\n padding-left: calc(0.625em - 1px);\n padding-right: calc(0.625em - 1px);\n padding-top: calc(0.375em - 1px);\n position: relative;\n vertical-align: top; }\n #optimole-app .button:focus, #optimole-app .input:focus,\n #optimole-app .textarea:focus, #optimole-app .select select:focus, #optimole-app .file-cta:focus,\n #optimole-app .file-name:focus, #optimole-app .pagination-previous:focus,\n #optimole-app .pagination-next:focus,\n #optimole-app .pagination-link:focus,\n #optimole-app .pagination-ellipsis:focus, #optimole-app .is-focused.button, #optimole-app .is-focused.input,\n #optimole-app .is-focused.textarea, #optimole-app .select select.is-focused, #optimole-app .is-focused.file-cta,\n #optimole-app .is-focused.file-name, #optimole-app .is-focused.pagination-previous,\n #optimole-app .is-focused.pagination-next,\n #optimole-app .is-focused.pagination-link,\n #optimole-app .is-focused.pagination-ellipsis, #optimole-app .button:active, #optimole-app .input:active,\n #optimole-app .textarea:active, #optimole-app .select select:active, #optimole-app .file-cta:active,\n #optimole-app .file-name:active, #optimole-app .pagination-previous:active,\n #optimole-app .pagination-next:active,\n #optimole-app .pagination-link:active,\n #optimole-app .pagination-ellipsis:active, #optimole-app .is-active.button, #optimole-app .is-active.input,\n #optimole-app .is-active.textarea, #optimole-app .select select.is-active, #optimole-app .is-active.file-cta,\n #optimole-app .is-active.file-name, #optimole-app .is-active.pagination-previous,\n #optimole-app .is-active.pagination-next,\n #optimole-app .is-active.pagination-link,\n #optimole-app .is-active.pagination-ellipsis {\n outline: none; }\n #optimole-app .button[disabled], #optimole-app .input[disabled],\n #optimole-app .textarea[disabled], #optimole-app .select select[disabled], #optimole-app .file-cta[disabled],\n #optimole-app .file-name[disabled], #optimole-app .pagination-previous[disabled],\n #optimole-app .pagination-next[disabled],\n #optimole-app .pagination-link[disabled],\n #optimole-app .pagination-ellipsis[disabled],\n fieldset[disabled] #optimole-app .button,\n fieldset[disabled] #optimole-app .input,\n fieldset[disabled] #optimole-app .textarea,\n fieldset[disabled] #optimole-app .select select,\n fieldset[disabled] #optimole-app .file-cta,\n fieldset[disabled] #optimole-app .file-name,\n fieldset[disabled] #optimole-app .pagination-previous,\n fieldset[disabled] #optimole-app .pagination-next,\n fieldset[disabled] #optimole-app .pagination-link,\n fieldset[disabled] #optimole-app .pagination-ellipsis {\n cursor: not-allowed; }\n #optimole-app html,\n #optimole-app body,\n #optimole-app p,\n #optimole-app ol,\n #optimole-app ul,\n #optimole-app li,\n #optimole-app dl,\n #optimole-app dt,\n #optimole-app dd,\n #optimole-app blockquote,\n #optimole-app figure,\n #optimole-app fieldset,\n #optimole-app legend,\n #optimole-app textarea,\n #optimole-app pre,\n #optimole-app iframe,\n #optimole-app hr,\n #optimole-app h1,\n #optimole-app h2,\n #optimole-app h3,\n #optimole-app h4,\n #optimole-app h5,\n #optimole-app h6 {\n margin: 0;\n padding: 0; }\n #optimole-app h1,\n #optimole-app h2,\n #optimole-app h3,\n #optimole-app h4,\n #optimole-app h5,\n #optimole-app h6 {\n font-size: 100%;\n font-weight: normal; }\n #optimole-app ul {\n list-style: none; }\n #optimole-app button,\n #optimole-app input,\n #optimole-app select,\n #optimole-app textarea {\n margin: 0; }\n #optimole-app html {\n box-sizing: border-box; }\n #optimole-app *, #optimole-app *::before, #optimole-app *::after {\n box-sizing: inherit; }\n #optimole-app img,\n #optimole-app embed,\n #optimole-app iframe,\n #optimole-app object,\n #optimole-app video {\n height: auto;\n max-width: 100%; }\n #optimole-app audio {\n max-width: 100%; }\n #optimole-app iframe {\n border: 0; }\n #optimole-app table {\n border-collapse: collapse;\n border-spacing: 0; }\n #optimole-app td,\n #optimole-app th {\n padding: 0;\n text-align: left; }\n #optimole-app html {\n background-color: white;\n font-size: 16px;\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n min-width: 300px;\n overflow-x: hidden;\n overflow-y: scroll;\n text-rendering: optimizeLegibility;\n -webkit-text-size-adjust: 100%;\n -ms-text-size-adjust: 100%;\n text-size-adjust: 100%; }\n #optimole-app article,\n #optimole-app aside,\n #optimole-app figure,\n #optimole-app footer,\n #optimole-app header,\n #optimole-app hgroup,\n #optimole-app section {\n display: block; }\n #optimole-app body,\n #optimole-app button,\n #optimole-app input,\n #optimole-app select,\n #optimole-app textarea {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif; }\n #optimole-app code,\n #optimole-app pre {\n -moz-osx-font-smoothing: auto;\n -webkit-font-smoothing: auto;\n font-family: monospace; }\n #optimole-app body {\n color: #4a4a4a;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5; }\n #optimole-app a {\n color: #3273dc;\n cursor: pointer;\n text-decoration: none; }\n #optimole-app a strong {\n color: currentColor; }\n #optimole-app a:hover {\n color: #363636; }\n #optimole-app code {\n background-color: whitesmoke;\n color: #ff3860;\n font-size: 0.875em;\n font-weight: normal;\n padding: 0.25em 0.5em 0.25em; }\n #optimole-app hr {\n background-color: whitesmoke;\n border: none;\n display: block;\n height: 2px;\n margin: 1.5rem 0; }\n #optimole-app img {\n height: auto;\n max-width: 100%; }\n #optimole-app input[type="checkbox"],\n #optimole-app input[type="radio"] {\n vertical-align: baseline; }\n #optimole-app small {\n font-size: 0.875em; }\n #optimole-app span {\n font-style: inherit;\n font-weight: inherit; }\n #optimole-app strong {\n color: #363636;\n font-weight: 700; }\n #optimole-app fieldset {\n border: none; }\n #optimole-app pre {\n -webkit-overflow-scrolling: touch;\n background-color: whitesmoke;\n color: #4a4a4a;\n font-size: 0.875em;\n overflow-x: auto;\n padding: 1.25rem 1.5rem;\n white-space: pre;\n word-wrap: normal; }\n #optimole-app pre code {\n background-color: transparent;\n color: currentColor;\n font-size: 1em;\n padding: 0; }\n #optimole-app table td,\n #optimole-app table th {\n text-align: left;\n vertical-align: top; }\n #optimole-app table th {\n color: #363636; }\n #optimole-app .is-clearfix::after {\n clear: both;\n content: " ";\n display: table; }\n #optimole-app .is-pulled-left {\n float: left !important; }\n #optimole-app .is-pulled-right {\n float: right !important; }\n #optimole-app .is-clipped {\n overflow: hidden !important; }\n #optimole-app .is-size-1 {\n font-size: 3rem !important; }\n #optimole-app .is-size-2 {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3 {\n font-size: 2rem !important; }\n #optimole-app .is-size-4 {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5 {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6 {\n font-size: 1rem !important; }\n #optimole-app .is-size-7 {\n font-size: 0.75rem !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-size-1-mobile {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-mobile {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-mobile {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-mobile {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-mobile {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-mobile {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-mobile {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-size-1-tablet {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-tablet {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-tablet {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-tablet {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-tablet {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-tablet {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-tablet {\n font-size: 0.75rem !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-size-1-touch {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-touch {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-touch {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-touch {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-touch {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-touch {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-touch {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-size-1-desktop {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-desktop {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-desktop {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-desktop {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-desktop {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-desktop {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-desktop {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-size-1-widescreen {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-widescreen {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-widescreen {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-widescreen {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-widescreen {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-widescreen {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-widescreen {\n font-size: 0.75rem !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-size-1-fullhd {\n font-size: 3rem !important; }\n #optimole-app .is-size-2-fullhd {\n font-size: 2.5rem !important; }\n #optimole-app .is-size-3-fullhd {\n font-size: 2rem !important; }\n #optimole-app .is-size-4-fullhd {\n font-size: 1.5rem !important; }\n #optimole-app .is-size-5-fullhd {\n font-size: 1.25rem !important; }\n #optimole-app .is-size-6-fullhd {\n font-size: 1rem !important; }\n #optimole-app .is-size-7-fullhd {\n font-size: 0.75rem !important; } }\n #optimole-app .has-text-centered {\n text-align: center !important; }\n #optimole-app .has-text-justified {\n text-align: justify !important; }\n #optimole-app .has-text-left {\n text-align: left !important; }\n #optimole-app .has-text-right {\n text-align: right !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-centered-mobile {\n text-align: center !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-centered-tablet {\n text-align: center !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-centered-tablet-only {\n text-align: center !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-centered-touch {\n text-align: center !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-centered-desktop {\n text-align: center !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-centered-desktop-only {\n text-align: center !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-centered-widescreen {\n text-align: center !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-centered-widescreen-only {\n text-align: center !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-centered-fullhd {\n text-align: center !important; } }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-justified-mobile {\n text-align: justify !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-justified-tablet {\n text-align: justify !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-justified-tablet-only {\n text-align: justify !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-justified-touch {\n text-align: justify !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-justified-desktop {\n text-align: justify !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-justified-desktop-only {\n text-align: justify !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-justified-widescreen {\n text-align: justify !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-justified-widescreen-only {\n text-align: justify !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-justified-fullhd {\n text-align: justify !important; } }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-left-mobile {\n text-align: left !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-left-tablet {\n text-align: left !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-left-tablet-only {\n text-align: left !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-left-touch {\n text-align: left !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-left-desktop {\n text-align: left !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-left-desktop-only {\n text-align: left !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-left-widescreen {\n text-align: left !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-left-widescreen-only {\n text-align: left !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-left-fullhd {\n text-align: left !important; } }\n @media screen and (max-width: 768px) {\n #optimole-app .has-text-right-mobile {\n text-align: right !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .has-text-right-tablet {\n text-align: right !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .has-text-right-tablet-only {\n text-align: right !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .has-text-right-touch {\n text-align: right !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .has-text-right-desktop {\n text-align: right !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .has-text-right-desktop-only {\n text-align: right !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .has-text-right-widescreen {\n text-align: right !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .has-text-right-widescreen-only {\n text-align: right !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .has-text-right-fullhd {\n text-align: right !important; } }\n #optimole-app .is-capitalized {\n text-transform: capitalize !important; }\n #optimole-app .is-lowercase {\n text-transform: lowercase !important; }\n #optimole-app .is-uppercase {\n text-transform: uppercase !important; }\n #optimole-app .is-italic {\n font-style: italic !important; }\n #optimole-app .has-text-white {\n color: white !important; }\n #optimole-app a.has-text-white:hover, #optimole-app a.has-text-white:focus {\n color: #e6e6e6 !important; }\n #optimole-app .has-background-white {\n background-color: white !important; }\n #optimole-app .has-text-black {\n color: #0a0a0a !important; }\n #optimole-app a.has-text-black:hover, #optimole-app a.has-text-black:focus {\n color: black !important; }\n #optimole-app .has-background-black {\n background-color: #0a0a0a !important; }\n #optimole-app .has-text-light {\n color: whitesmoke !important; }\n #optimole-app a.has-text-light:hover, #optimole-app a.has-text-light:focus {\n color: #dbdbdb !important; }\n #optimole-app .has-background-light {\n background-color: whitesmoke !important; }\n #optimole-app .has-text-dark {\n color: #363636 !important; }\n #optimole-app a.has-text-dark:hover, #optimole-app a.has-text-dark:focus {\n color: #1c1c1c !important; }\n #optimole-app .has-background-dark {\n background-color: #363636 !important; }\n #optimole-app .has-text-primary {\n color: #EF686B !important; }\n #optimole-app a.has-text-primary:hover, #optimole-app a.has-text-primary:focus {\n color: #ea3a3e !important; }\n #optimole-app .has-background-primary {\n background-color: #EF686B !important; }\n #optimole-app .has-text-link {\n color: #3273dc !important; }\n #optimole-app a.has-text-link:hover, #optimole-app a.has-text-link:focus {\n color: #205bbc !important; }\n #optimole-app .has-background-link {\n background-color: #3273dc !important; }\n #optimole-app .has-text-info {\n color: #5180C1 !important; }\n #optimole-app a.has-text-info:hover, #optimole-app a.has-text-info:focus {\n color: #3b67a4 !important; }\n #optimole-app .has-background-info {\n background-color: #5180C1 !important; }\n #optimole-app .has-text-success {\n color: #34a85e !important; }\n #optimole-app a.has-text-success:hover, #optimole-app a.has-text-success:focus {\n color: #288148 !important; }\n #optimole-app .has-background-success {\n background-color: #34a85e !important; }\n #optimole-app .has-text-warning {\n color: #ffdd57 !important; }\n #optimole-app a.has-text-warning:hover, #optimole-app a.has-text-warning:focus {\n color: #ffd324 !important; }\n #optimole-app .has-background-warning {\n background-color: #ffdd57 !important; }\n #optimole-app .has-text-danger {\n color: #D54222 !important; }\n #optimole-app a.has-text-danger:hover, #optimole-app a.has-text-danger:focus {\n color: #a9341b !important; }\n #optimole-app .has-background-danger {\n background-color: #D54222 !important; }\n #optimole-app .has-text-black-bis {\n color: #121212 !important; }\n #optimole-app .has-background-black-bis {\n background-color: #121212 !important; }\n #optimole-app .has-text-black-ter {\n color: #242424 !important; }\n #optimole-app .has-background-black-ter {\n background-color: #242424 !important; }\n #optimole-app .has-text-grey-darker {\n color: #363636 !important; }\n #optimole-app .has-background-grey-darker {\n background-color: #363636 !important; }\n #optimole-app .has-text-grey-dark {\n color: #4a4a4a !important; }\n #optimole-app .has-background-grey-dark {\n background-color: #4a4a4a !important; }\n #optimole-app .has-text-grey {\n color: #7a7a7a !important; }\n #optimole-app .has-background-grey {\n background-color: #7a7a7a !important; }\n #optimole-app .has-text-grey-light {\n color: #b5b5b5 !important; }\n #optimole-app .has-background-grey-light {\n background-color: #b5b5b5 !important; }\n #optimole-app .has-text-grey-lighter {\n color: #dbdbdb !important; }\n #optimole-app .has-background-grey-lighter {\n background-color: #dbdbdb !important; }\n #optimole-app .has-text-white-ter {\n color: whitesmoke !important; }\n #optimole-app .has-background-white-ter {\n background-color: whitesmoke !important; }\n #optimole-app .has-text-white-bis {\n color: #fafafa !important; }\n #optimole-app .has-background-white-bis {\n background-color: #fafafa !important; }\n #optimole-app .has-text-weight-light {\n font-weight: 300 !important; }\n #optimole-app .has-text-weight-normal {\n font-weight: 400 !important; }\n #optimole-app .has-text-weight-semibold {\n font-weight: 600 !important; }\n #optimole-app .has-text-weight-bold {\n font-weight: 700 !important; }\n #optimole-app .is-family-primary {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }\n #optimole-app .is-family-secondary {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }\n #optimole-app .is-family-sans-serif {\n font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif !important; }\n #optimole-app .is-family-monospace {\n font-family: monospace !important; }\n #optimole-app .is-family-code {\n font-family: monospace !important; }\n #optimole-app .is-block {\n display: block !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-block-mobile {\n display: block !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-block-tablet {\n display: block !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-block-tablet-only {\n display: block !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-block-touch {\n display: block !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-block-desktop {\n display: block !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-block-desktop-only {\n display: block !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-block-widescreen {\n display: block !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-block-widescreen-only {\n display: block !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-block-fullhd {\n display: block !important; } }\n #optimole-app .is-flex {\n display: -ms-flexbox !important;\n display: flex !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-flex-mobile {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-flex-tablet {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-flex-tablet-only {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-flex-touch {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-flex-desktop {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-flex-desktop-only {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-flex-widescreen {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-flex-widescreen-only {\n display: -ms-flexbox !important;\n display: flex !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-flex-fullhd {\n display: -ms-flexbox !important;\n display: flex !important; } }\n #optimole-app .is-inline {\n display: inline !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-inline-mobile {\n display: inline !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-inline-tablet {\n display: inline !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-inline-tablet-only {\n display: inline !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-inline-touch {\n display: inline !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-inline-desktop {\n display: inline !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-inline-desktop-only {\n display: inline !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-inline-widescreen {\n display: inline !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-inline-widescreen-only {\n display: inline !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-inline-fullhd {\n display: inline !important; } }\n #optimole-app .is-inline-block {\n display: inline-block !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-inline-block-mobile {\n display: inline-block !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-inline-block-tablet {\n display: inline-block !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-inline-block-tablet-only {\n display: inline-block !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-inline-block-touch {\n display: inline-block !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-inline-block-desktop {\n display: inline-block !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-inline-block-desktop-only {\n display: inline-block !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-inline-block-widescreen {\n display: inline-block !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-inline-block-widescreen-only {\n display: inline-block !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-inline-block-fullhd {\n display: inline-block !important; } }\n #optimole-app .is-inline-flex {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-inline-flex-mobile {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-inline-flex-tablet {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-inline-flex-tablet-only {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-inline-flex-touch {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-inline-flex-desktop {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-inline-flex-desktop-only {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-inline-flex-widescreen {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-inline-flex-widescreen-only {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-inline-flex-fullhd {\n display: -ms-inline-flexbox !important;\n display: inline-flex !important; } }\n #optimole-app .is-hidden {\n display: none !important; }\n #optimole-app .is-sr-only {\n border: none !important;\n clip: rect(0, 0, 0, 0) !important;\n height: 0.01em !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n white-space: nowrap !important;\n width: 0.01em !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-hidden-mobile {\n display: none !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-hidden-tablet {\n display: none !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-hidden-tablet-only {\n display: none !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-hidden-touch {\n display: none !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-hidden-desktop {\n display: none !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-hidden-desktop-only {\n display: none !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-hidden-widescreen {\n display: none !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-hidden-widescreen-only {\n display: none !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-hidden-fullhd {\n display: none !important; } }\n #optimole-app .is-invisible {\n visibility: hidden !important; }\n @media screen and (max-width: 768px) {\n #optimole-app .is-invisible-mobile {\n visibility: hidden !important; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .is-invisible-tablet {\n visibility: hidden !important; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .is-invisible-tablet-only {\n visibility: hidden !important; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .is-invisible-touch {\n visibility: hidden !important; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .is-invisible-desktop {\n visibility: hidden !important; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .is-invisible-desktop-only {\n visibility: hidden !important; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .is-invisible-widescreen {\n visibility: hidden !important; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .is-invisible-widescreen-only {\n visibility: hidden !important; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .is-invisible-fullhd {\n visibility: hidden !important; } }\n #optimole-app .is-marginless {\n margin: 0 !important; }\n #optimole-app .is-paddingless {\n padding: 0 !important; }\n #optimole-app .is-radiusless {\n border-radius: 0 !important; }\n #optimole-app .is-shadowless {\n box-shadow: none !important; }\n #optimole-app .box {\n background-color: white;\n border-radius: 6px;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n color: #4a4a4a;\n display: block;\n padding: 1.25rem; }\n #optimole-app a.box:hover, #optimole-app a.box:focus {\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px #3273dc; }\n #optimole-app a.box:active {\n box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2), 0 0 0 1px #3273dc; }\n #optimole-app .button {\n background-color: white;\n border-color: #dbdbdb;\n border-width: 1px;\n color: #363636;\n cursor: pointer;\n -ms-flex-pack: center;\n justify-content: center;\n padding-bottom: calc(0.375em - 1px);\n padding-left: 0.75em;\n padding-right: 0.75em;\n padding-top: calc(0.375em - 1px);\n text-align: center;\n white-space: nowrap; }\n #optimole-app .button strong {\n color: inherit; }\n #optimole-app .button .icon, #optimole-app .button .icon.is-small, #optimole-app .button .icon.is-medium, #optimole-app .button .icon.is-large {\n height: 1.5em;\n width: 1.5em; }\n #optimole-app .button .icon:first-child:not(:last-child) {\n margin-left: calc(-0.375em - 1px);\n margin-right: 0.1875em; }\n #optimole-app .button .icon:last-child:not(:first-child) {\n margin-left: 0.1875em;\n margin-right: calc(-0.375em - 1px); }\n #optimole-app .button .icon:first-child:last-child {\n margin-left: calc(-0.375em - 1px);\n margin-right: calc(-0.375em - 1px); }\n #optimole-app .button:hover, #optimole-app .button.is-hovered {\n border-color: #b5b5b5;\n color: #363636; }\n #optimole-app .button:focus, #optimole-app .button.is-focused {\n border-color: #3273dc;\n color: #363636; }\n #optimole-app .button:focus:not(:active), #optimole-app .button.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .button:active, #optimole-app .button.is-active {\n border-color: #4a4a4a;\n color: #363636; }\n #optimole-app .button.is-text {\n background-color: transparent;\n border-color: transparent;\n color: #4a4a4a;\n text-decoration: underline; }\n #optimole-app .button.is-text:hover, #optimole-app .button.is-text.is-hovered, #optimole-app .button.is-text:focus, #optimole-app .button.is-text.is-focused {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-text:active, #optimole-app .button.is-text.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .button.is-text[disabled],\n fieldset[disabled] #optimole-app .button.is-text {\n background-color: transparent;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-white {\n background-color: white;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white:hover, #optimole-app .button.is-white.is-hovered {\n background-color: #f9f9f9;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white:focus, #optimole-app .button.is-white.is-focused {\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white:focus:not(:active), #optimole-app .button.is-white.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n #optimole-app .button.is-white:active, #optimole-app .button.is-white.is-active {\n background-color: #f2f2f2;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .button.is-white[disabled],\n fieldset[disabled] #optimole-app .button.is-white {\n background-color: white;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-white.is-inverted {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .button.is-white.is-inverted:hover {\n background-color: black; }\n #optimole-app .button.is-white.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-white.is-inverted {\n background-color: #0a0a0a;\n border-color: transparent;\n box-shadow: none;\n color: white; }\n #optimole-app .button.is-white.is-loading::after {\n border-color: transparent transparent #0a0a0a #0a0a0a !important; }\n #optimole-app .button.is-white.is-outlined {\n background-color: transparent;\n border-color: white;\n color: white; }\n #optimole-app .button.is-white.is-outlined:hover, #optimole-app .button.is-white.is-outlined:focus {\n background-color: white;\n border-color: white;\n color: #0a0a0a; }\n #optimole-app .button.is-white.is-outlined.is-loading::after {\n border-color: transparent transparent white white !important; }\n #optimole-app .button.is-white.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-white.is-outlined {\n background-color: transparent;\n border-color: white;\n box-shadow: none;\n color: white; }\n #optimole-app .button.is-white.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n color: #0a0a0a; }\n #optimole-app .button.is-white.is-inverted.is-outlined:hover, #optimole-app .button.is-white.is-inverted.is-outlined:focus {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .button.is-white.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-white.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n box-shadow: none;\n color: #0a0a0a; }\n #optimole-app .button.is-black {\n background-color: #0a0a0a;\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black:hover, #optimole-app .button.is-black.is-hovered {\n background-color: #040404;\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black:focus, #optimole-app .button.is-black.is-focused {\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black:focus:not(:active), #optimole-app .button.is-black.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); }\n #optimole-app .button.is-black:active, #optimole-app .button.is-black.is-active {\n background-color: black;\n border-color: transparent;\n color: white; }\n #optimole-app .button.is-black[disabled],\n fieldset[disabled] #optimole-app .button.is-black {\n background-color: #0a0a0a;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-black.is-inverted {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-black.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-black.is-inverted {\n background-color: white;\n border-color: transparent;\n box-shadow: none;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-loading::after {\n border-color: transparent transparent white white !important; }\n #optimole-app .button.is-black.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-outlined:hover, #optimole-app .button.is-black.is-outlined:focus {\n background-color: #0a0a0a;\n border-color: #0a0a0a;\n color: white; }\n #optimole-app .button.is-black.is-outlined.is-loading::after {\n border-color: transparent transparent #0a0a0a #0a0a0a !important; }\n #optimole-app .button.is-black.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-black.is-outlined {\n background-color: transparent;\n border-color: #0a0a0a;\n box-shadow: none;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-inverted.is-outlined {\n background-color: transparent;\n border-color: white;\n color: white; }\n #optimole-app .button.is-black.is-inverted.is-outlined:hover, #optimole-app .button.is-black.is-inverted.is-outlined:focus {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .button.is-black.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-black.is-inverted.is-outlined {\n background-color: transparent;\n border-color: white;\n box-shadow: none;\n color: white; }\n #optimole-app .button.is-light {\n background-color: whitesmoke;\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light:hover, #optimole-app .button.is-light.is-hovered {\n background-color: #eeeeee;\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light:focus, #optimole-app .button.is-light.is-focused {\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light:focus:not(:active), #optimole-app .button.is-light.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); }\n #optimole-app .button.is-light:active, #optimole-app .button.is-light.is-active {\n background-color: #e8e8e8;\n border-color: transparent;\n color: #363636; }\n #optimole-app .button.is-light[disabled],\n fieldset[disabled] #optimole-app .button.is-light {\n background-color: whitesmoke;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-light.is-inverted {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-inverted:hover {\n background-color: #292929; }\n #optimole-app .button.is-light.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-light.is-inverted {\n background-color: #363636;\n border-color: transparent;\n box-shadow: none;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-loading::after {\n border-color: transparent transparent #363636 #363636 !important; }\n #optimole-app .button.is-light.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-outlined:hover, #optimole-app .button.is-light.is-outlined:focus {\n background-color: whitesmoke;\n border-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-light.is-outlined.is-loading::after {\n border-color: transparent transparent whitesmoke whitesmoke !important; }\n #optimole-app .button.is-light.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-light.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n box-shadow: none;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #363636;\n color: #363636; }\n #optimole-app .button.is-light.is-inverted.is-outlined:hover, #optimole-app .button.is-light.is-inverted.is-outlined:focus {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .button.is-light.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-light.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #363636;\n box-shadow: none;\n color: #363636; }\n #optimole-app .button.is-dark {\n background-color: #363636;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark:hover, #optimole-app .button.is-dark.is-hovered {\n background-color: #2f2f2f;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark:focus, #optimole-app .button.is-dark.is-focused {\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark:focus:not(:active), #optimole-app .button.is-dark.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); }\n #optimole-app .button.is-dark:active, #optimole-app .button.is-dark.is-active {\n background-color: #292929;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .button.is-dark[disabled],\n fieldset[disabled] #optimole-app .button.is-dark {\n background-color: #363636;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-dark.is-inverted {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-dark.is-inverted:hover {\n background-color: #e8e8e8; }\n #optimole-app .button.is-dark.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-dark.is-inverted {\n background-color: whitesmoke;\n border-color: transparent;\n box-shadow: none;\n color: #363636; }\n #optimole-app .button.is-dark.is-loading::after {\n border-color: transparent transparent whitesmoke whitesmoke !important; }\n #optimole-app .button.is-dark.is-outlined {\n background-color: transparent;\n border-color: #363636;\n color: #363636; }\n #optimole-app .button.is-dark.is-outlined:hover, #optimole-app .button.is-dark.is-outlined:focus {\n background-color: #363636;\n border-color: #363636;\n color: whitesmoke; }\n #optimole-app .button.is-dark.is-outlined.is-loading::after {\n border-color: transparent transparent #363636 #363636 !important; }\n #optimole-app .button.is-dark.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-dark.is-outlined {\n background-color: transparent;\n border-color: #363636;\n box-shadow: none;\n color: #363636; }\n #optimole-app .button.is-dark.is-inverted.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n color: whitesmoke; }\n #optimole-app .button.is-dark.is-inverted.is-outlined:hover, #optimole-app .button.is-dark.is-inverted.is-outlined:focus {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .button.is-dark.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-dark.is-inverted.is-outlined {\n background-color: transparent;\n border-color: whitesmoke;\n box-shadow: none;\n color: whitesmoke; }\n #optimole-app .button.is-primary {\n background-color: #EF686B;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary:hover, #optimole-app .button.is-primary.is-hovered {\n background-color: #ee5c60;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary:focus, #optimole-app .button.is-primary.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary:focus:not(:active), #optimole-app .button.is-primary.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(239, 104, 107, 0.25); }\n #optimole-app .button.is-primary:active, #optimole-app .button.is-primary.is-active {\n background-color: #ed5154;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-primary[disabled],\n fieldset[disabled] #optimole-app .button.is-primary {\n background-color: #EF686B;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-primary.is-inverted {\n background-color: #fff;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-primary.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-primary.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-primary.is-outlined {\n background-color: transparent;\n border-color: #EF686B;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-outlined:hover, #optimole-app .button.is-primary.is-outlined:focus {\n background-color: #EF686B;\n border-color: #EF686B;\n color: #fff; }\n #optimole-app .button.is-primary.is-outlined.is-loading::after {\n border-color: transparent transparent #EF686B #EF686B !important; }\n #optimole-app .button.is-primary.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-primary.is-outlined {\n background-color: transparent;\n border-color: #EF686B;\n box-shadow: none;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-primary.is-inverted.is-outlined:hover, #optimole-app .button.is-primary.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #EF686B; }\n #optimole-app .button.is-primary.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-primary.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-link {\n background-color: #3273dc;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link:hover, #optimole-app .button.is-link.is-hovered {\n background-color: #276cda;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link:focus, #optimole-app .button.is-link.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link:focus:not(:active), #optimole-app .button.is-link.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .button.is-link:active, #optimole-app .button.is-link.is-active {\n background-color: #2366d1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-link[disabled],\n fieldset[disabled] #optimole-app .button.is-link {\n background-color: #3273dc;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-link.is-inverted {\n background-color: #fff;\n color: #3273dc; }\n #optimole-app .button.is-link.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-link.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-link.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #3273dc; }\n #optimole-app .button.is-link.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-link.is-outlined {\n background-color: transparent;\n border-color: #3273dc;\n color: #3273dc; }\n #optimole-app .button.is-link.is-outlined:hover, #optimole-app .button.is-link.is-outlined:focus {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff; }\n #optimole-app .button.is-link.is-outlined.is-loading::after {\n border-color: transparent transparent #3273dc #3273dc !important; }\n #optimole-app .button.is-link.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-link.is-outlined {\n background-color: transparent;\n border-color: #3273dc;\n box-shadow: none;\n color: #3273dc; }\n #optimole-app .button.is-link.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-link.is-inverted.is-outlined:hover, #optimole-app .button.is-link.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #3273dc; }\n #optimole-app .button.is-link.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-link.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-info {\n background-color: #5180C1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info:hover, #optimole-app .button.is-info.is-hovered {\n background-color: #4879be;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info:focus, #optimole-app .button.is-info.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info:focus:not(:active), #optimole-app .button.is-info.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(81, 128, 193, 0.25); }\n #optimole-app .button.is-info:active, #optimole-app .button.is-info.is-active {\n background-color: #4173b7;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-info[disabled],\n fieldset[disabled] #optimole-app .button.is-info {\n background-color: #5180C1;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-info.is-inverted {\n background-color: #fff;\n color: #5180C1; }\n #optimole-app .button.is-info.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-info.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-info.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #5180C1; }\n #optimole-app .button.is-info.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-info.is-outlined {\n background-color: transparent;\n border-color: #5180C1;\n color: #5180C1; }\n #optimole-app .button.is-info.is-outlined:hover, #optimole-app .button.is-info.is-outlined:focus {\n background-color: #5180C1;\n border-color: #5180C1;\n color: #fff; }\n #optimole-app .button.is-info.is-outlined.is-loading::after {\n border-color: transparent transparent #5180C1 #5180C1 !important; }\n #optimole-app .button.is-info.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-info.is-outlined {\n background-color: transparent;\n border-color: #5180C1;\n box-shadow: none;\n color: #5180C1; }\n #optimole-app .button.is-info.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-info.is-inverted.is-outlined:hover, #optimole-app .button.is-info.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #5180C1; }\n #optimole-app .button.is-info.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-info.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-success {\n background-color: #34a85e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success:hover, #optimole-app .button.is-success.is-hovered {\n background-color: #319e59;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success:focus, #optimole-app .button.is-success.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success:focus:not(:active), #optimole-app .button.is-success.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(52, 168, 94, 0.25); }\n #optimole-app .button.is-success:active, #optimole-app .button.is-success.is-active {\n background-color: #2e9553;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-success[disabled],\n fieldset[disabled] #optimole-app .button.is-success {\n background-color: #34a85e;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-success.is-inverted {\n background-color: #fff;\n color: #34a85e; }\n #optimole-app .button.is-success.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-success.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-success.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #34a85e; }\n #optimole-app .button.is-success.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-success.is-outlined {\n background-color: transparent;\n border-color: #34a85e;\n color: #34a85e; }\n #optimole-app .button.is-success.is-outlined:hover, #optimole-app .button.is-success.is-outlined:focus {\n background-color: #34a85e;\n border-color: #34a85e;\n color: #fff; }\n #optimole-app .button.is-success.is-outlined.is-loading::after {\n border-color: transparent transparent #34a85e #34a85e !important; }\n #optimole-app .button.is-success.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-success.is-outlined {\n background-color: transparent;\n border-color: #34a85e;\n box-shadow: none;\n color: #34a85e; }\n #optimole-app .button.is-success.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-success.is-inverted.is-outlined:hover, #optimole-app .button.is-success.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #34a85e; }\n #optimole-app .button.is-success.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-success.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-warning {\n background-color: #ffdd57;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning:hover, #optimole-app .button.is-warning.is-hovered {\n background-color: #ffdb4a;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning:focus, #optimole-app .button.is-warning.is-focused {\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning:focus:not(:active), #optimole-app .button.is-warning.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); }\n #optimole-app .button.is-warning:active, #optimole-app .button.is-warning.is-active {\n background-color: #ffd83d;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning[disabled],\n fieldset[disabled] #optimole-app .button.is-warning {\n background-color: #ffdd57;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-warning.is-inverted {\n background-color: rgba(0, 0, 0, 0.7);\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-inverted:hover {\n background-color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-warning.is-inverted {\n background-color: rgba(0, 0, 0, 0.7);\n border-color: transparent;\n box-shadow: none;\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-loading::after {\n border-color: transparent transparent rgba(0, 0, 0, 0.7) rgba(0, 0, 0, 0.7) !important; }\n #optimole-app .button.is-warning.is-outlined {\n background-color: transparent;\n border-color: #ffdd57;\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-outlined:hover, #optimole-app .button.is-warning.is-outlined:focus {\n background-color: #ffdd57;\n border-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning.is-outlined.is-loading::after {\n border-color: transparent transparent #ffdd57 #ffdd57 !important; }\n #optimole-app .button.is-warning.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-warning.is-outlined {\n background-color: transparent;\n border-color: #ffdd57;\n box-shadow: none;\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-inverted.is-outlined {\n background-color: transparent;\n border-color: rgba(0, 0, 0, 0.7);\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-warning.is-inverted.is-outlined:hover, #optimole-app .button.is-warning.is-inverted.is-outlined:focus {\n background-color: rgba(0, 0, 0, 0.7);\n color: #ffdd57; }\n #optimole-app .button.is-warning.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-warning.is-inverted.is-outlined {\n background-color: transparent;\n border-color: rgba(0, 0, 0, 0.7);\n box-shadow: none;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .button.is-danger {\n background-color: #D54222;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger:hover, #optimole-app .button.is-danger.is-hovered {\n background-color: #ca3f20;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger:focus, #optimole-app .button.is-danger.is-focused {\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger:focus:not(:active), #optimole-app .button.is-danger.is-focused:not(:active) {\n box-shadow: 0 0 0 0.125em rgba(213, 66, 34, 0.25); }\n #optimole-app .button.is-danger:active, #optimole-app .button.is-danger.is-active {\n background-color: #bf3b1e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .button.is-danger[disabled],\n fieldset[disabled] #optimole-app .button.is-danger {\n background-color: #D54222;\n border-color: transparent;\n box-shadow: none; }\n #optimole-app .button.is-danger.is-inverted {\n background-color: #fff;\n color: #D54222; }\n #optimole-app .button.is-danger.is-inverted:hover {\n background-color: #f2f2f2; }\n #optimole-app .button.is-danger.is-inverted[disabled],\n fieldset[disabled] #optimole-app .button.is-danger.is-inverted {\n background-color: #fff;\n border-color: transparent;\n box-shadow: none;\n color: #D54222; }\n #optimole-app .button.is-danger.is-loading::after {\n border-color: transparent transparent #fff #fff !important; }\n #optimole-app .button.is-danger.is-outlined {\n background-color: transparent;\n border-color: #D54222;\n color: #D54222; }\n #optimole-app .button.is-danger.is-outlined:hover, #optimole-app .button.is-danger.is-outlined:focus {\n background-color: #D54222;\n border-color: #D54222;\n color: #fff; }\n #optimole-app .button.is-danger.is-outlined.is-loading::after {\n border-color: transparent transparent #D54222 #D54222 !important; }\n #optimole-app .button.is-danger.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-danger.is-outlined {\n background-color: transparent;\n border-color: #D54222;\n box-shadow: none;\n color: #D54222; }\n #optimole-app .button.is-danger.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n color: #fff; }\n #optimole-app .button.is-danger.is-inverted.is-outlined:hover, #optimole-app .button.is-danger.is-inverted.is-outlined:focus {\n background-color: #fff;\n color: #D54222; }\n #optimole-app .button.is-danger.is-inverted.is-outlined[disabled],\n fieldset[disabled] #optimole-app .button.is-danger.is-inverted.is-outlined {\n background-color: transparent;\n border-color: #fff;\n box-shadow: none;\n color: #fff; }\n #optimole-app .button.is-small {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .button.is-normal {\n font-size: 1rem; }\n #optimole-app .button.is-medium {\n font-size: 1.25rem; }\n #optimole-app .button.is-large {\n font-size: 1.5rem; }\n #optimole-app .button[disabled],\n fieldset[disabled] #optimole-app .button {\n background-color: white;\n border-color: #dbdbdb;\n box-shadow: none;\n opacity: 0.5; }\n #optimole-app .button.is-fullwidth {\n display: -ms-flexbox;\n display: flex;\n width: 100%; }\n #optimole-app .button.is-loading {\n color: transparent !important;\n pointer-events: none; }\n #optimole-app .button.is-loading::after {\n position: absolute;\n left: calc(50% - (1em / 2));\n top: calc(50% - (1em / 2));\n position: absolute !important; }\n #optimole-app .button.is-static {\n background-color: whitesmoke;\n border-color: #dbdbdb;\n color: #7a7a7a;\n box-shadow: none;\n pointer-events: none; }\n #optimole-app .button.is-rounded {\n border-radius: 290486px;\n padding-left: 1em;\n padding-right: 1em; }\n #optimole-app .buttons {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .buttons .button {\n margin-bottom: 0.5rem; }\n #optimole-app .buttons .button:not(:last-child):not(.is-fullwidth) {\n margin-right: 0.5rem; }\n #optimole-app .buttons:last-child {\n margin-bottom: -0.5rem; }\n #optimole-app .buttons:not(:last-child) {\n margin-bottom: 1rem; }\n #optimole-app .buttons.are-small .button:not(.is-normal):not(.is-medium):not(.is-large) {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .buttons.are-medium .button:not(.is-small):not(.is-normal):not(.is-large) {\n font-size: 1.25rem; }\n #optimole-app .buttons.are-large .button:not(.is-small):not(.is-normal):not(.is-medium) {\n font-size: 1.5rem; }\n #optimole-app .buttons.has-addons .button:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .buttons.has-addons .button:not(:last-child) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n margin-right: -1px; }\n #optimole-app .buttons.has-addons .button:last-child {\n margin-right: 0; }\n #optimole-app .buttons.has-addons .button:hover, #optimole-app .buttons.has-addons .button.is-hovered {\n z-index: 2; }\n #optimole-app .buttons.has-addons .button:focus, #optimole-app .buttons.has-addons .button.is-focused, #optimole-app .buttons.has-addons .button:active, #optimole-app .buttons.has-addons .button.is-active, #optimole-app .buttons.has-addons .button.is-selected {\n z-index: 3; }\n #optimole-app .buttons.has-addons .button:focus:hover, #optimole-app .buttons.has-addons .button.is-focused:hover, #optimole-app .buttons.has-addons .button:active:hover, #optimole-app .buttons.has-addons .button.is-active:hover, #optimole-app .buttons.has-addons .button.is-selected:hover {\n z-index: 4; }\n #optimole-app .buttons.has-addons .button.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n #optimole-app .buttons.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .buttons.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .container {\n margin: 0 auto;\n position: relative; }\n @media screen and (min-width: 1088px) {\n #optimole-app .container {\n max-width: 960px;\n width: 960px; }\n #optimole-app .container.is-fluid {\n margin-left: 64px;\n margin-right: 64px;\n max-width: none;\n width: auto; } }\n @media screen and (max-width: 1279px) {\n #optimole-app .container.is-widescreen {\n max-width: 1152px;\n width: auto; } }\n @media screen and (max-width: 1471px) {\n #optimole-app .container.is-fullhd {\n max-width: 1344px;\n width: auto; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .container {\n max-width: 1152px;\n width: 1152px; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .container {\n max-width: 1344px;\n width: 1344px; } }\n #optimole-app .content li + li {\n margin-top: 0.25em; }\n #optimole-app .content p:not(:last-child),\n #optimole-app .content dl:not(:last-child),\n #optimole-app .content ol:not(:last-child),\n #optimole-app .content ul:not(:last-child),\n #optimole-app .content blockquote:not(:last-child),\n #optimole-app .content pre:not(:last-child),\n #optimole-app .content table:not(:last-child) {\n margin-bottom: 1em; }\n #optimole-app .content h1,\n #optimole-app .content h2,\n #optimole-app .content h3,\n #optimole-app .content h4,\n #optimole-app .content h5,\n #optimole-app .content h6 {\n color: #363636;\n font-weight: 600;\n line-height: 1.125; }\n #optimole-app .content h1 {\n font-size: 2em;\n margin-bottom: 0.5em; }\n #optimole-app .content h1:not(:first-child) {\n margin-top: 1em; }\n #optimole-app .content h2 {\n font-size: 1.75em;\n margin-bottom: 0.5714em; }\n #optimole-app .content h2:not(:first-child) {\n margin-top: 1.1428em; }\n #optimole-app .content h3 {\n font-size: 1.5em;\n margin-bottom: 0.6666em; }\n #optimole-app .content h3:not(:first-child) {\n margin-top: 1.3333em; }\n #optimole-app .content h4 {\n font-size: 1.25em;\n margin-bottom: 0.8em; }\n #optimole-app .content h5 {\n font-size: 1.125em;\n margin-bottom: 0.8888em; }\n #optimole-app .content h6 {\n font-size: 1em;\n margin-bottom: 1em; }\n #optimole-app .content blockquote {\n background-color: whitesmoke;\n border-left: 5px solid #dbdbdb;\n padding: 1.25em 1.5em; }\n #optimole-app .content ol {\n list-style-position: outside;\n margin-left: 2em;\n margin-top: 1em; }\n #optimole-app .content ol:not([type]) {\n list-style-type: decimal; }\n #optimole-app .content ol:not([type]).is-lower-alpha {\n list-style-type: lower-alpha; }\n #optimole-app .content ol:not([type]).is-lower-roman {\n list-style-type: lower-roman; }\n #optimole-app .content ol:not([type]).is-upper-alpha {\n list-style-type: upper-alpha; }\n #optimole-app .content ol:not([type]).is-upper-roman {\n list-style-type: upper-roman; }\n #optimole-app .content ul {\n list-style: disc outside;\n margin-left: 2em;\n margin-top: 1em; }\n #optimole-app .content ul ul {\n list-style-type: circle;\n margin-top: 0.5em; }\n #optimole-app .content ul ul ul {\n list-style-type: square; }\n #optimole-app .content dd {\n margin-left: 2em; }\n #optimole-app .content figure {\n margin-left: 2em;\n margin-right: 2em;\n text-align: center; }\n #optimole-app .content figure:not(:first-child) {\n margin-top: 2em; }\n #optimole-app .content figure:not(:last-child) {\n margin-bottom: 2em; }\n #optimole-app .content figure img {\n display: inline-block; }\n #optimole-app .content figure figcaption {\n font-style: italic; }\n #optimole-app .content pre {\n -webkit-overflow-scrolling: touch;\n overflow-x: auto;\n padding: 1.25em 1.5em;\n white-space: pre;\n word-wrap: normal; }\n #optimole-app .content sup,\n #optimole-app .content sub {\n font-size: 75%; }\n #optimole-app .content table {\n width: 100%; }\n #optimole-app .content table td,\n #optimole-app .content table th {\n border: 1px solid #dbdbdb;\n border-width: 0 0 1px;\n padding: 0.5em 0.75em;\n vertical-align: top; }\n #optimole-app .content table th {\n color: #363636;\n text-align: left; }\n #optimole-app .content table thead td,\n #optimole-app .content table thead th {\n border-width: 0 0 2px;\n color: #363636; }\n #optimole-app .content table tfoot td,\n #optimole-app .content table tfoot th {\n border-width: 2px 0 0;\n color: #363636; }\n #optimole-app .content table tbody tr:last-child td,\n #optimole-app .content table tbody tr:last-child th {\n border-bottom-width: 0; }\n #optimole-app .content.is-small {\n font-size: 0.75rem; }\n #optimole-app .content.is-medium {\n font-size: 1.25rem; }\n #optimole-app .content.is-large {\n font-size: 1.5rem; }\n #optimole-app .input,\n #optimole-app .textarea {\n background-color: white;\n border-color: #dbdbdb;\n color: #363636;\n box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);\n max-width: 100%;\n width: 100%; }\n #optimole-app .input::-moz-placeholder,\n #optimole-app .textarea::-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input::-webkit-input-placeholder,\n #optimole-app .textarea::-webkit-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input:-moz-placeholder,\n #optimole-app .textarea:-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input:-ms-input-placeholder,\n #optimole-app .textarea:-ms-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .input:hover, #optimole-app .input.is-hovered,\n #optimole-app .textarea:hover,\n #optimole-app .textarea.is-hovered {\n border-color: #b5b5b5; }\n #optimole-app .input:focus, #optimole-app .input.is-focused, #optimole-app .input:active, #optimole-app .input.is-active,\n #optimole-app .textarea:focus,\n #optimole-app .textarea.is-focused,\n #optimole-app .textarea:active,\n #optimole-app .textarea.is-active {\n border-color: #3273dc;\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .input[disabled],\n fieldset[disabled] #optimole-app .input,\n #optimole-app .textarea[disabled],\n fieldset[disabled]\n #optimole-app .textarea {\n background-color: whitesmoke;\n border-color: whitesmoke;\n box-shadow: none;\n color: #7a7a7a; }\n #optimole-app .input[disabled]::-moz-placeholder,\n fieldset[disabled] #optimole-app .input::-moz-placeholder,\n #optimole-app .textarea[disabled]::-moz-placeholder,\n fieldset[disabled]\n #optimole-app .textarea::-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[disabled]::-webkit-input-placeholder,\n fieldset[disabled] #optimole-app .input::-webkit-input-placeholder,\n #optimole-app .textarea[disabled]::-webkit-input-placeholder,\n fieldset[disabled]\n #optimole-app .textarea::-webkit-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[disabled]:-moz-placeholder,\n fieldset[disabled] #optimole-app .input:-moz-placeholder,\n #optimole-app .textarea[disabled]:-moz-placeholder,\n fieldset[disabled]\n #optimole-app .textarea:-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[disabled]:-ms-input-placeholder,\n fieldset[disabled] #optimole-app .input:-ms-input-placeholder,\n #optimole-app .textarea[disabled]:-ms-input-placeholder,\n fieldset[disabled]\n #optimole-app .textarea:-ms-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .input[readonly],\n #optimole-app .textarea[readonly] {\n box-shadow: none; }\n #optimole-app .input.is-white,\n #optimole-app .textarea.is-white {\n border-color: white; }\n #optimole-app .input.is-white:focus, #optimole-app .input.is-white.is-focused, #optimole-app .input.is-white:active, #optimole-app .input.is-white.is-active,\n #optimole-app .textarea.is-white:focus,\n #optimole-app .textarea.is-white.is-focused,\n #optimole-app .textarea.is-white:active,\n #optimole-app .textarea.is-white.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n #optimole-app .input.is-black,\n #optimole-app .textarea.is-black {\n border-color: #0a0a0a; }\n #optimole-app .input.is-black:focus, #optimole-app .input.is-black.is-focused, #optimole-app .input.is-black:active, #optimole-app .input.is-black.is-active,\n #optimole-app .textarea.is-black:focus,\n #optimole-app .textarea.is-black.is-focused,\n #optimole-app .textarea.is-black:active,\n #optimole-app .textarea.is-black.is-active {\n box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); }\n #optimole-app .input.is-light,\n #optimole-app .textarea.is-light {\n border-color: whitesmoke; }\n #optimole-app .input.is-light:focus, #optimole-app .input.is-light.is-focused, #optimole-app .input.is-light:active, #optimole-app .input.is-light.is-active,\n #optimole-app .textarea.is-light:focus,\n #optimole-app .textarea.is-light.is-focused,\n #optimole-app .textarea.is-light:active,\n #optimole-app .textarea.is-light.is-active {\n box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); }\n #optimole-app .input.is-dark,\n #optimole-app .textarea.is-dark {\n border-color: #363636; }\n #optimole-app .input.is-dark:focus, #optimole-app .input.is-dark.is-focused, #optimole-app .input.is-dark:active, #optimole-app .input.is-dark.is-active,\n #optimole-app .textarea.is-dark:focus,\n #optimole-app .textarea.is-dark.is-focused,\n #optimole-app .textarea.is-dark:active,\n #optimole-app .textarea.is-dark.is-active {\n box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); }\n #optimole-app .input.is-primary,\n #optimole-app .textarea.is-primary {\n border-color: #EF686B; }\n #optimole-app .input.is-primary:focus, #optimole-app .input.is-primary.is-focused, #optimole-app .input.is-primary:active, #optimole-app .input.is-primary.is-active,\n #optimole-app .textarea.is-primary:focus,\n #optimole-app .textarea.is-primary.is-focused,\n #optimole-app .textarea.is-primary:active,\n #optimole-app .textarea.is-primary.is-active {\n box-shadow: 0 0 0 0.125em rgba(239, 104, 107, 0.25); }\n #optimole-app .input.is-link,\n #optimole-app .textarea.is-link {\n border-color: #3273dc; }\n #optimole-app .input.is-link:focus, #optimole-app .input.is-link.is-focused, #optimole-app .input.is-link:active, #optimole-app .input.is-link.is-active,\n #optimole-app .textarea.is-link:focus,\n #optimole-app .textarea.is-link.is-focused,\n #optimole-app .textarea.is-link:active,\n #optimole-app .textarea.is-link.is-active {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .input.is-info,\n #optimole-app .textarea.is-info {\n border-color: #5180C1; }\n #optimole-app .input.is-info:focus, #optimole-app .input.is-info.is-focused, #optimole-app .input.is-info:active, #optimole-app .input.is-info.is-active,\n #optimole-app .textarea.is-info:focus,\n #optimole-app .textarea.is-info.is-focused,\n #optimole-app .textarea.is-info:active,\n #optimole-app .textarea.is-info.is-active {\n box-shadow: 0 0 0 0.125em rgba(81, 128, 193, 0.25); }\n #optimole-app .input.is-success,\n #optimole-app .textarea.is-success {\n border-color: #34a85e; }\n #optimole-app .input.is-success:focus, #optimole-app .input.is-success.is-focused, #optimole-app .input.is-success:active, #optimole-app .input.is-success.is-active,\n #optimole-app .textarea.is-success:focus,\n #optimole-app .textarea.is-success.is-focused,\n #optimole-app .textarea.is-success:active,\n #optimole-app .textarea.is-success.is-active {\n box-shadow: 0 0 0 0.125em rgba(52, 168, 94, 0.25); }\n #optimole-app .input.is-warning,\n #optimole-app .textarea.is-warning {\n border-color: #ffdd57; }\n #optimole-app .input.is-warning:focus, #optimole-app .input.is-warning.is-focused, #optimole-app .input.is-warning:active, #optimole-app .input.is-warning.is-active,\n #optimole-app .textarea.is-warning:focus,\n #optimole-app .textarea.is-warning.is-focused,\n #optimole-app .textarea.is-warning:active,\n #optimole-app .textarea.is-warning.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); }\n #optimole-app .input.is-danger,\n #optimole-app .textarea.is-danger {\n border-color: #D54222; }\n #optimole-app .input.is-danger:focus, #optimole-app .input.is-danger.is-focused, #optimole-app .input.is-danger:active, #optimole-app .input.is-danger.is-active,\n #optimole-app .textarea.is-danger:focus,\n #optimole-app .textarea.is-danger.is-focused,\n #optimole-app .textarea.is-danger:active,\n #optimole-app .textarea.is-danger.is-active {\n box-shadow: 0 0 0 0.125em rgba(213, 66, 34, 0.25); }\n #optimole-app .input.is-small,\n #optimole-app .textarea.is-small {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .input.is-medium,\n #optimole-app .textarea.is-medium {\n font-size: 1.25rem; }\n #optimole-app .input.is-large,\n #optimole-app .textarea.is-large {\n font-size: 1.5rem; }\n #optimole-app .input.is-fullwidth,\n #optimole-app .textarea.is-fullwidth {\n display: block;\n width: 100%; }\n #optimole-app .input.is-inline,\n #optimole-app .textarea.is-inline {\n display: inline;\n width: auto; }\n #optimole-app .input.is-rounded {\n border-radius: 290486px;\n padding-left: 1em;\n padding-right: 1em; }\n #optimole-app .input.is-static {\n background-color: transparent;\n border-color: transparent;\n box-shadow: none;\n padding-left: 0;\n padding-right: 0; }\n #optimole-app .textarea {\n display: block;\n max-width: 100%;\n min-width: 100%;\n padding: 0.625em;\n resize: vertical; }\n #optimole-app .textarea:not([rows]) {\n max-height: 600px;\n min-height: 120px; }\n #optimole-app .textarea[rows] {\n height: initial; }\n #optimole-app .textarea.has-fixed-size {\n resize: none; }\n #optimole-app .checkbox,\n #optimole-app .radio {\n cursor: pointer;\n display: inline-block;\n line-height: 1.25;\n position: relative; }\n #optimole-app .checkbox input,\n #optimole-app .radio input {\n cursor: pointer; }\n #optimole-app .checkbox:hover,\n #optimole-app .radio:hover {\n color: #363636; }\n #optimole-app .checkbox[disabled],\n fieldset[disabled] #optimole-app .checkbox,\n #optimole-app .radio[disabled],\n fieldset[disabled]\n #optimole-app .radio {\n color: #7a7a7a;\n cursor: not-allowed; }\n #optimole-app .radio + .radio {\n margin-left: 0.5em; }\n #optimole-app .select {\n display: inline-block;\n max-width: 100%;\n position: relative;\n vertical-align: top; }\n #optimole-app .select:not(.is-multiple) {\n height: 2.25em; }\n #optimole-app .select:not(.is-multiple):not(.is-loading)::after {\n border-color: #3273dc;\n right: 1.125em;\n z-index: 4; }\n #optimole-app .select.is-rounded select {\n border-radius: 290486px;\n padding-left: 1em; }\n #optimole-app .select select {\n background-color: white;\n border-color: #dbdbdb;\n color: #363636;\n cursor: pointer;\n display: block;\n font-size: 1em;\n max-width: 100%;\n outline: none; }\n #optimole-app .select select::-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select::-webkit-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select:-moz-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select:-ms-input-placeholder {\n color: rgba(54, 54, 54, 0.3); }\n #optimole-app .select select:hover, #optimole-app .select select.is-hovered {\n border-color: #b5b5b5; }\n #optimole-app .select select:focus, #optimole-app .select select.is-focused, #optimole-app .select select:active, #optimole-app .select select.is-active {\n border-color: #3273dc;\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .select select[disabled],\n fieldset[disabled] #optimole-app .select select {\n background-color: whitesmoke;\n border-color: whitesmoke;\n box-shadow: none;\n color: #7a7a7a; }\n #optimole-app .select select[disabled]::-moz-placeholder,\n fieldset[disabled] #optimole-app .select select::-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select[disabled]::-webkit-input-placeholder,\n fieldset[disabled] #optimole-app .select select::-webkit-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select[disabled]:-moz-placeholder,\n fieldset[disabled] #optimole-app .select select:-moz-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select[disabled]:-ms-input-placeholder,\n fieldset[disabled] #optimole-app .select select:-ms-input-placeholder {\n color: rgba(122, 122, 122, 0.3); }\n #optimole-app .select select::-ms-expand {\n display: none; }\n #optimole-app .select select[disabled]:hover,\n fieldset[disabled] #optimole-app .select select:hover {\n border-color: whitesmoke; }\n #optimole-app .select select:not([multiple]) {\n padding-right: 2.5em; }\n #optimole-app .select select[multiple] {\n height: auto;\n padding: 0; }\n #optimole-app .select select[multiple] option {\n padding: 0.5em 1em; }\n #optimole-app .select:not(.is-multiple):not(.is-loading):hover::after {\n border-color: #363636; }\n #optimole-app .select.is-white:not(:hover)::after {\n border-color: white; }\n #optimole-app .select.is-white select {\n border-color: white; }\n #optimole-app .select.is-white select:hover, #optimole-app .select.is-white select.is-hovered {\n border-color: #f2f2f2; }\n #optimole-app .select.is-white select:focus, #optimole-app .select.is-white select.is-focused, #optimole-app .select.is-white select:active, #optimole-app .select.is-white select.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n #optimole-app .select.is-black:not(:hover)::after {\n border-color: #0a0a0a; }\n #optimole-app .select.is-black select {\n border-color: #0a0a0a; }\n #optimole-app .select.is-black select:hover, #optimole-app .select.is-black select.is-hovered {\n border-color: black; }\n #optimole-app .select.is-black select:focus, #optimole-app .select.is-black select.is-focused, #optimole-app .select.is-black select:active, #optimole-app .select.is-black select.is-active {\n box-shadow: 0 0 0 0.125em rgba(10, 10, 10, 0.25); }\n #optimole-app .select.is-light:not(:hover)::after {\n border-color: whitesmoke; }\n #optimole-app .select.is-light select {\n border-color: whitesmoke; }\n #optimole-app .select.is-light select:hover, #optimole-app .select.is-light select.is-hovered {\n border-color: #e8e8e8; }\n #optimole-app .select.is-light select:focus, #optimole-app .select.is-light select.is-focused, #optimole-app .select.is-light select:active, #optimole-app .select.is-light select.is-active {\n box-shadow: 0 0 0 0.125em rgba(245, 245, 245, 0.25); }\n #optimole-app .select.is-dark:not(:hover)::after {\n border-color: #363636; }\n #optimole-app .select.is-dark select {\n border-color: #363636; }\n #optimole-app .select.is-dark select:hover, #optimole-app .select.is-dark select.is-hovered {\n border-color: #292929; }\n #optimole-app .select.is-dark select:focus, #optimole-app .select.is-dark select.is-focused, #optimole-app .select.is-dark select:active, #optimole-app .select.is-dark select.is-active {\n box-shadow: 0 0 0 0.125em rgba(54, 54, 54, 0.25); }\n #optimole-app .select.is-primary:not(:hover)::after {\n border-color: #EF686B; }\n #optimole-app .select.is-primary select {\n border-color: #EF686B; }\n #optimole-app .select.is-primary select:hover, #optimole-app .select.is-primary select.is-hovered {\n border-color: #ed5154; }\n #optimole-app .select.is-primary select:focus, #optimole-app .select.is-primary select.is-focused, #optimole-app .select.is-primary select:active, #optimole-app .select.is-primary select.is-active {\n box-shadow: 0 0 0 0.125em rgba(239, 104, 107, 0.25); }\n #optimole-app .select.is-link:not(:hover)::after {\n border-color: #3273dc; }\n #optimole-app .select.is-link select {\n border-color: #3273dc; }\n #optimole-app .select.is-link select:hover, #optimole-app .select.is-link select.is-hovered {\n border-color: #2366d1; }\n #optimole-app .select.is-link select:focus, #optimole-app .select.is-link select.is-focused, #optimole-app .select.is-link select:active, #optimole-app .select.is-link select.is-active {\n box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n #optimole-app .select.is-info:not(:hover)::after {\n border-color: #5180C1; }\n #optimole-app .select.is-info select {\n border-color: #5180C1; }\n #optimole-app .select.is-info select:hover, #optimole-app .select.is-info select.is-hovered {\n border-color: #4173b7; }\n #optimole-app .select.is-info select:focus, #optimole-app .select.is-info select.is-focused, #optimole-app .select.is-info select:active, #optimole-app .select.is-info select.is-active {\n box-shadow: 0 0 0 0.125em rgba(81, 128, 193, 0.25); }\n #optimole-app .select.is-success:not(:hover)::after {\n border-color: #34a85e; }\n #optimole-app .select.is-success select {\n border-color: #34a85e; }\n #optimole-app .select.is-success select:hover, #optimole-app .select.is-success select.is-hovered {\n border-color: #2e9553; }\n #optimole-app .select.is-success select:focus, #optimole-app .select.is-success select.is-focused, #optimole-app .select.is-success select:active, #optimole-app .select.is-success select.is-active {\n box-shadow: 0 0 0 0.125em rgba(52, 168, 94, 0.25); }\n #optimole-app .select.is-warning:not(:hover)::after {\n border-color: #ffdd57; }\n #optimole-app .select.is-warning select {\n border-color: #ffdd57; }\n #optimole-app .select.is-warning select:hover, #optimole-app .select.is-warning select.is-hovered {\n border-color: #ffd83d; }\n #optimole-app .select.is-warning select:focus, #optimole-app .select.is-warning select.is-focused, #optimole-app .select.is-warning select:active, #optimole-app .select.is-warning select.is-active {\n box-shadow: 0 0 0 0.125em rgba(255, 221, 87, 0.25); }\n #optimole-app .select.is-danger:not(:hover)::after {\n border-color: #D54222; }\n #optimole-app .select.is-danger select {\n border-color: #D54222; }\n #optimole-app .select.is-danger select:hover, #optimole-app .select.is-danger select.is-hovered {\n border-color: #bf3b1e; }\n #optimole-app .select.is-danger select:focus, #optimole-app .select.is-danger select.is-focused, #optimole-app .select.is-danger select:active, #optimole-app .select.is-danger select.is-active {\n box-shadow: 0 0 0 0.125em rgba(213, 66, 34, 0.25); }\n #optimole-app .select.is-small {\n border-radius: 2px;\n font-size: 0.75rem; }\n #optimole-app .select.is-medium {\n font-size: 1.25rem; }\n #optimole-app .select.is-large {\n font-size: 1.5rem; }\n #optimole-app .select.is-disabled::after {\n border-color: #7a7a7a; }\n #optimole-app .select.is-fullwidth {\n width: 100%; }\n #optimole-app .select.is-fullwidth select {\n width: 100%; }\n #optimole-app .select.is-loading::after {\n margin-top: 0;\n position: absolute;\n right: 0.625em;\n top: 0.625em;\n transform: none; }\n #optimole-app .select.is-loading.is-small:after {\n font-size: 0.75rem; }\n #optimole-app .select.is-loading.is-medium:after {\n font-size: 1.25rem; }\n #optimole-app .select.is-loading.is-large:after {\n font-size: 1.5rem; }\n #optimole-app .file {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start;\n position: relative; }\n #optimole-app .file.is-white .file-cta {\n background-color: white;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .file.is-white:hover .file-cta, #optimole-app .file.is-white.is-hovered .file-cta {\n background-color: #f9f9f9;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .file.is-white:focus .file-cta, #optimole-app .file.is-white.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(255, 255, 255, 0.25);\n color: #0a0a0a; }\n #optimole-app .file.is-white:active .file-cta, #optimole-app .file.is-white.is-active .file-cta {\n background-color: #f2f2f2;\n border-color: transparent;\n color: #0a0a0a; }\n #optimole-app .file.is-black .file-cta {\n background-color: #0a0a0a;\n border-color: transparent;\n color: white; }\n #optimole-app .file.is-black:hover .file-cta, #optimole-app .file.is-black.is-hovered .file-cta {\n background-color: #040404;\n border-color: transparent;\n color: white; }\n #optimole-app .file.is-black:focus .file-cta, #optimole-app .file.is-black.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(10, 10, 10, 0.25);\n color: white; }\n #optimole-app .file.is-black:active .file-cta, #optimole-app .file.is-black.is-active .file-cta {\n background-color: black;\n border-color: transparent;\n color: white; }\n #optimole-app .file.is-light .file-cta {\n background-color: whitesmoke;\n border-color: transparent;\n color: #363636; }\n #optimole-app .file.is-light:hover .file-cta, #optimole-app .file.is-light.is-hovered .file-cta {\n background-color: #eeeeee;\n border-color: transparent;\n color: #363636; }\n #optimole-app .file.is-light:focus .file-cta, #optimole-app .file.is-light.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(245, 245, 245, 0.25);\n color: #363636; }\n #optimole-app .file.is-light:active .file-cta, #optimole-app .file.is-light.is-active .file-cta {\n background-color: #e8e8e8;\n border-color: transparent;\n color: #363636; }\n #optimole-app .file.is-dark .file-cta {\n background-color: #363636;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .file.is-dark:hover .file-cta, #optimole-app .file.is-dark.is-hovered .file-cta {\n background-color: #2f2f2f;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .file.is-dark:focus .file-cta, #optimole-app .file.is-dark.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(54, 54, 54, 0.25);\n color: whitesmoke; }\n #optimole-app .file.is-dark:active .file-cta, #optimole-app .file.is-dark.is-active .file-cta {\n background-color: #292929;\n border-color: transparent;\n color: whitesmoke; }\n #optimole-app .file.is-primary .file-cta {\n background-color: #EF686B;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-primary:hover .file-cta, #optimole-app .file.is-primary.is-hovered .file-cta {\n background-color: #ee5c60;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-primary:focus .file-cta, #optimole-app .file.is-primary.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(239, 104, 107, 0.25);\n color: #fff; }\n #optimole-app .file.is-primary:active .file-cta, #optimole-app .file.is-primary.is-active .file-cta {\n background-color: #ed5154;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-link .file-cta {\n background-color: #3273dc;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-link:hover .file-cta, #optimole-app .file.is-link.is-hovered .file-cta {\n background-color: #276cda;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-link:focus .file-cta, #optimole-app .file.is-link.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(50, 115, 220, 0.25);\n color: #fff; }\n #optimole-app .file.is-link:active .file-cta, #optimole-app .file.is-link.is-active .file-cta {\n background-color: #2366d1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-info .file-cta {\n background-color: #5180C1;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-info:hover .file-cta, #optimole-app .file.is-info.is-hovered .file-cta {\n background-color: #4879be;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-info:focus .file-cta, #optimole-app .file.is-info.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(81, 128, 193, 0.25);\n color: #fff; }\n #optimole-app .file.is-info:active .file-cta, #optimole-app .file.is-info.is-active .file-cta {\n background-color: #4173b7;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-success .file-cta {\n background-color: #34a85e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-success:hover .file-cta, #optimole-app .file.is-success.is-hovered .file-cta {\n background-color: #319e59;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-success:focus .file-cta, #optimole-app .file.is-success.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(52, 168, 94, 0.25);\n color: #fff; }\n #optimole-app .file.is-success:active .file-cta, #optimole-app .file.is-success.is-active .file-cta {\n background-color: #2e9553;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-warning .file-cta {\n background-color: #ffdd57;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-warning:hover .file-cta, #optimole-app .file.is-warning.is-hovered .file-cta {\n background-color: #ffdb4a;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-warning:focus .file-cta, #optimole-app .file.is-warning.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(255, 221, 87, 0.25);\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-warning:active .file-cta, #optimole-app .file.is-warning.is-active .file-cta {\n background-color: #ffd83d;\n border-color: transparent;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .file.is-danger .file-cta {\n background-color: #D54222;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-danger:hover .file-cta, #optimole-app .file.is-danger.is-hovered .file-cta {\n background-color: #ca3f20;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-danger:focus .file-cta, #optimole-app .file.is-danger.is-focused .file-cta {\n border-color: transparent;\n box-shadow: 0 0 0.5em rgba(213, 66, 34, 0.25);\n color: #fff; }\n #optimole-app .file.is-danger:active .file-cta, #optimole-app .file.is-danger.is-active .file-cta {\n background-color: #bf3b1e;\n border-color: transparent;\n color: #fff; }\n #optimole-app .file.is-small {\n font-size: 0.75rem; }\n #optimole-app .file.is-medium {\n font-size: 1.25rem; }\n #optimole-app .file.is-medium .file-icon .fa {\n font-size: 21px; }\n #optimole-app .file.is-large {\n font-size: 1.5rem; }\n #optimole-app .file.is-large .file-icon .fa {\n font-size: 28px; }\n #optimole-app .file.has-name .file-cta {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .file.has-name .file-name {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .file.has-name.is-empty .file-cta {\n border-radius: 4px; }\n #optimole-app .file.has-name.is-empty .file-name {\n display: none; }\n #optimole-app .file.is-boxed .file-label {\n -ms-flex-direction: column;\n flex-direction: column; }\n #optimole-app .file.is-boxed .file-cta {\n -ms-flex-direction: column;\n flex-direction: column;\n height: auto;\n padding: 1em 3em; }\n #optimole-app .file.is-boxed .file-name {\n border-width: 0 1px 1px; }\n #optimole-app .file.is-boxed .file-icon {\n height: 1.5em;\n width: 1.5em; }\n #optimole-app .file.is-boxed .file-icon .fa {\n font-size: 21px; }\n #optimole-app .file.is-boxed.is-small .file-icon .fa {\n font-size: 14px; }\n #optimole-app .file.is-boxed.is-medium .file-icon .fa {\n font-size: 28px; }\n #optimole-app .file.is-boxed.is-large .file-icon .fa {\n font-size: 35px; }\n #optimole-app .file.is-boxed.has-name .file-cta {\n border-radius: 4px 4px 0 0; }\n #optimole-app .file.is-boxed.has-name .file-name {\n border-radius: 0 0 4px 4px;\n border-width: 0 1px 1px; }\n #optimole-app .file.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .file.is-fullwidth .file-label {\n width: 100%; }\n #optimole-app .file.is-fullwidth .file-name {\n -ms-flex-positive: 1;\n flex-grow: 1;\n max-width: none; }\n #optimole-app .file.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .file.is-right .file-cta {\n border-radius: 0 4px 4px 0; }\n #optimole-app .file.is-right .file-name {\n border-radius: 4px 0 0 4px;\n border-width: 1px 0 1px 1px;\n -ms-flex-order: -1;\n order: -1; }\n #optimole-app .file-label {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n cursor: pointer;\n -ms-flex-pack: start;\n justify-content: flex-start;\n overflow: hidden;\n position: relative; }\n #optimole-app .file-label:hover .file-cta {\n background-color: #eeeeee;\n color: #363636; }\n #optimole-app .file-label:hover .file-name {\n border-color: #d5d5d5; }\n #optimole-app .file-label:active .file-cta {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .file-label:active .file-name {\n border-color: #cfcfcf; }\n #optimole-app .file-input {\n height: 100%;\n left: 0;\n opacity: 0;\n outline: none;\n position: absolute;\n top: 0;\n width: 100%; }\n #optimole-app .file-cta,\n #optimole-app .file-name {\n border-color: #dbdbdb;\n border-radius: 4px;\n font-size: 1em;\n padding-left: 1em;\n padding-right: 1em;\n white-space: nowrap; }\n #optimole-app .file-cta {\n background-color: whitesmoke;\n color: #4a4a4a; }\n #optimole-app .file-name {\n border-color: #dbdbdb;\n border-style: solid;\n border-width: 1px 1px 1px 0;\n display: block;\n max-width: 16em;\n overflow: hidden;\n text-align: left;\n text-overflow: ellipsis; }\n #optimole-app .file-icon {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n height: 1em;\n -ms-flex-pack: center;\n justify-content: center;\n margin-right: 0.5em;\n width: 1em; }\n #optimole-app .file-icon .fa {\n font-size: 14px; }\n #optimole-app .label {\n color: #363636;\n display: block;\n font-size: 1rem;\n font-weight: 700; }\n #optimole-app .label:not(:last-child) {\n margin-bottom: 0.5em; }\n #optimole-app .label.is-small {\n font-size: 0.75rem; }\n #optimole-app .label.is-medium {\n font-size: 1.25rem; }\n #optimole-app .label.is-large {\n font-size: 1.5rem; }\n #optimole-app .help {\n display: block;\n font-size: 0.75rem;\n margin-top: 0.25rem; }\n #optimole-app .help.is-white {\n color: white; }\n #optimole-app .help.is-black {\n color: #0a0a0a; }\n #optimole-app .help.is-light {\n color: whitesmoke; }\n #optimole-app .help.is-dark {\n color: #363636; }\n #optimole-app .help.is-primary {\n color: #EF686B; }\n #optimole-app .help.is-link {\n color: #3273dc; }\n #optimole-app .help.is-info {\n color: #5180C1; }\n #optimole-app .help.is-success {\n color: #34a85e; }\n #optimole-app .help.is-warning {\n color: #ffdd57; }\n #optimole-app .help.is-danger {\n color: #D54222; }\n #optimole-app .field:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .field.has-addons {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .field.has-addons .control:not(:last-child) {\n margin-right: -1px; }\n #optimole-app .field.has-addons .control:not(:first-child):not(:last-child) .button,\n #optimole-app .field.has-addons .control:not(:first-child):not(:last-child) .input,\n #optimole-app .field.has-addons .control:not(:first-child):not(:last-child) .select select {\n border-radius: 0; }\n #optimole-app .field.has-addons .control:first-child:not(:only-child) .button,\n #optimole-app .field.has-addons .control:first-child:not(:only-child) .input,\n #optimole-app .field.has-addons .control:first-child:not(:only-child) .select select {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .field.has-addons .control:last-child:not(:only-child) .button,\n #optimole-app .field.has-addons .control:last-child:not(:only-child) .input,\n #optimole-app .field.has-addons .control:last-child:not(:only-child) .select select {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .field.has-addons .control .button:not([disabled]):hover, #optimole-app .field.has-addons .control .button:not([disabled]).is-hovered,\n #optimole-app .field.has-addons .control .input:not([disabled]):hover,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-hovered,\n #optimole-app .field.has-addons .control .select select:not([disabled]):hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-hovered {\n z-index: 2; }\n #optimole-app .field.has-addons .control .button:not([disabled]):focus, #optimole-app .field.has-addons .control .button:not([disabled]).is-focused, #optimole-app .field.has-addons .control .button:not([disabled]):active, #optimole-app .field.has-addons .control .button:not([disabled]).is-active,\n #optimole-app .field.has-addons .control .input:not([disabled]):focus,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-focused,\n #optimole-app .field.has-addons .control .input:not([disabled]):active,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-active,\n #optimole-app .field.has-addons .control .select select:not([disabled]):focus,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-focused,\n #optimole-app .field.has-addons .control .select select:not([disabled]):active,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-active {\n z-index: 3; }\n #optimole-app .field.has-addons .control .button:not([disabled]):focus:hover, #optimole-app .field.has-addons .control .button:not([disabled]).is-focused:hover, #optimole-app .field.has-addons .control .button:not([disabled]):active:hover, #optimole-app .field.has-addons .control .button:not([disabled]).is-active:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]):focus:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-focused:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]):active:hover,\n #optimole-app .field.has-addons .control .input:not([disabled]).is-active:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]):focus:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-focused:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]):active:hover,\n #optimole-app .field.has-addons .control .select select:not([disabled]).is-active:hover {\n z-index: 4; }\n #optimole-app .field.has-addons .control.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n #optimole-app .field.has-addons.has-addons-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .field.has-addons.has-addons-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .field.has-addons.has-addons-fullwidth .control {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .field.is-grouped {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .field.is-grouped > .control {\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .field.is-grouped > .control:not(:last-child) {\n margin-bottom: 0;\n margin-right: 0.75rem; }\n #optimole-app .field.is-grouped > .control.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .field.is-grouped.is-grouped-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .field.is-grouped.is-grouped-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .field.is-grouped.is-grouped-multiline {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .field.is-grouped.is-grouped-multiline > .control:last-child, #optimole-app .field.is-grouped.is-grouped-multiline > .control:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .field.is-grouped.is-grouped-multiline:last-child {\n margin-bottom: -0.75rem; }\n #optimole-app .field.is-grouped.is-grouped-multiline:not(:last-child) {\n margin-bottom: 0; }\n @media screen and (min-width: 769px), print {\n #optimole-app .field.is-horizontal {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .field-label .label {\n font-size: inherit; }\n @media screen and (max-width: 768px) {\n #optimole-app .field-label {\n margin-bottom: 0.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .field-label {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-right: 1.5rem;\n text-align: right; }\n #optimole-app .field-label.is-small {\n font-size: 0.75rem;\n padding-top: 0.375em; }\n #optimole-app .field-label.is-normal {\n padding-top: 0.375em; }\n #optimole-app .field-label.is-medium {\n font-size: 1.25rem;\n padding-top: 0.375em; }\n #optimole-app .field-label.is-large {\n font-size: 1.5rem;\n padding-top: 0.375em; } }\n #optimole-app .field-body .field .field {\n margin-bottom: 0; }\n @media screen and (min-width: 769px), print {\n #optimole-app .field-body {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 5;\n flex-grow: 5;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .field-body .field {\n margin-bottom: 0; }\n #optimole-app .field-body > .field {\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .field-body > .field:not(.is-narrow) {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n #optimole-app .field-body > .field:not(:last-child) {\n margin-right: 0.75rem; } }\n #optimole-app .control {\n box-sizing: border-box;\n clear: both;\n font-size: 1rem;\n position: relative;\n text-align: left; }\n #optimole-app .control.has-icons-left .input:focus ~ .icon,\n #optimole-app .control.has-icons-left .select:focus ~ .icon, #optimole-app .control.has-icons-right .input:focus ~ .icon,\n #optimole-app .control.has-icons-right .select:focus ~ .icon {\n color: #7a7a7a; }\n #optimole-app .control.has-icons-left .input.is-small ~ .icon,\n #optimole-app .control.has-icons-left .select.is-small ~ .icon, #optimole-app .control.has-icons-right .input.is-small ~ .icon,\n #optimole-app .control.has-icons-right .select.is-small ~ .icon {\n font-size: 0.75rem; }\n #optimole-app .control.has-icons-left .input.is-medium ~ .icon,\n #optimole-app .control.has-icons-left .select.is-medium ~ .icon, #optimole-app .control.has-icons-right .input.is-medium ~ .icon,\n #optimole-app .control.has-icons-right .select.is-medium ~ .icon {\n font-size: 1.25rem; }\n #optimole-app .control.has-icons-left .input.is-large ~ .icon,\n #optimole-app .control.has-icons-left .select.is-large ~ .icon, #optimole-app .control.has-icons-right .input.is-large ~ .icon,\n #optimole-app .control.has-icons-right .select.is-large ~ .icon {\n font-size: 1.5rem; }\n #optimole-app .control.has-icons-left .icon, #optimole-app .control.has-icons-right .icon {\n color: #dbdbdb;\n height: 2.25em;\n pointer-events: none;\n position: absolute;\n top: 0;\n width: 2.25em;\n z-index: 4; }\n #optimole-app .control.has-icons-left .input,\n #optimole-app .control.has-icons-left .select select {\n padding-left: 2.25em; }\n #optimole-app .control.has-icons-left .icon.is-left {\n left: 0; }\n #optimole-app .control.has-icons-right .input,\n #optimole-app .control.has-icons-right .select select {\n padding-right: 2.25em; }\n #optimole-app .control.has-icons-right .icon.is-right {\n right: 0; }\n #optimole-app .control.is-loading::after {\n position: absolute !important;\n right: 0.625em;\n top: 0.625em;\n z-index: 4; }\n #optimole-app .control.is-loading.is-small:after {\n font-size: 0.75rem; }\n #optimole-app .control.is-loading.is-medium:after {\n font-size: 1.25rem; }\n #optimole-app .control.is-loading.is-large:after {\n font-size: 1.5rem; }\n #optimole-app .icon {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-inline-flexbox;\n display: inline-flex;\n -ms-flex-pack: center;\n justify-content: center;\n height: 1.5rem;\n width: 1.5rem; }\n #optimole-app .icon.is-small {\n height: 1rem;\n width: 1rem; }\n #optimole-app .icon.is-medium {\n height: 2rem;\n width: 2rem; }\n #optimole-app .icon.is-large {\n height: 3rem;\n width: 3rem; }\n #optimole-app .image {\n display: block;\n position: relative; }\n #optimole-app .image img {\n display: block;\n height: auto;\n width: 100%; }\n #optimole-app .image img.is-rounded {\n border-radius: 290486px; }\n #optimole-app .image.is-square img,\n #optimole-app .image.is-square .has-ratio, #optimole-app .image.is-1by1 img,\n #optimole-app .image.is-1by1 .has-ratio, #optimole-app .image.is-5by4 img,\n #optimole-app .image.is-5by4 .has-ratio, #optimole-app .image.is-4by3 img,\n #optimole-app .image.is-4by3 .has-ratio, #optimole-app .image.is-3by2 img,\n #optimole-app .image.is-3by2 .has-ratio, #optimole-app .image.is-5by3 img,\n #optimole-app .image.is-5by3 .has-ratio, #optimole-app .image.is-16by9 img,\n #optimole-app .image.is-16by9 .has-ratio, #optimole-app .image.is-2by1 img,\n #optimole-app .image.is-2by1 .has-ratio, #optimole-app .image.is-3by1 img,\n #optimole-app .image.is-3by1 .has-ratio, #optimole-app .image.is-4by5 img,\n #optimole-app .image.is-4by5 .has-ratio, #optimole-app .image.is-3by4 img,\n #optimole-app .image.is-3by4 .has-ratio, #optimole-app .image.is-2by3 img,\n #optimole-app .image.is-2by3 .has-ratio, #optimole-app .image.is-3by5 img,\n #optimole-app .image.is-3by5 .has-ratio, #optimole-app .image.is-9by16 img,\n #optimole-app .image.is-9by16 .has-ratio, #optimole-app .image.is-1by2 img,\n #optimole-app .image.is-1by2 .has-ratio, #optimole-app .image.is-1by3 img,\n #optimole-app .image.is-1by3 .has-ratio {\n height: 100%;\n width: 100%; }\n #optimole-app .image.is-square, #optimole-app .image.is-1by1 {\n padding-top: 100%; }\n #optimole-app .image.is-5by4 {\n padding-top: 80%; }\n #optimole-app .image.is-4by3 {\n padding-top: 75%; }\n #optimole-app .image.is-3by2 {\n padding-top: 66.6666%; }\n #optimole-app .image.is-5by3 {\n padding-top: 60%; }\n #optimole-app .image.is-16by9 {\n padding-top: 56.25%; }\n #optimole-app .image.is-2by1 {\n padding-top: 50%; }\n #optimole-app .image.is-3by1 {\n padding-top: 33.3333%; }\n #optimole-app .image.is-4by5 {\n padding-top: 125%; }\n #optimole-app .image.is-3by4 {\n padding-top: 133.3333%; }\n #optimole-app .image.is-2by3 {\n padding-top: 150%; }\n #optimole-app .image.is-3by5 {\n padding-top: 166.6666%; }\n #optimole-app .image.is-9by16 {\n padding-top: 177.7777%; }\n #optimole-app .image.is-1by2 {\n padding-top: 200%; }\n #optimole-app .image.is-1by3 {\n padding-top: 300%; }\n #optimole-app .image.is-16x16 {\n height: 16px;\n width: 16px; }\n #optimole-app .image.is-24x24 {\n height: 24px;\n width: 24px; }\n #optimole-app .image.is-32x32 {\n height: 32px;\n width: 32px; }\n #optimole-app .image.is-48x48 {\n height: 48px;\n width: 48px; }\n #optimole-app .image.is-64x64 {\n height: 64px;\n width: 64px; }\n #optimole-app .image.is-96x96 {\n height: 96px;\n width: 96px; }\n #optimole-app .image.is-128x128 {\n height: 128px;\n width: 128px; }\n #optimole-app .notification {\n background-color: whitesmoke;\n border-radius: 4px;\n padding: 1.25rem 2.5rem 1.25rem 1.5rem;\n position: relative; }\n #optimole-app .notification a:not(.button):not(.dropdown-item) {\n color: currentColor;\n text-decoration: underline; }\n #optimole-app .notification strong {\n color: currentColor; }\n #optimole-app .notification code,\n #optimole-app .notification pre {\n background: white; }\n #optimole-app .notification pre code {\n background: transparent; }\n #optimole-app .notification > .delete {\n position: absolute;\n right: 0.5rem;\n top: 0.5rem; }\n #optimole-app .notification .title,\n #optimole-app .notification .subtitle,\n #optimole-app .notification .content {\n color: currentColor; }\n #optimole-app .notification.is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .notification.is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .notification.is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .notification.is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .notification.is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .notification.is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .notification.is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .notification.is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .notification.is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .notification.is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .progress {\n -moz-appearance: none;\n -webkit-appearance: none;\n border: none;\n border-radius: 290486px;\n display: block;\n height: 1rem;\n overflow: hidden;\n padding: 0;\n width: 100%; }\n #optimole-app .progress::-webkit-progress-bar {\n background-color: #dbdbdb; }\n #optimole-app .progress::-webkit-progress-value {\n background-color: #4a4a4a; }\n #optimole-app .progress::-moz-progress-bar {\n background-color: #4a4a4a; }\n #optimole-app .progress::-ms-fill {\n background-color: #4a4a4a;\n border: none; }\n #optimole-app .progress:indeterminate {\n animation-duration: 1.5s;\n animation-iteration-count: infinite;\n animation-name: moveIndeterminate;\n animation-timing-function: linear;\n background-color: #dbdbdb;\n background-image: linear-gradient(to right, #4a4a4a 30%, #dbdbdb 30%);\n background-position: top left;\n background-repeat: no-repeat;\n background-size: 150% 150%; }\n #optimole-app .progress:indeterminate::-webkit-progress-bar {\n background-color: transparent; }\n #optimole-app .progress:indeterminate::-moz-progress-bar {\n background-color: transparent; }\n #optimole-app .progress.is-white::-webkit-progress-value {\n background-color: white; }\n #optimole-app .progress.is-white::-moz-progress-bar {\n background-color: white; }\n #optimole-app .progress.is-white::-ms-fill {\n background-color: white; }\n #optimole-app .progress.is-white:indeterminate {\n background-image: linear-gradient(to right, white 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-black::-webkit-progress-value {\n background-color: #0a0a0a; }\n #optimole-app .progress.is-black::-moz-progress-bar {\n background-color: #0a0a0a; }\n #optimole-app .progress.is-black::-ms-fill {\n background-color: #0a0a0a; }\n #optimole-app .progress.is-black:indeterminate {\n background-image: linear-gradient(to right, #0a0a0a 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-light::-webkit-progress-value {\n background-color: whitesmoke; }\n #optimole-app .progress.is-light::-moz-progress-bar {\n background-color: whitesmoke; }\n #optimole-app .progress.is-light::-ms-fill {\n background-color: whitesmoke; }\n #optimole-app .progress.is-light:indeterminate {\n background-image: linear-gradient(to right, whitesmoke 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-dark::-webkit-progress-value {\n background-color: #363636; }\n #optimole-app .progress.is-dark::-moz-progress-bar {\n background-color: #363636; }\n #optimole-app .progress.is-dark::-ms-fill {\n background-color: #363636; }\n #optimole-app .progress.is-dark:indeterminate {\n background-image: linear-gradient(to right, #363636 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-primary::-webkit-progress-value {\n background-color: #EF686B; }\n #optimole-app .progress.is-primary::-moz-progress-bar {\n background-color: #EF686B; }\n #optimole-app .progress.is-primary::-ms-fill {\n background-color: #EF686B; }\n #optimole-app .progress.is-primary:indeterminate {\n background-image: linear-gradient(to right, #EF686B 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-link::-webkit-progress-value {\n background-color: #3273dc; }\n #optimole-app .progress.is-link::-moz-progress-bar {\n background-color: #3273dc; }\n #optimole-app .progress.is-link::-ms-fill {\n background-color: #3273dc; }\n #optimole-app .progress.is-link:indeterminate {\n background-image: linear-gradient(to right, #3273dc 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-info::-webkit-progress-value {\n background-color: #5180C1; }\n #optimole-app .progress.is-info::-moz-progress-bar {\n background-color: #5180C1; }\n #optimole-app .progress.is-info::-ms-fill {\n background-color: #5180C1; }\n #optimole-app .progress.is-info:indeterminate {\n background-image: linear-gradient(to right, #5180C1 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-success::-webkit-progress-value {\n background-color: #34a85e; }\n #optimole-app .progress.is-success::-moz-progress-bar {\n background-color: #34a85e; }\n #optimole-app .progress.is-success::-ms-fill {\n background-color: #34a85e; }\n #optimole-app .progress.is-success:indeterminate {\n background-image: linear-gradient(to right, #34a85e 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-warning::-webkit-progress-value {\n background-color: #ffdd57; }\n #optimole-app .progress.is-warning::-moz-progress-bar {\n background-color: #ffdd57; }\n #optimole-app .progress.is-warning::-ms-fill {\n background-color: #ffdd57; }\n #optimole-app .progress.is-warning:indeterminate {\n background-image: linear-gradient(to right, #ffdd57 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-danger::-webkit-progress-value {\n background-color: #D54222; }\n #optimole-app .progress.is-danger::-moz-progress-bar {\n background-color: #D54222; }\n #optimole-app .progress.is-danger::-ms-fill {\n background-color: #D54222; }\n #optimole-app .progress.is-danger:indeterminate {\n background-image: linear-gradient(to right, #D54222 30%, #dbdbdb 30%); }\n #optimole-app .progress.is-small {\n height: 0.75rem; }\n #optimole-app .progress.is-medium {\n height: 1.25rem; }\n #optimole-app .progress.is-large {\n height: 1.5rem; }\n\n@keyframes moveIndeterminate {\n from {\n background-position: 200% 0; }\n to {\n background-position: -200% 0; } }\n #optimole-app .table {\n background-color: white;\n color: #363636; }\n #optimole-app .table td,\n #optimole-app .table th {\n border: 1px solid #dbdbdb;\n border-width: 0 0 1px;\n padding: 0.5em 0.75em;\n vertical-align: top; }\n #optimole-app .table td.is-white,\n #optimole-app .table th.is-white {\n background-color: white;\n border-color: white;\n color: #0a0a0a; }\n #optimole-app .table td.is-black,\n #optimole-app .table th.is-black {\n background-color: #0a0a0a;\n border-color: #0a0a0a;\n color: white; }\n #optimole-app .table td.is-light,\n #optimole-app .table th.is-light {\n background-color: whitesmoke;\n border-color: whitesmoke;\n color: #363636; }\n #optimole-app .table td.is-dark,\n #optimole-app .table th.is-dark {\n background-color: #363636;\n border-color: #363636;\n color: whitesmoke; }\n #optimole-app .table td.is-primary,\n #optimole-app .table th.is-primary {\n background-color: #EF686B;\n border-color: #EF686B;\n color: #fff; }\n #optimole-app .table td.is-link,\n #optimole-app .table th.is-link {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff; }\n #optimole-app .table td.is-info,\n #optimole-app .table th.is-info {\n background-color: #5180C1;\n border-color: #5180C1;\n color: #fff; }\n #optimole-app .table td.is-success,\n #optimole-app .table th.is-success {\n background-color: #34a85e;\n border-color: #34a85e;\n color: #fff; }\n #optimole-app .table td.is-warning,\n #optimole-app .table th.is-warning {\n background-color: #ffdd57;\n border-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .table td.is-danger,\n #optimole-app .table th.is-danger {\n background-color: #D54222;\n border-color: #D54222;\n color: #fff; }\n #optimole-app .table td.is-narrow,\n #optimole-app .table th.is-narrow {\n white-space: nowrap;\n width: 1%; }\n #optimole-app .table td.is-selected,\n #optimole-app .table th.is-selected {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .table td.is-selected a,\n #optimole-app .table td.is-selected strong,\n #optimole-app .table th.is-selected a,\n #optimole-app .table th.is-selected strong {\n color: currentColor; }\n #optimole-app .table th {\n color: #363636;\n text-align: left; }\n #optimole-app .table tr.is-selected {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .table tr.is-selected a,\n #optimole-app .table tr.is-selected strong {\n color: currentColor; }\n #optimole-app .table tr.is-selected td,\n #optimole-app .table tr.is-selected th {\n border-color: #fff;\n color: currentColor; }\n #optimole-app .table thead {\n background-color: transparent; }\n #optimole-app .table thead td,\n #optimole-app .table thead th {\n border-width: 0 0 2px;\n color: #363636; }\n #optimole-app .table tfoot {\n background-color: transparent; }\n #optimole-app .table tfoot td,\n #optimole-app .table tfoot th {\n border-width: 2px 0 0;\n color: #363636; }\n #optimole-app .table tbody {\n background-color: transparent; }\n #optimole-app .table tbody tr:last-child td,\n #optimole-app .table tbody tr:last-child th {\n border-bottom-width: 0; }\n #optimole-app .table.is-bordered td,\n #optimole-app .table.is-bordered th {\n border-width: 1px; }\n #optimole-app .table.is-bordered tr:last-child td,\n #optimole-app .table.is-bordered tr:last-child th {\n border-bottom-width: 1px; }\n #optimole-app .table.is-fullwidth {\n width: 100%; }\n #optimole-app .table.is-hoverable tbody tr:not(.is-selected):hover {\n background-color: #fafafa; }\n #optimole-app .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover {\n background-color: #fafafa; }\n #optimole-app .table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even) {\n background-color: whitesmoke; }\n #optimole-app .table.is-narrow td,\n #optimole-app .table.is-narrow th {\n padding: 0.25em 0.5em; }\n #optimole-app .table.is-striped tbody tr:not(.is-selected):nth-child(even) {\n background-color: #fafafa; }\n #optimole-app .table-container {\n -webkit-overflow-scrolling: touch;\n overflow: auto;\n overflow-y: hidden;\n max-width: 100%; }\n #optimole-app .tags {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .tags .tag {\n margin-bottom: 0.5rem; }\n #optimole-app .tags .tag:not(:last-child) {\n margin-right: 0.5rem; }\n #optimole-app .tags:last-child {\n margin-bottom: -0.5rem; }\n #optimole-app .tags:not(:last-child) {\n margin-bottom: 1rem; }\n #optimole-app .tags.are-medium .tag:not(.is-normal):not(.is-large) {\n font-size: 1rem; }\n #optimole-app .tags.are-large .tag:not(.is-normal):not(.is-medium) {\n font-size: 1.25rem; }\n #optimole-app .tags.has-addons .tag {\n margin-right: 0; }\n #optimole-app .tags.has-addons .tag:not(:first-child) {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .tags.has-addons .tag:not(:last-child) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .tags.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .tags.is-centered .tag {\n margin-right: 0.25rem;\n margin-left: 0.25rem; }\n #optimole-app .tags.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .tags.is-right .tag:not(:first-child) {\n margin-left: 0.5rem; }\n #optimole-app .tags.is-right .tag:not(:last-child) {\n margin-right: 0; }\n #optimole-app .tags.has-addons .tag {\n margin-right: 0; }\n #optimole-app .tags.has-addons .tag:not(:first-child) {\n margin-left: 0;\n border-bottom-left-radius: 0;\n border-top-left-radius: 0; }\n #optimole-app .tags.has-addons .tag:not(:last-child) {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .tag:not(body) {\n -ms-flex-align: center;\n align-items: center;\n background-color: whitesmoke;\n border-radius: 4px;\n color: #4a4a4a;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: 0.75rem;\n height: 2em;\n -ms-flex-pack: center;\n justify-content: center;\n line-height: 1.5;\n padding-left: 0.75em;\n padding-right: 0.75em;\n white-space: nowrap; }\n #optimole-app .tag:not(body) .delete {\n margin-left: 0.25rem;\n margin-right: -0.375rem; }\n #optimole-app .tag:not(body).is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .tag:not(body).is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .tag:not(body).is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .tag:not(body).is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .tag:not(body).is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .tag:not(body).is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .tag:not(body).is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .tag:not(body).is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .tag:not(body).is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .tag:not(body).is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .tag:not(body).is-normal {\n font-size: 0.75rem; }\n #optimole-app .tag:not(body).is-medium {\n font-size: 1rem; }\n #optimole-app .tag:not(body).is-large {\n font-size: 1.25rem; }\n #optimole-app .tag:not(body) .icon:first-child:not(:last-child) {\n margin-left: -0.375em;\n margin-right: 0.1875em; }\n #optimole-app .tag:not(body) .icon:last-child:not(:first-child) {\n margin-left: 0.1875em;\n margin-right: -0.375em; }\n #optimole-app .tag:not(body) .icon:first-child:last-child {\n margin-left: -0.375em;\n margin-right: -0.375em; }\n #optimole-app .tag:not(body).is-delete {\n margin-left: 1px;\n padding: 0;\n position: relative;\n width: 2em; }\n #optimole-app .tag:not(body).is-delete::before, #optimole-app .tag:not(body).is-delete::after {\n background-color: currentColor;\n content: "";\n display: block;\n left: 50%;\n position: absolute;\n top: 50%;\n transform: translateX(-50%) translateY(-50%) rotate(45deg);\n transform-origin: center center; }\n #optimole-app .tag:not(body).is-delete::before {\n height: 1px;\n width: 50%; }\n #optimole-app .tag:not(body).is-delete::after {\n height: 50%;\n width: 1px; }\n #optimole-app .tag:not(body).is-delete:hover, #optimole-app .tag:not(body).is-delete:focus {\n background-color: #e8e8e8; }\n #optimole-app .tag:not(body).is-delete:active {\n background-color: #dbdbdb; }\n #optimole-app .tag:not(body).is-rounded {\n border-radius: 290486px; }\n #optimole-app a.tag:hover {\n text-decoration: underline; }\n #optimole-app .title,\n #optimole-app .subtitle {\n word-break: break-word; }\n #optimole-app .title em,\n #optimole-app .title span,\n #optimole-app .subtitle em,\n #optimole-app .subtitle span {\n font-weight: inherit; }\n #optimole-app .title sub,\n #optimole-app .subtitle sub {\n font-size: 0.75em; }\n #optimole-app .title sup,\n #optimole-app .subtitle sup {\n font-size: 0.75em; }\n #optimole-app .title .tag,\n #optimole-app .subtitle .tag {\n vertical-align: middle; }\n #optimole-app .title {\n color: #363636;\n font-size: 2rem;\n font-weight: 600;\n line-height: 1.125; }\n #optimole-app .title strong {\n color: inherit;\n font-weight: inherit; }\n #optimole-app .title + .highlight {\n margin-top: -0.75rem; }\n #optimole-app .title:not(.is-spaced) + .subtitle {\n margin-top: -1.25rem; }\n #optimole-app .title.is-1 {\n font-size: 3rem; }\n #optimole-app .title.is-2 {\n font-size: 2.5rem; }\n #optimole-app .title.is-3 {\n font-size: 2rem; }\n #optimole-app .title.is-4 {\n font-size: 1.5rem; }\n #optimole-app .title.is-5 {\n font-size: 1.25rem; }\n #optimole-app .title.is-6 {\n font-size: 1rem; }\n #optimole-app .title.is-7 {\n font-size: 0.75rem; }\n #optimole-app .subtitle {\n color: #4a4a4a;\n font-size: 1.25rem;\n font-weight: 400;\n line-height: 1.25; }\n #optimole-app .subtitle strong {\n color: #363636;\n font-weight: 600; }\n #optimole-app .subtitle:not(.is-spaced) + .title {\n margin-top: -1.25rem; }\n #optimole-app .subtitle.is-1 {\n font-size: 3rem; }\n #optimole-app .subtitle.is-2 {\n font-size: 2.5rem; }\n #optimole-app .subtitle.is-3 {\n font-size: 2rem; }\n #optimole-app .subtitle.is-4 {\n font-size: 1.5rem; }\n #optimole-app .subtitle.is-5 {\n font-size: 1.25rem; }\n #optimole-app .subtitle.is-6 {\n font-size: 1rem; }\n #optimole-app .subtitle.is-7 {\n font-size: 0.75rem; }\n #optimole-app .heading {\n display: block;\n font-size: 11px;\n letter-spacing: 1px;\n margin-bottom: 5px;\n text-transform: uppercase; }\n #optimole-app .highlight {\n font-weight: 400;\n max-width: 100%;\n overflow: hidden;\n padding: 0; }\n #optimole-app .highlight pre {\n overflow: auto;\n max-width: 100%; }\n #optimole-app .number {\n -ms-flex-align: center;\n align-items: center;\n background-color: whitesmoke;\n border-radius: 290486px;\n display: -ms-inline-flexbox;\n display: inline-flex;\n font-size: 1.25rem;\n height: 2em;\n -ms-flex-pack: center;\n justify-content: center;\n margin-right: 1.5rem;\n min-width: 2.5em;\n padding: 0.25rem 0.5rem;\n text-align: center;\n vertical-align: top; }\n #optimole-app .breadcrumb {\n font-size: 1rem;\n white-space: nowrap; }\n #optimole-app .breadcrumb a {\n -ms-flex-align: center;\n align-items: center;\n color: #3273dc;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0 0.75em; }\n #optimole-app .breadcrumb a:hover {\n color: #363636; }\n #optimole-app .breadcrumb li {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .breadcrumb li:first-child a {\n padding-left: 0; }\n #optimole-app .breadcrumb li.is-active a {\n color: #363636;\n cursor: default;\n pointer-events: none; }\n #optimole-app .breadcrumb li + li::before {\n color: #b5b5b5;\n content: "/"; }\n #optimole-app .breadcrumb ul,\n #optimole-app .breadcrumb ol {\n -ms-flex-align: start;\n align-items: flex-start;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .breadcrumb .icon:first-child {\n margin-right: 0.5em; }\n #optimole-app .breadcrumb .icon:last-child {\n margin-left: 0.5em; }\n #optimole-app .breadcrumb.is-centered ol,\n #optimole-app .breadcrumb.is-centered ul {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .breadcrumb.is-right ol,\n #optimole-app .breadcrumb.is-right ul {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .breadcrumb.is-small {\n font-size: 0.75rem; }\n #optimole-app .breadcrumb.is-medium {\n font-size: 1.25rem; }\n #optimole-app .breadcrumb.is-large {\n font-size: 1.5rem; }\n #optimole-app .breadcrumb.has-arrow-separator li + li::before {\n content: "\\2192"; }\n #optimole-app .breadcrumb.has-bullet-separator li + li::before {\n content: "\\2022"; }\n #optimole-app .breadcrumb.has-dot-separator li + li::before {\n content: "\\B7"; }\n #optimole-app .breadcrumb.has-succeeds-separator li + li::before {\n content: "\\227B"; }\n #optimole-app .card {\n background-color: white;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n color: #4a4a4a;\n max-width: 100%;\n position: relative; }\n #optimole-app .card-header {\n background-color: transparent;\n -ms-flex-align: stretch;\n align-items: stretch;\n box-shadow: 0 1px 2px rgba(10, 10, 10, 0.1);\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .card-header-title {\n -ms-flex-align: center;\n align-items: center;\n color: #363636;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-positive: 1;\n flex-grow: 1;\n font-weight: 700;\n padding: 0.75rem; }\n #optimole-app .card-header-title.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .card-header-icon {\n -ms-flex-align: center;\n align-items: center;\n cursor: pointer;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0.75rem; }\n #optimole-app .card-image {\n display: block;\n position: relative; }\n #optimole-app .card-content {\n background-color: transparent;\n padding: 1.5rem; }\n #optimole-app .card-footer {\n background-color: transparent;\n border-top: 1px solid #dbdbdb;\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .card-footer-item {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0.75rem; }\n #optimole-app .card-footer-item:not(:last-child) {\n border-right: 1px solid #dbdbdb; }\n #optimole-app .card .media:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .dropdown {\n display: -ms-inline-flexbox;\n display: inline-flex;\n position: relative;\n vertical-align: top; }\n #optimole-app .dropdown.is-active .dropdown-menu, #optimole-app .dropdown.is-hoverable:hover .dropdown-menu {\n display: block; }\n #optimole-app .dropdown.is-right .dropdown-menu {\n left: auto;\n right: 0; }\n #optimole-app .dropdown.is-up .dropdown-menu {\n bottom: 100%;\n padding-bottom: 4px;\n padding-top: initial;\n top: auto; }\n #optimole-app .dropdown-menu {\n display: none;\n left: 0;\n min-width: 12rem;\n padding-top: 4px;\n position: absolute;\n top: 100%;\n z-index: 20; }\n #optimole-app .dropdown-content {\n background-color: white;\n border-radius: 4px;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n padding-bottom: 0.5rem;\n padding-top: 0.5rem; }\n #optimole-app .dropdown-item {\n color: #4a4a4a;\n display: block;\n font-size: 0.875rem;\n line-height: 1.5;\n padding: 0.375rem 1rem;\n position: relative; }\n #optimole-app a.dropdown-item,\n #optimole-app button.dropdown-item {\n padding-right: 3rem;\n text-align: left;\n white-space: nowrap;\n width: 100%; }\n #optimole-app a.dropdown-item:hover,\n #optimole-app button.dropdown-item:hover {\n background-color: whitesmoke;\n color: #0a0a0a; }\n #optimole-app a.dropdown-item.is-active,\n #optimole-app button.dropdown-item.is-active {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .dropdown-divider {\n background-color: #dbdbdb;\n border: none;\n display: block;\n height: 1px;\n margin: 0.5rem 0; }\n #optimole-app .level {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: justify;\n justify-content: space-between; }\n #optimole-app .level code {\n border-radius: 4px; }\n #optimole-app .level img {\n display: inline-block;\n vertical-align: top; }\n #optimole-app .level.is-mobile {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .level.is-mobile .level-left,\n #optimole-app .level.is-mobile .level-right {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .level.is-mobile .level-left + .level-right {\n margin-top: 0; }\n #optimole-app .level.is-mobile .level-item:not(:last-child) {\n margin-bottom: 0;\n margin-right: 0.75rem; }\n #optimole-app .level.is-mobile .level-item:not(.is-narrow) {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n @media screen and (min-width: 769px), print {\n #optimole-app .level {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .level > .level-item:not(.is-narrow) {\n -ms-flex-positive: 1;\n flex-grow: 1; } }\n #optimole-app .level-item {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .level-item .title,\n #optimole-app .level-item .subtitle {\n margin-bottom: 0; }\n @media screen and (max-width: 768px) {\n #optimole-app .level-item:not(:last-child) {\n margin-bottom: 0.75rem; } }\n #optimole-app .level-left,\n #optimole-app .level-right {\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .level-left .level-item.is-flexible,\n #optimole-app .level-right .level-item.is-flexible {\n -ms-flex-positive: 1;\n flex-grow: 1; }\n @media screen and (min-width: 769px), print {\n #optimole-app .level-left .level-item:not(:last-child),\n #optimole-app .level-right .level-item:not(:last-child) {\n margin-right: 0.75rem; } }\n #optimole-app .level-left {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n @media screen and (max-width: 768px) {\n #optimole-app .level-left + .level-right {\n margin-top: 1.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .level-left {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .level-right {\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-pack: end;\n justify-content: flex-end; }\n @media screen and (min-width: 769px), print {\n #optimole-app .level-right {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .list {\n background-color: white;\n border-radius: 4px;\n box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1); }\n #optimole-app .list-item {\n display: block;\n padding: 0.5em 1em; }\n #optimole-app .list-item:not(a) {\n color: #4a4a4a; }\n #optimole-app .list-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px; }\n #optimole-app .list-item:last-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px; }\n #optimole-app .list-item:not(:last-child) {\n border-bottom: 1px solid #dbdbdb; }\n #optimole-app .list-item.is-active {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app a.list-item {\n background-color: whitesmoke;\n cursor: pointer; }\n #optimole-app .media {\n -ms-flex-align: start;\n align-items: flex-start;\n display: -ms-flexbox;\n display: flex;\n text-align: left; }\n #optimole-app .media .content:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .media .media {\n border-top: 1px solid rgba(219, 219, 219, 0.5);\n display: -ms-flexbox;\n display: flex;\n padding-top: 0.75rem; }\n #optimole-app .media .media .content:not(:last-child),\n #optimole-app .media .media .control:not(:last-child) {\n margin-bottom: 0.5rem; }\n #optimole-app .media .media .media {\n padding-top: 0.5rem; }\n #optimole-app .media .media .media + .media {\n margin-top: 0.5rem; }\n #optimole-app .media + .media {\n border-top: 1px solid rgba(219, 219, 219, 0.5);\n margin-top: 1rem;\n padding-top: 1rem; }\n #optimole-app .media.is-large + .media {\n margin-top: 1.5rem;\n padding-top: 1.5rem; }\n #optimole-app .media-left,\n #optimole-app .media-right {\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .media-left {\n margin-right: 1rem; }\n #optimole-app .media-right {\n margin-left: 1rem; }\n #optimole-app .media-content {\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n text-align: left; }\n @media screen and (max-width: 768px) {\n #optimole-app .media-content {\n overflow-x: auto; } }\n #optimole-app .menu {\n font-size: 1rem; }\n #optimole-app .menu.is-small {\n font-size: 0.75rem; }\n #optimole-app .menu.is-medium {\n font-size: 1.25rem; }\n #optimole-app .menu.is-large {\n font-size: 1.5rem; }\n #optimole-app .menu-list {\n line-height: 1.25; }\n #optimole-app .menu-list a {\n border-radius: 2px;\n color: #4a4a4a;\n display: block;\n padding: 0.5em 0.75em; }\n #optimole-app .menu-list a:hover {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .menu-list a.is-active {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .menu-list li ul {\n border-left: 1px solid #dbdbdb;\n margin: 0.75em;\n padding-left: 0.75em; }\n #optimole-app .menu-label {\n color: #7a7a7a;\n font-size: 0.75em;\n letter-spacing: 0.1em;\n text-transform: uppercase; }\n #optimole-app .menu-label:not(:first-child) {\n margin-top: 1em; }\n #optimole-app .menu-label:not(:last-child) {\n margin-bottom: 1em; }\n #optimole-app .message {\n background-color: whitesmoke;\n border-radius: 4px;\n font-size: 1rem; }\n #optimole-app .message strong {\n color: currentColor; }\n #optimole-app .message a:not(.button):not(.tag):not(.dropdown-item) {\n color: currentColor;\n text-decoration: underline; }\n #optimole-app .message.is-small {\n font-size: 0.75rem; }\n #optimole-app .message.is-medium {\n font-size: 1.25rem; }\n #optimole-app .message.is-large {\n font-size: 1.5rem; }\n #optimole-app .message.is-white {\n background-color: white; }\n #optimole-app .message.is-white .message-header {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .message.is-white .message-body {\n border-color: white;\n color: #4d4d4d; }\n #optimole-app .message.is-black {\n background-color: #fafafa; }\n #optimole-app .message.is-black .message-header {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .message.is-black .message-body {\n border-color: #0a0a0a;\n color: #090909; }\n #optimole-app .message.is-light {\n background-color: #fafafa; }\n #optimole-app .message.is-light .message-header {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .message.is-light .message-body {\n border-color: whitesmoke;\n color: #505050; }\n #optimole-app .message.is-dark {\n background-color: #fafafa; }\n #optimole-app .message.is-dark .message-header {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .message.is-dark .message-body {\n border-color: #363636;\n color: #2a2a2a; }\n #optimole-app .message.is-primary {\n background-color: #fef6f6; }\n #optimole-app .message.is-primary .message-header {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .message.is-primary .message-body {\n border-color: #EF686B;\n color: #bd2124; }\n #optimole-app .message.is-link {\n background-color: #f6f9fe; }\n #optimole-app .message.is-link .message-header {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .message.is-link .message-body {\n border-color: #3273dc;\n color: #22509a; }\n #optimole-app .message.is-info {\n background-color: #f7fafc; }\n #optimole-app .message.is-info .message-header {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .message.is-info .message-body {\n border-color: #5180C1;\n color: #36537c; }\n #optimole-app .message.is-success {\n background-color: #f7fdf9; }\n #optimole-app .message.is-success .message-header {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .message.is-success .message-body {\n border-color: #34a85e;\n color: #1b432a; }\n #optimole-app .message.is-warning {\n background-color: #fffdf5; }\n #optimole-app .message.is-warning .message-header {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .message.is-warning .message-body {\n border-color: #ffdd57;\n color: #3b3108; }\n #optimole-app .message.is-danger {\n background-color: #fef8f6; }\n #optimole-app .message.is-danger .message-header {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .message.is-danger .message-body {\n border-color: #D54222;\n color: #8d311d; }\n #optimole-app .message-header {\n -ms-flex-align: center;\n align-items: center;\n background-color: #4a4a4a;\n border-radius: 4px 4px 0 0;\n color: #fff;\n display: -ms-flexbox;\n display: flex;\n font-weight: 700;\n -ms-flex-pack: justify;\n justify-content: space-between;\n line-height: 1.25;\n padding: 0.75em 1em;\n position: relative; }\n #optimole-app .message-header .delete {\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n margin-left: 0.75em; }\n #optimole-app .message-header + .message-body {\n border-width: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0; }\n #optimole-app .message-body {\n border-color: #dbdbdb;\n border-radius: 4px;\n border-style: solid;\n border-width: 0 0 0 4px;\n color: #4a4a4a;\n padding: 1.25em 1.5em; }\n #optimole-app .message-body code,\n #optimole-app .message-body pre {\n background-color: white; }\n #optimole-app .message-body pre code {\n background-color: transparent; }\n #optimole-app .modal {\n -ms-flex-align: center;\n align-items: center;\n display: none;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: center;\n justify-content: center;\n overflow: hidden;\n position: fixed;\n z-index: 40; }\n #optimole-app .modal.is-active {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .modal-background {\n background-color: rgba(10, 10, 10, 0.86); }\n #optimole-app .modal-content,\n #optimole-app .modal-card {\n margin: 0 20px;\n max-height: calc(100vh - 160px);\n overflow: auto;\n position: relative;\n width: 100%; }\n @media screen and (min-width: 769px), print {\n #optimole-app .modal-content,\n #optimole-app .modal-card {\n margin: 0 auto;\n max-height: calc(100vh - 40px);\n width: 640px; } }\n #optimole-app .modal-close {\n background: none;\n height: 40px;\n position: fixed;\n right: 20px;\n top: 20px;\n width: 40px; }\n #optimole-app .modal-card {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n max-height: calc(100vh - 40px);\n overflow: hidden;\n -ms-overflow-y: visible; }\n #optimole-app .modal-card-head,\n #optimole-app .modal-card-foot {\n -ms-flex-align: center;\n align-items: center;\n background-color: whitesmoke;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: start;\n justify-content: flex-start;\n padding: 20px;\n position: relative; }\n #optimole-app .modal-card-head {\n border-bottom: 1px solid #dbdbdb;\n border-top-left-radius: 6px;\n border-top-right-radius: 6px; }\n #optimole-app .modal-card-title {\n color: #363636;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n font-size: 1.5rem;\n line-height: 1; }\n #optimole-app .modal-card-foot {\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n border-top: 1px solid #dbdbdb; }\n #optimole-app .modal-card-foot .button:not(:last-child) {\n margin-right: 10px; }\n #optimole-app .modal-card-body {\n -webkit-overflow-scrolling: touch;\n background-color: white;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n overflow: auto;\n padding: 20px; }\n #optimole-app .navbar {\n background-color: white;\n min-height: 3.25rem;\n position: relative;\n z-index: 30; }\n #optimole-app .navbar.is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-white .navbar-brand .navbar-link {\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-white .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-white .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-white .navbar-brand .navbar-link.is-active {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-brand .navbar-link::after {\n border-color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-burger {\n color: #0a0a0a; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-white .navbar-start > .navbar-item,\n #optimole-app .navbar.is-white .navbar-start .navbar-link,\n #optimole-app .navbar.is-white .navbar-end > .navbar-item,\n #optimole-app .navbar.is-white .navbar-end .navbar-link {\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-white .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-white .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-white .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-white .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-white .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-white .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-white .navbar-end .navbar-link.is-active {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-white .navbar-end .navbar-link::after {\n border-color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-white .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .navbar.is-white .navbar-dropdown a.navbar-item.is-active {\n background-color: white;\n color: #0a0a0a; } }\n #optimole-app .navbar.is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .navbar.is-black .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-black .navbar-brand .navbar-link {\n color: white; }\n #optimole-app .navbar.is-black .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-black .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-black .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-black .navbar-brand .navbar-link.is-active {\n background-color: black;\n color: white; }\n #optimole-app .navbar.is-black .navbar-brand .navbar-link::after {\n border-color: white; }\n #optimole-app .navbar.is-black .navbar-burger {\n color: white; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-black .navbar-start > .navbar-item,\n #optimole-app .navbar.is-black .navbar-start .navbar-link,\n #optimole-app .navbar.is-black .navbar-end > .navbar-item,\n #optimole-app .navbar.is-black .navbar-end .navbar-link {\n color: white; }\n #optimole-app .navbar.is-black .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-black .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-black .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-black .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-black .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-black .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-black .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-black .navbar-end .navbar-link.is-active {\n background-color: black;\n color: white; }\n #optimole-app .navbar.is-black .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-black .navbar-end .navbar-link::after {\n border-color: white; }\n #optimole-app .navbar.is-black .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-black .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: black;\n color: white; }\n #optimole-app .navbar.is-black .navbar-dropdown a.navbar-item.is-active {\n background-color: #0a0a0a;\n color: white; } }\n #optimole-app .navbar.is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-light .navbar-brand .navbar-link {\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-light .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-light .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-light .navbar-brand .navbar-link.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-brand .navbar-link::after {\n border-color: #363636; }\n #optimole-app .navbar.is-light .navbar-burger {\n color: #363636; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-light .navbar-start > .navbar-item,\n #optimole-app .navbar.is-light .navbar-start .navbar-link,\n #optimole-app .navbar.is-light .navbar-end > .navbar-item,\n #optimole-app .navbar.is-light .navbar-end .navbar-link {\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-light .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-light .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-light .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-light .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-light .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-light .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-light .navbar-end .navbar-link.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-light .navbar-end .navbar-link::after {\n border-color: #363636; }\n #optimole-app .navbar.is-light .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-light .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .navbar.is-light .navbar-dropdown a.navbar-item.is-active {\n background-color: whitesmoke;\n color: #363636; } }\n #optimole-app .navbar.is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link {\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-dark .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link.is-active {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-brand .navbar-link::after {\n border-color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-burger {\n color: whitesmoke; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-dark .navbar-start > .navbar-item,\n #optimole-app .navbar.is-dark .navbar-start .navbar-link,\n #optimole-app .navbar.is-dark .navbar-end > .navbar-item,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link {\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-dark .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-dark .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-dark .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-dark .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-dark .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link.is-active {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-dark .navbar-end .navbar-link::after {\n border-color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-dark .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .navbar.is-dark .navbar-dropdown a.navbar-item.is-active {\n background-color: #363636;\n color: whitesmoke; } }\n #optimole-app .navbar.is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-primary .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link.is-active {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-primary .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-primary .navbar-start > .navbar-item,\n #optimole-app .navbar.is-primary .navbar-start .navbar-link,\n #optimole-app .navbar.is-primary .navbar-end > .navbar-item,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-primary .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-primary .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-primary .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-primary .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-primary .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link.is-active {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-primary .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-primary .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-primary .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .navbar.is-primary .navbar-dropdown a.navbar-item.is-active {\n background-color: #EF686B;\n color: #fff; } }\n #optimole-app .navbar.is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-link .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-link .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-link .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-link .navbar-brand .navbar-link.is-active {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-link .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-link .navbar-start > .navbar-item,\n #optimole-app .navbar.is-link .navbar-start .navbar-link,\n #optimole-app .navbar.is-link .navbar-end > .navbar-item,\n #optimole-app .navbar.is-link .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-link .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-link .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-link .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-link .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-link .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-link .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-link .navbar-end .navbar-link.is-active {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-link .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-link .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-link .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .navbar.is-link .navbar-dropdown a.navbar-item.is-active {\n background-color: #3273dc;\n color: #fff; } }\n #optimole-app .navbar.is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-info .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-info .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-info .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-info .navbar-brand .navbar-link.is-active {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-info .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-info .navbar-start > .navbar-item,\n #optimole-app .navbar.is-info .navbar-start .navbar-link,\n #optimole-app .navbar.is-info .navbar-end > .navbar-item,\n #optimole-app .navbar.is-info .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-info .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-info .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-info .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-info .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-info .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-info .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-info .navbar-end .navbar-link.is-active {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-info .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-info .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-info .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .navbar.is-info .navbar-dropdown a.navbar-item.is-active {\n background-color: #5180C1;\n color: #fff; } }\n #optimole-app .navbar.is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-success .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-success .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-success .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-success .navbar-brand .navbar-link.is-active {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-success .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-success .navbar-start > .navbar-item,\n #optimole-app .navbar.is-success .navbar-start .navbar-link,\n #optimole-app .navbar.is-success .navbar-end > .navbar-item,\n #optimole-app .navbar.is-success .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-success .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-success .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-success .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-success .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-success .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-success .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-success .navbar-end .navbar-link.is-active {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-success .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-success .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-success .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .navbar.is-success .navbar-dropdown a.navbar-item.is-active {\n background-color: #34a85e;\n color: #fff; } }\n #optimole-app .navbar.is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-warning .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link.is-active {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-brand .navbar-link::after {\n border-color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-burger {\n color: rgba(0, 0, 0, 0.7); }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-warning .navbar-start > .navbar-item,\n #optimole-app .navbar.is-warning .navbar-start .navbar-link,\n #optimole-app .navbar.is-warning .navbar-end > .navbar-item,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-warning .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-warning .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-warning .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-warning .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-warning .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link.is-active {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-warning .navbar-end .navbar-link::after {\n border-color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-warning .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .navbar.is-warning .navbar-dropdown a.navbar-item.is-active {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); } }\n #optimole-app .navbar.is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-brand > .navbar-item,\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-brand > a.navbar-item:hover, #optimole-app .navbar.is-danger .navbar-brand > a.navbar-item.is-active,\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link:hover,\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link.is-active {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-brand .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-danger .navbar-burger {\n color: #fff; }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar.is-danger .navbar-start > .navbar-item,\n #optimole-app .navbar.is-danger .navbar-start .navbar-link,\n #optimole-app .navbar.is-danger .navbar-end > .navbar-item,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link {\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-start > a.navbar-item:hover, #optimole-app .navbar.is-danger .navbar-start > a.navbar-item.is-active,\n #optimole-app .navbar.is-danger .navbar-start .navbar-link:hover,\n #optimole-app .navbar.is-danger .navbar-start .navbar-link.is-active,\n #optimole-app .navbar.is-danger .navbar-end > a.navbar-item:hover,\n #optimole-app .navbar.is-danger .navbar-end > a.navbar-item.is-active,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link:hover,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link.is-active {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-start .navbar-link::after,\n #optimole-app .navbar.is-danger .navbar-end .navbar-link::after {\n border-color: #fff; }\n #optimole-app .navbar.is-danger .navbar-item.has-dropdown:hover .navbar-link,\n #optimole-app .navbar.is-danger .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .navbar.is-danger .navbar-dropdown a.navbar-item.is-active {\n background-color: #D54222;\n color: #fff; } }\n #optimole-app .navbar > .container {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n min-height: 3.25rem;\n width: 100%; }\n #optimole-app .navbar.has-shadow {\n box-shadow: 0 2px 0 0 whitesmoke; }\n #optimole-app .navbar.is-fixed-bottom, #optimole-app .navbar.is-fixed-top {\n left: 0;\n position: fixed;\n right: 0;\n z-index: 30; }\n #optimole-app .navbar.is-fixed-bottom {\n bottom: 0; }\n #optimole-app .navbar.is-fixed-bottom.has-shadow {\n box-shadow: 0 -2px 0 0 whitesmoke; }\n #optimole-app .navbar.is-fixed-top {\n top: 0; }\n #optimole-app html.has-navbar-fixed-top,\n #optimole-app body.has-navbar-fixed-top {\n padding-top: 3.25rem; }\n #optimole-app html.has-navbar-fixed-bottom,\n #optimole-app body.has-navbar-fixed-bottom {\n padding-bottom: 3.25rem; }\n #optimole-app .navbar-brand,\n #optimole-app .navbar-tabs {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n min-height: 3.25rem; }\n #optimole-app .navbar-brand a.navbar-item:hover {\n background-color: transparent; }\n #optimole-app .navbar-tabs {\n -webkit-overflow-scrolling: touch;\n max-width: 100vw;\n overflow-x: auto;\n overflow-y: hidden; }\n #optimole-app .navbar-burger {\n color: #4a4a4a;\n cursor: pointer;\n display: block;\n height: 3.25rem;\n position: relative;\n width: 3.25rem;\n margin-left: auto; }\n #optimole-app .navbar-burger span {\n background-color: currentColor;\n display: block;\n height: 1px;\n left: calc(50% - 8px);\n position: absolute;\n transform-origin: center;\n transition-duration: 86ms;\n transition-property: background-color, opacity, transform;\n transition-timing-function: ease-out;\n width: 16px; }\n #optimole-app .navbar-burger span:nth-child(1) {\n top: calc(50% - 6px); }\n #optimole-app .navbar-burger span:nth-child(2) {\n top: calc(50% - 1px); }\n #optimole-app .navbar-burger span:nth-child(3) {\n top: calc(50% + 4px); }\n #optimole-app .navbar-burger:hover {\n background-color: rgba(0, 0, 0, 0.05); }\n #optimole-app .navbar-burger.is-active span:nth-child(1) {\n transform: translateY(5px) rotate(45deg); }\n #optimole-app .navbar-burger.is-active span:nth-child(2) {\n opacity: 0; }\n #optimole-app .navbar-burger.is-active span:nth-child(3) {\n transform: translateY(-5px) rotate(-45deg); }\n #optimole-app .navbar-menu {\n display: none; }\n #optimole-app .navbar-item,\n #optimole-app .navbar-link {\n color: #4a4a4a;\n display: block;\n line-height: 1.5;\n padding: 0.5rem 0.75rem;\n position: relative; }\n #optimole-app .navbar-item .icon:only-child,\n #optimole-app .navbar-link .icon:only-child {\n margin-left: -0.25rem;\n margin-right: -0.25rem; }\n #optimole-app a.navbar-item,\n #optimole-app .navbar-link {\n cursor: pointer; }\n #optimole-app a.navbar-item:hover, #optimole-app a.navbar-item.is-active,\n #optimole-app .navbar-link:hover,\n #optimole-app .navbar-link.is-active {\n background-color: #fafafa;\n color: #3273dc; }\n #optimole-app .navbar-item {\n display: block;\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .navbar-item img {\n max-height: 1.75rem; }\n #optimole-app .navbar-item.has-dropdown {\n padding: 0; }\n #optimole-app .navbar-item.is-expanded {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .navbar-item.is-tab {\n border-bottom: 1px solid transparent;\n min-height: 3.25rem;\n padding-bottom: calc(0.5rem - 1px); }\n #optimole-app .navbar-item.is-tab:hover {\n background-color: transparent;\n border-bottom-color: #3273dc; }\n #optimole-app .navbar-item.is-tab.is-active {\n background-color: transparent;\n border-bottom-color: #3273dc;\n border-bottom-style: solid;\n border-bottom-width: 3px;\n color: #3273dc;\n padding-bottom: calc(0.5rem - 3px); }\n #optimole-app .navbar-content {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .navbar-link:not(.is-arrowless) {\n padding-right: 2.5em; }\n #optimole-app .navbar-link:not(.is-arrowless)::after {\n border-color: #3273dc;\n margin-top: -0.375em;\n right: 1.125em; }\n #optimole-app .navbar-dropdown {\n font-size: 0.875rem;\n padding-bottom: 0.5rem;\n padding-top: 0.5rem; }\n #optimole-app .navbar-dropdown .navbar-item {\n padding-left: 1.5rem;\n padding-right: 1.5rem; }\n #optimole-app .navbar-divider {\n background-color: whitesmoke;\n border: none;\n display: none;\n height: 2px;\n margin: 0.5rem 0; }\n @media screen and (max-width: 1087px) {\n #optimole-app .navbar > .container {\n display: block; }\n #optimole-app .navbar-brand .navbar-item,\n #optimole-app .navbar-tabs .navbar-item {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar-link::after {\n display: none; }\n #optimole-app .navbar-menu {\n background-color: white;\n box-shadow: 0 8px 16px rgba(10, 10, 10, 0.1);\n padding: 0.5rem 0; }\n #optimole-app .navbar-menu.is-active {\n display: block; }\n #optimole-app .navbar.is-fixed-bottom-touch, #optimole-app .navbar.is-fixed-top-touch {\n left: 0;\n position: fixed;\n right: 0;\n z-index: 30; }\n #optimole-app .navbar.is-fixed-bottom-touch {\n bottom: 0; }\n #optimole-app .navbar.is-fixed-bottom-touch.has-shadow {\n box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); }\n #optimole-app .navbar.is-fixed-top-touch {\n top: 0; }\n #optimole-app .navbar.is-fixed-top .navbar-menu, #optimole-app .navbar.is-fixed-top-touch .navbar-menu {\n -webkit-overflow-scrolling: touch;\n max-height: calc(100vh - 3.25rem);\n overflow: auto; }\n #optimole-app html.has-navbar-fixed-top-touch,\n #optimole-app body.has-navbar-fixed-top-touch {\n padding-top: 3.25rem; }\n #optimole-app html.has-navbar-fixed-bottom-touch,\n #optimole-app body.has-navbar-fixed-bottom-touch {\n padding-bottom: 3.25rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .navbar,\n #optimole-app .navbar-menu,\n #optimole-app .navbar-start,\n #optimole-app .navbar-end {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar {\n min-height: 3.25rem; }\n #optimole-app .navbar.is-spaced {\n padding: 1rem 2rem; }\n #optimole-app .navbar.is-spaced .navbar-start,\n #optimole-app .navbar.is-spaced .navbar-end {\n -ms-flex-align: center;\n align-items: center; }\n #optimole-app .navbar.is-spaced a.navbar-item,\n #optimole-app .navbar.is-spaced .navbar-link {\n border-radius: 4px; }\n #optimole-app .navbar.is-transparent a.navbar-item:hover, #optimole-app .navbar.is-transparent a.navbar-item.is-active,\n #optimole-app .navbar.is-transparent .navbar-link:hover,\n #optimole-app .navbar.is-transparent .navbar-link.is-active {\n background-color: transparent !important; }\n #optimole-app .navbar.is-transparent .navbar-item.has-dropdown.is-active .navbar-link, #optimole-app .navbar.is-transparent .navbar-item.has-dropdown.is-hoverable:hover .navbar-link {\n background-color: transparent !important; }\n #optimole-app .navbar.is-transparent .navbar-dropdown a.navbar-item:hover {\n background-color: whitesmoke;\n color: #0a0a0a; }\n #optimole-app .navbar.is-transparent .navbar-dropdown a.navbar-item.is-active {\n background-color: whitesmoke;\n color: #3273dc; }\n #optimole-app .navbar-burger {\n display: none; }\n #optimole-app .navbar-item,\n #optimole-app .navbar-link {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar-item {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .navbar-item.has-dropdown {\n -ms-flex-align: stretch;\n align-items: stretch; }\n #optimole-app .navbar-item.has-dropdown-up .navbar-link::after {\n transform: rotate(135deg) translate(0.25em, -0.25em); }\n #optimole-app .navbar-item.has-dropdown-up .navbar-dropdown {\n border-bottom: 2px solid #dbdbdb;\n border-radius: 6px 6px 0 0;\n border-top: none;\n bottom: 100%;\n box-shadow: 0 -8px 8px rgba(10, 10, 10, 0.1);\n top: auto; }\n #optimole-app .navbar-item.is-active .navbar-dropdown, #optimole-app .navbar-item.is-hoverable:hover .navbar-dropdown {\n display: block; }\n .navbar.is-spaced #optimole-app .navbar-item.is-active .navbar-dropdown, #optimole-app .navbar-item.is-active .navbar-dropdown.is-boxed, .navbar.is-spaced #optimole-app .navbar-item.is-hoverable:hover .navbar-dropdown, #optimole-app .navbar-item.is-hoverable:hover .navbar-dropdown.is-boxed {\n opacity: 1;\n pointer-events: auto;\n transform: translateY(0); }\n #optimole-app .navbar-menu {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .navbar-start {\n -ms-flex-pack: start;\n justify-content: flex-start;\n margin-right: auto; }\n #optimole-app .navbar-end {\n -ms-flex-pack: end;\n justify-content: flex-end;\n margin-left: auto; }\n #optimole-app .navbar-dropdown {\n background-color: white;\n border-bottom-left-radius: 6px;\n border-bottom-right-radius: 6px;\n border-top: 2px solid #dbdbdb;\n box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1);\n display: none;\n font-size: 0.875rem;\n left: 0;\n min-width: 100%;\n position: absolute;\n top: 100%;\n z-index: 20; }\n #optimole-app .navbar-dropdown .navbar-item {\n padding: 0.375rem 1rem;\n white-space: nowrap; }\n #optimole-app .navbar-dropdown a.navbar-item {\n padding-right: 3rem; }\n #optimole-app .navbar-dropdown a.navbar-item:hover {\n background-color: whitesmoke;\n color: #0a0a0a; }\n #optimole-app .navbar-dropdown a.navbar-item.is-active {\n background-color: whitesmoke;\n color: #3273dc; }\n .navbar.is-spaced #optimole-app .navbar-dropdown, #optimole-app .navbar-dropdown.is-boxed {\n border-radius: 6px;\n border-top: none;\n box-shadow: 0 8px 8px rgba(10, 10, 10, 0.1), 0 0 0 1px rgba(10, 10, 10, 0.1);\n display: block;\n opacity: 0;\n pointer-events: none;\n top: calc(100% + (-4px));\n transform: translateY(-5px);\n transition-duration: 86ms;\n transition-property: opacity, transform; }\n #optimole-app .navbar-dropdown.is-right {\n left: auto;\n right: 0; }\n #optimole-app .navbar-divider {\n display: block; }\n #optimole-app .navbar > .container .navbar-brand,\n #optimole-app .container > .navbar .navbar-brand {\n margin-left: -.75rem; }\n #optimole-app .navbar > .container .navbar-menu,\n #optimole-app .container > .navbar .navbar-menu {\n margin-right: -.75rem; }\n #optimole-app .navbar.is-fixed-bottom-desktop, #optimole-app .navbar.is-fixed-top-desktop {\n left: 0;\n position: fixed;\n right: 0;\n z-index: 30; }\n #optimole-app .navbar.is-fixed-bottom-desktop {\n bottom: 0; }\n #optimole-app .navbar.is-fixed-bottom-desktop.has-shadow {\n box-shadow: 0 -2px 3px rgba(10, 10, 10, 0.1); }\n #optimole-app .navbar.is-fixed-top-desktop {\n top: 0; }\n #optimole-app html.has-navbar-fixed-top-desktop,\n #optimole-app body.has-navbar-fixed-top-desktop {\n padding-top: 3.25rem; }\n #optimole-app html.has-navbar-fixed-bottom-desktop,\n #optimole-app body.has-navbar-fixed-bottom-desktop {\n padding-bottom: 3.25rem; }\n #optimole-app html.has-spaced-navbar-fixed-top,\n #optimole-app body.has-spaced-navbar-fixed-top {\n padding-top: 5.25rem; }\n #optimole-app html.has-spaced-navbar-fixed-bottom,\n #optimole-app body.has-spaced-navbar-fixed-bottom {\n padding-bottom: 5.25rem; }\n #optimole-app a.navbar-item.is-active,\n #optimole-app .navbar-link.is-active {\n color: #0a0a0a; }\n #optimole-app a.navbar-item.is-active:not(:hover),\n #optimole-app .navbar-link.is-active:not(:hover) {\n background-color: transparent; }\n #optimole-app .navbar-item.has-dropdown:hover .navbar-link, #optimole-app .navbar-item.has-dropdown.is-active .navbar-link {\n background-color: #fafafa; } }\n #optimole-app .hero.is-fullheight-with-navbar {\n min-height: calc(100vh - 3.25rem); }\n #optimole-app .pagination {\n font-size: 1rem;\n margin: -0.25rem; }\n #optimole-app .pagination.is-small {\n font-size: 0.75rem; }\n #optimole-app .pagination.is-medium {\n font-size: 1.25rem; }\n #optimole-app .pagination.is-large {\n font-size: 1.5rem; }\n #optimole-app .pagination.is-rounded .pagination-previous,\n #optimole-app .pagination.is-rounded .pagination-next {\n padding-left: 1em;\n padding-right: 1em;\n border-radius: 290486px; }\n #optimole-app .pagination.is-rounded .pagination-link {\n border-radius: 290486px; }\n #optimole-app .pagination,\n #optimole-app .pagination-list {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n text-align: center; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link,\n #optimole-app .pagination-ellipsis {\n font-size: 1em;\n padding-left: 0.5em;\n padding-right: 0.5em;\n -ms-flex-pack: center;\n justify-content: center;\n margin: 0.25rem;\n text-align: center; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next,\n #optimole-app .pagination-link {\n border-color: #dbdbdb;\n color: #363636;\n min-width: 2.25em; }\n #optimole-app .pagination-previous:hover,\n #optimole-app .pagination-next:hover,\n #optimole-app .pagination-link:hover {\n border-color: #b5b5b5;\n color: #363636; }\n #optimole-app .pagination-previous:focus,\n #optimole-app .pagination-next:focus,\n #optimole-app .pagination-link:focus {\n border-color: #3273dc; }\n #optimole-app .pagination-previous:active,\n #optimole-app .pagination-next:active,\n #optimole-app .pagination-link:active {\n box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.2); }\n #optimole-app .pagination-previous[disabled],\n #optimole-app .pagination-next[disabled],\n #optimole-app .pagination-link[disabled] {\n background-color: #dbdbdb;\n border-color: #dbdbdb;\n box-shadow: none;\n color: #7a7a7a;\n opacity: 0.5; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next {\n padding-left: 0.75em;\n padding-right: 0.75em;\n white-space: nowrap; }\n #optimole-app .pagination-link.is-current {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff; }\n #optimole-app .pagination-ellipsis {\n color: #b5b5b5;\n pointer-events: none; }\n #optimole-app .pagination-list {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n @media screen and (max-width: 768px) {\n #optimole-app .pagination {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .pagination-previous,\n #optimole-app .pagination-next {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .pagination-list li {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .pagination-list {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n -ms-flex-pack: start;\n justify-content: flex-start;\n -ms-flex-order: 1;\n order: 1; }\n #optimole-app .pagination-previous {\n -ms-flex-order: 2;\n order: 2; }\n #optimole-app .pagination-next {\n -ms-flex-order: 3;\n order: 3; }\n #optimole-app .pagination {\n -ms-flex-pack: justify;\n justify-content: space-between; }\n #optimole-app .pagination.is-centered .pagination-previous {\n -ms-flex-order: 1;\n order: 1; }\n #optimole-app .pagination.is-centered .pagination-list {\n -ms-flex-pack: center;\n justify-content: center;\n -ms-flex-order: 2;\n order: 2; }\n #optimole-app .pagination.is-centered .pagination-next {\n -ms-flex-order: 3;\n order: 3; }\n #optimole-app .pagination.is-right .pagination-previous {\n -ms-flex-order: 1;\n order: 1; }\n #optimole-app .pagination.is-right .pagination-next {\n -ms-flex-order: 2;\n order: 2; }\n #optimole-app .pagination.is-right .pagination-list {\n -ms-flex-pack: end;\n justify-content: flex-end;\n -ms-flex-order: 3;\n order: 3; } }\n #optimole-app .panel {\n font-size: 1rem; }\n #optimole-app .panel:not(:last-child) {\n margin-bottom: 1.5rem; }\n #optimole-app .panel-heading,\n #optimole-app .panel-tabs,\n #optimole-app .panel-block {\n border-bottom: 1px solid #dbdbdb;\n border-left: 1px solid #dbdbdb;\n border-right: 1px solid #dbdbdb; }\n #optimole-app .panel-heading:first-child,\n #optimole-app .panel-tabs:first-child,\n #optimole-app .panel-block:first-child {\n border-top: 1px solid #dbdbdb; }\n #optimole-app .panel-heading {\n background-color: whitesmoke;\n border-radius: 4px 4px 0 0;\n color: #363636;\n font-size: 1.25em;\n font-weight: 300;\n line-height: 1.25;\n padding: 0.5em 0.75em; }\n #optimole-app .panel-tabs {\n -ms-flex-align: end;\n align-items: flex-end;\n display: -ms-flexbox;\n display: flex;\n font-size: 0.875em;\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .panel-tabs a {\n border-bottom: 1px solid #dbdbdb;\n margin-bottom: -1px;\n padding: 0.5em; }\n #optimole-app .panel-tabs a.is-active {\n border-bottom-color: #4a4a4a;\n color: #363636; }\n #optimole-app .panel-list a {\n color: #4a4a4a; }\n #optimole-app .panel-list a:hover {\n color: #3273dc; }\n #optimole-app .panel-block {\n -ms-flex-align: center;\n align-items: center;\n color: #363636;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: start;\n justify-content: flex-start;\n padding: 0.5em 0.75em; }\n #optimole-app .panel-block input[type="checkbox"] {\n margin-right: 0.75em; }\n #optimole-app .panel-block > .control {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n width: 100%; }\n #optimole-app .panel-block.is-wrapped {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .panel-block.is-active {\n border-left-color: #3273dc;\n color: #363636; }\n #optimole-app .panel-block.is-active .panel-icon {\n color: #3273dc; }\n #optimole-app a.panel-block,\n #optimole-app label.panel-block {\n cursor: pointer; }\n #optimole-app a.panel-block:hover,\n #optimole-app label.panel-block:hover {\n background-color: whitesmoke; }\n #optimole-app .panel-icon {\n display: inline-block;\n font-size: 14px;\n height: 1em;\n line-height: 1em;\n text-align: center;\n vertical-align: top;\n width: 1em;\n color: #7a7a7a;\n margin-right: 0.75em; }\n #optimole-app .panel-icon .fa {\n font-size: inherit;\n line-height: inherit; }\n #optimole-app .tabs {\n -webkit-overflow-scrolling: touch;\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n font-size: 1rem;\n -ms-flex-pack: justify;\n justify-content: space-between;\n overflow: hidden;\n overflow-x: auto;\n white-space: nowrap; }\n #optimole-app .tabs a {\n -ms-flex-align: center;\n align-items: center;\n border-bottom-color: #dbdbdb;\n border-bottom-style: solid;\n border-bottom-width: 1px;\n color: #4a4a4a;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center;\n margin-bottom: -1px;\n padding: 0.5em 1em;\n vertical-align: top; }\n #optimole-app .tabs a:hover {\n border-bottom-color: #363636;\n color: #363636; }\n #optimole-app .tabs li {\n display: block; }\n #optimole-app .tabs li.is-active a {\n border-bottom-color: #3273dc;\n color: #3273dc; }\n #optimole-app .tabs ul {\n -ms-flex-align: center;\n align-items: center;\n border-bottom-color: #dbdbdb;\n border-bottom-style: solid;\n border-bottom-width: 1px;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-pack: start;\n justify-content: flex-start; }\n #optimole-app .tabs ul.is-left {\n padding-right: 0.75em; }\n #optimole-app .tabs ul.is-center {\n -ms-flex: none;\n flex: none;\n -ms-flex-pack: center;\n justify-content: center;\n padding-left: 0.75em;\n padding-right: 0.75em; }\n #optimole-app .tabs ul.is-right {\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding-left: 0.75em; }\n #optimole-app .tabs .icon:first-child {\n margin-right: 0.5em; }\n #optimole-app .tabs .icon:last-child {\n margin-left: 0.5em; }\n #optimole-app .tabs.is-centered ul {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .tabs.is-right ul {\n -ms-flex-pack: end;\n justify-content: flex-end; }\n #optimole-app .tabs.is-boxed a {\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0; }\n #optimole-app .tabs.is-boxed a:hover {\n background-color: whitesmoke;\n border-bottom-color: #dbdbdb; }\n #optimole-app .tabs.is-boxed li.is-active a {\n background-color: white;\n border-color: #dbdbdb;\n border-bottom-color: transparent !important; }\n #optimole-app .tabs.is-fullwidth li {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .tabs.is-toggle a {\n border-color: #dbdbdb;\n border-style: solid;\n border-width: 1px;\n margin-bottom: 0;\n position: relative; }\n #optimole-app .tabs.is-toggle a:hover {\n background-color: whitesmoke;\n border-color: #b5b5b5;\n z-index: 2; }\n #optimole-app .tabs.is-toggle li + li {\n margin-left: -1px; }\n #optimole-app .tabs.is-toggle li:first-child a {\n border-radius: 4px 0 0 4px; }\n #optimole-app .tabs.is-toggle li:last-child a {\n border-radius: 0 4px 4px 0; }\n #optimole-app .tabs.is-toggle li.is-active a {\n background-color: #3273dc;\n border-color: #3273dc;\n color: #fff;\n z-index: 1; }\n #optimole-app .tabs.is-toggle ul {\n border-bottom: none; }\n #optimole-app .tabs.is-toggle.is-toggle-rounded li:first-child a {\n border-bottom-left-radius: 290486px;\n border-top-left-radius: 290486px;\n padding-left: 1.25em; }\n #optimole-app .tabs.is-toggle.is-toggle-rounded li:last-child a {\n border-bottom-right-radius: 290486px;\n border-top-right-radius: 290486px;\n padding-right: 1.25em; }\n #optimole-app .tabs.is-small {\n font-size: 0.75rem; }\n #optimole-app .tabs.is-medium {\n font-size: 1.25rem; }\n #optimole-app .tabs.is-large {\n font-size: 1.5rem; }\n #optimole-app .column {\n display: block;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n padding: 0.75rem; }\n .columns.is-mobile > #optimole-app .column.is-narrow {\n -ms-flex: none;\n flex: none; }\n .columns.is-mobile > #optimole-app .column.is-full {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n .columns.is-mobile > #optimole-app .column.is-three-quarters {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n .columns.is-mobile > #optimole-app .column.is-two-thirds {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n .columns.is-mobile > #optimole-app .column.is-half {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n .columns.is-mobile > #optimole-app .column.is-one-third {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n .columns.is-mobile > #optimole-app .column.is-one-quarter {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n .columns.is-mobile > #optimole-app .column.is-one-fifth {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n .columns.is-mobile > #optimole-app .column.is-two-fifths {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n .columns.is-mobile > #optimole-app .column.is-three-fifths {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n .columns.is-mobile > #optimole-app .column.is-four-fifths {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n .columns.is-mobile > #optimole-app .column.is-offset-three-quarters {\n margin-left: 75%; }\n .columns.is-mobile > #optimole-app .column.is-offset-two-thirds {\n margin-left: 66.6666%; }\n .columns.is-mobile > #optimole-app .column.is-offset-half {\n margin-left: 50%; }\n .columns.is-mobile > #optimole-app .column.is-offset-one-third {\n margin-left: 33.3333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-one-quarter {\n margin-left: 25%; }\n .columns.is-mobile > #optimole-app .column.is-offset-one-fifth {\n margin-left: 20%; }\n .columns.is-mobile > #optimole-app .column.is-offset-two-fifths {\n margin-left: 40%; }\n .columns.is-mobile > #optimole-app .column.is-offset-three-fifths {\n margin-left: 60%; }\n .columns.is-mobile > #optimole-app .column.is-offset-four-fifths {\n margin-left: 80%; }\n .columns.is-mobile > #optimole-app .column.is-1 {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-1 {\n margin-left: 8.33333%; }\n .columns.is-mobile > #optimole-app .column.is-2 {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-2 {\n margin-left: 16.66667%; }\n .columns.is-mobile > #optimole-app .column.is-3 {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n .columns.is-mobile > #optimole-app .column.is-offset-3 {\n margin-left: 25%; }\n .columns.is-mobile > #optimole-app .column.is-4 {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-4 {\n margin-left: 33.33333%; }\n .columns.is-mobile > #optimole-app .column.is-5 {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-5 {\n margin-left: 41.66667%; }\n .columns.is-mobile > #optimole-app .column.is-6 {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n .columns.is-mobile > #optimole-app .column.is-offset-6 {\n margin-left: 50%; }\n .columns.is-mobile > #optimole-app .column.is-7 {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-7 {\n margin-left: 58.33333%; }\n .columns.is-mobile > #optimole-app .column.is-8 {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-8 {\n margin-left: 66.66667%; }\n .columns.is-mobile > #optimole-app .column.is-9 {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n .columns.is-mobile > #optimole-app .column.is-offset-9 {\n margin-left: 75%; }\n .columns.is-mobile > #optimole-app .column.is-10 {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n .columns.is-mobile > #optimole-app .column.is-offset-10 {\n margin-left: 83.33333%; }\n .columns.is-mobile > #optimole-app .column.is-11 {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n .columns.is-mobile > #optimole-app .column.is-offset-11 {\n margin-left: 91.66667%; }\n .columns.is-mobile > #optimole-app .column.is-12 {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n .columns.is-mobile > #optimole-app .column.is-offset-12 {\n margin-left: 100%; }\n @media screen and (max-width: 768px) {\n #optimole-app .column.is-narrow-mobile {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-mobile {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-mobile {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-mobile {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-mobile {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-mobile {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-mobile {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-mobile {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-mobile {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-mobile {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-mobile {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-mobile {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-mobile {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-mobile {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-mobile {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-mobile {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-mobile {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-mobile {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-mobile {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-mobile {\n margin-left: 80%; }\n #optimole-app .column.is-1-mobile {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-mobile {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-mobile {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-mobile {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-mobile {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-mobile {\n margin-left: 25%; }\n #optimole-app .column.is-4-mobile {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-mobile {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-mobile {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-mobile {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-mobile {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-mobile {\n margin-left: 50%; }\n #optimole-app .column.is-7-mobile {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-mobile {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-mobile {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-mobile {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-mobile {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-mobile {\n margin-left: 75%; }\n #optimole-app .column.is-10-mobile {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-mobile {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-mobile {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-mobile {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-mobile {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-mobile {\n margin-left: 100%; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .column.is-narrow, #optimole-app .column.is-narrow-tablet {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full, #optimole-app .column.is-full-tablet {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters, #optimole-app .column.is-three-quarters-tablet {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds, #optimole-app .column.is-two-thirds-tablet {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half, #optimole-app .column.is-half-tablet {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third, #optimole-app .column.is-one-third-tablet {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter, #optimole-app .column.is-one-quarter-tablet {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth, #optimole-app .column.is-one-fifth-tablet {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths, #optimole-app .column.is-two-fifths-tablet {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths, #optimole-app .column.is-three-fifths-tablet {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths, #optimole-app .column.is-four-fifths-tablet {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters, #optimole-app .column.is-offset-three-quarters-tablet {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds, #optimole-app .column.is-offset-two-thirds-tablet {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half, #optimole-app .column.is-offset-half-tablet {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third, #optimole-app .column.is-offset-one-third-tablet {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter, #optimole-app .column.is-offset-one-quarter-tablet {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth, #optimole-app .column.is-offset-one-fifth-tablet {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths, #optimole-app .column.is-offset-two-fifths-tablet {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths, #optimole-app .column.is-offset-three-fifths-tablet {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths, #optimole-app .column.is-offset-four-fifths-tablet {\n margin-left: 80%; }\n #optimole-app .column.is-1, #optimole-app .column.is-1-tablet {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1, #optimole-app .column.is-offset-1-tablet {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2, #optimole-app .column.is-2-tablet {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2, #optimole-app .column.is-offset-2-tablet {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3, #optimole-app .column.is-3-tablet {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3, #optimole-app .column.is-offset-3-tablet {\n margin-left: 25%; }\n #optimole-app .column.is-4, #optimole-app .column.is-4-tablet {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4, #optimole-app .column.is-offset-4-tablet {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5, #optimole-app .column.is-5-tablet {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5, #optimole-app .column.is-offset-5-tablet {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6, #optimole-app .column.is-6-tablet {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6, #optimole-app .column.is-offset-6-tablet {\n margin-left: 50%; }\n #optimole-app .column.is-7, #optimole-app .column.is-7-tablet {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7, #optimole-app .column.is-offset-7-tablet {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8, #optimole-app .column.is-8-tablet {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8, #optimole-app .column.is-offset-8-tablet {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9, #optimole-app .column.is-9-tablet {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9, #optimole-app .column.is-offset-9-tablet {\n margin-left: 75%; }\n #optimole-app .column.is-10, #optimole-app .column.is-10-tablet {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10, #optimole-app .column.is-offset-10-tablet {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11, #optimole-app .column.is-11-tablet {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11, #optimole-app .column.is-offset-11-tablet {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12, #optimole-app .column.is-12-tablet {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12, #optimole-app .column.is-offset-12-tablet {\n margin-left: 100%; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .column.is-narrow-touch {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-touch {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-touch {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-touch {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-touch {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-touch {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-touch {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-touch {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-touch {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-touch {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-touch {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-touch {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-touch {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-touch {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-touch {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-touch {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-touch {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-touch {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-touch {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-touch {\n margin-left: 80%; }\n #optimole-app .column.is-1-touch {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-touch {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-touch {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-touch {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-touch {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-touch {\n margin-left: 25%; }\n #optimole-app .column.is-4-touch {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-touch {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-touch {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-touch {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-touch {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-touch {\n margin-left: 50%; }\n #optimole-app .column.is-7-touch {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-touch {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-touch {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-touch {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-touch {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-touch {\n margin-left: 75%; }\n #optimole-app .column.is-10-touch {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-touch {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-touch {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-touch {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-touch {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-touch {\n margin-left: 100%; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .column.is-narrow-desktop {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-desktop {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-desktop {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-desktop {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-desktop {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-desktop {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-desktop {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-desktop {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-desktop {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-desktop {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-desktop {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-desktop {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-desktop {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-desktop {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-desktop {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-desktop {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-desktop {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-desktop {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-desktop {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-desktop {\n margin-left: 80%; }\n #optimole-app .column.is-1-desktop {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-desktop {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-desktop {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-desktop {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-desktop {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-desktop {\n margin-left: 25%; }\n #optimole-app .column.is-4-desktop {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-desktop {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-desktop {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-desktop {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-desktop {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-desktop {\n margin-left: 50%; }\n #optimole-app .column.is-7-desktop {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-desktop {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-desktop {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-desktop {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-desktop {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-desktop {\n margin-left: 75%; }\n #optimole-app .column.is-10-desktop {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-desktop {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-desktop {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-desktop {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-desktop {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-desktop {\n margin-left: 100%; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .column.is-narrow-widescreen {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-widescreen {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-widescreen {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-widescreen {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-widescreen {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-widescreen {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-widescreen {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-widescreen {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-widescreen {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-widescreen {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-widescreen {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-widescreen {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-widescreen {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-widescreen {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-widescreen {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-widescreen {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-widescreen {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-widescreen {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-widescreen {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-widescreen {\n margin-left: 80%; }\n #optimole-app .column.is-1-widescreen {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-widescreen {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-widescreen {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-widescreen {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-widescreen {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-widescreen {\n margin-left: 25%; }\n #optimole-app .column.is-4-widescreen {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-widescreen {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-widescreen {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-widescreen {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-widescreen {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-widescreen {\n margin-left: 50%; }\n #optimole-app .column.is-7-widescreen {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-widescreen {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-widescreen {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-widescreen {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-widescreen {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-widescreen {\n margin-left: 75%; }\n #optimole-app .column.is-10-widescreen {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-widescreen {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-widescreen {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-widescreen {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-widescreen {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-widescreen {\n margin-left: 100%; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .column.is-narrow-fullhd {\n -ms-flex: none;\n flex: none; }\n #optimole-app .column.is-full-fullhd {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-three-quarters-fullhd {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-two-thirds-fullhd {\n -ms-flex: none;\n flex: none;\n width: 66.6666%; }\n #optimole-app .column.is-half-fullhd {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-one-third-fullhd {\n -ms-flex: none;\n flex: none;\n width: 33.3333%; }\n #optimole-app .column.is-one-quarter-fullhd {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-one-fifth-fullhd {\n -ms-flex: none;\n flex: none;\n width: 20%; }\n #optimole-app .column.is-two-fifths-fullhd {\n -ms-flex: none;\n flex: none;\n width: 40%; }\n #optimole-app .column.is-three-fifths-fullhd {\n -ms-flex: none;\n flex: none;\n width: 60%; }\n #optimole-app .column.is-four-fifths-fullhd {\n -ms-flex: none;\n flex: none;\n width: 80%; }\n #optimole-app .column.is-offset-three-quarters-fullhd {\n margin-left: 75%; }\n #optimole-app .column.is-offset-two-thirds-fullhd {\n margin-left: 66.6666%; }\n #optimole-app .column.is-offset-half-fullhd {\n margin-left: 50%; }\n #optimole-app .column.is-offset-one-third-fullhd {\n margin-left: 33.3333%; }\n #optimole-app .column.is-offset-one-quarter-fullhd {\n margin-left: 25%; }\n #optimole-app .column.is-offset-one-fifth-fullhd {\n margin-left: 20%; }\n #optimole-app .column.is-offset-two-fifths-fullhd {\n margin-left: 40%; }\n #optimole-app .column.is-offset-three-fifths-fullhd {\n margin-left: 60%; }\n #optimole-app .column.is-offset-four-fifths-fullhd {\n margin-left: 80%; }\n #optimole-app .column.is-1-fullhd {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .column.is-offset-1-fullhd {\n margin-left: 8.33333%; }\n #optimole-app .column.is-2-fullhd {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .column.is-offset-2-fullhd {\n margin-left: 16.66667%; }\n #optimole-app .column.is-3-fullhd {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .column.is-offset-3-fullhd {\n margin-left: 25%; }\n #optimole-app .column.is-4-fullhd {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .column.is-offset-4-fullhd {\n margin-left: 33.33333%; }\n #optimole-app .column.is-5-fullhd {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .column.is-offset-5-fullhd {\n margin-left: 41.66667%; }\n #optimole-app .column.is-6-fullhd {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .column.is-offset-6-fullhd {\n margin-left: 50%; }\n #optimole-app .column.is-7-fullhd {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .column.is-offset-7-fullhd {\n margin-left: 58.33333%; }\n #optimole-app .column.is-8-fullhd {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .column.is-offset-8-fullhd {\n margin-left: 66.66667%; }\n #optimole-app .column.is-9-fullhd {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .column.is-offset-9-fullhd {\n margin-left: 75%; }\n #optimole-app .column.is-10-fullhd {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .column.is-offset-10-fullhd {\n margin-left: 83.33333%; }\n #optimole-app .column.is-11-fullhd {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .column.is-offset-11-fullhd {\n margin-left: 91.66667%; }\n #optimole-app .column.is-12-fullhd {\n -ms-flex: none;\n flex: none;\n width: 100%; }\n #optimole-app .column.is-offset-12-fullhd {\n margin-left: 100%; } }\n #optimole-app .columns {\n margin-left: -0.75rem;\n margin-right: -0.75rem;\n margin-top: -0.75rem; }\n #optimole-app .columns:last-child {\n margin-bottom: -0.75rem; }\n #optimole-app .columns:not(:last-child) {\n margin-bottom: calc(1.5rem - 0.75rem); }\n #optimole-app .columns.is-centered {\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .columns.is-gapless {\n margin-left: 0;\n margin-right: 0;\n margin-top: 0; }\n #optimole-app .columns.is-gapless > .column {\n margin: 0;\n padding: 0 !important; }\n #optimole-app .columns.is-gapless:not(:last-child) {\n margin-bottom: 1.5rem; }\n #optimole-app .columns.is-gapless:last-child {\n margin-bottom: 0; }\n #optimole-app .columns.is-mobile {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .columns.is-multiline {\n -ms-flex-wrap: wrap;\n flex-wrap: wrap; }\n #optimole-app .columns.is-vcentered {\n -ms-flex-align: center;\n align-items: center; }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns:not(.is-desktop) {\n display: -ms-flexbox;\n display: flex; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-desktop {\n display: -ms-flexbox;\n display: flex; } }\n #optimole-app .columns.is-variable {\n --columnGap: 0.75rem;\n margin-left: calc(-1 * var(--columnGap));\n margin-right: calc(-1 * var(--columnGap)); }\n #optimole-app .columns.is-variable .column {\n padding-left: var(--columnGap);\n padding-right: var(--columnGap); }\n #optimole-app .columns.is-variable.is-0 {\n --columnGap: 0rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-0-mobile {\n --columnGap: 0rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-0-tablet {\n --columnGap: 0rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-0-tablet-only {\n --columnGap: 0rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-0-touch {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-0-desktop {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-0-desktop-only {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-0-widescreen {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-0-widescreen-only {\n --columnGap: 0rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-0-fullhd {\n --columnGap: 0rem; } }\n #optimole-app .columns.is-variable.is-1 {\n --columnGap: 0.25rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-1-mobile {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-1-tablet {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-1-tablet-only {\n --columnGap: 0.25rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-1-touch {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-1-desktop {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-1-desktop-only {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-1-widescreen {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-1-widescreen-only {\n --columnGap: 0.25rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-1-fullhd {\n --columnGap: 0.25rem; } }\n #optimole-app .columns.is-variable.is-2 {\n --columnGap: 0.5rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-2-mobile {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-2-tablet {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-2-tablet-only {\n --columnGap: 0.5rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-2-touch {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-2-desktop {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-2-desktop-only {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-2-widescreen {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-2-widescreen-only {\n --columnGap: 0.5rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-2-fullhd {\n --columnGap: 0.5rem; } }\n #optimole-app .columns.is-variable.is-3 {\n --columnGap: 0.75rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-3-mobile {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-3-tablet {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-3-tablet-only {\n --columnGap: 0.75rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-3-touch {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-3-desktop {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-3-desktop-only {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-3-widescreen {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-3-widescreen-only {\n --columnGap: 0.75rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-3-fullhd {\n --columnGap: 0.75rem; } }\n #optimole-app .columns.is-variable.is-4 {\n --columnGap: 1rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-4-mobile {\n --columnGap: 1rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-4-tablet {\n --columnGap: 1rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-4-tablet-only {\n --columnGap: 1rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-4-touch {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-4-desktop {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-4-desktop-only {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-4-widescreen {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-4-widescreen-only {\n --columnGap: 1rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-4-fullhd {\n --columnGap: 1rem; } }\n #optimole-app .columns.is-variable.is-5 {\n --columnGap: 1.25rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-5-mobile {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-5-tablet {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-5-tablet-only {\n --columnGap: 1.25rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-5-touch {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-5-desktop {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-5-desktop-only {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-5-widescreen {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-5-widescreen-only {\n --columnGap: 1.25rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-5-fullhd {\n --columnGap: 1.25rem; } }\n #optimole-app .columns.is-variable.is-6 {\n --columnGap: 1.5rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-6-mobile {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-6-tablet {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-6-tablet-only {\n --columnGap: 1.5rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-6-touch {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-6-desktop {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-6-desktop-only {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-6-widescreen {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-6-widescreen-only {\n --columnGap: 1.5rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-6-fullhd {\n --columnGap: 1.5rem; } }\n #optimole-app .columns.is-variable.is-7 {\n --columnGap: 1.75rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-7-mobile {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-7-tablet {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-7-tablet-only {\n --columnGap: 1.75rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-7-touch {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-7-desktop {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-7-desktop-only {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-7-widescreen {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-7-widescreen-only {\n --columnGap: 1.75rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-7-fullhd {\n --columnGap: 1.75rem; } }\n #optimole-app .columns.is-variable.is-8 {\n --columnGap: 2rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .columns.is-variable.is-8-mobile {\n --columnGap: 2rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .columns.is-variable.is-8-tablet {\n --columnGap: 2rem; } }\n @media screen and (min-width: 769px) and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-8-tablet-only {\n --columnGap: 2rem; } }\n @media screen and (max-width: 1087px) {\n #optimole-app .columns.is-variable.is-8-touch {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1088px) {\n #optimole-app .columns.is-variable.is-8-desktop {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1088px) and (max-width: 1279px) {\n #optimole-app .columns.is-variable.is-8-desktop-only {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1280px) {\n #optimole-app .columns.is-variable.is-8-widescreen {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1280px) and (max-width: 1471px) {\n #optimole-app .columns.is-variable.is-8-widescreen-only {\n --columnGap: 2rem; } }\n @media screen and (min-width: 1472px) {\n #optimole-app .columns.is-variable.is-8-fullhd {\n --columnGap: 2rem; } }\n #optimole-app .tile {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: block;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1;\n min-height: -webkit-min-content;\n min-height: -moz-min-content;\n min-height: min-content; }\n #optimole-app .tile.is-ancestor {\n margin-left: -0.75rem;\n margin-right: -0.75rem;\n margin-top: -0.75rem; }\n #optimole-app .tile.is-ancestor:last-child {\n margin-bottom: -0.75rem; }\n #optimole-app .tile.is-ancestor:not(:last-child) {\n margin-bottom: 0.75rem; }\n #optimole-app .tile.is-child {\n margin: 0 !important; }\n #optimole-app .tile.is-parent {\n padding: 0.75rem; }\n #optimole-app .tile.is-vertical {\n -ms-flex-direction: column;\n flex-direction: column; }\n #optimole-app .tile.is-vertical > .tile.is-child:not(:last-child) {\n margin-bottom: 1.5rem !important; }\n @media screen and (min-width: 769px), print {\n #optimole-app .tile:not(.is-child) {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .tile.is-1 {\n -ms-flex: none;\n flex: none;\n width: 8.33333%; }\n #optimole-app .tile.is-2 {\n -ms-flex: none;\n flex: none;\n width: 16.66667%; }\n #optimole-app .tile.is-3 {\n -ms-flex: none;\n flex: none;\n width: 25%; }\n #optimole-app .tile.is-4 {\n -ms-flex: none;\n flex: none;\n width: 33.33333%; }\n #optimole-app .tile.is-5 {\n -ms-flex: none;\n flex: none;\n width: 41.66667%; }\n #optimole-app .tile.is-6 {\n -ms-flex: none;\n flex: none;\n width: 50%; }\n #optimole-app .tile.is-7 {\n -ms-flex: none;\n flex: none;\n width: 58.33333%; }\n #optimole-app .tile.is-8 {\n -ms-flex: none;\n flex: none;\n width: 66.66667%; }\n #optimole-app .tile.is-9 {\n -ms-flex: none;\n flex: none;\n width: 75%; }\n #optimole-app .tile.is-10 {\n -ms-flex: none;\n flex: none;\n width: 83.33333%; }\n #optimole-app .tile.is-11 {\n -ms-flex: none;\n flex: none;\n width: 91.66667%; }\n #optimole-app .tile.is-12 {\n -ms-flex: none;\n flex: none;\n width: 100%; } }\n #optimole-app .hero {\n -ms-flex-align: stretch;\n align-items: stretch;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-pack: justify;\n justify-content: space-between; }\n #optimole-app .hero .navbar {\n background: none; }\n #optimole-app .hero .tabs ul {\n border-bottom: none; }\n #optimole-app .hero.is-white {\n background-color: white;\n color: #0a0a0a; }\n #optimole-app .hero.is-white a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-white strong {\n color: inherit; }\n #optimole-app .hero.is-white .title {\n color: #0a0a0a; }\n #optimole-app .hero.is-white .subtitle {\n color: rgba(10, 10, 10, 0.9); }\n #optimole-app .hero.is-white .subtitle a:not(.button),\n #optimole-app .hero.is-white .subtitle strong {\n color: #0a0a0a; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-white .navbar-menu {\n background-color: white; } }\n #optimole-app .hero.is-white .navbar-item,\n #optimole-app .hero.is-white .navbar-link {\n color: rgba(10, 10, 10, 0.7); }\n #optimole-app .hero.is-white a.navbar-item:hover, #optimole-app .hero.is-white a.navbar-item.is-active,\n #optimole-app .hero.is-white .navbar-link:hover,\n #optimole-app .hero.is-white .navbar-link.is-active {\n background-color: #f2f2f2;\n color: #0a0a0a; }\n #optimole-app .hero.is-white .tabs a {\n color: #0a0a0a;\n opacity: 0.9; }\n #optimole-app .hero.is-white .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-white .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-white .tabs.is-boxed a, #optimole-app .hero.is-white .tabs.is-toggle a {\n color: #0a0a0a; }\n #optimole-app .hero.is-white .tabs.is-boxed a:hover, #optimole-app .hero.is-white .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-white .tabs.is-boxed li.is-active a, #optimole-app .hero.is-white .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-white .tabs.is-toggle li.is-active a, #optimole-app .hero.is-white .tabs.is-toggle li.is-active a:hover {\n background-color: #0a0a0a;\n border-color: #0a0a0a;\n color: white; }\n #optimole-app .hero.is-white.is-bold {\n background-image: linear-gradient(141deg, #e6e6e6 0%, white 71%, white 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-white.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #e6e6e6 0%, white 71%, white 100%); } }\n #optimole-app .hero.is-black {\n background-color: #0a0a0a;\n color: white; }\n #optimole-app .hero.is-black a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-black strong {\n color: inherit; }\n #optimole-app .hero.is-black .title {\n color: white; }\n #optimole-app .hero.is-black .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-black .subtitle a:not(.button),\n #optimole-app .hero.is-black .subtitle strong {\n color: white; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-black .navbar-menu {\n background-color: #0a0a0a; } }\n #optimole-app .hero.is-black .navbar-item,\n #optimole-app .hero.is-black .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-black a.navbar-item:hover, #optimole-app .hero.is-black a.navbar-item.is-active,\n #optimole-app .hero.is-black .navbar-link:hover,\n #optimole-app .hero.is-black .navbar-link.is-active {\n background-color: black;\n color: white; }\n #optimole-app .hero.is-black .tabs a {\n color: white;\n opacity: 0.9; }\n #optimole-app .hero.is-black .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-black .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-black .tabs.is-boxed a, #optimole-app .hero.is-black .tabs.is-toggle a {\n color: white; }\n #optimole-app .hero.is-black .tabs.is-boxed a:hover, #optimole-app .hero.is-black .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-black .tabs.is-boxed li.is-active a, #optimole-app .hero.is-black .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-black .tabs.is-toggle li.is-active a, #optimole-app .hero.is-black .tabs.is-toggle li.is-active a:hover {\n background-color: white;\n border-color: white;\n color: #0a0a0a; }\n #optimole-app .hero.is-black.is-bold {\n background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-black.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, black 0%, #0a0a0a 71%, #181616 100%); } }\n #optimole-app .hero.is-light {\n background-color: whitesmoke;\n color: #363636; }\n #optimole-app .hero.is-light a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-light strong {\n color: inherit; }\n #optimole-app .hero.is-light .title {\n color: #363636; }\n #optimole-app .hero.is-light .subtitle {\n color: rgba(54, 54, 54, 0.9); }\n #optimole-app .hero.is-light .subtitle a:not(.button),\n #optimole-app .hero.is-light .subtitle strong {\n color: #363636; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-light .navbar-menu {\n background-color: whitesmoke; } }\n #optimole-app .hero.is-light .navbar-item,\n #optimole-app .hero.is-light .navbar-link {\n color: rgba(54, 54, 54, 0.7); }\n #optimole-app .hero.is-light a.navbar-item:hover, #optimole-app .hero.is-light a.navbar-item.is-active,\n #optimole-app .hero.is-light .navbar-link:hover,\n #optimole-app .hero.is-light .navbar-link.is-active {\n background-color: #e8e8e8;\n color: #363636; }\n #optimole-app .hero.is-light .tabs a {\n color: #363636;\n opacity: 0.9; }\n #optimole-app .hero.is-light .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-light .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-light .tabs.is-boxed a, #optimole-app .hero.is-light .tabs.is-toggle a {\n color: #363636; }\n #optimole-app .hero.is-light .tabs.is-boxed a:hover, #optimole-app .hero.is-light .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-light .tabs.is-boxed li.is-active a, #optimole-app .hero.is-light .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-light .tabs.is-toggle li.is-active a, #optimole-app .hero.is-light .tabs.is-toggle li.is-active a:hover {\n background-color: #363636;\n border-color: #363636;\n color: whitesmoke; }\n #optimole-app .hero.is-light.is-bold {\n background-image: linear-gradient(141deg, #dfd8d9 0%, whitesmoke 71%, white 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-light.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #dfd8d9 0%, whitesmoke 71%, white 100%); } }\n #optimole-app .hero.is-dark {\n background-color: #363636;\n color: whitesmoke; }\n #optimole-app .hero.is-dark a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-dark strong {\n color: inherit; }\n #optimole-app .hero.is-dark .title {\n color: whitesmoke; }\n #optimole-app .hero.is-dark .subtitle {\n color: rgba(245, 245, 245, 0.9); }\n #optimole-app .hero.is-dark .subtitle a:not(.button),\n #optimole-app .hero.is-dark .subtitle strong {\n color: whitesmoke; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-dark .navbar-menu {\n background-color: #363636; } }\n #optimole-app .hero.is-dark .navbar-item,\n #optimole-app .hero.is-dark .navbar-link {\n color: rgba(245, 245, 245, 0.7); }\n #optimole-app .hero.is-dark a.navbar-item:hover, #optimole-app .hero.is-dark a.navbar-item.is-active,\n #optimole-app .hero.is-dark .navbar-link:hover,\n #optimole-app .hero.is-dark .navbar-link.is-active {\n background-color: #292929;\n color: whitesmoke; }\n #optimole-app .hero.is-dark .tabs a {\n color: whitesmoke;\n opacity: 0.9; }\n #optimole-app .hero.is-dark .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-dark .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-dark .tabs.is-boxed a, #optimole-app .hero.is-dark .tabs.is-toggle a {\n color: whitesmoke; }\n #optimole-app .hero.is-dark .tabs.is-boxed a:hover, #optimole-app .hero.is-dark .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-dark .tabs.is-boxed li.is-active a, #optimole-app .hero.is-dark .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-dark .tabs.is-toggle li.is-active a, #optimole-app .hero.is-dark .tabs.is-toggle li.is-active a:hover {\n background-color: whitesmoke;\n border-color: whitesmoke;\n color: #363636; }\n #optimole-app .hero.is-dark.is-bold {\n background-image: linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-dark.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #1f191a 0%, #363636 71%, #46403f 100%); } }\n #optimole-app .hero.is-primary {\n background-color: #EF686B;\n color: #fff; }\n #optimole-app .hero.is-primary a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-primary strong {\n color: inherit; }\n #optimole-app .hero.is-primary .title {\n color: #fff; }\n #optimole-app .hero.is-primary .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-primary .subtitle a:not(.button),\n #optimole-app .hero.is-primary .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-primary .navbar-menu {\n background-color: #EF686B; } }\n #optimole-app .hero.is-primary .navbar-item,\n #optimole-app .hero.is-primary .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-primary a.navbar-item:hover, #optimole-app .hero.is-primary a.navbar-item.is-active,\n #optimole-app .hero.is-primary .navbar-link:hover,\n #optimole-app .hero.is-primary .navbar-link.is-active {\n background-color: #ed5154;\n color: #fff; }\n #optimole-app .hero.is-primary .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-primary .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-primary .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-primary .tabs.is-boxed a, #optimole-app .hero.is-primary .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-primary .tabs.is-boxed a:hover, #optimole-app .hero.is-primary .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-primary .tabs.is-boxed li.is-active a, #optimole-app .hero.is-primary .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-primary .tabs.is-toggle li.is-active a, #optimole-app .hero.is-primary .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #EF686B; }\n #optimole-app .hero.is-primary.is-bold {\n background-image: linear-gradient(141deg, #f52f54 0%, #EF686B 71%, #f58d7c 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-primary.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #f52f54 0%, #EF686B 71%, #f58d7c 100%); } }\n #optimole-app .hero.is-link {\n background-color: #3273dc;\n color: #fff; }\n #optimole-app .hero.is-link a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-link strong {\n color: inherit; }\n #optimole-app .hero.is-link .title {\n color: #fff; }\n #optimole-app .hero.is-link .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-link .subtitle a:not(.button),\n #optimole-app .hero.is-link .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-link .navbar-menu {\n background-color: #3273dc; } }\n #optimole-app .hero.is-link .navbar-item,\n #optimole-app .hero.is-link .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-link a.navbar-item:hover, #optimole-app .hero.is-link a.navbar-item.is-active,\n #optimole-app .hero.is-link .navbar-link:hover,\n #optimole-app .hero.is-link .navbar-link.is-active {\n background-color: #2366d1;\n color: #fff; }\n #optimole-app .hero.is-link .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-link .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-link .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-link .tabs.is-boxed a, #optimole-app .hero.is-link .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-link .tabs.is-boxed a:hover, #optimole-app .hero.is-link .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-link .tabs.is-boxed li.is-active a, #optimole-app .hero.is-link .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-link .tabs.is-toggle li.is-active a, #optimole-app .hero.is-link .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #3273dc; }\n #optimole-app .hero.is-link.is-bold {\n background-image: linear-gradient(141deg, #1577c6 0%, #3273dc 71%, #4366e5 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-link.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #1577c6 0%, #3273dc 71%, #4366e5 100%); } }\n #optimole-app .hero.is-info {\n background-color: #5180C1;\n color: #fff; }\n #optimole-app .hero.is-info a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-info strong {\n color: inherit; }\n #optimole-app .hero.is-info .title {\n color: #fff; }\n #optimole-app .hero.is-info .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-info .subtitle a:not(.button),\n #optimole-app .hero.is-info .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-info .navbar-menu {\n background-color: #5180C1; } }\n #optimole-app .hero.is-info .navbar-item,\n #optimole-app .hero.is-info .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-info a.navbar-item:hover, #optimole-app .hero.is-info a.navbar-item.is-active,\n #optimole-app .hero.is-info .navbar-link:hover,\n #optimole-app .hero.is-info .navbar-link.is-active {\n background-color: #4173b7;\n color: #fff; }\n #optimole-app .hero.is-info .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-info .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-info .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-info .tabs.is-boxed a, #optimole-app .hero.is-info .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-info .tabs.is-boxed a:hover, #optimole-app .hero.is-info .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-info .tabs.is-boxed li.is-active a, #optimole-app .hero.is-info .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-info .tabs.is-toggle li.is-active a, #optimole-app .hero.is-info .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #5180C1; }\n #optimole-app .hero.is-info.is-bold {\n background-image: linear-gradient(141deg, #2f7bb0 0%, #5180C1 71%, #5f7acd 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-info.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #2f7bb0 0%, #5180C1 71%, #5f7acd 100%); } }\n #optimole-app .hero.is-success {\n background-color: #34a85e;\n color: #fff; }\n #optimole-app .hero.is-success a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-success strong {\n color: inherit; }\n #optimole-app .hero.is-success .title {\n color: #fff; }\n #optimole-app .hero.is-success .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-success .subtitle a:not(.button),\n #optimole-app .hero.is-success .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-success .navbar-menu {\n background-color: #34a85e; } }\n #optimole-app .hero.is-success .navbar-item,\n #optimole-app .hero.is-success .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-success a.navbar-item:hover, #optimole-app .hero.is-success a.navbar-item.is-active,\n #optimole-app .hero.is-success .navbar-link:hover,\n #optimole-app .hero.is-success .navbar-link.is-active {\n background-color: #2e9553;\n color: #fff; }\n #optimole-app .hero.is-success .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-success .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-success .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-success .tabs.is-boxed a, #optimole-app .hero.is-success .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-success .tabs.is-boxed a:hover, #optimole-app .hero.is-success .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-success .tabs.is-boxed li.is-active a, #optimole-app .hero.is-success .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-success .tabs.is-toggle li.is-active a, #optimole-app .hero.is-success .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #34a85e; }\n #optimole-app .hero.is-success.is-bold {\n background-image: linear-gradient(141deg, #1f8a34 0%, #34a85e 71%, #34c27f 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-success.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #1f8a34 0%, #34a85e 71%, #34c27f 100%); } }\n #optimole-app .hero.is-warning {\n background-color: #ffdd57;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-warning strong {\n color: inherit; }\n #optimole-app .hero.is-warning .title {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning .subtitle {\n color: rgba(0, 0, 0, 0.9); }\n #optimole-app .hero.is-warning .subtitle a:not(.button),\n #optimole-app .hero.is-warning .subtitle strong {\n color: rgba(0, 0, 0, 0.7); }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-warning .navbar-menu {\n background-color: #ffdd57; } }\n #optimole-app .hero.is-warning .navbar-item,\n #optimole-app .hero.is-warning .navbar-link {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning a.navbar-item:hover, #optimole-app .hero.is-warning a.navbar-item.is-active,\n #optimole-app .hero.is-warning .navbar-link:hover,\n #optimole-app .hero.is-warning .navbar-link.is-active {\n background-color: #ffd83d;\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning .tabs a {\n color: rgba(0, 0, 0, 0.7);\n opacity: 0.9; }\n #optimole-app .hero.is-warning .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-warning .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-warning .tabs.is-boxed a, #optimole-app .hero.is-warning .tabs.is-toggle a {\n color: rgba(0, 0, 0, 0.7); }\n #optimole-app .hero.is-warning .tabs.is-boxed a:hover, #optimole-app .hero.is-warning .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-warning .tabs.is-boxed li.is-active a, #optimole-app .hero.is-warning .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-warning .tabs.is-toggle li.is-active a, #optimole-app .hero.is-warning .tabs.is-toggle li.is-active a:hover {\n background-color: rgba(0, 0, 0, 0.7);\n border-color: rgba(0, 0, 0, 0.7);\n color: #ffdd57; }\n #optimole-app .hero.is-warning.is-bold {\n background-image: linear-gradient(141deg, #ffaf24 0%, #ffdd57 71%, #fffa70 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-warning.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #ffaf24 0%, #ffdd57 71%, #fffa70 100%); } }\n #optimole-app .hero.is-danger {\n background-color: #D54222;\n color: #fff; }\n #optimole-app .hero.is-danger a:not(.button):not(.dropdown-item):not(.tag),\n #optimole-app .hero.is-danger strong {\n color: inherit; }\n #optimole-app .hero.is-danger .title {\n color: #fff; }\n #optimole-app .hero.is-danger .subtitle {\n color: rgba(255, 255, 255, 0.9); }\n #optimole-app .hero.is-danger .subtitle a:not(.button),\n #optimole-app .hero.is-danger .subtitle strong {\n color: #fff; }\n @media screen and (max-width: 1087px) {\n #optimole-app .hero.is-danger .navbar-menu {\n background-color: #D54222; } }\n #optimole-app .hero.is-danger .navbar-item,\n #optimole-app .hero.is-danger .navbar-link {\n color: rgba(255, 255, 255, 0.7); }\n #optimole-app .hero.is-danger a.navbar-item:hover, #optimole-app .hero.is-danger a.navbar-item.is-active,\n #optimole-app .hero.is-danger .navbar-link:hover,\n #optimole-app .hero.is-danger .navbar-link.is-active {\n background-color: #bf3b1e;\n color: #fff; }\n #optimole-app .hero.is-danger .tabs a {\n color: #fff;\n opacity: 0.9; }\n #optimole-app .hero.is-danger .tabs a:hover {\n opacity: 1; }\n #optimole-app .hero.is-danger .tabs li.is-active a {\n opacity: 1; }\n #optimole-app .hero.is-danger .tabs.is-boxed a, #optimole-app .hero.is-danger .tabs.is-toggle a {\n color: #fff; }\n #optimole-app .hero.is-danger .tabs.is-boxed a:hover, #optimole-app .hero.is-danger .tabs.is-toggle a:hover {\n background-color: rgba(10, 10, 10, 0.1); }\n #optimole-app .hero.is-danger .tabs.is-boxed li.is-active a, #optimole-app .hero.is-danger .tabs.is-boxed li.is-active a:hover, #optimole-app .hero.is-danger .tabs.is-toggle li.is-active a, #optimole-app .hero.is-danger .tabs.is-toggle li.is-active a:hover {\n background-color: #fff;\n border-color: #fff;\n color: #D54222; }\n #optimole-app .hero.is-danger.is-bold {\n background-image: linear-gradient(141deg, #b31311 0%, #D54222 71%, #e46c2c 100%); }\n @media screen and (max-width: 768px) {\n #optimole-app .hero.is-danger.is-bold .navbar-menu {\n background-image: linear-gradient(141deg, #b31311 0%, #D54222 71%, #e46c2c 100%); } }\n #optimole-app .hero.is-small .hero-body {\n padding-bottom: 1.5rem;\n padding-top: 1.5rem; }\n @media screen and (min-width: 769px), print {\n #optimole-app .hero.is-medium .hero-body {\n padding-bottom: 9rem;\n padding-top: 9rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .hero.is-large .hero-body {\n padding-bottom: 18rem;\n padding-top: 18rem; } }\n #optimole-app .hero.is-halfheight .hero-body, #optimole-app .hero.is-fullheight .hero-body, #optimole-app .hero.is-fullheight-with-navbar .hero-body {\n -ms-flex-align: center;\n align-items: center;\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .hero.is-halfheight .hero-body > .container, #optimole-app .hero.is-fullheight .hero-body > .container, #optimole-app .hero.is-fullheight-with-navbar .hero-body > .container {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n #optimole-app .hero.is-halfheight {\n min-height: 50vh; }\n #optimole-app .hero.is-fullheight {\n min-height: 100vh; }\n #optimole-app .hero-video {\n overflow: hidden; }\n #optimole-app .hero-video video {\n left: 50%;\n min-height: 100%;\n min-width: 100%;\n position: absolute;\n top: 50%;\n transform: translate3d(-50%, -50%, 0); }\n #optimole-app .hero-video.is-transparent {\n opacity: 0.3; }\n @media screen and (max-width: 768px) {\n #optimole-app .hero-video {\n display: none; } }\n #optimole-app .hero-buttons {\n margin-top: 1.5rem; }\n @media screen and (max-width: 768px) {\n #optimole-app .hero-buttons .button {\n display: -ms-flexbox;\n display: flex; }\n #optimole-app .hero-buttons .button:not(:last-child) {\n margin-bottom: 0.75rem; } }\n @media screen and (min-width: 769px), print {\n #optimole-app .hero-buttons {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-pack: center;\n justify-content: center; }\n #optimole-app .hero-buttons .button:not(:last-child) {\n margin-right: 1.5rem; } }\n #optimole-app .hero-head,\n #optimole-app .hero-foot {\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 0;\n flex-shrink: 0; }\n #optimole-app .hero-body {\n -ms-flex-positive: 1;\n flex-grow: 1;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n padding: 3rem 1.5rem; }\n #optimole-app .section {\n padding: 3rem 1.5rem; }\n @media screen and (min-width: 1088px) {\n #optimole-app .section.is-medium {\n padding: 9rem 1.5rem; }\n #optimole-app .section.is-large {\n padding: 18rem 1.5rem; } }\n #optimole-app .footer {\n background-color: #fafafa;\n padding: 3rem 1.5rem 6rem; }\n #optimole-app .card {\n transition: all 750ms ease-in-out;\n border: 0;\n border-radius: .1875rem;\n box-shadow: 0 1px 15px 1px rgba(39, 39, 39, 0.1); }\n #optimole-app .logo {\n margin-bottom: 10px; }\n #optimole-app .logo img {\n max-width: 180px;\n margin: 0 auto; }\n #optimole-app .vue-js-switch {\n -ms-flex-item-align: center;\n -ms-grid-row-align: center;\n align-self: center; }\n #optimole-app .api-key-control {\n padding: 0; }\n #optimole-app .is-vertical-center {\n display: -ms-flexbox;\n display: flex;\n -ms-flex-align: center;\n align-items: center; }\n #optimole-app .api-key-field .button.is-danger {\n padding-left: 20px;\n padding-right: 20px; }\n #optimole-app .api-key-label {\n -ms-flex-item-align: center;\n -ms-grid-row-align: center;\n align-self: center;\n margin: 0.5em 10px 0.5em 0;\n font-size: 1em; }\n #optimole-app .header {\n padding: 0 1.5rem 0; }\n #optimole-app .header.level {\n margin-bottom: 0; }\n #optimole-app .account img {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px; }\n #optimole-app .account .label {\n margin-bottom: 0; }\n #optimole-app .optimized-images table td, #optimole-app .optimized-images table th {\n vertical-align: middle; }\n #optimole-app .media-diff {\n position: relative;\n margin: 0 auto; }\n #optimole-app .media-diff video, #optimole-app .media-diff img {\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%; }\n #optimole-app .origin-wrapper {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n overflow: hidden;\n z-index: 1;\n transform: translateZ(0);\n will-change: width; }\n #optimole-app .handle {\n position: absolute;\n top: 0;\n bottom: 0;\n color: rgba(255, 255, 255, 0.8);\n background-color: rgba(255, 255, 255, 0.8);\n width: 2px;\n cursor: ew-resize;\n transform: translateX(-50%) translateZ(0);\n z-index: 2;\n will-change: left;\n left: 200px; }\n #optimole-app .cursor {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translateX(-50%) translateZ(0); }\n #optimole-app .cursor .circle {\n background-color: rgba(255, 255, 255, 0.8);\n width: 24px;\n height: 24px;\n border-radius: 50%; }\n #optimole-app .no-padding-right {\n padding-right: 0px !important; }\n #optimole-app #filters-list .list {\n border: none;\n background: none;\n box-shadow: none; }\n #optimole-app #filters-list .list-item {\n border: none; }\n #optimole-app #filters-list .exclusion-filter .tag.is-link strong {\n white-space: initial; }\n #optimole-app #filters-list .exclusion-filter .tag.is-link i {\n margin-right: 5px; }\n #optimole-app #filters-list .exclusion-filter .tag.is-link {\n text-decoration: none;\n width: 80%;\n height: auto;\n min-height: 2em;\n -ms-flex-pack: left;\n justify-content: left; }\n\n.fade-enter-active, .fade-leave-active {\n transition: opacity .5s; }\n\n.fade-enter, .fade-leave-to {\n opacity: 0; }\n\n.media_page_optimole #wpbody-content > * {\n display: none !important; }\n\n.media_page_optimole #wpbody-content > #optimole-app {\n display: block !important; }\n\n#optimole-app img.optml-image {\n float: left;\n max-width: 100px;\n width: auto;\n margin: auto; }\n\n#optimole-app img.optml-image-watermark {\n width: 50px; }\n\n.optml-ratio-feedback .emoji {\n font-size: 1.5em; }\n\n.optml-ratio-feedback {\n float: right;\n padding-right: 20px; }\n\n.optml-image-heading {\n text-align: left; }\n\nth.optml-image-ratio-heading {\n text-align: right !important;\n font-size: 150%; }\n\n@media screen and (max-width: 768px) {\n li:not(.is-active) > a > span:not(.icon) {\n visibility: hidden;\n position: absolute; }\n nav.tabs li:not(.is-active) {\n -ms-flex-positive: 0;\n flex-grow: 0;\n -ms-flex-negative: 1;\n flex-shrink: 1; }\n .tabs .icon {\n margin-left: 0.5em; } }\n\n.tabs li {\n transition: flex-grow 1s ease;\n transition: flex-grow 1s ease, -ms-flex-positive 1s ease; }\n\n#optimole-app .tabs a {\n margin-bottom: -4px; }\n\n#optimole-app .optml-upgrade {\n min-width: 200px; }\n\n#optimole-app .is-tab.no-images {\n min-height: 400px; }\n\n#optimole-app .is-tab {\n min-height: 700px; }\n\n.optml-tabs {\n position: relative; }\n\n.optml-tabs .optml-conflicts-tabs {\n position: absolute;\n right: 0;\n top: 0; }\n\n#optml-loader {\n min-height: 400px;\n margin-top: 150px; }\n\n.slide-fade-enter-active {\n transition: all .3s ease; }\n\n.slide-fade-leave-active {\n transition: all 0.8s cubic-bezier(1, 0.5, 0.8, 1); }\n\n.slide-fade-enter, .slide-fade-leave-to {\n transform: translateX(10px);\n opacity: 0; }\n\n#optml-progress-bar.progress.optml-progres-0:indeterminate {\n background-image: linear-gradient(to right, #5180C1 5%, #dbdbdb 5%); }\n\n#optml-progress-bar.progress.optml-progres-1:indeterminate {\n background-image: linear-gradient(to right, #5180C1 10%, #dbdbdb 10%); }\n\n#optml-progress-bar.progress.optml-progres-2:indeterminate {\n background-image: linear-gradient(to right, #5180C1 20%, #dbdbdb 20%); }\n\n#optml-progress-bar.progress.optml-progres-3:indeterminate {\n background-image: linear-gradient(to right, #5180C1 30%, #dbdbdb 30%); }\n\n#optml-progress-bar.progress.optml-progres-4:indeterminate {\n background-image: linear-gradient(to right, #5180C1 40%, #dbdbdb 40%); }\n\n#optml-progress-bar.progress.optml-progres-5:indeterminate {\n background-image: linear-gradient(to right, #5180C1 50%, #dbdbdb 50%); }\n\n#optml-progress-bar.progress.optml-progres-6:indeterminate {\n background-image: linear-gradient(to right, #5180C1 60%, #dbdbdb 60%); }\n\n#optml-progress-bar.progress.optml-progres-7:indeterminate {\n background-image: linear-gradient(to right, #5180C1 70%, #dbdbdb 70%); }\n\n#optml-progress-bar.progress.optml-progres-8:indeterminate {\n background-image: linear-gradient(to right, #5180C1 80%, #dbdbdb 80%); }\n\n#optml-progress-bar.progress.optml-progres-9:indeterminate {\n background-image: linear-gradient(to right, #5180C1 90%, #dbdbdb 90%); }\n\n.notification .dashicons-external {\n text-decoration: none;\n font-size: 18px; }\n',""])},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}var i=n(15),a=o(i),r=n(20),s=o(r),l=n(25),p=o(l),c=n(32),d=o(c),m=n(37),u=o(m),f=n(4),h=o(f),b=n(45),v=o(b),g=n(5),x=o(g);t.exports={name:"app",data:function(){return{strings:optimoleDashboardApp.strings,home:optimoleDashboardApp.home_url,remove_images:"yes"===optimoleDashboardApp.remove_latest_images,fetchStatus:!1,step_no:0,timer:0,max_time:25,loading_percent:0,tab:"dashboard"}},computed:{conflictCount:function(){return this.$store.state.conflicts.count||0},is_connected:function(){return this.$store.state.connected},is_loaded:function(){return this.$store.state.is_loaded}},components:{AppHeader:a.default,Options:v.default,Watermarks:x.default,ConnectLayout:p.default,ApiKeyForm:h.default,CdnDetails:s.default,Conflicts:u.default,LastImages:d.default},watch:{is_connected:function(t){console.log(t),t&&!this.is_loaded&&this.triggerLoading()}},mounted:function(){var t=this;this.$store.state.connected&&(this.$store.dispatch("retrieveOptimizedImages",{waitTime:0,component:null}),this.$store.dispatch("retrieveConflicts",{waitTime:0,component:null}),t.fetchStatus=!0)},methods:{changeTab:function(t){this.tab=t},getProgressMessage:function(){var t="";return 0===this.step_no&&(t=this.strings.options_strings.connect_step_0),1===this.step_no&&(t=this.strings.options_strings.connect_step_1),2===this.step_no&&(t=this.strings.options_strings.connect_step_2),3===this.step_no&&(t=this.strings.options_strings.connect_step_3),t+" ("+this.loading_percent+"%)"},doLoading:function(){if(++this.timer>=this.max_time)return this.$store.commit("toggleIsServiceLoaded",!0),this.timer=0,this.step_no=0,void(this.loading_percent=0);this.loading_percent=Math.floor(this.timer/this.max_time*100),this.loading_percent>30*(this.step_no+1)&&this.step_no++,this.timer<this.max_time&&this.triggerLoading()},triggerLoading:function(){var t=this;setTimeout(function(){t.doLoading()},1e3)}}}},function(t,e,n){var o,i;n(16),o=n(18),i=n(19),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(17);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t@media ( min-width: 769px ) {\n\t\t#optimole-app hr[_v-316d7377] {\n\t\t\tmargin: 0;\n\t\t}\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"app-header",data:function(){return{logo:optimoleDashboardApp.assets_url+"img/logo.png",strings:optimoleDashboardApp.strings}},computed:{connected:function(){return this.$store.state.connected}}}},function(t,e){t.exports='\n\t<div _v-316d7377="">\n\t\t<div class="header has-text-centered level" _v-316d7377="">\n\t\t\t\n\t\t\t<div class="level-left" _v-316d7377="">\n\t\t\t\t<a class="logo level-item" href="https://optimole.com" target="_blank" _v-316d7377="">\n\t\t\t\t\t<figure class="image is-96x96 is-hidden-touch" _v-316d7377="">\n\t\t\t\t\t\t<img :src="logo" :alt="strings.optimole + \' \' + strings.service_details" _v-316d7377="">\n\t\t\t\t\t</figure>\n\t\t\t\t\t<figure class="image is-48x48 is-hidden-desktop" _v-316d7377="">\n\t\t\t\t\t\t<img :src="logo" :alt="strings.optimole + \' \' + strings.service_details" _v-316d7377="">\n\t\t\t\t\t</figure>\n\t\t\t\t</a>\n\t\t\t\t<h3 class="has-text-centered has-text-grey-dark is-size-5 is-size-4-widescreen is-size-6-touch level-item" _v-316d7377="">\n\t\t\t\t\t<span class="has-text-weight-semibold" _v-316d7377="">\n\t\t\t\t\tOptiMole - {{strings.service_details}}\n\t\t\t\t\t</span>\n\t\t\t\t</h3>\n\t\t\t</div>\n\t\t\t<div class="level-right" _v-316d7377="">\n\t\t\t\t<div class="tags has-addons level-item" _v-316d7377="">\n\t\t\t\t\t<span class="tag is-dark" _v-316d7377="">{{strings.status}}</span>\n\t\t\t\t\t<span v-if="connected" class="tag is-success" _v-316d7377="">{{strings.connected}}</span>\n\t\t\t\t\t<span v-else="" class="tag is-danger" _v-316d7377="">{{strings.not_connected}}</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t</div>\n\t\t<hr _v-316d7377="">\n\t</div>\n'},function(t,e,n){var o,i;n(21),o=n(23),i=n(24),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(22);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t#optimole-app .label[_v-7f71b554] {\n\t\tmargin-top: 0;\n\t}\n\t.optml-refresh-wrapper i.dashicons[_v-7f71b554]{\n\t\twidth:auto;\n\t\theight:auto;\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"cdn-details",data:function(){return{strings:optimoleDashboardApp.strings}},computed:{userData:function(){return this.$store.state.userData}},methods:{computedPercentage:function(){return(this.userData.usage/this.userData.quota*100).toFixed(2)},computedPercentageVisitors:function(){return(this.userData.visitors/this.userData.visitors_limit*100).toFixed(2)},requestUpdate:function(){this.$store.dispatch("requestStatsUpdate",{waitTime:0,component:null})}}}},function(t,e){t.exports='\n\t<div class="cdn-details" _v-7f71b554="">\n\t\t<hr _v-7f71b554="">\n\t\t<div class="account level has-text-centered" _v-7f71b554="">\n\t\t\t<div class="level-left" _v-7f71b554="">\n\t\t\t\t<span class="label level-item" _v-7f71b554="">{{strings.logged_in_as}}:</span>\n\t\t\t\t<p class="details level-item tags has-addons" _v-7f71b554="">\n\t\t\t\t\t<span class="tag is-light" _v-7f71b554="">{{userData.display_name}}</span>\n\t\t\t\t\t<span class="tag is-paddingless" _v-7f71b554=""><img :src="userData.picture" class="image is-24x24 is-rounded" :alt="userData.display_name" _v-7f71b554=""></span>\n\t\t\t\t</p>\n\t\t\t</div>\n\t\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\t<span class="label level-item" _v-7f71b554="">{{strings.private_cdn_url}}:</span>\n\t\t\t\t<p class="details level-item tag is-light" _v-7f71b554="">{{userData.cdn_key}}.i.optimole.com</p>\n\t\t\t</div>\n\t\t</div>\n\t\t<hr _v-7f71b554="">\n\n\t\t<div v-if="this.userData.visitors_limit &amp;&amp; parseInt( this.userData.visitors_limit ) > 0" class="level stats" _v-7f71b554="">\n\t\t\t<div class="level-left" _v-7f71b554="">\n\t\t\t\t<div class="level-item" _v-7f71b554="">\n\t\t\t\t\t<div class="tags has-addons" _v-7f71b554="">\n\t\t\t\t\t\t<span class="tag is-info" _v-7f71b554="">{{strings.usage}}:</span>\n\t\t\t\t\t\t<span class="tag" _v-7f71b554="">{{this.userData.visitors_pretty}} </span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<h4 class="level-item is-size-5 is-marginless has-text-grey" _v-7f71b554="">\n\t\t\t\t{{computedPercentageVisitors()}}%\n\t\t\t</h4>\n\t\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\t<div class="level-item" _v-7f71b554="">\n\t\t\t\t\t<div class="tags has-addons" _v-7f71b554="">\n\t\t\t\t\t\t<span class="tag is-info" _v-7f71b554="">{{strings.quota}}:</span>\n\t\t\t\t\t\t<span class="tag" _v-7f71b554="">{{this.userData.visitors_limit_pretty}} (<a href="https://docs.optimole.com/article/1134-how-optimole-counts-the-number-of-visitors" target="_blank" _v-7f71b554="">?</a>)</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t<div v-else="" class="level stats" _v-7f71b554="">\n\t\t\t<div class="level-left" _v-7f71b554="">\n\t\t\t\t<div class="level-item" _v-7f71b554="">\n\t\t\t\t\t<div class="tags has-addons" _v-7f71b554="">\n\t\t\t\t\t\t<span class="tag is-info" _v-7f71b554="">{{strings.usage}}:</span>\n\t\t\t\t\t\t<span class="tag" _v-7f71b554="">{{this.userData.usage_pretty}}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<h4 class="level-item is-size-5 is-marginless has-text-grey" _v-7f71b554="">\n\t\t\t\t{{computedPercentage()}}%\n\t\t\t</h4>\n\t\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\t<div class="level-item" _v-7f71b554="">\n\t\t\t\t\t<div class="tags has-addons" _v-7f71b554="">\n\t\t\t\t\t\t<span class="tag is-info" _v-7f71b554="">{{strings.quota}}:</span>\n\t\t\t\t\t\t<span class="tag" _v-7f71b554="">{{this.userData.quota_pretty}}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t\t\n\t\t<div class="level-right" _v-7f71b554="">\n\t\t\t\n\t\t\t<div class="level-item optml-refresh-wrapper" _v-7f71b554="">\n\t\t\t<a class="button is-small is-warning" v-if="this.$store.state.loading" _v-7f71b554=""><span class="icon" _v-7f71b554=""><i class="dashicons dashicons-backup is-size-6" _v-7f71b554=""></i></span> <span _v-7f71b554="">{{strings.updating_stats_cta}}</span>\n\t\t\t</a>\n\t\t\t<a class="button is-small is-info" v-else="" v-on:click="requestUpdate" _v-7f71b554=""><span class="icon" _v-7f71b554=""><i class="dashicons dashicons-image-rotate is-size-6" _v-7f71b554=""></i></span> <span _v-7f71b554="">{{strings.refresh_stats_cta}}</span>\n\t\t\t</a>\n\t\t\t</div>\n\t\t</div>\n\t\t<hr _v-7f71b554="">\n\t\t<progress v-if="this.userData.visitors_limit &amp;&amp; parseInt( this.userData.visitors_limit ) > 0" class="progress is-success" :value="this.userData.visitors" :max="this.userData.visitors_limit" _v-7f71b554="">60%</progress>\n\t\t<progress v-else="" class="progress is-success" :value="this.userData.usage" :max="this.userData.quota" _v-7f71b554="">60%</progress>\n\n\t</div>\n'},function(t,e,n){var o,i;n(26),o=n(28),i=n(31),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(27);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\tinput[_v-398fcc2b], .notification .delete[_v-398fcc2b], button[_v-398fcc2b] {\n\t\tbox-sizing: border-box !important;\n\t}\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(4),i=function(t){return t&&t.__esModule?t:{default:t}}(o);e.default={name:"connect-layout",components:{ApiKeyForm:i.default},data:function(){return{email:optimoleDashboardApp.current_user.email,strings:optimoleDashboardApp.strings,showApiKey:!1,error:!1,showRegisterField:!1,from_register:!1}},computed:{isLoading:function(){return this.$store.state.loading},isRestApiWorking:function(){return this.$store.state.apiError}},methods:{toggleApiForm:function(){this.error=!1,this.from_register=!1,this.showApiKey=!this.showApiKey},registerAccount:function(){var t=this;if(!this.showRegisterField)return void(this.showRegisterField=!0);this.error=!1,this.$store.dispatch("registerOptimole",{email:this.email}).then(function(e){"success"===e.code?(t.showApiKey=!0,t.from_register=!0):t.error=!0})}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"api-key-form",data:function(){return{apiKey:this.$store.state.apiKey?this.$store.state.apiKey:"",connected:this.$store.state.connected,strings:optimoleDashboardApp.strings,isLoading:!1}},mounted:function(){},computed:{validKey:function(){return this.$store.state.apiKeyValidity},connectionError:function(){return this.$store.state.connectError},isConnected:function(){return this.$store.state.connected}},methods:{connect:function(){this.$store.dispatch("connectOptimole",{apiKey:this.apiKey})},disconnect:function(){this.apiKey="",this.$store.dispatch("disconnectOptimole",{})}}}},function(t,e){t.exports='\n\t<div>\n\t\t<div class="field has-addons api-key-field">\n\t\t\t<label v-if="isConnected"\n\t\t\t\t\tclass="label api-key-label has-text-grey-dark">{{strings.api_key_placeholder}}:</label>\n\t\t\t<div class="control is-expanded api-key-control">\n\t\t\t\t<input :type="isConnected ? \'password\' : \'text\'" :disabled="isConnected" name="api_key" class="input "\n\t\t\t\t\t\t:class="validKey ? \'\' : \'is-danger\'" :placeholder="strings.api_key_placeholder"\n\t\t\t\t\t\tv-model="apiKey">\n\t\t\t</div>\n\t\t\t<div class="control">\n\t\t\t\t<button v-if="! isConnected" class="button button is-success "\n\t\t\t\t\t\t@click="connect" :class="{ \'is-loading\' : this.$store.state.isConnecting }">\n\t\t\t\t\t<span class="icon"><i class="dashicons dashicons-admin-plugins"></i></span>\n\t\t\t\t\t<span>{{strings.connect_btn}}</span>\n\t\t\t\t</button>\n\t\t\t\t<button v-else class="button is-danger " @click="disconnect"\n\t\t\t\t\t\t:class="{ \'is-loading\' : this.$store.state.isConnecting }">\n\t\t\t\t\t<span class="icon"><i class="dashicons dashicons-dismiss"></i></span>\n\t\t\t\t\t<span>{{strings.disconnect_btn}}</span>\n\t\t\t\t</button>\n\t\t\t</div>\n\t\t</div>\n\t\t<p v-if="! validKey" class="help is-danger">\n\t\t\t{{connectionError}}\n\t\t</p>\n\t</div>\n'},function(t,e){t.exports='\n\t<section class="is-clearfix" _v-398fcc2b="">\n\t\t<nav class="breadcrumb" aria-label="breadcrumbs" v-if="showApiKey" _v-398fcc2b="">\n\t\t\t<ul _v-398fcc2b="">\n\t\t\t\t<li _v-398fcc2b=""><a @click="toggleApiForm" href="#" _v-398fcc2b="">{{strings.back_to_register}}</a></li>\n\t\t\t\t<li class="is-active is-marginless" v-if="showApiKey" _v-398fcc2b=""><a href="#" aria-current="page" _v-398fcc2b="">{{strings.back_to_connect}}</a>\n\t\t\t\t</li>\n\t\t\t</ul>\n\t\t</nav>\n\t\t<div class="notification is-danger" v-if="isRestApiWorking" v-html="strings.notice_api_not_working" _v-398fcc2b=""></div>\n\t\t<div class="section" v-if="showApiKey" _v-398fcc2b="">\n\t\t\t<div class="notification is-success" v-if="from_register" _v-398fcc2b="">\n\t\t\t\t{{strings.notification_message_register}}\n\t\t\t</div>\n\t\t\t<api-key-form _v-398fcc2b=""></api-key-form>\n\t\t\t<hr _v-398fcc2b="">\n\t\t\t<div class="columns" _v-398fcc2b="">\n\t\t\t\t\n\t\t\t\t<div class="column columns is-marginless is-vcentered " _v-398fcc2b="">\n\t\t\t\t\t\n\t\t\t\t\t<span class="dashicons dashicons-share column is-2 is-size-3 is-paddingless" _v-398fcc2b=""></span>\n\t\t\t\t\t<div class="is-pulled-left column is-10 is-paddingless" _v-398fcc2b="">\n\t\t\t\t\t\t<p class="title is-size-5 " _v-398fcc2b="">1. {{strings.step_one_api_title}}</p>\n\t\t\t\t\t\t<p class="subtitle is-size-6" v-html="strings.step_one_api_desc" _v-398fcc2b=""></p>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t<div class="column is columns is-vcentered is-marginless" _v-398fcc2b="">\n\t\t\t\t\t\n\t\t\t\t\t<span class="dashicons dashicons-admin-plugins column is-2 is-size-3 is-paddingless" _v-398fcc2b=""></span>\n\t\t\t\t\t<div class="is-pulled-left column is-10 is-paddingless" _v-398fcc2b="">\n\t\t\t\t\t\t<p class="title is-size-5" _v-398fcc2b="">2. {{strings.step_two_api_title}}</p>\n\t\t\t\t\t\t<p class="subtitle is-size-6" _v-398fcc2b="">{{strings.step_two_api_desc}}</p>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\n\t\t</div>\n\t\t<div class="columns is-vcentered is-desktop " v-else="" _v-398fcc2b="">\n\t\t\t<div class="column has-text-left is-fluid is-hidden-touch" _v-398fcc2b="">\n\t\t\t\t<div class="hero" _v-398fcc2b="">\n\t\t\t\t\t<div class="hero-body content" _v-398fcc2b="">\n\t\t\t\t\t\t<p class="title" _v-398fcc2b="">{{strings.account_needed_heading}}</p>\n\t\t\t\t\t\t<p class="subtitle " v-html="strings.account_needed_title" _v-398fcc2b=""></p>\n\t\t\t\t\t\t<div class=" is-hidden-touch" _v-398fcc2b="">\n\t\t\t\t\t\t\t<div class="columns is-vcentered " _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<div class=" is-narrow is-hidden-touch column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<span class="dashicons icon dashicons-format-image is-size-4 " _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<p class="subtitle column is-size-6 is-vcentered has-text-left" v-html="strings.account_needed_subtitle_1" _v-398fcc2b=""></p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div class="columns is-vcentered" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<div class=" is-narrow is-hidden-touch column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<span class="dashicons icon dashicons-plus is-size-4 " _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<div class="column" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t\t<p class="subtitle column is-size-6 is-vcentered has-text-left" v-html="strings.account_needed_subtitle_2" _v-398fcc2b=""></p>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div class="column is-4-desktop is-full-touch " _v-398fcc2b="">\n\t\t\t\t<p v-html="strings.account_needed_title" class="is-size-6 has-text-centered is-hidden-desktop" _v-398fcc2b=""></p>\n\t\t\t\t<div class="field " v-show="showRegisterField" _v-398fcc2b="">\n\t\t\t\t\t<label for="optml-email" class="label title is-size-5 is-12" _v-398fcc2b="">{{strings.email_address_label}}\n\t\t\t\t\t\t:</label>\n\t\t\t\t\t<div class="control is-12 is-small has-icons-left " _v-398fcc2b="">\n\t\t\t\t\t\t<input name="optml-email" id="optml-email" class="input is-medium is-fullwidth is-danger" type="email" v-model="email" _v-398fcc2b="">\n\t\t\t\t\t\t<span class="icon is-small is-left dashicons dashicons-email" _v-398fcc2b=""></span>\n\t\t\t\t\t\n\t\t\t\t\t</div>\n\t\t\t\t\t\n\t\t\t\t\t<p class="help is-danger" v-if="error" v-html="strings.error_register" _v-398fcc2b=""></p>\n\t\t\t\t</div>\n\t\t\t\t<div class="field " _v-398fcc2b="">\n\t\t\t\t\t<div class="control " _v-398fcc2b="">\n\t\t\t\t\t\t<div class=" has-text-centered-mobile" _v-398fcc2b="">\n\t\t\t\t\t\t\t<button @click="registerAccount" class="button is-fullwidth is-medium is-primary " :class="isLoading ? \'is-loading\' :\'\' " _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<span class="icon dashicons dashicons-admin-users" _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t<span _v-398fcc2b="">{{strings.register_btn}}</span>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<hr _v-398fcc2b="">\n\t\t\t\t\t\t<div class=" is-right has-text-centered-mobile has-text-right" _v-398fcc2b="">\n\t\t\t\t\t\t\t<button @click="toggleApiForm" class="button is-fullwidth is-medium is-outlined is-info" _v-398fcc2b="">\n\t\t\t\t\t\t\t\t<span class="icon dashicons dashicons-admin-network is-small" _v-398fcc2b=""></span>\n\t\t\t\t\t\t\t\t<span _v-398fcc2b="">{{strings.api_exists}}</span>\n\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t</section>\n'},function(t,e,n){var o,i;n(33),o=n(35),i=n(36),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(34);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t.loader[_v-1dc903c1] {\n\t\tmargin: 0 auto;\n\t\tfont-size: 10em;\n\t\tborder-left: 2px solid #888 !important;\n\t\tborder-bottom: 2px solid #888 !important;\n\t\tmargin-top: 0.2em;\n\t}\n\t\n\t.progress[_v-1dc903c1]::-webkit-progress-value {\n\t\ttransition: width 0.5s ease;\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"last-images",data:function(){return{loading:!0,startTime:0,maxTime:20,noImages:!1,home_url:optimoleDashboardApp.home_url,strings:optimoleDashboardApp.strings.latest_images}},props:{status:status},mounted:function(){if(this.$store.state.optimizedImages.length>0)return void(this.loading=!1);this.doProgressBar(),this.$store.dispatch("retrieveOptimizedImages",{waitTime:1e3*this.maxTime,component:this})},watch:{imageData:function(){var t=this;this.imageData.length>0&&(this.startTime=this.maxTime,setTimeout(function(){t.loading=!1},1e3))}},computed:{imageData:function(){return null!==this.$store.state.optimizedImages?this.$store.state.optimizedImages:[]}},methods:{doProgressBar:function(){this.startTime!==this.maxTime&&(this.startTime++,setTimeout(this.doProgressBar,1e3))},compressionRate:function(t,e){var n=(parseFloat(t/e*100)-100).toFixed(1);return n<1?this.strings.same_size:n>1&&n<25?this.strings.small_optimization.replace("{ratio}",n.toString()+"%"):n>25&&n<100?this.strings.medium_optimization.replace("{ratio}",n.toString()+"%"):n>100?this.strings.big_optimization.replace("{ratio}",(Math.floor(n/10+10)/10).toFixed(1).toString()+"x"):void 0}}}},function(t,e){t.exports='\n\t<div _v-1dc903c1="">\n\t\t<div class="optimized-images" v-if="! loading " _v-1dc903c1="">\n\t\t\t<div v-if="!noImages" _v-1dc903c1="">\n\t\t\t\t<h3 class="has-text-centered" _v-1dc903c1="">{{strings.last}} {{strings.optimized_images}}</h3>\n\t\t\t\t<table class="table is-striped is-hoverable is-fullwidth" _v-1dc903c1="">\n\t\t\t\t\t<thead _v-1dc903c1="">\n\t\t\t\t\t<tr _v-1dc903c1="">\n\t\t\t\t\t\t<th class="optml-image-heading" _v-1dc903c1="">{{strings.image}}</th>\n\t\t\t\t\t\t<th class="optml-image-ratio-heading" _v-1dc903c1="">{{strings.compression}}</th>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</thead>\n\t\t\t\t\t<tbody _v-1dc903c1="">\n\t\t\t\t\t<tr v-for="(item, index) in imageData" _v-1dc903c1="">\n\t\t\t\t\t\t<td _v-1dc903c1=""><a :href="item.url" target="_blank" _v-1dc903c1=""><img :src="item.url" class="optml-image" _v-1dc903c1=""></a></td>\n\t\t\t\t\t\t<td _v-1dc903c1=""><p class="optml-ratio-feedback" v-html="compressionRate(item.ex_size_raw, item.new_size_raw)" _v-1dc903c1=""></p>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</div>\n\t\t<div v-else="" _v-1dc903c1="">\n\t\t\t<iframe width="1" height="1" :src="home_url" style="visibility: hidden" _v-1dc903c1=""></iframe>\n\t\t\t<h6 class="has-text-centered" _v-1dc903c1="">{{strings.loading_latest_images}}</h6>\n\t\t\t<progress class="progress is-large" :value="startTime" :max="maxTime" _v-1dc903c1=""></progress>\n\t\t</div>\n\t\t<table class="table is-striped is-hoverable is-fullwidth" v-if="noImages" _v-1dc903c1="">\n\t\t\t<thead _v-1dc903c1="">\n\t\t\t<tr _v-1dc903c1="">\n\t\t\t\t<th class="optml-image-heading has-text-centered" v-html="strings.no_images_found" _v-1dc903c1=""></th>\n\t\t\t</tr>\n\t\t\t</thead>\n\t\t</table>\n\t</div>\n'},function(t,e,n){var o,i;o=n(38),i=n(44),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(39),i=function(t){return t&&t.__esModule?t:{default:t}}(o);e.default={name:"conflicts",components:{ConflictItem:i.default},data:function(){return{home_url:optimoleDashboardApp.home_url,strings:optimoleDashboardApp.strings.conflicts}},computed:{noConflicts:function(){return 0===this.$store.state.conflicts.count},conflictData:function(){return null!==this.$store.state.conflicts.conflicts?this.$store.state.conflicts.conflicts:[]}}}},function(t,e,n){var o,i;n(40),o=n(42),i=n(43),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(41);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\t#optimole-app .optml-conflict-done.button.is-link.is-outlined.is-loading[_v-5dd24740]::after {\n\t\tborder-color: transparent transparent #fff #fff !important;\n\t}\n\n\t.optml-conflict-done[_v-5dd24740]:hover {\n\t\tbackground-color: transparent !important;\n\t\tcolor: #fff !important;\n\t\tborder-color: transparent !important;\n\t}\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"conflict-item",props:{item:{type:Object},is_loading:{type:Boolean,default:!1}},data:function(){return{home_url:optimoleDashboardApp.home_url,strings:optimoleDashboardApp.strings.conflicts}},methods:{conflictClass:function(t){return"high"===t?"is-danger":"medium"===t?"is-info":"is-primary"},dismissConflict:function(t){this.is_loading=!0,this.$store.dispatch("dismissConflict",{conflictID:t,component:this})}}}},function(t,e){t.exports='\n\t<div class="notification" :class="conflictClass( item.severity )" _v-5dd24740="">\n\t\t<div v-html="item.message" _v-5dd24740=""></div>\n\n\t\t<a :class="is_loading ? \'is-loading\' : \'\' " class="is-pulled-right button optml-conflict-done is-small is-link is-inverted is-outlined" v-on:click="dismissConflict( item.id )" _v-5dd24740=""><span v-if="!is_loading" class="dashicons dashicons-yes" _v-5dd24740=""></span>{{strings.conflict_close}}</a>\n\t\t<div class=" is-clearfix" _v-5dd24740=""></div>\n\t</div>\n'},function(t,e){t.exports='\n\t<div>\n\t\t<div class="conflicts-table">\n\t\t\t<h6 v-if="!noConflicts" class="has-text-centered">{{strings.title}}</h6>\n\t\t\t<div v-if="!noConflicts">\n\n\t\t\t\t<div class="row" v-for="(item, index) in conflictData">\n\t\t\t\t\t<div class="column">\n\t\t\t\t\t\t<conflict-item v-bind:item=item v-bind:is_loading="false"></conflict-item>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<div v-if="noConflicts">\n\t\t\t\t<table class="table is-striped is-hoverable is-fullwidth">\n\t\t\t\t\t<tbody>\n\t\t\t\t\t<tr>\n\t\t\t\t\t\t<th class="optml-image-heading has-text-centered" v-html="strings.no_conflicts_found"></th>\n\t\t\t\t\t</tr>\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n'},function(t,e,n){var o,i;n(46),o=n(48),i=n(94),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(47);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n #optml-settings-menu > ul.menu-list.optml-settings-submenu[_v-5187a250] {\n list-style: none;\n }\n\n #optml-settings-menu li a span.tag.optml-beta[_v-5187a250] {\n border-radius: 2px;\n font-family: Verdana;\n font-size: .5rem;\n height: 2.25em;\n margin-left: .5em;\n vertical-align: text-bottom;\n }\n\n #optml-settings-menu > ul.menu-list > li > ul[_v-5187a250] {\n margin-top: 10px;\n padding-top: 10px;\n border: none;\n font-size: 0.8rem;\n list-style: none;\n }\n\n .subtab-content[_v-5187a250] {\n\n padding: 0.5em 0.75em;\n }\n\n #optml-settings-menu[_v-5187a250] {\n padding-top: 23px;\n }\n\n .subtab-content[_v-5187a250] {\n padding-top: 10px;\n }\n\n .advanced-link[_v-5187a250] {\n font-size: 100%;\n line-height: 20px;\n }\n\n #optimole-app .is-menu-disabled > ul > li > a[_v-5187a250] {\n cursor: not-allowed;\n }\n\n .is-tab-disabled[_v-5187a250]:not(.is-tab-general),\n .is-menu-disabled[_v-5187a250] {\n opacity: 0.4;\n cursor: not-allowed;\n }\n",""])},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(49),a=o(i),r=n(54),s=o(r),l=n(5),p=o(l),c=n(74),d=o(c),m=n(79),u=o(m),f=n(89),h=o(f);e.default={name:"options",components:{Lazyload:h.default,Exclusions:u.default,Resize:d.default,Watermarks:p.default,Compression:s.default,General:a.default},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showNotification:!1,tab:"general",isDisabled:!1,advancedOpen:!1}},mounted:function(){},methods:{ToggleAdvanced:function(){this.advancedOpen=!this.advancedOpen,this.advancedOpen||(this.tab="general"),this.advancedOpen&&(this.tab="compression")},changeTab:function(t){this.tab=t},updateGlobalState:function(t){this.isDisabled=!t}},computed:{}}},function(t,e,n){var o,i;n(50),o=n(52),i=n(53),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(51);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n .is-field-disabled[_v-cb8820cc] {\n opacity: 0.5;\n }\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"general",components:{},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showNotification:!1,showSave:!1,isReplacerOff:!1,new_data:{}}},mounted:function(){this.isReplacerOff="disabled"===this.site_settings.image_replacer,this.$emit("update-status",!this.isReplacerOff)},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})}},computed:{site_settings:function(){return this.$store.state.site_settings},getReplacerStatus:{get:function(){return!("disabled"===this.site_settings.image_replacer)},set:function(t){this.showSave=!0,this.isReplacerOff=!t,this.$emit("update-status",t),this.new_data.image_replacer=t?"enabled":"disabled"}},lazyLoadStatus:{set:function(t){this.showSave=!0,this.new_data.lazyload=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.lazyload)}}}}},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-cb8820cc="">\n <div class="field columns" _v-cb8820cc="">\n <label class="label column has-text-grey-dark" _v-cb8820cc="">\n {{strings.enable_image_replace}}\n <p class="is-italic has-text-weight-normal" _v-cb8820cc="">\n {{strings.replacer_desc}}\n </p>\n </label>\n <div class="column is-3" _v-cb8820cc="">\n <toggle-button :class="\'has-text-dark\'" v-model="getReplacerStatus" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-cb8820cc=""></toggle-button>\n </div>\n\n </div>\n <div class="field is-fullwidth columns" :class="{\'is-field-disabled\':isReplacerOff }" _v-cb8820cc="">\n <label class="label column has-text-grey-dark" _v-cb8820cc="">\n {{strings.toggle_lazyload}}\n <p class="is-italic has-text-weight-normal" _v-cb8820cc="">\n {{strings.lazyload_desc}}\n </p>\n </label>\n\n <div class="column is-3 " _v-cb8820cc="">\n <toggle-button :class="\'has-text-dark\'" v-model="lazyLoadStatus" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-cb8820cc=""></toggle-button>\n </div>\n </div>\n <div class="field is-fullwidth columns " _v-cb8820cc="">\n <div class="column is-left" _v-cb8820cc="">\n <button @click="saveChanges()" class="button is-success is-small " :class="this.$store.state.loading ? \'is-loading\' : \'\' " :disabled="!showSave" _v-cb8820cc="">\n {{strings.save_changes}}\n </button>\n </div>\n </div>\n\n </div>\n'},function(t,e,n){var o,i;n(55),o=n(57),i=n(68),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(56);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n .sample-image[_v-2bdf3418]{\n margin-top:30px;\n }\n .view-sample-image[_v-2bdf3418]{\n\n line-height: 32px;\n margin-left: 20px;\n }\n",""])},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}function i(t){return 90===t?optimoleDashboardApp.strings.options_strings.high_q_title:75===t?optimoleDashboardApp.strings.options_strings.medium_q_title:55===t?optimoleDashboardApp.strings.options_strings.low_q_title:t}function a(t){return"number"==typeof t?t:"auto"===t?90:"high_c"===t?90:"medium_c"===t?75:"low_c"===t?55:90}Object.defineProperty(e,"__esModule",{value:!0});var r=n(58),s=o(r),l=n(59),p=o(l);n(64),e.default={name:"compression",components:{VueSlider:s.default,Image_diff:p.default},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,showSample:!1,loading_images:!1,showComparison:!1,new_data:{quality:a(this.$store.state.site_settings.quality),network_optimization:this.$store.state.site_settings.network_optimization},sliderOptions:{processStyle:{backgroundColor:"#3273dc"},contained:!0,dotStyle:{borderColor:"#3273dc"},min:1,max:100,tooltipFormatter:function(t){return i(t)},marks:function(t){var e={width:"12px",height:"12px",display:"block",backgroundColor:"#3273dc",borderColor:"#3273dc",boxShadow:"none",transform:"translate(-4px, -4px)"},n=i(t);return"number"!=typeof n&&{label:n,style:e}}}}},mounted:function(){},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})},newSample:function(t){return!0!==this.showComparison&&(this.showComparison=!0),this.updateSampleImage(this.new_data.quality,t?"yes":"no"),!1},updateSampleImage:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"no";this.$store.dispatch("sampleRate",{quality:t,force:n,component:this}).then(function(t){setTimeout(function(){e.showNotification=!1},1e3)},function(t){})}},computed:{site_settings:function(){return this.$store.state.site_settings},compressionRatio:function(){return(100*parseFloat(this.sample_images.optimized_size/this.sample_images.original_size)).toFixed(0)},sample_images:function(){return this.$store.state.sample_rate},networkStatus:{set:function(t){this.showSave=!0,this.new_data.network_optimization=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.network_optimization)}}}}},function(t,e,n){!function(e,o){t.exports=o(n(2))}("undefined"!=typeof self&&self,function(t){return function(t){function e(o){if(n[o])return n[o].exports;var i=n[o]={i:o,l:!1,exports:{}};return t[o].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};return e.m=t,e.c=n,e.d=function(t,n,o){e.o(t,n)||Object.defineProperty(t,n,{enumerable:!0,get:o})},e.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},e.t=function(t,n){if(1&n&&(t=e(t)),8&n)return t;if(4&n&&"object"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(e.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:t}),2&n&&"string"!=typeof t)for(var i in t)e.d(o,i,function(e){return t[e]}.bind(null,i));return o},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s="fb15")}({2350:function(t,e){function n(t,e){var n=t[1]||"",i=t[3];if(!i)return n;if(e&&"function"==typeof btoa){var a=o(i);return[n].concat(i.sources.map(function(t){return"/*# sourceURL="+i.sourceRoot+t+" */"})).concat([a]).join("\n")}return[n].join("\n")}function o(t){return"/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(t))))+" */"}t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var o=n(e,t);return e[2]?"@media "+e[2]+"{"+o+"}":o}).join("")},e.i=function(t,n){"string"==typeof t&&(t=[[null,t,""]]);for(var o={},i=0;i<this.length;i++){var a=this[i][0];"number"==typeof a&&(o[a]=!0)}for(i=0;i<t.length;i++){var r=t[i];"number"==typeof r[0]&&o[r[0]]||(n&&!r[2]?r[2]=n:n&&(r[2]="("+r[2]+") and ("+n+")"),e.push(r))}},e}},"499e":function(t,e,n){"use strict";function o(t,e){for(var n=[],o={},i=0;i<e.length;i++){var a=e[i],r=a[0],s=a[1],l=a[2],p=a[3],c={id:t+":"+i,css:s,media:l,sourceMap:p};o[r]?o[r].parts.push(c):n.push(o[r]={id:r,parts:[c]})}return n}function i(t,e,n,i){h=n,v=i||{};var r=o(t,e);return a(r),function(e){for(var n=[],i=0;i<r.length;i++){var s=r[i],l=d[s.id];l.refs--,n.push(l)}for(e?(r=o(t,e),a(r)):r=[],i=0;i<n.length;i++)if(l=n[i],0===l.refs){for(var p=0;p<l.parts.length;p++)l.parts[p]();delete d[l.id]}}}function a(t){for(var e=0;e<t.length;e++){var n=t[e],o=d[n.id];if(o){o.refs++;for(var i=0;i<o.parts.length;i++)o.parts[i](n.parts[i]);for(;i<n.parts.length;i++)o.parts.push(s(n.parts[i]));o.parts.length>n.parts.length&&(o.parts.length=n.parts.length)}else{var a=[];for(i=0;i<n.parts.length;i++)a.push(s(n.parts[i]));d[n.id]={id:n.id,refs:1,parts:a}}}}function r(){var t=document.createElement("style");return t.type="text/css",m.appendChild(t),t}function s(t){var e,n,o=document.querySelector("style["+g+'~="'+t.id+'"]');if(o){if(h)return b;o.parentNode.removeChild(o)}if(x){var i=f++;o=u||(u=r()),e=l.bind(null,o,i,!1),n=l.bind(null,o,i,!0)}else o=r(),e=p.bind(null,o),n=function(){o.parentNode.removeChild(o)};return e(t),function(o){if(o){if(o.css===t.css&&o.media===t.media&&o.sourceMap===t.sourceMap)return;e(t=o)}else n()}}function l(t,e,n,o){var i=n?"":o.css;if(t.styleSheet)t.styleSheet.cssText=y(e,i);else{var a=document.createTextNode(i),r=t.childNodes;r[e]&&t.removeChild(r[e]),r.length?t.insertBefore(a,r[e]):t.appendChild(a)}}function p(t,e){var n=e.css,o=e.media,i=e.sourceMap;if(o&&t.setAttribute("media",o),v.ssrId&&t.setAttribute(g,e.id),i&&(n+="\n/*# sourceURL="+i.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i))))+" */"),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}n.r(e),n.d(e,"default",function(){return i});var c="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!c)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var d={},m=c&&(document.head||document.getElementsByTagName("head")[0]),u=null,f=0,h=!1,b=function(){},v=null,g="data-vue-ssr-id",x="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase()),y=function(){var t=[];return function(e,n){return t[e]=n,t.filter(Boolean).join("\n")}}()},"4abb":function(t,e,n){var o=n("df80");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals),(0,n("499e").default)("3e7284f8",o,!0,{sourceMap:!1,shadowMode:!1})},"4ed8":function(t,e,n){var o=n("ae61");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals),(0,n("499e").default)("57c2b2f0",o,!0,{sourceMap:!1,shadowMode:!1})},"556c":function(t,e,n){var o=n("d5ac");"string"==typeof o&&(o=[[t.i,o,""]]),o.locals&&(t.exports=o.locals),(0,n("499e").default)("f3ffc7f8",o,!0,{sourceMap:!1,shadowMode:!1})},"65d9":function(t,e,n){"use strict";function o(t,e){i(t,e),Object.getOwnPropertyNames(e.prototype).forEach(function(n){i(t.prototype,e.prototype,n)}),Object.getOwnPropertyNames(e).forEach(function(n){i(t,e,n)})}function i(t,e,n){(n?Reflect.getOwnMetadataKeys(e,n):Reflect.getOwnMetadataKeys(e)).forEach(function(o){var i=n?Reflect.getOwnMetadata(o,e,n):Reflect.getOwnMetadata(o,e);n?Reflect.defineMetadata(o,i,t,n):Reflect.defineMetadata(o,i,t)})}function a(t){return function(e,n,o){var i="function"==typeof e?e:e.constructor;i.__decorators__||(i.__decorators__=[]),"number"!=typeof o&&(o=void 0),i.__decorators__.push(function(e){return t(e,n,o)})}}function r(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return m.extend({mixins:t})}function s(t){var e=typeof t;return null==t||"object"!==e&&"function"!==e}function l(t,e){var n=e.prototype._init;e.prototype._init=function(){var e=this,n=Object.getOwnPropertyNames(t);if(t.$options.props)for(var o in t.$options.props)t.hasOwnProperty(o)||n.push(o);n.forEach(function(n){"_"!==n.charAt(0)&&Object.defineProperty(e,n,{get:function(){return t[n]},set:function(e){t[n]=e},configurable:!0})})};var o=new e;e.prototype._init=n;var i={};return Object.keys(o).forEach(function(t){void 0!==o[t]&&(i[t]=o[t])}),i}function p(t,e){void 0===e&&(e={}),e.name=e.name||t._componentTag||t.name;var n=t.prototype;Object.getOwnPropertyNames(n).forEach(function(t){if("constructor"!==t)if(b.indexOf(t)>-1)e[t]=n[t];else{var o=Object.getOwnPropertyDescriptor(n,t);void 0!==o.value?"function"==typeof o.value?(e.methods||(e.methods={}))[t]=o.value:(e.mixins||(e.mixins=[])).push({data:function(){var e;return e={},e[t]=o.value,e}}):(o.get||o.set)&&((e.computed||(e.computed={}))[t]={get:o.get,set:o.set})}}),(e.mixins||(e.mixins=[])).push({data:function(){return l(this,t)}});var i=t.__decorators__;i&&(i.forEach(function(t){return t(e)}),delete t.__decorators__);var a=Object.getPrototypeOf(t.prototype),r=a instanceof m?a.constructor:m,s=r.extend(e);return c(s,t,r),u&&o(s,t),s}function c(t,e,n){Object.getOwnPropertyNames(e).forEach(function(o){if("prototype"!==o){var i=Object.getOwnPropertyDescriptor(t,o);if(!i||i.configurable){var a=Object.getOwnPropertyDescriptor(e,o);if(!h){if("cid"===o)return;var r=Object.getOwnPropertyDescriptor(n,o);if(!s(a.value)&&r&&r.value===a.value)return}Object.defineProperty(t,o,a)}}})}function d(t){return"function"==typeof t?p(t):function(e){return p(e,t)}}Object.defineProperty(e,"__esModule",{value:!0});var m=/**
12
  * vue-class-component v7.0.1
13
  * (c) 2015-present Evan You
14
  * @license MIT
18
  * Version: 2.8.19
19
  * Author: LianYue
20
  */
21
+ !function(e,n){t.exports=n()}(0,function(){"use strict";function t(t){var e=a(t);return r(e,t.body)}function e(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(){var t=document.head||document.getElementsByTagName("head")[0],e=n.styles||(n.styles={}),o="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(n,i){if(!document.querySelector('style[data-vue-ssr-id~="'+n+'"]')){var a=o?i.media||"default":n,r=e[a]||(e[a]={ids:[],parts:[],element:void 0});if(!r.ids.includes(n)){var s=i.source,l=r.ids.length;if(r.ids.push(n),i.map&&(s+="\n/*# sourceURL="+i.map.sources[0]+" */",s+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i.map))))+" */"),o&&(r.element=r.element||document.querySelector("style[data-group="+a+"]")),!r.element){var p=r.element=document.createElement("style");p.type="text/css",i.media&&p.setAttribute("media",i.media),o&&(p.setAttribute("data-group",a),p.setAttribute("data-next-index","0")),t.appendChild(p)}if(o&&(l=parseInt(r.element.getAttribute("data-next-index")),r.element.setAttribute("data-next-index",l+1)),r.element.styleSheet)r.parts.push(s),r.element.styleSheet.cssText=r.parts.filter(Boolean).join("\n");else{var c=document.createTextNode(s),d=r.element.childNodes;d[l]&&r.element.removeChild(d[l]),d.length?r.element.insertBefore(c,d[l]):r.element.appendChild(c)}}}}}function o(t){if(Array.isArray(t)){for(var e=0,n=Array(t.length);e<t.length;e++)n[e]=t[e];return n}return Array.from(t)}function i(){var t=document.head||document.getElementsByTagName("head")[0],e=i.styles||(i.styles={}),n="undefined"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(o,i){if(!document.querySelector('style[data-vue-ssr-id~="'+o+'"]')){var a=n?i.media||"default":o,r=e[a]||(e[a]={ids:[],parts:[],element:void 0});if(!r.ids.includes(o)){var s=i.source,l=r.ids.length;if(r.ids.push(o),i.map&&(s+="\n/*# sourceURL="+i.map.sources[0]+" */",s+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(i.map))))+" */"),n&&(r.element=r.element||document.querySelector("style[data-group="+a+"]")),!r.element){var p=r.element=document.createElement("style");p.type="text/css",i.media&&p.setAttribute("media",i.media),n&&(p.setAttribute("data-group",a),p.setAttribute("data-next-index","0")),t.appendChild(p)}if(n&&(l=parseInt(r.element.getAttribute("data-next-index")),r.element.setAttribute("data-next-index",l+1)),r.element.styleSheet)r.parts.push(s),r.element.styleSheet.cssText=r.parts.filter(Boolean).join("\n");else{var c=document.createTextNode(s),d=r.element.childNodes;d[l]&&r.element.removeChild(d[l]),d.length?r.element.insertBefore(c,d[l]):r.element.appendChild(c)}}}}}var a=function(t){var e=new XMLHttpRequest;return e.open(t.method||"GET",t.url),e.responseType="json",t.headers&&Object.keys(t.headers).forEach(function(n){e.setRequestHeader(n,t.headers[n])}),e},r=function(t,e){return new Promise(function(n,o){t.onload=function(){if(t.status>=200&&t.status<300){var e;try{e=JSON.parse(t.response)}catch(n){e=t.response}n(e)}else o(t.response)},t.onerror=function(){return o(t.response)},t.send(JSON.stringify(e))})},s=function(t,e){var n=new FormData;for(var o in e)n.append(o,e[o]);return new Promise(function(e,o){t.onload=function(){if(t.status>=200&&t.status<300){var n;try{n=JSON.parse(t.response)}catch(e){n=t.response}e(n)}else o(t.response)},t.onerror=function(){return o(t.response)},t.send(n)})},l=function(){function t(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}return function(e,n,o){return n&&t(e.prototype,n),o&&t(e,o),e}}(),p=function(){function n(t,o){e(this,n),this.file=t,this.options=o}return l(n,[{key:"createChunks",value:function(){this.chunks=[];for(var t=0,e=this.chunkSize;t<this.fileSize;)this.chunks.push({blob:this.file.file.slice(t,e),startOffset:t,active:!1,retries:this.maxRetries}),t=e,e=t+this.chunkSize}},{key:"updateFileProgress",value:function(){this.file.progress=this.progress}},{key:"pause",value:function(){this.file.active=!1,this.stopChunks()}},{key:"stopChunks",value:function(){this.chunksUploading.forEach(function(t){t.xhr.abort(),t.active=!1})}},{key:"resume",value:function(){this.file.active=!0,this.startChunking()}},{key:"upload",value:function(){var t=this;return this.promise=new Promise(function(e,n){t.resolve=e,t.reject=n}),this.start(),this.promise}},{key:"start",value:function(){var e=this;t({method:"POST",headers:Object.assign({},this.headers,{"Content-Type":"application/json"}),url:this.action,body:Object.assign(this.startBody,{phase:"start",mime_type:this.fileType,size:this.fileSize,name:this.fileName})}).then(function(t){if("success"!==t.status)return e.file.response=t,e.reject("server");e.sessionId=t.data.session_id,e.chunkSize=t.data.end_offset,e.createChunks(),e.startChunking()}).catch(function(t){e.file.response=t,e.reject("server")})}},{key:"startChunking",value:function(){for(var t=0;t<this.maxActiveChunks;t++)this.uploadNextChunk()}},{key:"uploadNextChunk",value:function(){if(this.file.active){if(this.hasChunksToUpload)return this.uploadChunk(this.chunksToUpload[0]);if(0===this.chunksUploading.length)return this.finish()}}},{key:"uploadChunk",value:function(t){var e=this;t.progress=0,t.active=!0,this.updateFileProgress(),t.xhr=a({method:"POST",headers:this.headers,url:this.action}),t.xhr.upload.addEventListener("progress",function(e){e.lengthComputable&&(t.progress=Math.round(e.loaded/e.total*100))},!1),s(t.xhr,Object.assign(this.uploadBody,{phase:"upload",session_id:this.sessionId,start_offset:t.startOffset,chunk:t.blob})).then(function(n){if(t.active=!1,"success"===n.status)t.uploaded=!0;else if(t.retries--<=0)return e.stopChunks(),e.reject("upload");e.uploadNextChunk()}).catch(function(){if(t.active=!1,t.retries--<=0)return e.stopChunks(),e.reject("upload");e.uploadNextChunk()})}},{key:"finish",value:function(){var e=this;this.updateFileProgress(),t({method:"POST",headers:Object.assign({},this.headers,{"Content-Type":"application/json"}),url:this.action,body:Object.assign(this.finishBody,{phase:"finish",session_id:this.sessionId})}).then(function(t){if(e.file.response=t,"success"!==t.status)return e.reject("server");e.resolve(t)}).catch(function(t){e.file.response=t,e.reject("server")})}},{key:"maxRetries",get:function(){return parseInt(this.options.maxRetries)}},{key:"maxActiveChunks",get:function(){return parseInt(this.options.maxActive)}},{key:"fileType",get:function(){return this.file.type}},{key:"fileSize",get:function(){return this.file.size}},{key:"fileName",get:function(){return this.file.name}},{key:"action",get:function(){return this.options.action||null}},{key:"startBody",get:function(){return this.options.startBody||{}}},{key:"uploadBody",get:function(){return this.options.uploadBody||{}}},{key:"finishBody",get:function(){return this.options.finishBody||{}}},{key:"headers",get:function(){return this.options.headers||{}}},{key:"readyToUpload",get:function(){return!!this.chunks}},{key:"progress",get:function(){var t=this,e=this.chunksUploaded.length/this.chunks.length*100,n=this.chunksUploading.reduce(function(e,n){return e+(0|n.progress)/t.chunks.length},0);return Math.min(e+n,100)}},{key:"chunksToUpload",get:function(){return this.chunks.filter(function(t){return!t.active&&!t.uploaded})}},{key:"hasChunksToUpload",get:function(){return this.chunksToUpload.length>0}},{key:"chunksUploading",get:function(){return this.chunks.filter(function(t){return!!t.xhr&&!!t.active})}},{key:"chunksUploaded",get:function(){return this.chunks.filter(function(t){return!!t.uploaded})}}]),n}(),c={methods:{change:function(t){this.$parent.addInputFile(t.target),t.target.files?(t.target.value="",/safari/i.test(navigator.userAgent)||(t.target.type="",t.target.type="file")):(this.$destroy(),new this.constructor({parent:this.$parent,el:this.$el}))}}},d=c,m=function(){var t=this,e=t.$createElement;return(t._self._c||e)("input",{attrs:{type:"file",name:t.$parent.name,id:t.$parent.inputId||t.$parent.name,accept:t.$parent.accept,capture:t.$parent.capture,disabled:t.$parent.disabled,webkitdirectory:t.$parent.directory&&t.$parent.features.directory,directory:t.$parent.directory&&t.$parent.features.directory,multiple:t.$parent.multiple&&t.$parent.features.html5},on:{change:t.change}})},u=[],f=function(t,e,n,o,i,a,r,s){var l=("function"==typeof n?n.options:n)||{};return l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,i&&(l.functional=!0)),l._scopeId=o,l}({render:m,staticRenderFns:u},void 0,d,void 0,!1,void 0,n,void 0),h=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t},b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},v={headers:{},action:"",minSize:1048576,maxActive:3,maxRetries:5,handler:p},g={components:{InputFile:f},props:{inputId:{type:String},name:{type:String,default:"file"},accept:{type:String},capture:{},disabled:{},multiple:{type:Boolean},maximum:{type:Number,default:function(){return this.multiple?0:1}},addIndex:{type:[Boolean,Number]},directory:{type:Boolean},postAction:{type:String},putAction:{type:String},customAction:{type:Function},headers:{type:Object,default:Object},data:{type:Object,default:Object},timeout:{type:Number,default:0},drop:{default:!1},dropDirectory:{type:Boolean,default:!0},size:{type:Number,default:0},extensions:{default:Array},value:{type:Array,default:Array},thread:{type:Number,default:1},chunkEnabled:{type:Boolean,default:!1},chunk:{type:Object,default:function(){return v}}},data:function(){return{files:this.value,features:{html5:!0,directory:!1,drag:!1},active:!1,dropActive:!1,uploading:0,destroy:!1}},mounted:function(){var t=document.createElement("input");if(t.type="file",t.multiple=!0,window.FormData&&t.files?("boolean"!=typeof t.webkitdirectory&&"boolean"!=typeof t.directory||(this.features.directory=!0),this.features.html5&&void 0!==t.ondrop&&(this.features.drop=!0)):this.features.html5=!1,this.maps={},this.files)for(var e=0;e<this.files.length;e++){var n=this.files[e];this.maps[n.id]=n}this.$nextTick(function(){this.$parent&&this.$parent.$forceUpdate(),this.watchDrop(this.drop)})},beforeDestroy:function(){this.destroy=!0,this.active=!1},computed:{uploaded:function(){for(var t=void 0,e=0;e<this.files.length;e++)if(t=this.files[e],t.fileObject&&!t.error&&!t.success)return!1;return!0},chunkOptions:function(){return Object.assign(v,this.chunk)},className:function(){return["file-uploads",this.features.html5?"file-uploads-html5":"file-uploads-html4",this.features.directory&&this.directory?"file-uploads-directory":void 0,this.features.drop&&this.drop?"file-uploads-drop":void 0,this.disabled?"file-uploads-disabled":void 0]}},watch:{active:function(t){this.watchActive(t)},dropActive:function(){this.$parent&&this.$parent.$forceUpdate()},drop:function(t){this.watchDrop(t)},value:function(t){if(this.files!==t){this.files=t;var e=this.maps;this.maps={};for(var n=0;n<this.files.length;n++){var o=this.files[n];this.maps[o.id]=o}for(var i in this.maps){var a=this.maps[i],r=e[i];a!==r&&this.emitFile(a,r)}for(var s in e)this.maps[s]||this.emitFile(void 0,e[s])}}},methods:{clear:function(){if(this.files.length){var t=this.files;this.files=[],this.maps={},this.emitInput();for(var e=0;e<t.length;e++)this.emitFile(void 0,t[e])}return!0},get:function(t){return!!t&&("object"===(void 0===t?"undefined":b(t))?this.maps[t.id]||!1:this.maps[t]||!1)},add:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.addIndex,n=t,o=n instanceof Array;o||(n=[n]);for(var i=[],a=0;a<n.length;a++){var r=n[a];this.features.html5&&r instanceof Blob&&(r={file:r,size:r.size,name:r.webkitRelativePath||r.relativePath||r.name||"unknown",type:r.type});var s=!1;if(!1===r.fileObject||(r.fileObject?s=!0:"undefined"!=typeof Element&&r.el instanceof Element?s=!0:"undefined"!=typeof Blob&&r.file instanceof Blob&&(s=!0)),s&&(r=h({fileObject:!0,size:-1,name:"Filename",type:"",active:!1,error:"",success:!1,putAction:this.putAction,postAction:this.postAction,timeout:this.timeout},r,{response:{},progress:"0.00",speed:0}),r.data=h({},this.data,r.data?r.data:{}),r.headers=h({},this.headers,r.headers?r.headers:{})),r.id||(r.id=Math.random().toString(36).substr(2)),!this.emitFilter(r,void 0)){if(this.maximum>1&&i.length+this.files.length>=this.maximum)break;if(i.push(r),1===this.maximum)break}}if(!i.length)return!1;1===this.maximum&&this.clear();var l=void 0;if(!0===e||0===e)l=i.concat(this.files);else if(e){var p;l=this.files.concat([]),(p=l).splice.apply(p,[e,0].concat(i))}else l=this.files.concat(i);this.files=l;for(var c=0;c<i.length;c++){var d=i[c];this.maps[d.id]=d}this.emitInput();for(var m=0;m<i.length;m++)this.emitFile(i[m],void 0);return o?i:i[0]},addInputFile:function(t){var e=[];if(t.files)for(var n=0;n<t.files.length;n++){var o=t.files[n];e.push({size:o.size,name:o.webkitRelativePath||o.relativePath||o.name,type:o.type,file:o})}else{var i=t.value.replace(/\\/g,"/").split("/");delete t.__vuex__,e.push({name:i[i.length-1],el:t})}return this.add(e)},addDataTransfer:function(t){var e=this,n=[];if(t.items&&t.items.length){for(var i=[],a=0;a<t.items.length;a++){var r=t.items[a];r=r.getAsEntry?r.getAsEntry()||r.getAsFile():r.webkitGetAsEntry?r.webkitGetAsEntry()||r.getAsFile():r.getAsFile(),r&&i.push(r)}return new Promise(function(t,a){!function a(r){var s=i[r];if(!s||e.maximum>0&&n.length>=e.maximum)return t(e.add(n));e.getEntry(s).then(function(t){n.push.apply(n,o(t)),a(r+1)})}(0)})}if(t.files.length){for(var s=0;s<t.files.length&&(n.push(t.files[s]),!(this.maximum>0&&n.length>=this.maximum));s++);return Promise.resolve(this.add(n))}return Promise.resolve([])},getEntry:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return new Promise(function(i,a){if(t.isFile)t.file(function(t){i([{size:t.size,name:n+t.name,type:t.type,file:t}])});else if(t.isDirectory&&e.dropDirectory){var r=[],s=t.createReader();!function a(){s.readEntries(function(s){!function l(p){return!s[p]&&0===p||e.maximum>0&&r.length>=e.maximum?i(r):s[p]?void e.getEntry(s[p],n+t.name+"/").then(function(t){r.push.apply(r,o(t)),l(p+1)}):a()}(0)})}()}else i([])})},replace:function(t,e){var n=this.get(t),o=this.get(e);if(!n||!o||n===o)return!1;var i=this.files.concat([]),a=i.indexOf(n),r=i.indexOf(o);return-1!==a&&-1!==r&&(i[a]=o,i[r]=n,this.files=i,this.emitInput(),!0)},remove:function(t){var e=this.get(t);if(e){if(this.emitFilter(void 0,e))return!1;var n=this.files.concat([]),o=n.indexOf(e);if(-1===o)return console.error("remove",e),!1;n.splice(o,1),this.files=n,delete this.maps[e.id],this.emitInput(),this.emitFile(void 0,e)}return e},update:function(t,e){var n=this.get(t);if(n){var o=h({},n,e);if(!n.fileObject||!n.active||o.active||o.error||o.success||(o.error="abort"),this.emitFilter(o,n))return!1;var i=this.files.concat([]),a=i.indexOf(n);return-1===a?(console.error("update",n),!1):(i.splice(a,1,o),this.files=i,delete this.maps[n.id],this.maps[o.id]=o,this.emitInput(),this.emitFile(o,n),o)}return!1},emitFilter:function(t,e){var n=!1;return this.$emit("input-filter",t,e,function(){return n=!0}),n},emitFile:function(t,e){this.$emit("input-file",t,e),!(t&&t.fileObject&&t.active)||e&&e.active?t&&t.fileObject&&t.active||!e||!e.fileObject||!e.active||this.uploading--:(this.uploading++,this.$nextTick(function(){var e=this;setTimeout(function(){e.upload(t).then(function(){(t=e.get(t))&&t.fileObject&&e.update(t,{active:!1,success:!t.error})}).catch(function(n){e.update(t,{active:!1,success:!1,error:n.code||n.error||n.message||n})})},parseInt(50*Math.random()+50,10))})),!this.active||Boolean(t)===Boolean(e)&&t.active===e.active||this.watchActive(!0)},emitInput:function(){this.$emit("input",this.files)},upload:function(t){var e=this.get(t);if(!e)return Promise.reject("not_exists");if(!e.fileObject)return Promise.reject("file_object");if(e.error)return Promise.reject(e.error);if(e.success)return Promise.resolve(e);var n=this.extensions;if(n&&(n.length||void 0===n.length)&&("object"===(void 0===n?"undefined":b(n))&&n instanceof RegExp||("string"==typeof n&&(n=n.split(",").map(function(t){return t.trim()}).filter(function(t){return t})),n=new RegExp("\\.("+n.join("|").replace(/\./g,"\\.")+")$","i")),-1===e.name.search(n)))return Promise.reject("extension");if(this.size>0&&e.size>=0&&e.size>this.size)return Promise.reject("size");if(this.customAction)return this.customAction(e,this);if(this.features.html5){if(this.shouldUseChunkUpload(e))return this.uploadChunk(e);if(e.putAction)return this.uploadPut(e);if(e.postAction)return this.uploadHtml5(e)}return e.postAction?this.uploadHtml4(e):Promise.reject("No action configured")},shouldUseChunkUpload:function(t){return this.chunkEnabled&&!!this.chunkOptions.handler&&t.size>this.chunkOptions.minSize},uploadChunk:function(t){var e=this.chunkOptions.handler;return t.chunk=new e(t,this.chunkOptions),t.chunk.upload()},uploadPut:function(t){var e=[],n=void 0;for(var o in t.data)null!==(n=t.data[o])&&void 0!==n&&e.push(encodeURIComponent(o)+"="+encodeURIComponent(n));var i=e.length?(-1===t.putAction.indexOf("?")?"?":"&")+e.join("&"):"",a=new XMLHttpRequest;return a.open("PUT",t.putAction+i),this.uploadXhr(a,t,t.file)},uploadHtml5:function(t){var e=new window.FormData,n=void 0;for(var o in t.data)n=t.data[o],n&&"object"===(void 0===n?"undefined":b(n))&&"function"!=typeof n.toString?n instanceof File?e.append(o,n,n.name):e.append(o,JSON.stringify(n)):null!==n&&void 0!==n&&e.append(o,n);e.append(this.name,t.file,t.file.filename||t.name);var i=new XMLHttpRequest;return i.open("POST",t.postAction),this.uploadXhr(i,t,e)},uploadXhr:function(t,e,n){var o=this,i=e,a=0,r=0;t.upload.onprogress=function(t){if(i=o.get(i),t.lengthComputable&&i&&i.fileObject&&i.active){var e=Math.round(Date.now()/1e3);e!==a&&(a=e,i=o.update(i,{progress:(t.loaded/t.total*100).toFixed(2),speed:t.loaded-r}),r=t.loaded)}};var s=setInterval(function(){if(!(i=o.get(i))||!i.fileObject||i.success||i.error||!i.active){s&&(clearInterval(s),s=!1);try{t.abort(),t.timeout=1}catch(t){}}},100);return new Promise(function(e,a){var r=void 0,l=function(n){if(!r){if(r=!0,s&&(clearInterval(s),s=!1),!(i=o.get(i)))return a("not_exists");if(!i.fileObject)return a("file_object");if(i.error)return a(i.error);if(!i.active)return a("abort");if(i.success)return e(i);var l={};switch(n.type){case"timeout":case"abort":l.error=n.type;break;case"error":t.status?t.status>=500?l.error="server":t.status>=400&&(l.error="denied"):l.error="network";break;default:t.status>=500?l.error="server":t.status>=400?l.error="denied":l.progress="100.00"}if(t.responseText){var p=t.getResponseHeader("Content-Type");p&&-1!==p.indexOf("/json")?l.response=JSON.parse(t.responseText):l.response=t.responseText}return i=o.update(i,l),i.error?a(i.error):e(i)}};t.onload=l,t.onerror=l,t.onabort=l,t.ontimeout=l,i.timeout&&(t.timeout=i.timeout);for(var p in i.headers)t.setRequestHeader(p,i.headers[p]);i=o.update(i,{xhr:t}),t.send(n)})},uploadHtml4:function(t){var e=this,n=t,o=function(t){27===t.keyCode&&t.preventDefault()},i=document.createElement("iframe");i.id="upload-iframe-"+n.id,i.name="upload-iframe-"+n.id,i.src="about:blank",i.setAttribute("style","width:1px;height:1px;top:-999em;position:absolute; margin-top:-999em;");var a=document.createElement("form");a.action=n.postAction,a.name="upload-form-"+n.id,a.setAttribute("method","POST"),a.setAttribute("target","upload-iframe-"+n.id),a.setAttribute("enctype","multipart/form-data");var r=void 0,s=void 0;for(var l in n.data)r=n.data[l],r&&"object"===(void 0===r?"undefined":b(r))&&"function"!=typeof r.toString&&(r=JSON.stringify(r)),null!==r&&void 0!==r&&(s=document.createElement("input"),s.type="hidden",s.name=l,s.value=r,a.appendChild(s));a.appendChild(n.el),document.body.appendChild(i).appendChild(a);var p=function(){var t=void 0;try{i.contentWindow&&(t=i.contentWindow.document)}catch(t){}if(!t)try{t=i.contentDocument?i.contentDocument:i.document}catch(e){t=i.document}return t&&t.body?t.body.innerHTML:null};return new Promise(function(t,r){setTimeout(function(){if(!(n=e.update(n,{iframe:i})))return r("not_exists");var s=setInterval(function(){(n=e.get(n))&&n.fileObject&&!n.success&&!n.error&&n.active||(s&&(clearInterval(s),s=!1),i.onabort({type:n?"abort":"not_exists"}))},100),l=void 0,c=function(i){if(!l){if(l=!0,s&&(clearInterval(s),s=!1),document.body.removeEventListener("keydown",o),!(n=e.get(n)))return r("not_exists");if(!n.fileObject)return r("file_object");if(n.error)return r(n.error);if(!n.active)return r("abort");if(n.success)return t(n);var a=p(),c={};switch(i.type){case"abort":c.error="abort";break;case"error":n.error?c.error=n.error:c.error=null===a?"network":"denied";break;default:n.error?c.error=n.error:null===c?c.error="network":c.progress="100.00"}if(null!==a){if(a&&"{"===a.substr(0,1)&&"}"===a.substr(a.length-1,1))try{a=JSON.parse(a)}catch(t){}c.response=a}return n=e.update(n,c),n.error?r(n.error):t(n)}};i.onload=c,i.onerror=c,i.onabort=c,document.body.addEventListener("keydown",o),a.submit()},50)}).then(function(t){return i.parentNode&&i.parentNode.removeChild(i),t}).catch(function(t){return i.parentNode&&i.parentNode.removeChild(i),t})},watchActive:function(t){for(var e=void 0,n=0;e=this.files[n];)if(n++,e.fileObject)if(t&&!this.destroy){if(this.uploading>=this.thread||this.uploading&&!this.features.html5)break;e.active||e.error||e.success||this.update(e,{active:!0})}else e.active&&this.update(e,{active:!1});else;0===this.uploading&&(this.active=!1)},watchDrop:function(t){var e=t;if(this.features.drop){if(this.dropElement)try{document.removeEventListener("dragenter",this.onDragenter,!1),document.removeEventListener("dragleave",this.onDragleave,!1),document.removeEventListener("drop",this.onDocumentDrop,!1),this.dropElement.removeEventListener("dragover",this.onDragover,!1),this.dropElement.removeEventListener("drop",this.onDrop,!1)}catch(t){}e?"string"==typeof e?e=document.querySelector(e)||this.$root.$el.querySelector(e):!0===e&&(e=this.$parent.$el):e=!1,this.dropElement=e,this.dropElement&&(document.addEventListener("dragenter",this.onDragenter,!1),document.addEventListener("dragleave",this.onDragleave,!1),document.addEventListener("drop",this.onDocumentDrop,!1),this.dropElement.addEventListener("dragover",this.onDragover,!1),this.dropElement.addEventListener("drop",this.onDrop,!1))}},onDragenter:function(t){if(t.preventDefault(),!this.dropActive&&t.dataTransfer){var e=t.dataTransfer;e.files&&e.files.length?this.dropActive=!0:e.types?e.types.indexOf&&-1!==e.types.indexOf("Files")?this.dropActive=!0:e.types.contains&&e.types.contains("Files")&&(this.dropActive=!0):this.dropActive=!0}},onDragleave:function(t){t.preventDefault(),this.dropActive&&("HTML"===t.target.nodeName||t.target===t.explicitOriginalTarget||!t.fromElement&&(t.clientX<=0||t.clientY<=0||t.clientX>=window.innerWidth||t.clientY>=window.innerHeight))&&(this.dropActive=!1)},onDragover:function(t){t.preventDefault()},onDocumentDrop:function(){this.dropActive=!1},onDrop:function(t){t.preventDefault(),this.addDataTransfer(t.dataTransfer)}}},x=g,y=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{class:t.className},[t._t("default"),t._v(" "),n("label",{attrs:{for:t.inputId||t.name}}),t._v(" "),n("input-file")],2)},w=[],k=function(t){t&&t("data-v-595958af_0",{source:"\n.file-uploads{overflow:hidden;position:relative;text-align:center;display:inline-block\n}\n.file-uploads.file-uploads-html4 input,.file-uploads.file-uploads-html5 label{background:#fff;opacity:0;font-size:20em;z-index:1;top:0;left:0;right:0;bottom:0;position:absolute;width:100%;height:100%\n}\n.file-uploads.file-uploads-html4 label,.file-uploads.file-uploads-html5 input{background:rgba(255,255,255,0);overflow:hidden;position:fixed;width:1px;height:1px;z-index:-1;opacity:0\n}",map:void 0,media:void 0})},_=function(t,e,n,o,i,a,r,s){var l=("function"==typeof n?n.options:n)||{};l.render||(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0,i&&(l.functional=!0)),l._scopeId=o;var p=void 0;if(e&&(p=function(t){e.call(this,r(t))}),void 0!==p)if(l.functional){var c=l.render;l.render=function(t,e){return p.call(e),c(t,e)}}else{var d=l.beforeCreate;l.beforeCreate=d?[].concat(d,p):[p]}return l}({render:y,staticRenderFns:w},k,x,void 0,!1,void 0,i,void 0),C=Object.freeze({default:_});return C&&_||C})},function(t,e){t.exports='\n\t<div _v-6d81614d="">\n\t\t<h4 _v-6d81614d="">{{strings.add_desc}}</h4>\n\t\t<div class="field columns" _v-6d81614d="">\n\t\t\t<div class="column" v-for="file in files" _v-6d81614d="">\n <span class="tag" _v-6d81614d="">\n <i _v-6d81614d="">{{file.name}}</i>\n <i v-if="!file.active &amp;&amp; !file.success &amp;&amp; file.error === \'\'" class="dashicons dashicons-yes icon has-text-grey-light" _v-6d81614d=""></i>\n <i v-else-if="file.active" class="dashicons dashicons-marker icon spin has-text-warning" _v-6d81614d=""></i>\n <i v-else-if="!file.active &amp;&amp; file.success" class="dashicons dashicons-yes icon has-text-success" _v-6d81614d=""></i>\n <i v-else="" class="dashicons dashicons-no-alt icon has-text-danger" _v-6d81614d=""></i>\n </span>\n\t\t\t</div>\n\t\t</div>\n\t\t<div class="column " _v-6d81614d="">\n\t\t\t<file-upload class="button is-secondary is-rounded" :post-action=" global.root + \'/add_watermark\'" :headers="{\'X-WP-Nonce\': global.nonce}" extensions="gif,jpg,jpeg,png,webp" accept="image/png,image/gif,image/jpeg,image/webp" :size="1024 * 1024 * 10" v-model="files" @input-filter="inputFilter" @input-file="inputFile" :disabled="loading" ref="upload" _v-6d81614d="">\n\t\t\t\t<i class="dashicons dashicons-plus icon" _v-6d81614d=""></i>\n\t\t\t\t{{strings.upload}}\n\t\t\t</file-upload>\n\t\t\t<br _v-6d81614d=""><br _v-6d81614d=""><span class="tag is-danger" v-if="is_error" _v-6d81614d="">{{error_message}}</span>\n\t\t</div>\n\t\t<hr _v-6d81614d="">\n\t\t<div class="box" _v-6d81614d="">\n\t\t\t<h3 _v-6d81614d=""><span class="dashicons dashicons-menu" _v-6d81614d=""></span> {{strings.list_header}} </h3>\n\t\t\t<small _v-6d81614d=""><i _v-6d81614d="">{{strings.max_allowed}}</i></small>\n\t\t\t\n\t\t\t<div class="optimized-images" _v-6d81614d="">\n\t\t\t\t<div v-if="!noImages" _v-6d81614d="">\n\t\t\t\t\t<h3 class="has-text-centered" _v-6d81614d="">{{strings.last}} {{strings.optimized_images}}</h3>\n\t\t\t\t\t<table class="table is-striped is-hoverable is-fullwidth" _v-6d81614d="">\n\t\t\t\t\t\t<thead _v-6d81614d="">\n\t\t\t\t\t\t<tr _v-6d81614d="">\n\t\t\t\t\t\t\t<th class="optml-image-heading" _v-6d81614d="">{{strings.id}}</th>\n\t\t\t\t\t\t\t<th class="optml-image-heading" _v-6d81614d="">{{strings.image}}</th>\n\t\t\t\t\t\t\t<th class="optml-image-heading" _v-6d81614d="">{{strings.action}}</th>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</thead>\n\t\t\t\t\t\t<tbody _v-6d81614d="">\n\t\t\t\t\t\t<tr v-for="(item, index) in watermarkData" _v-6d81614d="">\n\t\t\t\t\t\t\t<td _v-6d81614d=""><code _v-6d81614d="">#{{item.ID}}</code></td>\n\t\t\t\t\t\t\t<td _v-6d81614d=""><img :src="item.guid" class="optml-image-watermark" width="50" _v-6d81614d=""></td>\n\t\t\t\t\t\t\t<td width="50" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a @click="removeWatermark(item.ID)" class="button is-small is-danger is-rounded" :class="{\'is-loading\':loading}" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t<span class="dashicons dashicons-no-alt icon" _v-6d81614d=""></span>\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t</tbody>\n\t\t\t\t\t</table>\n\t\t\t\t\t\n\t\t\t\t\t<span class="tag is-success" v-if="loading" _v-6d81614d="">\n\t\t\t\t\t{{strings.loading_remove_watermark}}\n\t\t\t\t\t</span>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t<table class="table is-striped is-hoverable is-fullwidth" v-if="noImages" _v-6d81614d="">\n\t\t\t\t<thead _v-6d81614d="">\n\t\t\t\t<tr _v-6d81614d="">\n\t\t\t\t\t<th class="optml-image-heading has-text-centered" v-html="strings.no_images_found" _v-6d81614d=""></th>\n\t\t\t\t</tr>\n\t\t\t\t</thead>\n\t\t\t</table>\n\t\t\t<hr _v-6d81614d="">\n\t\t\t<h3 _v-6d81614d=""><span class="dashicons dashicons-grid-view" _v-6d81614d=""></span> {{strings.settings_header}} </h3>\n\t\t\t<br _v-6d81614d="">\n\t\t\t<div class="field is-fullwidth columns" _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.wm_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.wm_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow" _v-6d81614d="">\n\t\t\t\t\t\t\t<div class="select" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<select title="Watermark Selection" v-model="selectedWatermark" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t<option value="-1" _v-6d81614d="">No watermark</option>\n\t\t\t\t\t\t\t\t\t<option v-for="(item, index) in watermarkData" :value="item.ID" _v-6d81614d="">#({{item.ID}})\n\t\t\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t\t\t</select>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field is-fullwidth columns" _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.opacity_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.opacity_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.opacity_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkOpacity" class="input is-small" type="number" min="0" max="100" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field columns" _v-6d81614d="">\n\t\t\t\t<label class="label column has-text-grey-dark" _v-6d81614d="">\n\t\t\t\t\t{{strings.position_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.position_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t<div class="column buttons " _v-6d81614d="">\n\t\t\t\t\t<div class="field columns is-gapless is-marginless " _v-6d81614d="">\n\t\t\t\t\t\t<div class="is-fullwidth optml-layout-grid" _v-6d81614d="">\n\t\t\t\t\t\t\t<a @click="changePosition(\'nowe\')" :class="{ \'is-info\':isActivePosition (\'nowe\'), \' is-selected\':watermarkSettings.position === \'nowe\' }" class="grid-button " :title="strings.pos_nowe_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'no\')" :class="{ \'is-info\':isActivePosition (\'no\'), \' is-selected\':watermarkSettings.position === \'no\' }" class="grid-button " :title="strings.pos_no_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'noea\')" :class="{ \'is-info\':isActivePosition (\'noea\'), \' is-selected\':watermarkSettings.position === \'noea\' }" class="grid-button" :title="strings.pos_noea_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'we\')" :class="{ \'is-info\':isActivePosition (\'we\'), \' is-selected\':watermarkSettings.position === \'we\' }" class="grid-button" :title="strings.pos_we_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'ce\')" :class="{ \'is-info\':isActivePosition (\'ce\'), \' is-selected\':watermarkSettings.position === \'ce\' }" class="grid-button" :title="strings.pos_ce_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'ea\')" :class="{ \'is-info\':isActivePosition (\'ea\'), \' is-selected\':watermarkSettings.position === \'ea\' }" class="grid-button" :title="strings.pos_ea_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'sowe\')" :class="{ \'is-info\':isActivePosition (\'sowe\'), \' is-selected\':watermarkSettings.position === \'sowe\' }" class="grid-button" :title="strings.pos_sowe_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'so\')" :class="{ \'is-info\':isActivePosition (\'so\'), \' is-selected\':watermarkSettings.position === \'so\' }" class="grid-button" :title="strings.pos_so_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t<a @click="changePosition(\'soea\')" :class="{ \'is-info\':isActivePosition (\'soea\'), \' is-selected\':watermarkSettings.position === \'soea\' }" class="grid-button" :title="strings.pos_soea_title" _v-6d81614d="">\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t\t<br _v-6d81614d="">\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field is-fullwidth columns " _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.offset_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.offset_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.offset_x_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkX" class="input is-tiny is-small" type="number" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.offset_y_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkY" class="input is-small is-tiny" type="number" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<div class="field is-fullwidth columns" _v-6d81614d="">\n\t\t\t\t<label class="label is-half column has-text-grey-dark no-padding-right " _v-6d81614d="">\n\t\t\t\t\t{{strings.scale_title}}\n\t\t\t\t\t<p class="is-italic has-text-weight-normal" _v-6d81614d="">\n\t\t\t\t\t\t{{strings.scale_desc}}\n\t\t\t\t\t</p>\n\t\t\t\t</label>\n\t\t\t\t\n\t\t\t\t<div class="column is-paddingless" _v-6d81614d="">\n\t\t\t\t\t<div class="columns" _v-6d81614d="">\n\t\t\t\t\t\t<div class="field column is-narrow has-addons" _v-6d81614d="">\n\t\t\t\t\t\t\t<p class="control" _v-6d81614d="">\n\t\t\t\t\t\t\t\t<a class="button is-small is-static" _v-6d81614d="">\n\t\t\t\t\t\t\t\t\t{{strings.scale_field}}\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t\t<p class="control " _v-6d81614d="">\n\t\t\t\t\t\t\t\t<input v-model="watermarkScale" class="input is-small" type="number" min="0" max="100" _v-6d81614d="">\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t\t\n\t\t\t<p class="control column has-text-centered-desktop has-text-left-touch " _v-6d81614d="">\n\t\t\t\t<a @click="saveChanges()" class="button is-small is-success " :class="{\'is-loading\':loading}" _v-6d81614d="">\n\t\t\t\t\t<span class="dashicons dashicons-yes icon" _v-6d81614d=""></span>\n\t\t\t\t\t<span _v-6d81614d="">\t{{strings.save_changes}}</span>\n\t\t\t\t</a>\n\t\t\t</p>\n\t\t</div>\n\t</div>\n'},function(t,e,n){var o,i;n(75),o=n(77),i=n(78),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(76);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"resize",data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,new_data:{}}},mounted:function(){},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})}},computed:{site_settings:function(){return this.$store.state.site_settings},widthStatus:{set:function(t){this.showSave=!0,this.new_data.max_width=t},get:function(){return this.site_settings.max_width}},heightStatus:{set:function(t){this.showSave=!0,this.new_data.max_height=t},get:function(){return this.site_settings.max_height}},resizeSmart:{set:function(t){this.showSave=!0,this.new_data.resize_smart=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.resize_smart)}},retinaReady:{set:function(t){this.showSave=!0,this.new_data.retina_images=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.retina_images)}}}}},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-018981f2="">\n <div class="field columns" _v-018981f2="">\n <label class="label column has-text-grey-dark" _v-018981f2="">\n {{strings.enable_resize_smart_title}}\n <p class="is-italic has-text-weight-normal" _v-018981f2="">\n {{strings.enable_resize_smart_desc}}\n </p>\n </label>\n <div class="column is-3" _v-018981f2="">\n <toggle-button :class="\'has-text-dark\'" v-model="resizeSmart" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-018981f2=""></toggle-button>\n </div>\n\n </div>\n <div class="field columns" _v-018981f2="">\n <label class="label column has-text-grey-dark" _v-018981f2="">\n {{strings.enable_retina_title}}\n <p class="is-italic has-text-weight-normal" _v-018981f2="">\n {{strings.enable_retina_desc}}\n </p>\n </label>\n <div class="column is-3" _v-018981f2="">\n <toggle-button :class="\'has-text-dark\'" v-model="retinaReady" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-018981f2=""></toggle-button>\n </div>\n\n </div>\n <div class="field columns " _v-018981f2="">\n <label class="label column has-text-grey-dark no-padding-right " _v-018981f2="">\n {{strings.size_title}}\n <p class="is-italic has-text-weight-normal" _v-018981f2="">\n {{strings.size_desc}}\n </p>\n </label>\n\n <div class="column is-6 " _v-018981f2="">\n <div class="columns" _v-018981f2="">\n <div class="field column is-narrow has-addons" _v-018981f2="">\n <p class="control" _v-018981f2="">\n <a class="button is-small is-static" _v-018981f2="">\n {{strings.width_field}}\n </a>\n </p>\n <p class="control " _v-018981f2="">\n <input v-model="widthStatus" class="input is-small" type="number" min="100" max="10000" _v-018981f2="">\n </p>\n </div>\n <div class="field column is-small has-addons" _v-018981f2="">\n <p class="control" _v-018981f2="">\n <a class="button is-small is-static" _v-018981f2="">\n {{strings.height_field}}\n </a>\n </p>\n <p class="control " _v-018981f2="">\n <input v-model="heightStatus" class="input is-small" type="number" min="100" max="10000" _v-018981f2="">\n </p>\n </div>\n </div>\n </div>\n </div>\n <div class="field is-fullwidth columns " _v-018981f2="">\n <div class="column is-left" _v-018981f2="">\n <button @click="saveChanges()" class="button is-success is-small " :class="this.$store.state.loading ? \'is-loading\' : \'\' " :disabled="!showSave" _v-018981f2="">\n {{strings.save_changes}}\n </button>\n </div>\n </div>\n\n </div>\n'},function(t,e,n){var o,i;n(80),o=n(82),i=n(88),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(81);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(83),i=function(t){return t&&t.__esModule?t:{default:t}}(o);e.default={name:"exclusions",components:{FilterControl:i.default},data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,new_data:{}}},mounted:function(){},methods:{},computed:{site_settings:function(){return this.$store.state.site_settings}}}},function(t,e,n){var o,i;n(84),o=n(86),i=n(87),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(85);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=n(2);!function(t){t&&t.__esModule}(o);e.default={name:"filter-control",props:["type"],data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,selected_filter:"filename",selected_value:"",filter_operator:optimoleDashboardApp.strings.options_strings.filter_operator_contains,FILTER_TYPES:{EXT:"extension",URL:"page_url",FILENAME:"filename"}}},mounted:function(){},methods:{saveRule:function(){var t={};t[this.type]={},t[this.type][this.selected_filter]={},t[this.type][this.selected_filter][this.selected_value]=!0,this.selected_value.length<3||this.$store.dispatch("saveSettings",{settings:{filters:t}})},removeRule:function(t,e){var n={};n[this.type]={},n[this.type][t]={},n[this.type][t][e]="false",this.$store.dispatch("saveSettings",{settings:{filters:n}})},changeFilterType:function(t){this.selected_value="",t.target.value===this.FILTER_TYPES.EXT&&(this.selected_value="svg",this.filter_operator=this.strings.filter_operator_is),t.target.value===this.FILTER_TYPES.URL&&(this.filter_operator=this.strings.filter_operator_contains),t.target.value===this.FILTER_TYPES.FILENAME&&(this.filter_operator=this.strings.filter_operator_contains),this.selected_filter=t.target.value},getFilterOperator:function(){return this.filter_operator}},computed:{filters:function(){return this.$store.state.site_settings.filters[this.type]}}}},function(t,e){t.exports='\n <div :id="\'filter-type-\'+type" _v-2be63146="">\n <div class="field " _v-2be63146="">\n <label class="label column has-text-grey-dark" _v-2be63146="">\n <span v-if="type===\'lazyload\'" _v-2be63146="">{{strings.exclude_title_lazyload}}</span>\n <span v-if="type===\'optimize\'" _v-2be63146="">{{strings.exclude_title_optimize}}</span>\n </label>\n </div>\n <div class="field columns" _v-2be63146="">\n <div class="column is-paddingless is-full " _v-2be63146="">\n <div class="list" _v-2be63146="">\n <div class="list-item exclusion-filter" v-for="(item, index) in filters[this.FILTER_TYPES.EXT]" _v-2be63146="">\n <div class="control" _v-2be63146="">\n <div class="tags is-centered has-addons" _v-2be63146="">\n <a class="tag is-marginless is-link has-text-left" _v-2be63146=""><i _v-2be63146="">{{strings.exclude_ext_desc}}</i>\n <strong _v-2be63146="">{{index}}</strong></a>\n <a class="tag is-marginless is-delete" @click="removeRule(FILTER_TYPES.EXT,index)" _v-2be63146=""></a>\n </div>\n </div>\n </div>\n <div class="list-item exclusion-filter" v-for="(item, index) in filters[this.FILTER_TYPES.URL]" _v-2be63146="">\n <div class="control" _v-2be63146="">\n <div class="tags is-centered has-addons" _v-2be63146="">\n <a class="tag is-marginless is-link has-text-left" _v-2be63146=""><i _v-2be63146="">{{strings.exclude_url_desc}}</i>\n <strong _v-2be63146="">{{index}}</strong></a>\n <a class="tag is-marginless is-delete" @click="removeRule(FILTER_TYPES.URL,index)" _v-2be63146=""></a>\n </div>\n </div>\n </div>\n <div class="list-item exclusion-filter" v-for="(item, index) in filters[this.FILTER_TYPES.FILENAME]" _v-2be63146="">\n <div class="control" _v-2be63146="">\n <div class="tags is-centered has-addons" _v-2be63146="">\n <a class="tag is-marginless is-link has-text-left" _v-2be63146=""><i _v-2be63146="">{{strings.exclude_filename_desc}}</i>\n <strong _v-2be63146="">{{index}}</strong></a>\n <a class="tag is-marginless is-delete" @click="removeRule(FILTER_TYPES.FILENAME,index)" _v-2be63146=""></a>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n <div class="field columns" _v-2be63146="">\n <div class="field has-addons column has-addons-centered" _v-2be63146="">\n <p class="control " _v-2be63146="">\n <span class="select is-small" _v-2be63146="">\n <select @change="changeFilterType($event)" _v-2be63146="">\n <option :value="FILTER_TYPES.FILENAME" _v-2be63146="">{{strings.filter_filename}}</option>\n <option :value="FILTER_TYPES.EXT" _v-2be63146="">{{strings.filter_ext}}</option>\n <option :value="FILTER_TYPES.URL" _v-2be63146="">{{strings.filter_url}}</option>\n </select>\n </span>\n </p>\n <p class="control" _v-2be63146="">\n <a class="button is-small is-static" _v-2be63146="">\n {{getFilterOperator()}}\n </a>\n </p>\n <p class="control" _v-2be63146="">\n <span v-if="this.selected_filter===this.FILTER_TYPES.EXT" class="select is-small" _v-2be63146="">\n <select v-model="selected_value" _v-2be63146="">\n <option value="svg" _v-2be63146="">.SVG</option>\n <option value="jpg" _v-2be63146="">.JPG</option>\n <option value="png" _v-2be63146="">.PNG</option>\n </select>\n </span>\n <input v-else="" v-model="selected_value" class="input is-small" type="text" placeholder="word" _v-2be63146="">\n </p>\n <p class="control" _v-2be63146="">\n <a class="button is-primary is-small" :class="this.$store.state.loading ? \'is-loading\' : \'\' " @click="saveRule()" _v-2be63146="">\n {{strings.add_filter}}\n </a>\n </p>\n </div>\n </div>\n <p class="has-text-centered " v-if="this.selected_filter === FILTER_TYPES.URL" _v-2be63146="">\n <i _v-2be63146="">For homepage use <strong _v-2be63146="">home</strong> keyword.</i>\n </p>\n </div>\n'},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-f5e043ba="">\n <div id="filters-list" _v-f5e043ba="">\n <div class="columns " _v-f5e043ba="">\n <filter-control :type="\'optimize\'" _v-f5e043ba=""></filter-control>\n </div>\n\t <hr _v-f5e043ba="">\n <div class="columns " v-if="this.$store.state.site_settings.lazyload === \'enabled\'" _v-f5e043ba="">\n <filter-control :type="\'lazyload\'" _v-f5e043ba=""></filter-control>\n </div>\n </div>\n\n </div>\n'},function(t,e,n){var o,i;n(90),o=n(92),i=n(93),t.exports=o||{},t.exports.__esModule&&(t.exports=t.exports.default),i&&(("function"==typeof t.exports?t.exports.options:t.exports).template=i)},function(t,e,n){var o=n(91);"string"==typeof o&&(o=[[t.i,o,""]]);n(1)(o,{});o.locals&&(t.exports=o.locals)},function(t,e,n){e=t.exports=n(0)(),e.push([t.i,"\n\n",""])},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"lazyload",data:function(){return{strings:optimoleDashboardApp.strings.options_strings,all_strings:optimoleDashboardApp.strings,showSave:!1,new_data:{}}},mounted:function(){},methods:{saveChanges:function(){this.$store.dispatch("saveSettings",{settings:this.new_data})}},computed:{site_settings:function(){return this.$store.state.site_settings},lazyloadPlaceholder:{set:function(t){this.showSave=!0,this.new_data.lazyload_placeholder=t?"enabled":"disabled"},get:function(){return!("disabled"===this.site_settings.lazyload_placeholder)}}}}},function(t,e){t.exports='\n <div :class="{ \'saving--option\' : this.$store.state.loading }" _v-2356e1d0="">\n <div class="field columns" _v-2356e1d0="">\n <label class="label column has-text-grey-dark" _v-2356e1d0="">\n {{strings.enable_lazyload_placeholder_title}}\n <p class="is-italic has-text-weight-normal" _v-2356e1d0="">\n {{strings.enable_lazyload_placeholder_desc}}\n </p>\n </label>\n <div class="column is-3" _v-2356e1d0="">\n <toggle-button :class="\'has-text-dark\'" v-model="lazyloadPlaceholder" :disabled="this.$store.state.loading" :labels="{checked: strings.enabled, unchecked: strings.disabled}" :width="80" :height="25" color="#008ec2" _v-2356e1d0=""></toggle-button>\n </div>\n\n </div>\n <div class="field is-fullwidth columns " _v-2356e1d0="">\n <div class="column is-left" _v-2356e1d0="">\n <button @click="saveChanges()" class="button is-success is-small " :class="this.$store.state.loading ? \'is-loading\' : \'\' " :disabled="!showSave" _v-2356e1d0="">\n {{strings.save_changes}}\n </button>\n </div>\n </div>\n\n </div>\n'},function(t,e){t.exports='\n <div class="columns" _v-5187a250="">\n <aside id="optml-settings-menu" class="menu column is-2-fullhd is-3-desktop is-3-tablet is-hidden-mobile" _v-5187a250="">\n <ul class="menu-list optml-settings-submenu is-marginless" _v-5187a250="">\n <li _v-5187a250=""><a @click="changeTab(\'general\')" href="#" :class="tab === \'general\' ? \'is-active\' : \'\'" :title="all_strings.general_settings_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.general_settings_menu_item}}</a>\n </li>\n <li :class="isDisabled ? \'is-menu-disabled\' : \'\' " _v-5187a250=""><a @click="ToggleAdvanced()" href="#" title="General settings" _v-5187a250=""><span _v-5187a250="">{{all_strings.advanced_settings_menu_item}}</span>\n <span class=" dashicons advanced-link " :class="advancedOpen ? \'dashicons-arrow-down-alt2\' : \'dashicons-arrow-right-alt2\'" _v-5187a250=""></span>\n </a>\n <ul class="menu-list optml-settings-submenu is-marginless " :class=" ! advancedOpen ? \'is-hidden\' : \'\' " _v-5187a250="">\n <li _v-5187a250=""><a @click="changeTab(\'compression\')" href="#" :class="tab === \'compression\' ? \'is-active\' : \'\'" :title="all_strings.settings_compression_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.settings_compression_menu_item}}</a>\n </li>\n <li _v-5187a250=""><a @click="changeTab(\'resize\')" href="#" :class="tab === \'resize\' ? \'is-active\' : \'\'" :title="all_strings.settings_resize_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.settings_resize_menu_item}}</a>\n </li>\n <li v-if="this.$store.state.site_settings.lazyload===\'enabled\'" _v-5187a250=""><a @click="changeTab(\'lazyload\')" href="#" :class="tab === \'lazyload\' ? \'is-active\' : \'\'" :title="all_strings.lazyload_settings_menu_item+\' \'+all_strings.lazyload_settings_menu_item" _v-5187a250="">{{all_strings.lazyload_settings_menu_item}}</a>\n </li>\n <li _v-5187a250=""><a href="#" @click="changeTab(\'exclusions\')" :class="tab === \'exclusions\' ? \'is-active\' : \'\'" :title="all_strings.settings_exclusions_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.settings_exclusions_menu_item}}</a>\n </li>\n <li _v-5187a250=""><a @click="changeTab(\'watermark\')" href="#" :class="tab === \'watermark\' ? \'is-active\' : \'\'" :title="all_strings.watermarks_menu_item+\' \'+all_strings.settings_menu_item" _v-5187a250="">{{all_strings.watermarks_menu_item}}\n <span class=" optml-beta is-normal tag is-warning" _v-5187a250="">Beta</span></a></li>\n </ul>\n </li>\n </ul>\n </aside>\n <div :class="[{ \'saving--option\' : this.$store.state.loading, \'is-tab-disabled\':isDisabled},\'is-tab-\'+tab] " class=" column" _v-5187a250="">\n <div class="subtab-content" _v-5187a250="">\n <general v-if="tab === \'general\' " @update-status="updateGlobalState" _v-5187a250=""></general>\n <compression v-if="tab === \'compression\' " _v-5187a250=""></compression>\n <watermarks v-if="tab ===\'watermark\'" _v-5187a250=""></watermarks>\n <resize v-if="tab ===\'resize\'" _v-5187a250=""></resize>\n <lazyload v-if="tab ===\'lazyload\'" _v-5187a250=""></lazyload>\n <exclusions v-if="tab ===\'exclusions\'" _v-5187a250=""></exclusions>\n </div>\n </div>\n </div>\n'},function(t,e){t.exports='\n <div class="columns is-desktop">\n\n <div class="column ">\n <div class="card">\n <app-header></app-header>\n <div class="card-content">\n <div class="content">\n <connect-layout v-if="!this.$store.state.connected"></connect-layout>\n\n <transition name="slide-fade">\n <div v-if="this.$store.state.connected && ! this.$store.state.is_loaded" id="optml-loader">\n <div class="columns">\n <div class="column">\n\n <transition name="slide-fade">\n <h4 class="has-text-centered">{{this.getProgressMessage()}}</h4>\n </transition>\n </div>\n </div>\n <div class="columns">\n <div class=" column is-vertical-center ">\n <progress id="optml-progress-bar" class="progress is-medium is-info"\n :class="\'optml-progres-\'+(Math.floor(this.loading_percent/10))"\n max="100"></progress>\n </div>\n </div>\n <iframe :src="home" style="opacity:0;" ></iframe>\n </div>\n </transition>\n <transition name="fade" mode="out-in">\n <div v-if="this.$store.state.connected && this.$store.state.is_loaded">\n <div class="tabs is-left is-boxed is-medium">\n <ul class="is-marginless optml-tabs">\n <li :class="tab === \'dashboard\' ? \'is-active\' : \'\'">\n <a @click="changeTab(\'dashboard\')" class="is-size-6-mobile">\n <span class="icon is-size-6-mobile is-size-6-tablet dashicons dashicons-admin-home"></span>\n <span class="is-size-6-mobile is-size-6-touch ">{{strings.dashboard_menu_item}}</span>\n </a>\n </li>\n <li :class="tab === \'conflicts\' ? \'is-active\' : \'\'" v-if="conflictCount > 0">\n <a @click="changeTab(\'conflicts\')" class="is-size-6-mobile">\n <span class="icon is-size-6-mobile is-size-6-tablet dashicons dashicons-warning"></span>\n <span class="is-size-6-mobile is-size-6-touch">{{strings.conflicts_menu_item}}</span>&nbsp;\n <span class="tag is-rounded is-danger">{{conflictCount}}</span>\n </a>\n </li>\n <li :class="tab === \'settings\' ? \'is-active\' : \'\'">\n <a @click="changeTab(\'settings\')" class="is-size-6-mobile ">\n <span class="icon is-size-6-mobile is-size-6-tablet dashicons dashicons-admin-settings"></span>\n <span class="is-size-6-mobile is-size-6-touch">{{strings.settings_menu_item}}</span>\n </a>\n </li>\n\n </ul>\n </div>\n\n <div class="is-tab" v-if="tab === \'dashboard\' "\n :class="remove_images ? \'no-images\' : \'\' ">\n <div class="notification is-success" v-if="strings.notice_just_activated.length > 0"\n v-html="strings.notice_just_activated"></div>\n <api-key-form></api-key-form>\n <cdn-details v-if="this.$store.state.userData"></cdn-details>\n <hr/>\n <last-images :status="fetchStatus" v-if="! remove_images"></last-images>\n </div>\n <div class="is-tab" v-if=" tab === \'settings\'">\n <options></options>\n </div>\n <div class="is-tab" v-if=" tab === \'conflicts\'">\n <conflicts></conflicts>\n </div>\n </div>\n </transition>\n\n </div>\n </div>\n\n <div class="level-right">\n <p class="level-item"><a href="https://optimole.com" target="_blank">Optimole\n v{{strings.version}}</a></p>\n <p class="level-item"><a href="https://optimole.com/terms/"\n target="_blank">{{strings.terms_menu}}</a></p>\n <p class="level-item"><a href="https://optimole.com/privacy-policy/" target="_blank">{{strings.privacy_menu}}</a>\n </p>\n <p class="level-item"><a :href="\'https://speedtest.optimole.com/?url=\' + home " target="_blank">{{strings.testdrive_menu}}</a>\n </p>\n </div>\n </div>\n </div>\n <div v-if="this.$store.state.connected && this.$store.state.userData.plan === \'free\' "\n class="column is-narrow is-hidden-desktop-only is-hidden-tablet-only is-hidden-mobile">\n <div class="card optml-upgrade">\n <div class="card-header">\n <h3 class="is-size-5 card-header-title"><span class="dashicons dashicons-chart-line"></span>\n {{strings.upgrade.title}}</h3>\n </div>\n <div class="card-content">\n <ul>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_1}}</li>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_2}}</li>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_3}}</li>\n <li><span class="dashicons dashicons-yes"></span>{{strings.upgrade.reason_4}}</li>\n </ul>\n </div>\n <div class="card-footer ">\n <div class="card-footer-item">\n <a href="https://optimole.com#pricing" target="_blank"\n class="button is-centered is-small is-success"><span\n class="dashicons dashicons-external"></span>{{strings.upgrade.cta}}</a>\n </div>\n </div>\n </div>\n </div>\n </div>\n'},function(t,e,n){"use strict";function o(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),a=o(i),r=n(97),s=o(r),l=n(6),p=o(l),c=n(99),d=o(c),m=n(100),u=o(m);a.default.use(s.default),a.default.use(p.default);var f=new s.default.Store({strict:!0,state:{isConnecting:!1,loading:!1,site_settings:optimoleDashboardApp.site_settings,connected:"yes"===optimoleDashboardApp.connection_status,is_loaded:"yes"===optimoleDashboardApp.connection_status,apiKey:optimoleDashboardApp.api_key?optimoleDashboardApp.api_key:"",apiKeyValidity:!0,connectError:"",sample_rate:{},apiError:!1,userData:optimoleDashboardApp.user_data?optimoleDashboardApp.user_data:null,optimizedImages:[],watermarks:[],conflicts:[]},mutations:d.default,actions:u.default});e.default=f},function(t,e,n){"use strict";function o(t){z&&(t._devtoolHook=z,z.emit("vuex:init",t),z.on("vuex:travel-to-state",function(e){t.replaceState(e)}),t.subscribe(function(t,e){z.emit("vuex:mutation",t,e)}))}function i(t,e){Object.keys(t).forEach(function(n){return e(t[n],n)})}function a(t){return null!==t&&"object"==typeof t}function r(t){return t&&"function"==typeof t.then}function s(t,e,n){if(e.update(n),n.modules)for(var o in n.modules){if(!e.getChild(o))return;s(t.concat(o),e.getChild(o),n.modules[o])}}function l(t,e){return e.indexOf(t)<0&&e.push(t),function(){var n=e.indexOf(t);n>-1&&e.splice(n,1)}}function p(t,e){t._actions=Object.create(null),t._mutations=Object.create(null),t._wrappedGetters=Object.create(null),t._modulesNamespaceMap=Object.create(null);var n=t.state;d(t,n,[],t._modules.root,!0),c(t,n,e)}function c(t,e,n){var o=t._vm;t.getters={};var a=t._wrappedGetters,r={};i(a,function(e,n){r[n]=function(){return e(t)},Object.defineProperty(t.getters,n,{get:function(){return t._vm[n]},enumerable:!0})});var s=$.config.silent;$.config.silent=!0,t._vm=new $({data:{$$state:e},computed:r}),$.config.silent=s,t.strict&&v(t),o&&(n&&t._withCommit(function(){o._data.$$state=null}),$.nextTick(function(){return o.$destroy()}))}function d(t,e,n,o,i){var a=!n.length,r=t._modules.getNamespace(n);if(o.namespaced&&(t._modulesNamespaceMap[r]=o),!a&&!i){var s=g(e,n.slice(0,-1)),l=n[n.length-1];t._withCommit(function(){$.set(s,l,o.state)})}var p=o.context=m(t,r,n);o.forEachMutation(function(e,n){f(t,r+n,e,p)}),o.forEachAction(function(e,n){var o=e.root?n:r+n,i=e.handler||e;h(t,o,i,p)}),o.forEachGetter(function(e,n){b(t,r+n,e,p)}),o.forEachChild(function(o,a){d(t,e,n.concat(a),o,i)})}function m(t,e,n){var o=""===e,i={dispatch:o?t.dispatch:function(n,o,i){var a=x(n,o,i),r=a.payload,s=a.options,l=a.type;return s&&s.root||(l=e+l),t.dispatch(l,r)},commit:o?t.commit:function(n,o,i){var a=x(n,o,i),r=a.payload,s=a.options,l=a.type;s&&s.root||(l=e+l),t.commit(l,r,s)}};return Object.defineProperties(i,{getters:{get:o?function(){return t.getters}:function(){return u(t,e)}},state:{get:function(){return g(t.state,n)}}}),i}function u(t,e){var n={},o=e.length;return Object.keys(t.getters).forEach(function(i){if(i.slice(0,o)===e){var a=i.slice(o);Object.defineProperty(n,a,{get:function(){return t.getters[i]},enumerable:!0})}}),n}function f(t,e,n,o){(t._mutations[e]||(t._mutations[e]=[])).push(function(e){n.call(t,o.state,e)})}function h(t,e,n,o){(t._actions[e]||(t._actions[e]=[])).push(function(e,i){var a=n.call(t,{dispatch:o.dispatch,commit:o.commit,getters:o.getters,state:o.state,rootGetters:t.getters,rootState:t.state},e,i);return r(a)||(a=Promise.resolve(a)),t._devtoolHook?a.catch(function(e){throw t._devtoolHook.emit("vuex:error",e),e}):a})}function b(t,e,n,o){t._wrappedGetters[e]||(t._wrappedGetters[e]=function(t){return n(o.state,o.getters,t.state,t.getters)})}function v(t){t._vm.$watch(function(){return this._data.$$state},function(){},{deep:!0,sync:!0})}function g(t,e){return e.length?e.reduce(function(t,e){return t[e]},t):t}function x(t,e,n){return a(t)&&t.type&&(n=e,e=t,t=t.type),{type:t,payload:e,options:n}}function y(t){$&&t===$||($=t,C($))}function w(t){return Array.isArray(t)?t.map(function(t){return{key:t,val:t}}):Object.keys(t).map(function(e){return{key:e,val:t[e]}})}function k(t){return function(e,n){return"string"!=typeof e?(n=e,e=""):"/"!==e.charAt(e.length-1)&&(e+="/"),t(e,n)}}function _(t,e,n){return t._modulesNamespaceMap[n]}Object.defineProperty(e,"__esModule",{value:!0}),n.d(e,"Store",function(){return j}),n.d(e,"install",function(){return y}),n.d(e,"mapState",function(){return T}),n.d(e,"mapMutations",function(){return D}),n.d(e,"mapGetters",function(){return P}),n.d(e,"mapActions",function(){return R}),n.d(e,"createNamespacedHelpers",function(){return M});/**
22
  * vuex v2.5.0
23
  * (c) 2017 Evan You
24
  * @license MIT
inc/admin.php CHANGED
@@ -62,6 +62,7 @@ class Optml_Admin {
62
  $bgclasses = empty( $bgclasses ) ? '' : sprintf( '"%s"', implode( '","', (array) $bgclasses ) );
63
  $watcher_classes = empty( $watcher_classes ) ? '' : sprintf( '"%s"', implode( '","', (array) $watcher_classes ) );
64
  $default_network = ( $this->settings->get( 'network_optimization' ) === 'enabled' );
 
65
  $output = sprintf(
66
  '
67
  <style type="text/css">
@@ -89,6 +90,7 @@ class Optml_Admin {
89
  backgroundReplaceClasses: [%s],
90
  watchClasses: [%s],
91
  network_optimizations: %s,
 
92
  quality: %d
93
  }
94
 
@@ -101,6 +103,7 @@ class Optml_Admin {
101
  $bgclasses,
102
  $watcher_classes,
103
  defined( 'OPTML_NETWORK_ON' ) && constant( 'OPTML_NETWORK_ON' ) ? ( OPTML_NETWORK_ON ? 'true' : 'false' ) : ( $default_network ? 'true' : 'false' ),
 
104
  $this->settings->get_numeric_quality()
105
  );
106
  echo $output;
@@ -246,7 +249,8 @@ class Optml_Admin {
246
  if ( $service_data['plan'] !== 'free' ) {
247
  return false;
248
  }
249
- if ( $service_data['usage'] < 800 ) {
 
250
  return false;
251
  }
252
 
@@ -372,7 +376,9 @@ class Optml_Admin {
372
  * @return array Altered hints array.
373
  */
374
  public function add_dns_prefetch( $hints, $relation_type ) {
375
- if ( 'dns-prefetch' !== $relation_type ) {
 
 
376
  return $hints;
377
  }
378
  if ( ! $this->settings->is_connected() ) {
@@ -381,10 +387,10 @@ class Optml_Admin {
381
  if ( ! $this->settings->is_enabled() ) {
382
  return $hints;
383
  }
384
- $hints[] = sprintf( '//%s', $this->settings->get_cdn_url() );
385
 
386
- if ( ! $this->settings->use_lazyload() ) {
387
- $hints[] = sprintf( '//%s', OPTML_JS_CDN );
388
  }
389
 
390
  return $hints;
@@ -503,11 +509,13 @@ class Optml_Admin {
503
  ' <a href="https://dashboard.optimole.com/register" target="_blank">optimole.com</a>'
504
  ),
505
  'account_needed_subtitle_1' => sprintf(
506
- __( 'You will get access to our image optimization service for %1$sFREE%2$s in the limit of %3$s1GB%4$s traffic per month. ', 'optimole-wp' ),
507
  '<strong>',
508
  '</strong>',
509
  '<strong>',
510
- '</strong>'
 
 
511
  ),
512
  'account_needed_subtitle_2' => sprintf(
513
  __( 'Bonus, if you dont use a CDN, we got you covered, we will serve the images using CloudFront CDN.', 'optimole-wp' )
@@ -548,6 +556,8 @@ The root cause might be either a security plugin which blocks this feature or so
548
  'toggle_ab_item' => __( 'Admin bar status', 'optimole-wp' ),
549
  'toggle_lazyload' => __( 'Scale images & Lazy load', 'optimole-wp' ),
550
  'enable_image_replace' => __( 'Enable image replacement', 'optimole-wp' ),
 
 
551
  'enable_network_opt_title' => __( 'Enable network based optimizations', 'optimole-wp' ),
552
  'enable_resize_smart_title' => __( 'Enable Smart Cropping', 'optimole-wp' ),
553
  'enable_lazyload_placeholder_title' => __( 'Enable generic lazyload placeholder', 'optimole-wp' ),
62
  $bgclasses = empty( $bgclasses ) ? '' : sprintf( '"%s"', implode( '","', (array) $bgclasses ) );
63
  $watcher_classes = empty( $watcher_classes ) ? '' : sprintf( '"%s"', implode( '","', (array) $watcher_classes ) );
64
  $default_network = ( $this->settings->get( 'network_optimization' ) === 'enabled' );
65
+ $retina_ready = ! ( $this->settings->get( 'retina_images' ) === 'enabled' );
66
  $output = sprintf(
67
  '
68
  <style type="text/css">
90
  backgroundReplaceClasses: [%s],
91
  watchClasses: [%s],
92
  network_optimizations: %s,
93
+ ignoreDpr: %s,
94
  quality: %d
95
  }
96
 
103
  $bgclasses,
104
  $watcher_classes,
105
  defined( 'OPTML_NETWORK_ON' ) && constant( 'OPTML_NETWORK_ON' ) ? ( OPTML_NETWORK_ON ? 'true' : 'false' ) : ( $default_network ? 'true' : 'false' ),
106
+ $retina_ready ? 'true' : 'false',
107
  $this->settings->get_numeric_quality()
108
  );
109
  echo $output;
249
  if ( $service_data['plan'] !== 'free' ) {
250
  return false;
251
  }
252
+ $visitors = isset( $service_data['visitors_limit'] ) ? (int) $service_data['visitors_limit'] : 0;
253
+ if ( $service_data['usage'] < 800 && $visitors === 0 ) {
254
  return false;
255
  }
256
 
376
  * @return array Altered hints array.
377
  */
378
  public function add_dns_prefetch( $hints, $relation_type ) {
379
+ if ( 'dns-prefetch' !== $relation_type &&
380
+ 'preconnect' !== $relation_type
381
+ ) {
382
  return $hints;
383
  }
384
  if ( ! $this->settings->is_connected() ) {
387
  if ( ! $this->settings->is_enabled() ) {
388
  return $hints;
389
  }
390
+ $hints[] = sprintf( 'https://%s', $this->settings->get_cdn_url() );
391
 
392
+ if ( $this->settings->use_lazyload() ) {
393
+ $hints[] = sprintf( 'https://%s', OPTML_JS_CDN );
394
  }
395
 
396
  return $hints;
509
  ' <a href="https://dashboard.optimole.com/register" target="_blank">optimole.com</a>'
510
  ),
511
  'account_needed_subtitle_1' => sprintf(
512
+ __( 'You will get access to our image optimization service for %1$sFREE%2$s in the limit of %3$s5k%4$s %5$svisitors%6$s per month. ', 'optimole-wp' ),
513
  '<strong>',
514
  '</strong>',
515
  '<strong>',
516
+ '</strong>',
517
+ '<a href="https://docs.optimole.com/article/1134-how-optimole-counts-the-number-of-visitors" target="_blank">',
518
+ '</a>'
519
  ),
520
  'account_needed_subtitle_2' => sprintf(
521
  __( 'Bonus, if you dont use a CDN, we got you covered, we will serve the images using CloudFront CDN.', 'optimole-wp' )
556
  'toggle_ab_item' => __( 'Admin bar status', 'optimole-wp' ),
557
  'toggle_lazyload' => __( 'Scale images & Lazy load', 'optimole-wp' ),
558
  'enable_image_replace' => __( 'Enable image replacement', 'optimole-wp' ),
559
+ 'enable_retina_title' => __( 'Enable Retina images', 'optimole-wp' ),
560
+ 'enable_retina_desc' => __( 'Deliver retina ready images to your visitors', 'optimole-wp' ),
561
  'enable_network_opt_title' => __( 'Enable network based optimizations', 'optimole-wp' ),
562
  'enable_resize_smart_title' => __( 'Enable Smart Cropping', 'optimole-wp' ),
563
  'enable_lazyload_placeholder_title' => __( 'Enable generic lazyload placeholder', 'optimole-wp' ),
inc/api.php CHANGED
@@ -139,8 +139,9 @@ final class Optml_Api {
139
  'optml/v1/user/register-remote',
140
  'POST',
141
  array(
142
- 'email' => $email,
143
- 'site' => get_home_url(),
 
144
  )
145
  );
146
  }
139
  'optml/v1/user/register-remote',
140
  'POST',
141
  array(
142
+ 'email' => $email,
143
+ 'version' => OPTML_VERSION,
144
+ 'site' => get_home_url(),
145
  )
146
  );
147
  }
inc/compatibilities/cache_enabler.php ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Class Optml_cache_enabler.
5
+ *
6
+ * @reason Cache_enabler stores the content of the page before Optimole starts replacing url's
7
+ */
8
+ class Optml_cache_enabler extends Optml_compatibility {
9
+
10
+
11
+ /**
12
+ * Should we load the integration logic.
13
+ *
14
+ * @return bool Should we load.
15
+ */
16
+ function should_load() {
17
+ include_once( ABSPATH . 'wp-admin/includes/plugin.php' );
18
+
19
+ return is_plugin_active( 'cache-enabler/cache-enabler.php' );
20
+ }
21
+
22
+ /**
23
+ * Register integration details.
24
+ */
25
+ public function register() {
26
+ add_filter( 'cache_enabler_before_store', [ Optml_Main::instance()->manager, 'replace_content' ], PHP_INT_MAX, 1 );
27
+ }
28
+
29
+ }
inc/lazyload_replacer.php CHANGED
@@ -200,6 +200,8 @@ final class Optml_Lazyload_Replacer extends Optml_App_Replacer {
200
  if ( false === Optml_Filters::should_do_image( $url, self::$filters[ Optml_Settings::FILTER_TYPE_LAZYLOAD ][ Optml_Settings::FILTER_FILENAME ] ) ) {
201
  return false;
202
  }
 
 
203
  $type = wp_check_filetype(
204
  basename( $url ),
205
  Optml_Config::$extensions
200
  if ( false === Optml_Filters::should_do_image( $url, self::$filters[ Optml_Settings::FILTER_TYPE_LAZYLOAD ][ Optml_Settings::FILTER_FILENAME ] ) ) {
201
  return false;
202
  }
203
+ $url = strtok( $url, '?' );
204
+
205
  $type = wp_check_filetype(
206
  basename( $url ),
207
  Optml_Config::$extensions
inc/manager.php CHANGED
@@ -64,6 +64,7 @@ final class Optml_Manager {
64
  'metaslider',
65
  'essential_grid',
66
  'yith_quick_view',
 
67
  );
68
 
69
  /**
@@ -128,7 +129,7 @@ final class Optml_Manager {
128
  if ( ( is_admin() && ! self::is_ajax_request() ) || ! $this->settings->is_connected() || ! $this->settings->is_enabled() || is_customize_preview() ) {
129
  return false; // @codeCoverageIgnore
130
  }
131
- if ( array_key_exists( 'preview', $_GET ) && 'true' == $_GET['preview'] ) {
132
  return false; // @codeCoverageIgnore
133
  }
134
 
@@ -138,7 +139,10 @@ final class Optml_Manager {
138
  if ( array_key_exists( 'elementor-preview', $_GET ) && ! empty( $_GET['elementor-preview'] ) ) {
139
  return false; // @codeCoverageIgnore
140
  }
141
- if ( array_key_exists( 'ct_builder', $_GET ) && $_GET['ct_builder'] == 'true' ) {
 
 
 
142
  return false; // @codeCoverageIgnore
143
  }
144
  if ( array_key_exists( 'context', $_GET ) && $_GET['context'] == 'edit' ) {
@@ -275,7 +279,7 @@ final class Optml_Manager {
275
  * @return array array of urls.
276
  */
277
  public function extract_urls_from_json( $content ) {
278
- $regex = '/(?<!(=|\\\\)(?:"|\'|"))(?:http(?:s?):)(?:[\/\\\\|.|\w|\s|-])*\.(?:' . implode( '|', array_keys( Optml_Config::$extensions ) ) . ')(?:\??[\w|=|&|\-|\.|:]*)/';
279
  preg_match_all(
280
  $regex,
281
  $content,
@@ -296,7 +300,8 @@ final class Optml_Manager {
296
 
297
  $urls = array_map(
298
  function ( $value ) {
299
- return rtrim( html_entity_decode( $value ), '\\";\'' );
 
300
  },
301
  $urls
302
  );
@@ -324,6 +329,7 @@ final class Optml_Manager {
324
  $urls = array_map(
325
  function ( $url ) {
326
  $is_slashed = strpos( $url, '\/' ) !== false;
 
327
  $new_url = apply_filters( 'optml_content_url', $url );
328
 
329
  return $is_slashed ? addcslashes( $new_url, '/' ) : $new_url;
@@ -481,7 +487,7 @@ final class Optml_Manager {
481
  * @return array
482
  */
483
  public function extract_image_urls_from_content( $content ) {
484
- $regex = '/(?:http(?:s?):)(?:[\/\\\\|.|\w|\s|-])*\.(?:' . implode( '|', array_keys( Optml_Config::$extensions ) ) . ')(?:\?{1}[\w|=|&|\-|\.|:|;]*)?/';
485
  preg_match_all(
486
  $regex,
487
  $content,
64
  'metaslider',
65
  'essential_grid',
66
  'yith_quick_view',
67
+ 'cache_enabler',
68
  );
69
 
70
  /**
129
  if ( ( is_admin() && ! self::is_ajax_request() ) || ! $this->settings->is_connected() || ! $this->settings->is_enabled() || is_customize_preview() ) {
130
  return false; // @codeCoverageIgnore
131
  }
132
+ if ( array_key_exists( 'preview', $_GET ) && ! empty( $_GET['preview'] ) ) {
133
  return false; // @codeCoverageIgnore
134
  }
135
 
139
  if ( array_key_exists( 'elementor-preview', $_GET ) && ! empty( $_GET['elementor-preview'] ) ) {
140
  return false; // @codeCoverageIgnore
141
  }
142
+ if ( array_key_exists( 'ct_builder', $_GET ) && ! empty( $_GET['ct_builder'] ) ) {
143
+ return false; // @codeCoverageIgnore
144
+ }
145
+ if ( array_key_exists( 'et_fb', $_GET ) && ! empty( $_GET['et_fb'] ) ) {
146
  return false; // @codeCoverageIgnore
147
  }
148
  if ( array_key_exists( 'context', $_GET ) && $_GET['context'] == 'edit' ) {
279
  * @return array array of urls.
280
  */
281
  public function extract_urls_from_json( $content ) {
282
+ $regex = '/(?<!(=|\\\\)(?:"|\'|"))(?:http(?:s?):)(?:[\/\\\\|.|\w|\s|@|%|-])*\.(?:' . implode( '|', array_keys( Optml_Config::$extensions ) ) . ')(?:\??[\w|=|&|\-|\.|:]*)/';
283
  preg_match_all(
284
  $regex,
285
  $content,
300
 
301
  $urls = array_map(
302
  function ( $value ) {
303
+ $value = str_replace( '&quot;', '', $value );
304
+ return rtrim( $value, '\\";\'' );
305
  },
306
  $urls
307
  );
329
  $urls = array_map(
330
  function ( $url ) {
331
  $is_slashed = strpos( $url, '\/' ) !== false;
332
+ $url = html_entity_decode( $url );
333
  $new_url = apply_filters( 'optml_content_url', $url );
334
 
335
  return $is_slashed ? addcslashes( $new_url, '/' ) : $new_url;
487
  * @return array
488
  */
489
  public function extract_image_urls_from_content( $content ) {
490
+ $regex = '/(?:http(?:s?):)(?:[\/\\\\|.|\w|\s|@|%|-])*\.(?:' . implode( '|', array_keys( Optml_Config::$extensions ) ) . ')(?:\?{1}[\w|=|&|\-|\.|:|;]*)?/';
491
  preg_match_all(
492
  $regex,
493
  $content,
inc/settings.php CHANGED
@@ -24,6 +24,7 @@ class Optml_Settings {
24
  'lazyload' => 'disabled',
25
  'network_optimization' => 'disabled',
26
  'lazyload_placeholder' => 'disabled',
 
27
  'resize_smart' => 'disabled',
28
  'filters' => [],
29
  'quality' => 'auto',
@@ -108,6 +109,7 @@ class Optml_Settings {
108
  case 'image_replacer':
109
  case 'network_optimization':
110
  case 'lazyload_placeholder':
 
111
  case 'resize_smart':
112
  $sanitized_value = $this->to_map_values( $value, array( 'enabled', 'disabled' ), 'enabled' );
113
  break;
@@ -254,6 +256,7 @@ class Optml_Settings {
254
  'admin_bar_item' => $this->get( 'admin_bar_item' ),
255
  'lazyload' => $this->get( 'lazyload' ),
256
  'network_optimization' => $this->get( 'network_optimization' ),
 
257
  'lazyload_placeholder' => $this->get( 'lazyload_placeholder' ),
258
  'resize_smart' => $this->get( 'resize_smart' ),
259
  'image_replacer' => $this->get( 'image_replacer' ),
24
  'lazyload' => 'disabled',
25
  'network_optimization' => 'disabled',
26
  'lazyload_placeholder' => 'disabled',
27
+ 'retina_images' => 'disabled',
28
  'resize_smart' => 'disabled',
29
  'filters' => [],
30
  'quality' => 'auto',
109
  case 'image_replacer':
110
  case 'network_optimization':
111
  case 'lazyload_placeholder':
112
+ case 'retina_images':
113
  case 'resize_smart':
114
  $sanitized_value = $this->to_map_values( $value, array( 'enabled', 'disabled' ), 'enabled' );
115
  break;
256
  'admin_bar_item' => $this->get( 'admin_bar_item' ),
257
  'lazyload' => $this->get( 'lazyload' ),
258
  'network_optimization' => $this->get( 'network_optimization' ),
259
+ 'retina_images' => $this->get( 'retina_images' ),
260
  'lazyload_placeholder' => $this->get( 'lazyload_placeholder' ),
261
  'resize_smart' => $this->get( 'resize_smart' ),
262
  'image_replacer' => $this->get( 'image_replacer' ),
optimole-wp.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * Plugin Name: Image optimization service by Optimole
4
  * Description: Complete handling of your website images.
5
- * Version: 2.1.1
6
  * Author: Optimole
7
  * Author URI: https://optimole.com
8
  * License: GPL-2.0+
@@ -75,7 +75,7 @@ function optml() {
75
  define( 'OPTML_URL', plugin_dir_url( __FILE__ ) );
76
  define( 'OPTML_JS_CDN', 'd5jmkjjpb7yfg.cloudfront.net' );
77
  define( 'OPTML_PATH', plugin_dir_path( __FILE__ ) );
78
- define( 'OPTML_VERSION', '2.1.1' );
79
  define( 'OPTML_NAMESPACE', 'optml' );
80
  define( 'OPTML_BASEFILE', __FILE__ );
81
  // Fallback for old PHP versions when this constant is not defined.
2
  /**
3
  * Plugin Name: Image optimization service by Optimole
4
  * Description: Complete handling of your website images.
5
+ * Version: 2.1.2
6
  * Author: Optimole
7
  * Author URI: https://optimole.com
8
  * License: GPL-2.0+
75
  define( 'OPTML_URL', plugin_dir_url( __FILE__ ) );
76
  define( 'OPTML_JS_CDN', 'd5jmkjjpb7yfg.cloudfront.net' );
77
  define( 'OPTML_PATH', plugin_dir_path( __FILE__ ) );
78
+ define( 'OPTML_VERSION', '2.1.2' );
79
  define( 'OPTML_NAMESPACE', 'optml' );
80
  define( 'OPTML_BASEFILE', __FILE__ );
81
  // Fallback for old PHP versions when this constant is not defined.
readme.txt CHANGED
@@ -7,7 +7,7 @@ Requires PHP: 5.4
7
  License: GPLv3
8
  License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
9
 
10
- Improve your site loading speed by delivering optimized WebP image for each device. Lazy load included.
11
 
12
  == Description ==
13
 
@@ -34,21 +34,21 @@ So, if you have been looking for one plugin that provides lazy loading with a CD
34
 
35
 
36
  **How does it do all these great things?**
37
- Optimole's format based optimization is handled in the cloud on a case-by-case basis. Once you have the plugin installed, Optimole will replace all of your image URLs with cloud-based URLs. We don't replace any images on your website.
38
  When the image is requested, Optimole will apply the specific transformations required by the device and deliver it to your visitors. This means every image is perfectly sized for every device. The final result will be cached for a month to ensure ongoing fast delivery and more site speed.
39
 
40
  **How many images can be optimized?**
41
- With the basic plan, you will be able to optimize 1GB of images per month with 5GB viewing bandwidth. All delivered from 7 edge locations all over the world.
42
  Better yet. The free version is fully functional and includes all of the following great features.
43
 
44
  **Format Based Optimization**
45
- Our cloud-based transformation process means we can offer optimizations based on the format. If your visitor is using a WebP capable browser, then Optimole will convert to WebP the image and send it to their device.
46
 
47
  **Image Optimization**
48
  Our algorithms crunch the numbers to provide the best lossy or lossless optimization for the best-looking image at the smallest size.
49
 
50
  **Exact Used Size**
51
- Optimole will use just one image and resize it delivering a responsive image to fit perfectly on your visitors' devices. No more awkward guesses at potential screen widths.
52
 
53
  **Retina Support**
54
  Optimole can detect Retina screens and deliver an image with the perfect Digital Pixel Ratio (DPR).
@@ -57,13 +57,13 @@ Optimole can detect Retina screens and deliver an image with the perfect Digital
57
  If you'd like to keep the most interesting part of an image; then you can enable smart cropping to help keep the image well sized without losing focus.
58
 
59
  **No Content Shifting**
60
- The lazy load option is perfectly sized for the container to provide a seamless viewing experience without any content shifting.
61
 
62
  **Watermarks**
63
  Who has time for adding watermarks? Optimole will do the hard work for you. Just set it up and pick your preferred location and Optimole will add the watermark to all of your future images.
64
 
65
  **Downgrade Quality For Slower Connections**
66
- Optimole provides an option to downgrade the image quality when it detects a slower network. Make the images up to 40% smaller with this neat feature to help visitors in a bottleneck.
67
  **Compatibility**
68
  Optimole loves page builders and has unique tweaks to solve image replacements. It also has full compatibility with the new block editor in WordPress 5.0
69
 
@@ -88,6 +88,26 @@ Premium users will be able to optimize 10GB images per month with a 50GB viewing
88
 
89
  == Changelog ==
90
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  #### [Version 2.1.1](https://github.com/Codeinwp/optimole-wp/compare/v2.1.0...v2.1.1) (2019-07-22)
92
 
93
  * **Bug Fixes**
7
  License: GPLv3
8
  License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
9
 
10
+ Automatically compress, optimize and serve scaled images along with next-gen WebP all from CloudFront CDN. Lazy load included
11
 
12
  == Description ==
13
 
34
 
35
 
36
  **How does it do all these great things?**
37
+ Optimole's format based optimization is handled in the cloud on a case-by-case basis. Once you have the plugin installed, Optimole will replace all of your image URLs with cloud-based URLs. We don't replace any images on your website, we compress images on the fly.
38
  When the image is requested, Optimole will apply the specific transformations required by the device and deliver it to your visitors. This means every image is perfectly sized for every device. The final result will be cached for a month to ensure ongoing fast delivery and more site speed.
39
 
40
  **How many images can be optimized?**
41
+ With the basic plan, you will be able to optimize unmetered number of images for up to 5k monthly active [users](https://docs.optimole.com/article/1134-how-optimole-counts-the-number-of-visitors). All delivered from 7 edge locations all over the world.
42
  Better yet. The free version is fully functional and includes all of the following great features.
43
 
44
  **Format Based Optimization**
45
+ Our cloud-based transformation process means we can optimize images based on the format as well as serve images in next-gen formats. If your visitor is using a WebP capable browser, then Optimole will convert to WebP the image and send it to their device.
46
 
47
  **Image Optimization**
48
  Our algorithms crunch the numbers to provide the best lossy or lossless optimization for the best-looking image at the smallest size.
49
 
50
  **Exact Used Size**
51
+ Optimole will use just one image and resize it delivering a responsive image to fit perfectly on your visitors' devices. No more awkward guesses at potential screen widths. Serve scaled images instantly.
52
 
53
  **Retina Support**
54
  Optimole can detect Retina screens and deliver an image with the perfect Digital Pixel Ratio (DPR).
57
  If you'd like to keep the most interesting part of an image; then you can enable smart cropping to help keep the image well sized without losing focus.
58
 
59
  **No Content Shifting**
60
+ The lazy load option defer offscreen images and is perfectly sized for the container to provide a seamless viewing experience without any content shifting.
61
 
62
  **Watermarks**
63
  Who has time for adding watermarks? Optimole will do the hard work for you. Just set it up and pick your preferred location and Optimole will add the watermark to all of your future images.
64
 
65
  **Downgrade Quality For Slower Connections**
66
+ Optimole provides an option to downgrade the image quality when it detects a slower network. Efficiently encode images by making up to 40% smaller with this neat feature to help visitors in a bottleneck.
67
  **Compatibility**
68
  Optimole loves page builders and has unique tweaks to solve image replacements. It also has full compatibility with the new block editor in WordPress 5.0
69
 
88
 
89
  == Changelog ==
90
 
91
+ #### [Version 2.1.2](https://github.com/Codeinwp/optimole-wp/compare/v2.1.1...v2.1.2) (2019-09-25)
92
+
93
+ * **Bug Fixes**
94
+ * adds preconnect hint for image domain and js library domain ([11b697d](https://github.com/Codeinwp/optimole-wp/commit/11b697d))
95
+ * compatibility with cache_enabler [#136](https://github.com/Codeinwp/optimole-wp/issues/136) ([483262f](https://github.com/Codeinwp/optimole-wp/commit/483262f))
96
+ * improve checking for editing context when the replacement should be off ([e7510f6](https://github.com/Codeinwp/optimole-wp/commit/e7510f6))
97
+ * lazyload query urls part of [#145](https://github.com/Codeinwp/optimole-wp/issues/145) ([a048f68](https://github.com/Codeinwp/optimole-wp/commit/a048f68))
98
+ * preload lazyload js file when lazyload setting is active ([828e1de](https://github.com/Codeinwp/optimole-wp/commit/828e1de))
99
+ * remove replacement on Divi theme builder ([86ab6d2](https://github.com/Codeinwp/optimole-wp/commit/86ab6d2))
100
+ * replacement was not working for urls with special chars ([48a4966](https://github.com/Codeinwp/optimole-wp/commit/48a4966))
101
+ * replacing url's with query strings without the query in the modified url [#141](https://github.com/Codeinwp/optimole-wp/issues/141) ([0025559](https://github.com/Codeinwp/optimole-wp/commit/0025559))
102
+ * replacing url's with regex in <a> tags [#141](https://github.com/Codeinwp/optimole-wp/issues/141) ([4b2264f](https://github.com/Codeinwp/optimole-wp/commit/4b2264f))
103
+ * resource hints condition check [skip release] ([a0f30e7](https://github.com/Codeinwp/optimole-wp/commit/a0f30e7))
104
+
105
+ * **Features**
106
+ * adds retina settings control which enable/disable serving of HiDPI images ([73c8712](https://github.com/Codeinwp/optimole-wp/commit/73c8712))
107
+ * adds visitors based plan integration ([ea07a94](https://github.com/Codeinwp/optimole-wp/commit/ea07a94))
108
+
109
+
110
+
111
  #### [Version 2.1.1](https://github.com/Codeinwp/optimole-wp/compare/v2.1.0...v2.1.1) (2019-07-22)
112
 
113
  * **Bug Fixes**
themeisle-hash.json CHANGED
@@ -1 +1 @@
1
- {"optimole-wp.php":"15bb62342a4580625cd85ab5357abfda"}
1
+ {"optimole-wp.php":"a7cfb612866660d6063b0ef494f43263"}
vendor/autoload.php CHANGED
@@ -4,4 +4,4 @@
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
- return ComposerAutoloaderInit47db44a383439f35ebbd40e77d2e5724::getLoader();
4
 
5
  require_once __DIR__ . '/composer/autoload_real.php';
6
 
7
+ return ComposerAutoloaderInit86d4bbcb0c93c7a69621c7a526c43e6f::getLoader();
vendor/codeinwp/themeisle-sdk/CHANGELOG.md CHANGED
@@ -1,3 +1,119 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  ## [3.0.4](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.3...v3.0.4) (2019-01-28)
2
 
3
 
1
+ ## [3.1.6](https://github.com/Codeinwp/themeisle-sdk/compare/v3.1.5...v3.1.6) (2019-09-24)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * remove license related options when deactivated ([02cd6ce](https://github.com/Codeinwp/themeisle-sdk/commit/02cd6ce))
7
+ * remove license related options when deactivated ([d3c1a1f](https://github.com/Codeinwp/themeisle-sdk/commit/d3c1a1f))
8
+
9
+ ## [3.1.5](https://github.com/Codeinwp/themeisle-sdk/compare/v3.1.4...v3.1.5) (2019-09-11)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * allow unloading certain module features ([2a2559a](https://github.com/Codeinwp/themeisle-sdk/commit/2a2559a))
15
+ * license activation workflow, show error message when failed to a… ([ade795c](https://github.com/Codeinwp/themeisle-sdk/commit/ade795c))
16
+ * license activation workflow, show error message when failed to activate ([2f5cbae](https://github.com/Codeinwp/themeisle-sdk/commit/2f5cbae))
17
+
18
+ ## [3.1.4](https://github.com/Codeinwp/themeisle-sdk/compare/v3.1.3...v3.1.4) (2019-08-23)
19
+
20
+
21
+ ### Bug Fixes
22
+
23
+ * license key was missing on get_version call ([365cde6](https://github.com/Codeinwp/themeisle-sdk/commit/365cde6))
24
+ * license key was missing on get_version call ([c02f225](https://github.com/Codeinwp/themeisle-sdk/commit/c02f225))
25
+
26
+ ## [3.1.3](https://github.com/Codeinwp/themeisle-sdk/compare/v3.1.2...v3.1.3) (2019-08-20)
27
+
28
+
29
+ ### Bug Fixes
30
+
31
+ * license deactivation behaviour https://github.com/Codeinwp/visua… ([59c4afe](https://github.com/Codeinwp/themeisle-sdk/commit/59c4afe))
32
+ * license deactivation behaviour https://github.com/Codeinwp/visualizer-pro/issues/192 ([f641e18](https://github.com/Codeinwp/themeisle-sdk/commit/f641e18))
33
+
34
+ ## [3.1.2](https://github.com/Codeinwp/themeisle-sdk/compare/v3.1.1...v3.1.2) (2019-08-12)
35
+
36
+
37
+ ### Bug Fixes
38
+
39
+ * phpunit test case ([efe851c](https://github.com/Codeinwp/themeisle-sdk/commit/efe851c))
40
+ * url format for license endpoint, improve changelog handling and license checks ([a492c68](https://github.com/Codeinwp/themeisle-sdk/commit/a492c68))
41
+
42
+ ## [3.1.1](https://github.com/Codeinwp/themeisle-sdk/compare/v3.1.0...v3.1.1) (2019-08-08)
43
+
44
+
45
+ ### Bug Fixes
46
+
47
+ * adds is_file for file existence check ([d1205c4](https://github.com/Codeinwp/themeisle-sdk/commit/d1205c4))
48
+ * adds is_file for file existence check ([be119c1](https://github.com/Codeinwp/themeisle-sdk/commit/be119c1))
49
+
50
+ # [3.1.0](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.10...v3.1.0) (2019-08-05)
51
+
52
+
53
+ ### Bug Fixes
54
+
55
+ * adds extra comments for rest of the options, fix [#64](https://github.com/Codeinwp/themeisle-sdk/issues/64) ([018b22f](https://github.com/Codeinwp/themeisle-sdk/commit/018b22f))
56
+ * hide license key when active under a password mask, fix [#67](https://github.com/Codeinwp/themeisle-sdk/issues/67) ([c0633c2](https://github.com/Codeinwp/themeisle-sdk/commit/c0633c2))
57
+ * new uninstall feedback popup issues ([5bda4bd](https://github.com/Codeinwp/themeisle-sdk/commit/5bda4bd))
58
+ * phpcs indentation errors ([d59ed4f](https://github.com/Codeinwp/themeisle-sdk/commit/d59ed4f))
59
+ * undefined notices on license check, fix [#60](https://github.com/Codeinwp/themeisle-sdk/issues/60) ([7f56a97](https://github.com/Codeinwp/themeisle-sdk/commit/7f56a97))
60
+ * uninstall feedback popup placement [[#61](https://github.com/Codeinwp/themeisle-sdk/issues/61)] ([1102d6c](https://github.com/Codeinwp/themeisle-sdk/commit/1102d6c))
61
+
62
+
63
+ ### Features
64
+
65
+ * new product feedback popup ([f0dbab3](https://github.com/Codeinwp/themeisle-sdk/commit/f0dbab3))
66
+ * new uninstall feedback form for themes ([8a29f21](https://github.com/Codeinwp/themeisle-sdk/commit/8a29f21))
67
+
68
+ ## [3.0.10](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.9...v3.0.10) (2019-07-16)
69
+
70
+
71
+ ### Bug Fixes
72
+
73
+ * compatibility with lower PHP versions ([065ac8e](https://github.com/Codeinwp/themeisle-sdk/commit/065ac8e))
74
+ * not loading licenser when SDK comes from theme [[#62](https://github.com/Codeinwp/themeisle-sdk/issues/62)] ([b706ca7](https://github.com/Codeinwp/themeisle-sdk/commit/b706ca7))
75
+ * not loading licenser when SDK comes from theme [[#65](https://github.com/Codeinwp/themeisle-sdk/issues/65) ([419d8e6](https://github.com/Codeinwp/themeisle-sdk/commit/419d8e6))
76
+ * preserve loaded when adding the licenser one ([cd50434](https://github.com/Codeinwp/themeisle-sdk/commit/cd50434))
77
+
78
+ ## [3.0.9](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.8...v3.0.9) (2019-06-26)
79
+
80
+
81
+ ### Bug Fixes
82
+
83
+ * adds new icon for dashboard widget ([de78068](https://github.com/Codeinwp/themeisle-sdk/commit/de78068))
84
+ * anchor element on license activation message which should link to the license field, fix [#57](https://github.com/Codeinwp/themeisle-sdk/issues/57) ([2e78856](https://github.com/Codeinwp/themeisle-sdk/commit/2e78856))
85
+ * change uninstall feedback logo with new version, fix [#58](https://github.com/Codeinwp/themeisle-sdk/issues/58) ([2554a4f](https://github.com/Codeinwp/themeisle-sdk/commit/2554a4f))
86
+ * remove soon to expire notice, fix https://github.com/Codeinwp/themeisle/issues/752 ([a126225](https://github.com/Codeinwp/themeisle-sdk/commit/a126225))
87
+
88
+ ## [3.0.8](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.7...v3.0.8) (2019-05-28)
89
+
90
+
91
+ ### Bug Fixes
92
+
93
+ * undefined class on diff module which should check the class on global namespace ([df6bb12](https://github.com/Codeinwp/themeisle-sdk/commit/df6bb12))
94
+
95
+ ## [3.0.7](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.6...v3.0.7) (2019-05-27)
96
+
97
+
98
+ ### Bug Fixes
99
+
100
+ * change store url with the new domain ([6bdbe1e](https://github.com/Codeinwp/themeisle-sdk/commit/6bdbe1e))
101
+
102
+ ## [3.0.6](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.5...v3.0.6) (2019-05-21)
103
+
104
+
105
+ ### Bug Fixes
106
+
107
+ * build php version for deployment stage ([a785699](https://github.com/Codeinwp/themeisle-sdk/commit/a785699))
108
+ * uninstall feedback should load only on the proper pages ([259e78f](https://github.com/Codeinwp/themeisle-sdk/commit/259e78f))
109
+
110
+ ## [3.0.5](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.4...v3.0.5) (2019-03-07)
111
+
112
+
113
+ ### Bug Fixes
114
+
115
+ * dashboard widget issues and recommended module inconsistency fix [#50](https://github.com/Codeinwp/themeisle-sdk/issues/50), [#49](https://github.com/Codeinwp/themeisle-sdk/issues/49), [#47](https://github.com/Codeinwp/themeisle-sdk/issues/47) ([757eb02](https://github.com/Codeinwp/themeisle-sdk/commit/757eb02))
116
+
117
  ## [3.0.4](https://github.com/Codeinwp/themeisle-sdk/compare/v3.0.3...v3.0.4) (2019-01-28)
118
 
119
 
vendor/codeinwp/themeisle-sdk/load.php CHANGED
@@ -14,14 +14,22 @@ if ( ! defined( 'ABSPATH' ) ) {
14
  return;
15
  }
16
  // Current SDK version and path.
17
- $themeisle_sdk_version = '3.0.4';
18
  $themeisle_sdk_path = dirname( __FILE__ );
19
 
20
  global $themeisle_sdk_max_version;
21
  global $themeisle_sdk_max_path;
22
 
 
 
 
 
 
 
 
 
23
  if ( version_compare( $themeisle_sdk_version, $themeisle_sdk_max_path ) == 0 &&
24
- apply_filters( 'themeisle_sdk_should_overwrite_path', false, $themeisle_sdk_path, $themeisle_sdk_max_path ) ) {
25
  $themeisle_sdk_max_path = $themeisle_sdk_path;
26
  }
27
 
@@ -30,6 +38,21 @@ if ( version_compare( $themeisle_sdk_version, $themeisle_sdk_max_version ) > 0 )
30
  $themeisle_sdk_max_path = $themeisle_sdk_path;
31
  }
32
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  // load the latest sdk version from the active Themeisle products.
34
  if ( ! function_exists( 'themeisle_sdk_load_latest' ) ) :
35
  /**
14
  return;
15
  }
16
  // Current SDK version and path.
17
+ $themeisle_sdk_version = '3.1.6';
18
  $themeisle_sdk_path = dirname( __FILE__ );
19
 
20
  global $themeisle_sdk_max_version;
21
  global $themeisle_sdk_max_path;
22
 
23
+ // If this is the latest SDK and it comes from a theme, we should load licenser separately.
24
+ $themeisle_sdk_relative_licenser_path = '/src/Modules/Licenser.php';
25
+
26
+ global $themeisle_sdk_abs_licenser_path;
27
+ if ( ! is_file( $themeisle_sdk_path . $themeisle_sdk_relative_licenser_path ) && is_file( $themeisle_sdk_max_path . $themeisle_sdk_relative_licenser_path ) ) {
28
+ $themeisle_sdk_abs_licenser_path = $themeisle_sdk_max_path . $themeisle_sdk_relative_licenser_path;
29
+ add_filter( 'themeisle_sdk_required_files', 'themeisle_sdk_load_licenser_if_present' );
30
+ }
31
  if ( version_compare( $themeisle_sdk_version, $themeisle_sdk_max_path ) == 0 &&
32
+ apply_filters( 'themeisle_sdk_should_overwrite_path', false, $themeisle_sdk_path, $themeisle_sdk_max_path ) ) {
33
  $themeisle_sdk_max_path = $themeisle_sdk_path;
34
  }
35
 
38
  $themeisle_sdk_max_path = $themeisle_sdk_path;
39
  }
40
 
41
+ // load the latest sdk version from the active Themeisle products.
42
+ if ( ! function_exists( 'themeisle_sdk_load_licenser_if_present' ) ) :
43
+ /**
44
+ * Always load the licenser, if present.
45
+ *
46
+ * @param array $to_load Previously files to load.
47
+ */
48
+ function themeisle_sdk_load_licenser_if_present( $to_load ) {
49
+ global $themeisle_sdk_abs_licenser_path;
50
+ $to_load[] = $themeisle_sdk_abs_licenser_path;
51
+
52
+ return $to_load;
53
+ }
54
+ endif;
55
+
56
  // load the latest sdk version from the active Themeisle products.
57
  if ( ! function_exists( 'themeisle_sdk_load_latest' ) ) :
58
  /**
vendor/codeinwp/themeisle-sdk/src/Loader.php CHANGED
@@ -55,6 +55,7 @@ final class Loader {
55
  'logger',
56
  'translate',
57
  'review',
 
58
 
59
  ];
60
 
@@ -83,7 +84,7 @@ final class Loader {
83
  */
84
  public static function add_product( $base_file ) {
85
 
86
- if ( ! is_readable( $base_file ) ) {
87
  return self::$instance;
88
  }
89
  $product = new Product( $base_file );
@@ -113,5 +114,13 @@ final class Loader {
113
  return self::$products;
114
  }
115
 
 
 
 
 
 
 
 
 
116
 
117
  }
55
  'logger',
56
  'translate',
57
  'review',
58
+ 'recommendation',
59
 
60
  ];
61
 
84
  */
85
  public static function add_product( $base_file ) {
86
 
87
+ if ( ! is_file( $base_file ) ) {
88
  return self::$instance;
89
  }
90
  $product = new Product( $base_file );
114
  return self::$products;
115
  }
116
 
117
+ /**
118
+ * Get the version of the SDK.
119
+ *
120
+ * @return string The version.
121
+ */
122
+ public static function get_version() {
123
+ return self::$version;
124
+ }
125
 
126
  }
vendor/codeinwp/themeisle-sdk/src/Modules/Dashboard_widget.php CHANGED
@@ -72,7 +72,9 @@ class Dashboard_Widget extends Abstract_Module {
72
  * @return Dashboard_Widget Module instance.
73
  */
74
  public function load( $product ) {
75
-
 
 
76
  $this->product = $product;
77
  $this->dashboard_name = apply_filters( 'themeisle_sdk_dashboard_widget_name', 'WordPress Guides/Tutorials' );
78
  $this->feeds = apply_filters(
@@ -103,7 +105,7 @@ class Dashboard_Widget extends Abstract_Module {
103
  'themeisle',
104
  $this->dashboard_name,
105
  [
106
- &$this,
107
  'render_dashboard_widget',
108
  ]
109
  );
@@ -127,10 +129,10 @@ class Dashboard_Widget extends Abstract_Module {
127
  }
128
 
129
  #themeisle h2.hndle {
130
- background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA3Ny4xMiA3Ny4xMiI+PHRpdGxlPkFzc2V0IDM8L3RpdGxlPjxwYXRoIGQ9Ik03NS43Niw0Ny42cS0xLjUsNi40Ni00LjA3LDkuMjZBMzYuMjIsMzYuMjIsMCwwLDEsNjMuMjYsNjNhNTEsNTEsMCwwLDEtOS43OSw0LjZoLS4xNXY0LjgyQTQuNjYsNC42NiwwLDAsMSw1Miw3NS43Niw0LjA3LDQuMDcsMCwwLDEsNDksNzcuMTJhNCw0LDAsMCwxLTIuMTgtLjYxQTQuOTQsNC45NCwwLDAsMSw0NS4xOSw3NWE0LjQyLDQuNDIsMCwwLDEtNy41NCwwLDQuOTQsNC45NCwwLDAsMS0xLjU4LDEuNSwzLjc1LDMuNzUsMCwwLDEtMiwuNjFBNC4yNyw0LjI3LDAsMCwxLDMwLjI3LDc1YTQuOTQsNC45NCwwLDAsMS0xLjU4LDEuNSw0LDQsMCwwLDEtMi4xOC42MSwzLjkzLDMuOTMsMCwwLDEtMy4xNi0xLjQzLDUuMyw1LjMsMCwwLDEtMS4yMS0zLjU0LDEzLjgxLDEzLjgxLDAsMCwxLTguNTgsMywxMy4yMywxMy4yMywwLDAsMS05LTMuNDdBMTguMjEsMTguMjEsMCwwLDAsOSw3MC43OWExNC4yNiwxNC4yNiwwLDAsMS03LjgzLTUuNDIsMTYuMTIsMTYuMTIsMCwwLDAsNS4xOS4wNywxMi44OSwxMi44OSwwLDAsMCw0LjktMS43M1EzLjE1LDU1LjQzLDEuMDUsNTAuNDZhMTgsMTgsMCwwLDEtMS02LjkzQTQwLDQwLDAsMCwxLDEuMjEsMzQsMjYuNTksMjYuNTksMCwwLDEsNS4yNywyNC4xUTguNDQsMTkuNDMsMTMsMTkuNDNhMy40MSwzLjQxLDAsMCwxLDMuNDcsMi4yNmMuNi0uOCwxLjItMS41NiwxLjgxLTIuMjZsLjQ1LS40NS43NS0uNzUsMS4wNS0xLjgxYTM1LjIsMzUuMiwwLDAsMSwyLjExLTMuMzIsMjguNTcsMjguNTcsMCwwLDEsOS4xMi03LjY4QTIzLjQsMjMuNCwwLDAsMSw0Mi45MywyLjU2YTIyLjIyLDIyLjIyLDAsMCwxLDIuNzEuMTVBOC4xNiw4LjE2LDAsMCwxLDUxLjgxLDAsOC42OSw4LjY5LDAsMCwxLDU4LDIuNDFhMS41MSwxLjUxLDAsMCwxLC4xNS42OGMwLC4yNS0uNTUuOTMtMS42NiwybC0uMy4zYTkuNjksOS42OSwwLDAsMSwxLjU4LjgzYy41NS4zNS44My42NS44My45YTEuNjIsMS42MiwwLDAsMS0uNiwxbC0uMTUuMTVxNi43OCw2LDguNTgsMTYuMjdBMy4zLDMuMywwLDAsMSw2OSwyMy4zNWE2LjQ4LDYuNDgsMCwwLDEsNC4yMiwyLjFxMy45MiwzLjMyLDMuOTIsMTEuOUE0Mi4wNSw0Mi4wNSwwLDAsMSw3NS43Niw0Ny42Wk01My42Miw1NC4wN2EyNCwyNCwwLDAsMS0xNCw0LjUyQTIxLjQxLDIxLjQxLDAsMCwxLDI3LDU0LjY3LDI0LjI4LDI0LjI4LDAsMCwxLDE4LjUzLDQ1YTI5LDI5LDAsMCwxLTMtMTMsMzEuNzgsMzEuNzgsMCwwLDEsLjkxLTcuNTNBMzIuMTcsMzIuMTcsMCwwLDAsMTEuOSw0MS4yN2EzMy41LDMzLjUsMCwwLDAsMi43OSwxMy40LDI5LjEsMjkuMSwwLDAsMCw3LjksMTAuODUsNC42OCw0LjY4LDAsMCwxLDEuNjYtMS44OCw0LjE3LDQuMTcsMCwwLDEsNC40NC0uMDgsNC41LDQuNSwwLDAsMSwxLjU4LDEuNjZBNC4yLDQuMiwwLDAsMSwzNCw2M2EzLjgzLDMuODMsMCwwLDEsMiwuNiw0LjUsNC41LDAsMCwxLDEuNTgsMS42Niw0LjI3LDQuMjcsMCwwLDEsNy41NCwwLDQuNSw0LjUsMCwwLDEsMS41OC0xLjY2LDQuMTcsNC4xNywwLDAsMSw0LjQ0LjA4LDMuODYsMy44NiwwLDAsMSwxLjUxLDEuNzMsMzAuMTcsMzAuMTcsMCwwLDAsNy42OC05Ljk0LDMxLjE4LDMxLjE4LDAsMCwwLDMuMTYtMTIuMzVBMjguMzksMjguMzksMCwwLDEsNTMuNjIsNTQuMDdaTTI4Ljc3LDY1LjM3YTMuMSwzLjEsMCwwLDAtNC4zNywwLDMuMDYsMy4wNiwwLDAsMC0uOSwyLjI2djQuODJhMy4zMiwzLjMyLDAsMCwwLC45LDIuMzMsMi45MywyLjkzLDAsMCwwLDQuMzcsMCwzLjMyLDMuMzIsMCwwLDAsLjktMi4zM1Y2Ny42M0EzLjA2LDMuMDYsMCwwLDAsMjguNzcsNjUuMzdabS45LTQ4YTQuMjQsNC4yNCwwLDAsMCwzLjQ3LDEuNzMsNC40NSw0LjQ1LDAsMCwwLDMuNTQtMS43Myw2LDYsMCwwLDAsMS40My0zLjkyLDUuNyw1LjcsMCwwLDAtMS40My0zLjg0QTQuNTMsNC41MywwLDAsMCwzMy4xNCw4YTQuMzEsNC4zMSwwLDAsMC0zLjQ3LDEuNjYsNS43OSw1Ljc5LDAsMCwwLTEuMzUsMy43N0E2LjMzLDYuMzMsMCwwLDAsMjkuNjcsMTcuNFptNi40OCw0OGEzLjEsMy4xLDAsMCwwLTQuMzcsMCwzLjA2LDMuMDYsMCwwLDAtLjksMi4yNnY0LjgyYTMuMzIsMy4zMiwwLDAsMCwuOSwyLjMzLDIuOTMsMi45MywwLDAsMCw0LjM3LDAsMy4zMiwzLjMyLDAsMCwwLC45LTIuMzNWNjcuNjNBMy4wNiwzLjA2LDAsMCwwLDM2LjE1LDY1LjM3Wm0tNC4wNy01NC4zYTIuMzcsMi4zNywwLDAsMSwyLTEsMi4xNywyLjE3LDAsMCwxLDEuODgsMSw0LjEsNC4xLDAsMCwxLDAsNC41MiwyLjE3LDIuMTcsMCwwLDEtMS44OCwxLDIuMzcsMi4zNywwLDAsMS0yLTEsMy43MiwzLjcyLDAsMCwxLS43NS0yLjM0QTMuNDksMy40OSwwLDAsMSwzMi4wOCwxMS4wN1ptNSw5LjQxYTIwLjYxLDIwLjYxLDAsMCwwLTMuNTQsMTIuMjgsMTcuMTUsMTcuMTUsMCwwLDAsNC4wNywxMSwxMi40MywxMi40MywwLDAsMCw5Ljg3LDQuNDUsMTUuMywxNS4zLDAsMCwwLDktMywxMywxMywwLDAsMCwuNi0zLjMycTAtMy4zMi0zLjE2LTMuMzFhOC41OCw4LjU4LDAsMCwwLTIsLjNxLTcuODMsMS41LTExLjU5LS4zLTQuNTMtMi4xMi00LjUyLTkuMzRBMzcuOTIsMzcuOTIsMCwwLDEsMzcuMDUsMjAuNDhaTTYxLjQ1LDE3QTEyLjg0LDEyLjg0LDAsMCwwLDUxLjIxLDEyLjJhMTUuMTEsMTUuMTEsMCwwLDAtNi40LDEuNDMsMTcuODMsMTcuODMsMCwwLDAtNS41LDRxLTYuMTgsMjAuNjQsNi4xOCwyMC42NEEyNC43NSwyNC43NSwwLDAsMCw0OSwzNy44MWEzOC45MiwzOC45MiwwLDAsMSw0LjgyLS40NmMxLjgxLDAsMy4wNi40NiwzLjc3LDEuMzZxMS4zNSwxLjUuNzUsNS4xMmEyMS43MiwyMS43MiwwLDAsMCw1LTcuMTVBMjEuMzgsMjEuMzgsMCwwLDAsNjUuMDcsMjgsMTcuNDQsMTcuNDQsMCwwLDAsNjEuNDUsMTdaTTQzLjYsNjUuMzdhMi43MiwyLjcyLDAsMCwwLTIuMS0uOSwzLDMsMCwwLDAtMi4xOS45LDMuMDYsMy4wNiwwLDAsMC0uOSwyLjI2djQuODJhMy4zMiwzLjMyLDAsMCwwLC45LDIuMzMsMi44NCwyLjg0LDAsMCwwLDIuMTksMSwyLjYxLDIuNjEsMCwwLDAsMi4xLTEsMy40NSwzLjQ1LDAsMCwwLC44My0yLjMzVjY3LjYzQTMuMTcsMy4xNywwLDAsMCw0My42LDY1LjM3Wm03LjQ2LDBhMywzLDAsMCwwLTIuMTgtLjksMi43MywyLjczLDAsMCwwLTIuMTEuOSwzLjE3LDMuMTcsMCwwLDAtLjgzLDIuMjZ2NC44MmEzLjQ1LDMuNDUsMCwwLDAsLjgzLDIuMzMsMi42MSwyLjYxLDAsMCwwLDIuMTEsMSwyLjgzLDIuODMsMCwwLDAsMi4xOC0xLDMuMzIsMy4zMiwwLDAsMCwuOS0yLjMzVjY3LjYzQTMuMDYsMy4wNiwwLDAsMCw1MS4wNiw2NS4zN1oiLz48L3N2Zz4=');
131
  background-repeat: no-repeat;
132
  background-position: 92% 50%;
133
- background-size: 30px;
134
  }
135
 
136
  #themeisle .inside {
@@ -281,6 +283,8 @@ class Dashboard_Widget extends Abstract_Module {
281
  array(
282
  'lite',
283
  'Lite',
 
 
284
  ),
285
  '',
286
  $recommend['name']
@@ -372,18 +376,25 @@ class Dashboard_Widget extends Abstract_Module {
372
  */
373
  function get_product_from_api() {
374
  if ( false === ( $products = get_transient( 'themeisle_sdk_products' ) ) ) {
375
- $products = array();
376
- $themeisle_themes = $this->get_themes_from_wporg( 'themeisle' );
377
- $codeinwp_themes = $this->get_themes_from_wporg( 'codeinwp' );
378
-
379
- $themeisle_plugins = $this->get_plugins_from_wporg( 'themeisle' );
380
- $codeinwp_plugins = $this->get_plugins_from_wporg( 'codeinwp' );
381
-
382
- $all_themes = array_merge( $themeisle_themes, $codeinwp_themes );
 
 
 
 
383
  foreach ( $all_themes as $theme ) {
384
  if ( $theme->active_installs < 4999 ) {
385
  continue;
386
  }
 
 
 
387
  $products[] = array(
388
  'name' => $theme->name,
389
  'type' => 'theme',
@@ -391,11 +402,13 @@ class Dashboard_Widget extends Abstract_Module {
391
  'installs' => $theme->active_installs,
392
  );
393
  }
394
- $all_plugins = array_merge( $themeisle_plugins, $codeinwp_plugins );
395
  foreach ( $all_plugins as $plugin ) {
396
  if ( $plugin->active_installs < 4999 ) {
397
  continue;
398
  }
 
 
 
399
  $products[] = array(
400
  'name' => $plugin->name,
401
  'type' => 'plugin',
@@ -439,7 +452,7 @@ class Dashboard_Widget extends Abstract_Module {
439
  */
440
  function get_plugins_from_wporg( $author ) {
441
  $products = wp_remote_get(
442
- 'https://api.wordpress.org/plugins/info/1.1/?action=query_plugins&request[author]=' . $author . '&request[per_page]=20&request[fields][active_installs]=true'
443
  );
444
  $products = json_decode( wp_remote_retrieve_body( $products ) );
445
  if ( is_object( $products ) ) {
72
  * @return Dashboard_Widget Module instance.
73
  */
74
  public function load( $product ) {
75
+ if ( apply_filters( 'themeisle_sdk_hide_dashboard_widget', false ) ) {
76
+ return;
77
+ }
78
  $this->product = $product;
79
  $this->dashboard_name = apply_filters( 'themeisle_sdk_dashboard_widget_name', 'WordPress Guides/Tutorials' );
80
  $this->feeds = apply_filters(
105
  'themeisle',
106
  $this->dashboard_name,
107
  [
108
+ $this,
109
  'render_dashboard_widget',
110
  ]
111
  );
129
  }
130
 
131
  #themeisle h2.hndle {
132
+ background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABbCAMAAADncTNAAAAAtFBMVEVHcEyAgIB/f3+xsbGgoaGBgYGCgoKKioqAgIC1tbW5ubnFx8iAgIDU1taBgYGCgoKAgIC0tLXW19jW2NiAgIC3uLiBgYHLzMy4uLhycnLW19d/f3/T1NW0tLTX19mVlZWvr6+BgYHl5eWKiottbW5JSUnW2Nm5ubnh4eHT1NWVlZVjY2N4eHh9fX6pqqq+v79PT0/39/fu7u7Nzc7Z2ttYWFgBAQHDw8P////JysoZGRk0NTZqJc/sAAAAIXRSTlMA0FL7/oEnEPL6eibivm9gwJya76/enFq2CXI+2lFAyM8GATmPAAADj0lEQVR4Xu2YaW/iOhSGAwRCWDosnXa6znjJvm8svf//f12TuARyhiR2pfnUR6gSEnr0+uT4xK7yRb755pvhHePli5K7Bfpkuhoq8ozRJdMH+WWha6Z3sqYparCSLRJqspjImVbANJU03cNMMpofAwQZCGsmpQYyFvVM0Q00OQ9koMl5IPcCoro+RA1Dt2Ea9n9eZ0+YHJLkgIlkDywQx00wCTyaReiKH8LbNU9ybJOdkchV6QFxyCFLbVvdfaREqgUWg/tx2UbqIcK2Hex2TdGLwFTjIj3XP3YfCZFsb23KRZn/3263oymSFI0/a5S4PqUBjoBIJBDjeEhCN0wxQSRybIxtJ3K5SGzuE/vAwIQc8ZmMMJFAIM4oikZItfEFtorGgoE43FObwqHU68OtPCnOz8KZ2Jbl5LgkSW0Tc7YyIz/EFWmS4jMbiZU5mJOmKRaJpKGGyLZtDJh3iyaNUu/3+xyKnrtFL71EG+FTiMpENhQtxUQ8kSOXCIr2tnCNhg/gTX0SHYFp0t7TCwQZ7U841yoHrW6rtGroUwTWVnLMssxx+H4bgZcSOFf5MYx0Ae8FghomMDyC2EBNImBywPkNTDNqGLQpIg2TjUNU8tBy9DQMo0DAZF16rAi7vJAtFTIYFAHUc6hIRW6OuOhJgaCSwmDEAYK4oa7ro+qIEyJU/US7KTJKPNSFT9tFgVFBu0SF1y7yjX4masRA9Da7EFGj28R/BkQz6xGIOurkx38T/bKs9Uk8aIiMwm/Jw0VP1yLrJwt13xAxvABBgsK4KWLov35DkRF7ZaqgzuZ7MQ8MOntmVYyAqKTwaICKqvSUFnVccMN5sziEP/5+xGDTahbH5Q3ZB76zr8fI+nJtvUUU3t3ml5GKviK/npCg3CGodnuJ4JVkfRFJYGVDBZrqKnn9RLf+CzDTS5PaN5J38+auzX4ykU4Qoj0rdKfcYs5ijfo9OL/uRUgZyQr7NCWtWwiUSLc4arfJa7lpszTA1OJZAQ8w8dXFrR5YHzCWSnS3pZ18tOi4Ps4vl/c7i/6qomjRecN+UubrPyPGn/VEMU3T0UFHkaPzpgjxmJsnjmrtionlMDZiog0TsY/DPtn8SXtlBvbtxKtwopy7lqW3smQO+yoGE1Uu55GJ3pmI8ygoejZNnqj0vnIRCyTKfLstRdtStGQi09myUsvwvlkuzSUXbV+Xz5ryBebV33fln/A/moud69FZiEYAAAAASUVORK5CYII=');
133
  background-repeat: no-repeat;
134
  background-position: 92% 50%;
135
+ background-size: 25px;
136
  }
137
 
138
  #themeisle .inside {
283
  array(
284
  'lite',
285
  'Lite',
286
+ '(Lite)',
287
+ '(lite)',
288
  ),
289
  '',
290
  $recommend['name']
376
  */
377
  function get_product_from_api() {
378
  if ( false === ( $products = get_transient( 'themeisle_sdk_products' ) ) ) {
379
+ $products = array();
380
+ $all_themes = $this->get_themes_from_wporg( 'themeisle' );
381
+ $all_plugins = $this->get_plugins_from_wporg( 'themeisle' );
382
+ static $allowed_products = [
383
+ 'hestia' => true,
384
+ 'neve' => true,
385
+ 'visualizer' => true,
386
+ 'feedzy-rss-feeds' => true,
387
+ 'wp-product-review' => true,
388
+ 'otter-blocks' => true,
389
+ 'themeisle-companion' => true,
390
+ ];
391
  foreach ( $all_themes as $theme ) {
392
  if ( $theme->active_installs < 4999 ) {
393
  continue;
394
  }
395
+ if ( ! isset( $allowed_products[ $theme->slug ] ) ) {
396
+ continue;
397
+ }
398
  $products[] = array(
399
  'name' => $theme->name,
400
  'type' => 'theme',
402
  'installs' => $theme->active_installs,
403
  );
404
  }
 
405
  foreach ( $all_plugins as $plugin ) {
406
  if ( $plugin->active_installs < 4999 ) {
407
  continue;
408
  }
409
+ if ( ! isset( $allowed_products[ $plugin->slug ] ) ) {
410
+ continue;
411
+ }
412
  $products[] = array(
413
  'name' => $plugin->name,
414
  'type' => 'plugin',
452
  */
453
  function get_plugins_from_wporg( $author ) {
454
  $products = wp_remote_get(
455
+ 'https://api.wordpress.org/plugins/info/1.1/?action=query_plugins&request[author]=' . $author . '&request[per_page]=40&request[fields][active_installs]=true'
456
  );
457
  $products = json_decode( wp_remote_retrieve_body( $products ) );
458
  if ( is_object( $products ) ) {
vendor/codeinwp/themeisle-sdk/src/Modules/Endpoint.php CHANGED
@@ -273,7 +273,7 @@ class Endpoint extends Abstract_Module {
273
 
274
  // fetch the calculated hashes.
275
  if ( ! $wp_filesystem->is_readable( $path . '/' . self::HASH_FILE ) ) {
276
- return new WP_Error( 'themeisle_sdk_hash_not_found', sprintf( '%s not found', self::HASH_FILE ) );
277
  }
278
 
279
  $hashes = json_decode( $wp_filesystem->get_contents( $path . '/' . self::HASH_FILE ), true );
273
 
274
  // fetch the calculated hashes.
275
  if ( ! $wp_filesystem->is_readable( $path . '/' . self::HASH_FILE ) ) {
276
+ return new \WP_Error( 'themeisle_sdk_hash_not_found', sprintf( '%s not found', self::HASH_FILE ) );
277
  }
278
 
279
  $hashes = json_decode( $wp_filesystem->get_contents( $path . '/' . self::HASH_FILE ), true );
vendor/codeinwp/themeisle-sdk/src/Modules/Licenser.php CHANGED
@@ -89,6 +89,9 @@ class Licenser extends Abstract_Module {
89
  if ( ! is_admin() ) {
90
  return false;
91
  }
 
 
 
92
  add_settings_field(
93
  $this->product->get_key() . '_license',
94
  $this->product->get_name() . ' license',
@@ -109,8 +112,68 @@ class Licenser extends Abstract_Module {
109
  $valid_string = apply_filters( $this->product->get_key() . '_lc_valid_string', 'Valid' );
110
  $invalid_string = apply_filters( $this->product->get_key() . '_lc_invalid_string', 'Invalid' );
111
  $license_message = apply_filters( $this->product->get_key() . '_lc_license_message', 'Enter your license from %s purchase history in order to get %s updates' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
112
 
113
- echo '<p ><input ' . ( ( 'valid' === $status ) ? ( 'style="border:1px solid #7ad03a; "' ) : '' ) . ' type="text" id="' . $this->product->get_key() . '_license" name="' . $this->product->get_key() . '_license" value="' . $value . '" /><a ' . ( ( 'valid' === $status ) ? ( 'style="color:#fff;background: #7ad03a; display: inline-block;text-decoration: none;font-size: 13px;line-height: 26px;height: 26px; margin-left:5px; padding: 0 10px 1px; -webkit-border-radius: 3px;border-radius: 3px; ">' . $valid_string ) : ( 'style="color:#fff;background: #dd3d36; display: inline-block;text-decoration: none;font-size: 13px;line-height: 26px;height: 26px; margin-left:5px; padding: 0 10px 1px; -webkit-border-radius: 3px;border-radius: 3px; ">' . $invalid_string ) ) . ' </a>&nbsp;&nbsp;&nbsp;<button name="' . $this->product->get_key() . '_btn_trigger" ' . ( ( 'valid' === $status ) ? ( ' class="button button-primary">' . $deactivate_string ) : ( ' class="button button-primary" value="yes" type="submit" >' . $activate_string ) ) . ' </button></p><p class="description">' . sprintf( $license_message, '<a href="' . $this->get_api_url() . '">' . $this->get_distributor_name() . '</a> ', $this->product->get_type() ) . '</p>';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
 
115
  }
116
 
@@ -166,10 +229,13 @@ class Licenser extends Abstract_Module {
166
  if ( ! is_admin() ) {
167
  return false;
168
  }
 
 
 
 
169
  $status = $this->get_license_status();
170
  $no_activations_string = apply_filters( $this->product->get_key() . '_lc_no_activations_string', 'No activations left for %s !!!. You need to upgrade your plan in order to use %s on more websites. Please ask the %s Staff for more details.' );
171
  $no_valid_string = apply_filters( $this->product->get_key() . '_lc_no_valid_string', 'In order to benefit from updates and support for %s, please add your license code from your <a href="%s" target="_blank">purchase history</a> and validate it <a href="%s">here</a>. ' );
172
- $expiration_string = apply_filters( $this->product->get_key() . '_lc_expiration_string', 'Your license is about to expire for %s. You can go to %s and renew it ' );
173
 
174
  // No activations left for this license.
175
  if ( 'valid' != $status && $this->check_activation() ) {
@@ -195,7 +261,7 @@ class Licenser extends Abstract_Module {
195
  ?>
196
  <div class="error">
197
  <p>
198
- <strong><?php echo sprintf( $no_valid_string, $this->product->get_name() . ' ' . $this->product->get_type(), $this->get_api_url(), admin_url( 'options-general.php' ) . '#' . $this->product->get_key() ); ?> </strong>
199
  </p>
200
  </div>
201
  <?php
@@ -203,26 +269,6 @@ class Licenser extends Abstract_Module {
203
  return false;
204
  }
205
 
206
- // Expired and soon to expire license.
207
- if ( 'valid' == $status && $this->check_expiration() ) {
208
- ?>
209
- <div class="update-nag">
210
- <p>
211
- <strong>
212
- <?php
213
- echo sprintf(
214
- $expiration_string,
215
- $this->product->get_name() . ' ' . $this->product->get_type(),
216
- '<a href="' . $this->renew_url() . '" target="_blank">' . $this->get_distributor_name() . '</a>'
217
- );
218
- ?>
219
- </strong>
220
- </p>
221
- </div>
222
- <?php
223
- return false;
224
- }
225
-
226
  return true;
227
  }
228
 
@@ -376,6 +422,26 @@ class Licenser extends Abstract_Module {
376
  update_option( $this->product->get_key() . '_failed_checks', $this->failed_checks );
377
  }
378
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
379
  /**
380
  * Activate the license remotely.
381
  */
@@ -402,19 +468,22 @@ class Licenser extends Abstract_Module {
402
  $response = wp_remote_get( add_query_arg( $api_params, $this->get_api_url() ) );
403
  // make sure the response came back okay.
404
  if ( is_wp_error( $response ) ) {
405
- $license_data = new \stdClass();
406
- $license_data->license = ( 'valid' != $status ) ? 'valid' : 'invalid';
407
 
408
- } else {
409
- $license_data = json_decode( wp_remote_retrieve_body( $response ) );
410
- if ( ! is_object( $license_data ) ) {
411
- $license_data = new \stdClass();
412
- $license_data->license = ( 'valid' != $status ) ? 'valid' : 'invalid';
413
- }
414
- if ( ! isset( $license_data->license ) ) {
415
- $license_data->license = 'invalid';
416
- }
417
  }
 
 
 
 
 
 
 
 
 
 
 
 
418
  if ( ! isset( $license_data->key ) ) {
419
  $license_data->key = $license;
420
  }
@@ -422,10 +491,19 @@ class Licenser extends Abstract_Module {
422
  $this->reset_failed_checks();
423
  }
424
 
 
 
 
 
 
 
 
 
 
 
425
  if ( isset( $license_data->plan ) ) {
426
  update_option( $this->product->get_key() . '_license_plan', $license_data->plan );
427
  }
428
-
429
  update_option( $this->product->get_key() . '_license_data', $license_data );
430
  set_transient( $this->product->get_key() . '_license_data', $license_data, 12 * HOUR_IN_SECONDS );
431
 
@@ -445,7 +523,7 @@ class Licenser extends Abstract_Module {
445
  function update_nag() {
446
  $theme = wp_get_theme( $this->product->get_slug() );
447
  $api_response = get_transient( $this->product_key );
448
- if ( false === $api_response ) {
449
  return;
450
  }
451
  $update_url = wp_nonce_url( 'update.php?action=upgrade-theme&amp;theme=' . urlencode( $this->product->get_slug() ), 'upgrade-theme_' . $this->product->get_slug() );
@@ -457,7 +535,7 @@ class Licenser extends Abstract_Module {
457
  '<strong>%1$s %2$s</strong> is available. <a href="%3$s" class="thickbox" title="%4s">Check out what\'s new</a> or <a href="%5$s"%6$s>update now</a>.',
458
  $theme->get( 'Name' ),
459
  $api_response->new_version,
460
- '#TB_inline?width=640&amp;inlineId=' . $this->product->get_version() . '_changelog',
461
  $theme->get( 'Name' ),
462
  $update_url,
463
  $update_onclick
@@ -507,7 +585,7 @@ class Licenser extends Abstract_Module {
507
 
508
  return false;
509
  }
510
- $update_data->sections = maybe_unserialize( $update_data->sections );
511
 
512
  set_transient( $this->product_key, $update_data, 12 * HOUR_IN_SECONDS );
513
  }
@@ -530,18 +608,17 @@ class Licenser extends Abstract_Module {
530
  $api_params = array(
531
  'edd_action' => 'get_version',
532
  'version' => $this->product->get_version(),
533
- 'license' => $this->license_key,
534
- 'name' => $this->product->get_name(),
535
  'slug' => $this->product->get_slug(),
536
- 'author' => $this->get_distributor_name(),
537
  'url' => rawurlencode( home_url() ),
538
  );
539
  $response = wp_remote_get(
540
- $this->get_api_url(),
541
  array(
542
  'timeout' => 15,
543
  'sslverify' => false,
544
- 'body' => $api_params,
545
  )
546
  );
547
  if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) {
89
  if ( ! is_admin() ) {
90
  return false;
91
  }
92
+ if ( apply_filters( $this->product->get_key() . '_hide_license_field', false ) ) {
93
+ return;
94
+ }
95
  add_settings_field(
96
  $this->product->get_key() . '_license',
97
  $this->product->get_name() . ' license',
112
  $valid_string = apply_filters( $this->product->get_key() . '_lc_valid_string', 'Valid' );
113
  $invalid_string = apply_filters( $this->product->get_key() . '_lc_invalid_string', 'Invalid' );
114
  $license_message = apply_filters( $this->product->get_key() . '_lc_license_message', 'Enter your license from %s purchase history in order to get %s updates' );
115
+ $error_message = $this->get_error();
116
+ ?>
117
+ <style type="text/css">
118
+ input.themeisle-sdk-text-input-valid {
119
+ border: 1px solid #7ad03a;
120
+ }
121
+
122
+ input.themeisle-sdk-license-input {
123
+ width: 300px;
124
+ padding: 5px;
125
+ }
126
+
127
+ .themeisle-sdk-license-deactivate-cta {
128
+ color: #fff;
129
+ background: #7ad03a;
130
+ display: inline-block;
131
+ text-decoration: none;
132
+ font-size: 13px;
133
+ line-height: 30px;
134
+ height: 26px;
135
+ margin-left: 5px;
136
+ padding: 0 10px 3px;
137
+ -webkit-border-radius: 3px;
138
+ border-radius: 3px;
139
+ }
140
+
141
+ .themeisle-sdk-license-activate-cta {
142
+ color: #fff;
143
+ background: #dd3d36;
144
+ display: inline-block;
145
+ text-decoration: none;
146
+ font-size: 13px;
147
+ line-height: 30px;
148
+ height: 26px;
149
+ margin-left: 5px;
150
+ padding: 0 10px 3px;
151
+ -webkit-border-radius: 3px;
152
+ border-radius: 3px;
153
+ }
154
+
155
+ button.button.themeisle-sdk-licenser-button-cta {
156
+ line-height: 26px;
157
+ height: 29px;
158
+ vertical-align: top;
159
+ }
160
 
161
+ </style>
162
+ <?php
163
+ echo sprintf(
164
+ '<p>%s<input class="themeisle-sdk-license-input %s" type="text" id="%s_license" name="%s_license" value="%s" /><a class="%s">%s</a>&nbsp;&nbsp;&nbsp;<button name="%s_btn_trigger" class="button button-primary themeisle-sdk-licenser-button-cta" value="yes" type="submit" >%s</button></p><p class="description">%s</p>%s',
165
+ ( ( 'valid' === $status ) ? sprintf( '<input type="hidden" value="%s" name="%s_license" />', $value, $this->product->get_key() ) : '' ),
166
+ ( ( 'valid' === $status ) ? 'themeisle-sdk-text-input-valid' : '' ),
167
+ $this->product->get_key(),
168
+ ( ( 'valid' === $status ) ? $this->product->get_key() . '_mask' : $this->product->get_key() ),
169
+ ( ( 'valid' === $status ) ? ( str_repeat( '*', 30 ) . substr( $value, - 5 ) ) : $value ),
170
+ ( 'valid' === $status ? 'themeisle-sdk-license-deactivate-cta' : 'themeisle-sdk-license-activate-cta' ),
171
+ ( 'valid' === $status ? $valid_string : $invalid_string ),
172
+ $this->product->get_key(),
173
+ ( 'valid' === $status ? $deactivate_string : $activate_string ),
174
+ sprintf( $license_message, '<a href="' . $this->get_api_url() . '">' . $this->get_distributor_name() . '</a> ', $this->product->get_type() ),
175
+ empty( $error_message ) ? '' : sprintf( '<p style="color:#dd3d36">%s</p>', $error_message )
176
+ );
177
 
178
  }
179
 
229
  if ( ! is_admin() ) {
230
  return false;
231
  }
232
+
233
+ if ( apply_filters( $this->product->get_key() . '_hide_license_notices', false ) ) {
234
+ return;
235
+ }
236
  $status = $this->get_license_status();
237
  $no_activations_string = apply_filters( $this->product->get_key() . '_lc_no_activations_string', 'No activations left for %s !!!. You need to upgrade your plan in order to use %s on more websites. Please ask the %s Staff for more details.' );
238
  $no_valid_string = apply_filters( $this->product->get_key() . '_lc_no_valid_string', 'In order to benefit from updates and support for %s, please add your license code from your <a href="%s" target="_blank">purchase history</a> and validate it <a href="%s">here</a>. ' );
 
239
 
240
  // No activations left for this license.
241
  if ( 'valid' != $status && $this->check_activation() ) {
261
  ?>
262
  <div class="error">
263
  <p>
264
+ <strong><?php echo sprintf( $no_valid_string, $this->product->get_name() . ' ' . $this->product->get_type(), $this->get_api_url(), admin_url( 'options-general.php' ) . '#' . $this->product->get_key() . '_license' ); ?> </strong>
265
  </p>
266
  </div>
267
  <?php
269
  return false;
270
  }
271
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
272
  return true;
273
  }
274
 
422
  update_option( $this->product->get_key() . '_failed_checks', $this->failed_checks );
423
  }
424
 
425
+ /**
426
+ * Set license validation error message.
427
+ *
428
+ * @param string $message Error message.
429
+ */
430
+ public function set_error( $message = '' ) {
431
+ set_transient( $this->product->get_key() . 'act_err', $message, MINUTE_IN_SECONDS );
432
+
433
+ return;
434
+ }
435
+
436
+ /**
437
+ * Return the last error message.
438
+ *
439
+ * @return mixed Error message.
440
+ */
441
+ public function get_error() {
442
+ return get_transient( $this->product->get_key() . 'act_err' );
443
+ }
444
+
445
  /**
446
  * Activate the license remotely.
447
  */
468
  $response = wp_remote_get( add_query_arg( $api_params, $this->get_api_url() ) );
469
  // make sure the response came back okay.
470
  if ( is_wp_error( $response ) ) {
471
+ $this->set_error( sprintf( 'ERROR: Failed to connect to the license service. Please try again later. Reason: %s', $response->get_error_message() ) );
 
472
 
473
+ return;
 
 
 
 
 
 
 
 
474
  }
475
+
476
+ $license_data = json_decode( wp_remote_retrieve_body( $response ) );
477
+
478
+ if ( ! is_object( $license_data ) ) {
479
+ $this->set_error( 'ERROR: Failed to validate license. Please try again in one minute.' );
480
+
481
+ return;
482
+ }
483
+ if ( ! isset( $license_data->license ) ) {
484
+ $license_data->license = 'invalid';
485
+ }
486
+
487
  if ( ! isset( $license_data->key ) ) {
488
  $license_data->key = $license;
489
  }
491
  $this->reset_failed_checks();
492
  }
493
 
494
+ $this->set_error( '' );
495
+
496
+ if ( 'deactivate_license' === $api_params['edd_action'] ) {
497
+
498
+ delete_option( $this->product->get_key() . '_license_data' );
499
+ delete_option( $this->product->get_key() . '_license_plan' );
500
+ delete_transient( $this->product->get_key() . '_license_data' );
501
+
502
+ return;
503
+ }
504
  if ( isset( $license_data->plan ) ) {
505
  update_option( $this->product->get_key() . '_license_plan', $license_data->plan );
506
  }
 
507
  update_option( $this->product->get_key() . '_license_data', $license_data );
508
  set_transient( $this->product->get_key() . '_license_data', $license_data, 12 * HOUR_IN_SECONDS );
509
 
523
  function update_nag() {
524
  $theme = wp_get_theme( $this->product->get_slug() );
525
  $api_response = get_transient( $this->product_key );
526
+ if ( false === $api_response || ! isset( $api_response->new_version ) ) {
527
  return;
528
  }
529
  $update_url = wp_nonce_url( 'update.php?action=upgrade-theme&amp;theme=' . urlencode( $this->product->get_slug() ), 'upgrade-theme_' . $this->product->get_slug() );
535
  '<strong>%1$s %2$s</strong> is available. <a href="%3$s" class="thickbox" title="%4s">Check out what\'s new</a> or <a href="%5$s"%6$s>update now</a>.',
536
  $theme->get( 'Name' ),
537
  $api_response->new_version,
538
+ sprintf( '%s&TB_iframe=true&amp;width=1024&amp;height=800', $this->product->get_changelog() ),
539
  $theme->get( 'Name' ),
540
  $update_url,
541
  $update_onclick
585
 
586
  return false;
587
  }
588
+ $update_data->sections = isset( $update_data->sections ) ? maybe_unserialize( $update_data->sections ) : null;
589
 
590
  set_transient( $this->product_key, $update_data, 12 * HOUR_IN_SECONDS );
591
  }
608
  $api_params = array(
609
  'edd_action' => 'get_version',
610
  'version' => $this->product->get_version(),
611
+ 'license' => empty( $this->license_key ) ? 'free' : $this->license_key,
612
+ 'name' => rawurlencode( $this->product->get_name() ),
613
  'slug' => $this->product->get_slug(),
614
+ 'author' => rawurlencode( $this->get_distributor_name() ),
615
  'url' => rawurlencode( home_url() ),
616
  );
617
  $response = wp_remote_get(
618
+ add_query_arg( $api_params, $this->get_api_url() ),
619
  array(
620
  'timeout' => 15,
621
  'sslverify' => false,
 
622
  )
623
  );
624
  if ( is_wp_error( $response ) || 200 != wp_remote_retrieve_response_code( $response ) ) {
vendor/codeinwp/themeisle-sdk/src/Modules/Logger.php CHANGED
@@ -152,7 +152,7 @@ class Logger extends Abstract_Module {
152
  $environment['theme']['name'] = $theme->get( 'Name' );
153
  $environment['theme']['author'] = $theme->get( 'Author' );
154
  $environment['plugins'] = get_option( 'active_plugins' );
155
-
156
  wp_remote_post(
157
  self::TRACKING_ENDPOINT,
158
  array(
@@ -166,6 +166,7 @@ class Logger extends Abstract_Module {
166
  'site' => get_site_url(),
167
  'slug' => $this->product->get_slug(),
168
  'version' => $this->product->get_version(),
 
169
  'data' => apply_filters( $this->product->get_key() . '_logger_data', array() ),
170
  'environment' => $environment,
171
  'license' => apply_filters( $this->product->get_key() . '_license_status', '' ),
152
  $environment['theme']['name'] = $theme->get( 'Name' );
153
  $environment['theme']['author'] = $theme->get( 'Author' );
154
  $environment['plugins'] = get_option( 'active_plugins' );
155
+ global $wp_version;
156
  wp_remote_post(
157
  self::TRACKING_ENDPOINT,
158
  array(
166
  'site' => get_site_url(),
167
  'slug' => $this->product->get_slug(),
168
  'version' => $this->product->get_version(),
169
+ 'wp_version' => $wp_version,
170
  'data' => apply_filters( $this->product->get_key() . '_logger_data', array() ),
171
  'environment' => $environment,
172
  'license' => apply_filters( $this->product->get_key() . '_license_status', '' ),
vendor/codeinwp/themeisle-sdk/src/Modules/Notification.php CHANGED
@@ -430,6 +430,9 @@ class Notification extends Abstract_Module {
430
  * @return Notification Module instance.
431
  */
432
  public function load( $product ) {
 
 
 
433
  $this->product = $product;
434
 
435
  $notifications = apply_filters( 'themeisle_sdk_registered_notifications', [] );
430
  * @return Notification Module instance.
431
  */
432
  public function load( $product ) {
433
+ if ( apply_filters( 'themeisle_sdk_hide_notifications', false ) ) {
434
+ return;
435
+ }
436
  $this->product = $product;
437
 
438
  $notifications = apply_filters( 'themeisle_sdk_registered_notifications', [] );
vendor/codeinwp/themeisle-sdk/src/Modules/Recommendation.php ADDED
@@ -0,0 +1,374 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * The class that exposes hooks for recommend.
4
+ *
5
+ * @package ThemeIsleSDK
6
+ * @subpackage Rollback
7
+ * @copyright Copyright (c) 2017, Marius Cristea
8
+ * @license http://opensource.org/licenses/gpl-3.0.php GNU Public License
9
+ * @since 1.0.0
10
+ */
11
+
12
+ namespace ThemeisleSDK\Modules;
13
+
14
+ // Exit if accessed directly.
15
+ use ThemeisleSDK\Common\Abstract_Module;
16
+ use ThemeisleSDK\Product;
17
+
18
+ if ( ! defined( 'ABSPATH' ) ) {
19
+ exit;
20
+ }
21
+
22
+ /**
23
+ * Expose endpoints for ThemeIsle SDK.
24
+ */
25
+ class Recommendation extends Abstract_Module {
26
+
27
+
28
+ /**
29
+ * Load module logic.
30
+ *
31
+ * @param Product $product Product to load.
32
+ */
33
+ public function load( $product ) {
34
+ $this->product = $product;
35
+ $this->setup_hooks();
36
+
37
+ return $this;
38
+ }
39
+
40
+ /**
41
+ * Setup endpoints.
42
+ */
43
+ private function setup_hooks() {
44
+ add_action( $this->product->get_key() . '_recommend_products', array( $this, 'render_products_box' ), 10, 4 );
45
+ add_action( 'admin_head', array( $this, 'enqueue' ) );
46
+ }
47
+
48
+ /**
49
+ * Check if we should load the module for this product.
50
+ *
51
+ * @param Product $product Product data.
52
+ *
53
+ * @return bool Should we load the module?
54
+ */
55
+ public function can_load( $product ) {
56
+ return true;
57
+ }
58
+
59
+ /**
60
+ * Render products box content.
61
+ *
62
+ * @param array $plugins_list - list of useful plugins (in slug => nicename format).
63
+ * @param array $themes_list - list of useful themes (in slug => nicename format).
64
+ * @param array $strings - list of translated strings.
65
+ * @param array $preferences - list of preferences.
66
+ */
67
+ function render_products_box( $plugins_list, $themes_list, $strings, $preferences = array() ) {
68
+
69
+ if ( empty( $plugins_list ) && empty( $themes_list ) ) {
70
+ return;
71
+ }
72
+
73
+ if ( ! empty( $plugins_list ) && ! current_user_can( 'install_plugins' ) ) {
74
+ return;
75
+ }
76
+
77
+ if ( ! empty( $themes_list ) && ! current_user_can( 'install_themes' ) ) {
78
+ return;
79
+ }
80
+
81
+ add_thickbox();
82
+
83
+ if ( ! empty( $themes_list ) ) {
84
+ $list = $this->get_themes( $themes_list, $preferences );
85
+
86
+ if ( has_action( $this->product->get_key() . '_recommend_products_theme_template' ) ) {
87
+ do_action( $this->product->get_key() . '_recommend_products_theme_template', $list, $strings, $preferences );
88
+ } else {
89
+ echo '<div class="recommend-product">';
90
+
91
+ foreach ( $list as $theme ) {
92
+ echo '<div class="plugin_box">';
93
+ echo ' <img class="theme-banner" src="' . $theme->screenshot_url . '">';
94
+ echo ' <div class="title-action-wrapper">';
95
+ echo ' <span class="plugin-name">' . esc_html( $theme->custom_name ) . '</span>';
96
+ if ( ! isset( $preferences['description'] ) || ( isset( $preferences['description'] ) && $preferences['description'] ) ) {
97
+ echo '<span class="plugin-desc">' . esc_html( substr( $theme->description, 0, strpos( $theme->description, '.' ) ) ) . '.</span>';
98
+ }
99
+ echo ' </div>';
100
+ echo '<div class="plugin-box-footer">';
101
+ echo ' <div class="button-wrap">';
102
+ echo ' <a class="button button-primary " href="' . esc_url( $theme->custom_url ) . '"><span class="dashicons dashicons-external"></span>' . esc_html( $strings['install'] ) . '</a>';
103
+ echo ' </div>';
104
+ echo ' </div>';
105
+ echo '</div>';
106
+ }
107
+
108
+ echo '</div>';
109
+ }
110
+ }
111
+ if ( ! empty( $plugins_list ) ) {
112
+ $list = $this->get_plugins( $plugins_list, $preferences );
113
+
114
+ if ( has_action( $this->product->get_key() . '_recommend_products_plugin_template' ) ) {
115
+ do_action( $this->product->get_key() . '_recommend_products_plugin_template', $list, $strings, $preferences );
116
+ } else {
117
+ echo '<div class="recommend-product">';
118
+
119
+ foreach ( $list as $current_plugin ) {
120
+ echo '<div class="plugin_box">';
121
+ echo ' <img class="plugin-banner" src="' . $current_plugin->custom_image . '">';
122
+ echo ' <div class="title-action-wrapper">';
123
+ echo ' <span class="plugin-name">' . esc_html( $current_plugin->custom_name ) . '</span>';
124
+ if ( ! isset( $preferences['description'] ) || ( isset( $preferences['description'] ) && $preferences['description'] ) ) {
125
+ echo '<span class="plugin-desc">' . esc_html( substr( $current_plugin->short_description, 0, strpos( $current_plugin->short_description, '.' ) ) ) . '. </span>';
126
+ }
127
+ echo ' </div>';
128
+ echo ' <div class="plugin-box-footer">';
129
+ echo ' <a class="button button-primary thickbox open-plugin-details-modal" href="' . esc_url( $current_plugin->custom_url ) . '"><span class="dashicons dashicons-external"></span>' . esc_html( $strings['install'] ) . '</a>';
130
+ echo ' </div>';
131
+ echo '</div>';
132
+ }
133
+
134
+ echo '</div>';
135
+ }
136
+ }
137
+
138
+ }
139
+
140
+ /**
141
+ * Collect all the information for the themes list.
142
+ *
143
+ * @param array $themes_list - list of useful themes (in slug => nicename format).
144
+ * @param array $preferences - list of preferences.
145
+ *
146
+ * @return array
147
+ */
148
+ private function get_themes( $themes_list, $preferences ) {
149
+ $list = array();
150
+ foreach ( $themes_list as $slug => $nicename ) {
151
+ $theme = $this->call_theme_api( $slug );
152
+ if ( ! $theme ) {
153
+ continue;
154
+ }
155
+
156
+ $url = add_query_arg(
157
+ array(
158
+ 'theme' => $theme->slug,
159
+ ),
160
+ network_admin_url( 'theme-install.php' )
161
+ );
162
+
163
+ $name = empty( $nicename ) ? $theme->name : $nicename;
164
+
165
+ $theme->custom_url = $url;
166
+ $theme->custom_name = $name;
167
+
168
+ $list[] = $theme;
169
+ }
170
+
171
+ return $list;
172
+ }
173
+
174
+ /**
175
+ * Call theme api
176
+ *
177
+ * @param string $slug theme slug.
178
+ *
179
+ * @return array|mixed|object
180
+ */
181
+ private function call_theme_api( $slug ) {
182
+ $theme = get_transient( 'ti_theme_info_' . $slug );
183
+
184
+ if ( false !== $theme ) {
185
+ return $theme;
186
+ }
187
+
188
+ $products = wp_remote_get(
189
+ 'https://api.wordpress.org/themes/info/1.1/?action=query_themes&request[theme]=' . $slug . '&request[per_page]=1'
190
+ );
191
+ $products = json_decode( wp_remote_retrieve_body( $products ) );
192
+ if ( is_object( $products ) ) {
193
+ $theme = $products->themes[0];
194
+ set_transient( 'ti_theme_info_' . $slug, $theme, 6 * HOUR_IN_SECONDS );
195
+ }
196
+
197
+ return $theme;
198
+ }
199
+
200
+ /**
201
+ * Collect all the information for the plugins list.
202
+ *
203
+ * @param array $plugins_list - list of useful plugins (in slug => nicename format).
204
+ * @param array $preferences - list of preferences.
205
+ *
206
+ * @return array
207
+ */
208
+ private function get_plugins( $plugins_list, $preferences ) {
209
+ $list = array();
210
+ foreach ( $plugins_list as $plugin => $nicename ) {
211
+ $current_plugin = $this->call_plugin_api( $plugin );
212
+
213
+ $name = empty( $nicename ) ? $current_plugin->name : $nicename;
214
+
215
+ $image = $current_plugin->banners['low'];
216
+ if ( isset( $preferences['image'] ) && 'icon' === $preferences['image'] ) {
217
+ $image = $current_plugin->icons['1x'];
218
+ }
219
+
220
+ $url = add_query_arg(
221
+ array(
222
+ 'tab' => 'plugin-information',
223
+ 'plugin' => $current_plugin->slug,
224
+ 'TB_iframe' => true,
225
+ 'width' => 800,
226
+ 'height' => 800,
227
+ ),
228
+ network_admin_url( 'plugin-install.php' )
229
+ );
230
+
231
+ $current_plugin->custom_url = $url;
232
+ $current_plugin->custom_name = $name;
233
+ $current_plugin->custom_image = $image;
234
+
235
+ $list[] = $current_plugin;
236
+ }
237
+
238
+ return $list;
239
+ }
240
+
241
+ /**
242
+ * Call plugin api
243
+ *
244
+ * @param string $slug plugin slug.
245
+ *
246
+ * @return array|mixed|object
247
+ */
248
+ private function call_plugin_api( $slug ) {
249
+ include_once( ABSPATH . 'wp-admin/includes/plugin-install.php' );
250
+
251
+ $call_api = get_transient( 'ti_plugin_info_' . $slug );
252
+
253
+ if ( false === $call_api ) {
254
+ $call_api = plugins_api(
255
+ 'plugin_information',
256
+ array(
257
+ 'slug' => $slug,
258
+ 'fields' => array(
259
+ 'downloaded' => false,
260
+ 'rating' => false,
261
+ 'description' => false,
262
+ 'short_description' => true,
263
+ 'donate_link' => false,
264
+ 'tags' => false,
265
+ 'sections' => true,
266
+ 'homepage' => true,
267
+ 'added' => false,
268
+ 'last_updated' => false,
269
+ 'compatibility' => false,
270
+ 'tested' => false,
271
+ 'requires' => false,
272
+ 'downloadlink' => false,
273
+ 'icons' => true,
274
+ 'banners' => true,
275
+ ),
276
+ )
277
+ );
278
+ set_transient( 'ti_plugin_info_' . $slug, $call_api, 30 * MINUTE_IN_SECONDS );
279
+ }
280
+
281
+ return $call_api;
282
+ }
283
+
284
+ /**
285
+ * Load css and scripts for the plugin recommend page.
286
+ */
287
+ public function enqueue() {
288
+ $screen = get_current_screen();
289
+
290
+ if ( ! isset( $screen->id ) ) {
291
+ return;
292
+ }
293
+ if ( false === apply_filters( $this->product->get_key() . '_enqueue_recommend', false, $screen->id ) ) {
294
+ return;
295
+ }
296
+
297
+ ?>
298
+ <style type="text/css">
299
+ .recommend-product {
300
+ display: flex;
301
+ justify-content: space-between;
302
+ flex-wrap: wrap;
303
+ }
304
+
305
+ .recommend-product .theme-banner {
306
+ width:200px;
307
+ margin: auto;
308
+ }
309
+ .recommend-product .plugin-banner {
310
+ width: 100px;
311
+ margin: auto;
312
+ }
313
+
314
+ .recommend-product .plugin_box .button span{
315
+
316
+ margin-top: 2px;
317
+ margin-right: 7px;
318
+ }
319
+ .recommend-product .plugin_box .button{
320
+ margin-bottom:10px;
321
+ }
322
+ .recommend-product .plugin_box {
323
+ margin-bottom: 20px;
324
+ padding-top: 5px;
325
+ display: flex;
326
+ box-shadow: 0px 0px 10px -5px rgba(0,0,0,0.55);
327
+ background: #fff;
328
+ border-radius: 5px;
329
+ flex-direction: column;
330
+ justify-content: flex-start;
331
+ width: 95%;
332
+ }
333
+
334
+ .recommend-product .title-action-wrapper {
335
+ padding: 15px 20px 5px 20px;
336
+ }
337
+
338
+ .recommend-product .plugin-name {
339
+ font-size: 18px;
340
+ display: block;
341
+ white-space: nowrap;
342
+ text-overflow: ellipsis;
343
+ margin-bottom: 10px;
344
+ overflow: hidden;
345
+ line-height: normal;
346
+ }
347
+
348
+
349
+ .recommend-product .plugin-desc {
350
+ display: block;
351
+ margin-bottom: 10px;
352
+ font-size: 13px;
353
+ color: #777;
354
+ line-height: 1.6;
355
+ }
356
+
357
+ .recommend-product .button-wrap > div {
358
+ padding: 0;
359
+ margin: 0;
360
+ }
361
+
362
+ .plugin-box-footer {
363
+ display: flex;
364
+ justify-content: space-around;
365
+ vertical-align: middle;
366
+ align-items: center;
367
+ padding: 0px 10px 5px;
368
+ flex: 1;
369
+ margin-top: auto;
370
+ }
371
+ </style>
372
+ <?php
373
+ }
374
+ }
vendor/codeinwp/themeisle-sdk/src/Modules/Uninstall_feedback.php CHANGED
@@ -54,7 +54,9 @@ class Uninstall_Feedback extends Abstract_Module {
54
  'placeholder' => 'What\'s the plugin\'s name?',
55
  ),
56
  'I could not get the plugin to work' => array(
57
- 'id' => 4,
 
 
58
  ),
59
  'I no longer need the plugin' => array(
60
  'id' => 5,
@@ -62,7 +64,9 @@ class Uninstall_Feedback extends Abstract_Module {
62
  'placeholder' => 'If you could improve one thing about our product, what would it be?',
63
  ),
64
  'It\'s a temporary deactivation. I\'m just debugging an issue.' => array(
65
- 'id' => 6,
 
 
66
  ),
67
  );
68
  /**
@@ -75,7 +79,9 @@ class Uninstall_Feedback extends Abstract_Module {
75
  'id' => 7,
76
  ),
77
  'It lacks options' => array(
78
- 'id' => 8,
 
 
79
  ),
80
  'Is not working with a plugin that I need' => array(
81
  'id' => 9,
@@ -95,7 +101,7 @@ class Uninstall_Feedback extends Abstract_Module {
95
  'Other' => array(
96
  'id' => 999,
97
  'type' => 'textarea',
98
- 'placeholder' => 'cmon cmon tell us',
99
  ),
100
  );
101
  /**
@@ -103,13 +109,13 @@ class Uninstall_Feedback extends Abstract_Module {
103
  *
104
  * @var string $heading_plugin The heading of the modal
105
  */
106
- private $heading_plugin = 'Quick Feedback <span>Because we care about our clients, please leave us feedback.</span>';
107
  /**
108
  * Default heading for theme.
109
  *
110
  * @var string $heading_theme The heading of the modal
111
  */
112
- private $heading_theme = 'Looking to change {theme}? <span> What does not work for you?</span>';
113
  /**
114
  * Default submit button action text.
115
  *
@@ -127,342 +133,344 @@ class Uninstall_Feedback extends Abstract_Module {
127
  * Loads the additional resources
128
  */
129
  function load_resources() {
130
- add_thickbox();
 
 
 
 
131
 
132
- $id = $this->product->get_key() . '_deactivate';
133
 
134
- $this->add_css( $this->product->get_type(), $this->product->get_key() );
135
- $this->add_js( $this->product->get_type(), $this->product->get_key(), '#TB_inline?' . apply_filters( $this->product->get_key() . '_feedback_deactivate_attributes', 'width=600&height=550' ) . '&inlineId=' . $id );
 
136
 
137
- echo '<div id="' . $id . '" style="display:none;" class="themeisle-deactivate-box">' . $this->get_html( $this->product->get_type(), $this->product->get_key() ) . '</div>';
 
 
 
138
  }
139
 
140
  /**
141
- * Loads the css
142
- *
143
- * @param string $type The type of product.
144
- * @param string $key The product key.
145
  */
146
- function add_css( $type, $key ) {
147
- $key = esc_attr( $key );
148
- $suffix = Product::THEME_TYPE === $type ? 'theme-install-php' : 'plugins-php';
149
- $icon = esc_attr( apply_filters( $this->product->get_slug() . '_uninstall_feedback_icon', '' ) );
150
- if ( empty( $icon ) ) {
151
- $icon = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyFpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQyIDc5LjE2MDkyNCwgMjAxNy8wNy8xMy0wMTowNjozOSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpDNkVDM0M4RkYxMzMxMUU3OEMyMkQ0NTIxRTVEQ0ZBRiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpDNkVDM0M5MEYxMzMxMUU3OEMyMkQ0NTIxRTVEQ0ZBRiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkM2RUMzQzhERjEzMzExRTc4QzIyRDQ1MjFFNURDRkFGIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkM2RUMzQzhFRjEzMzExRTc4QzIyRDQ1MjFFNURDRkFGIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+KBNOswAAFtFJREFUeNrkWwmUXVWV3W/8Y81zkVAhgUwQg00IAYIRGcRuERDSKqALtVEbxRYcGzWIuhatKCYuUXQtERRtFAccQCDtckCZwpRISEIlIXMqlaGGP///ht7n3vd//YRUUkljN718a53U+++//97d95yzz3BvjDAM8fd02May4YndaZhoDErYeu/laCyN8rN16PuDAPA83mcAjjOxd8jcVypydhrlKspCSidlhPIk5T8p9/+PAP8fTrZJaaQ0UFxKiVKk/CvlU5Rk3b0C+gTKFZRvUa75/wJ4EuVcyimU2RGQdkqCkoOBDExjBoJx3Uwm5OlXt4bFrIPgTXSJK+DY59PEO8a5s0mPiEPyfUrwMieh3ED57qsTsJBhoXAOmps+gd6u85AvGtgxQEOmJcfj+vvxDsvS/hzsB5pkgA9QplJuoux59QD2g1ZUvCXhVe+4pnjxJc5gdx8SxTza1jwDY9ntMDdsBlLJQ4O2CTogRs+vBzydFmLCMm98NWl4OvL5O3Hd+09/9p8/iK/9GOjfRHZKpnHZWy7AlbfPRuK918DYTm3H3PHZWrQbVnHKtUBbh201EvSFvHLX0TLlK3ksRLG4HPPmnL7+0vfiaz8EOkwP+aduwPKbZ+DadyzBnVuPBa4nEQf+/hqW0zKvZcqkJoYmi0DTMXo2+cyltiu8oSi+HQrR3UG5+n9Fw6bFmRYJOVehUf/VAsrPacodOPtM3LcmjmPSwMz4cvzXAJEXt6C89gv49rJTcMk3zkdPL8e9e0iTVNHTTziuGTi9D5jF73oaNVg5RnLAjiywagfwp01ybiJufQOOuYMTdf9hg3s5H83oEQIWhYwOMGySf2KNFTjJchW0EMmPKB1KMx2d2LQFGCKtvPD0A1izbitnitcZbrat+T12Fi8i4C5g6y49kDkk7re/RoNtTmo+DiKmFlPupaZPbAPOp3VceSLwYD/fttrFUPlbSNsL+YgtB48QjGKmje+ceBlKlqsATBywIe82sG9TC5OhONqP2wOnucB0wRY13Cn6qQWPYgEtVNZvf8/J3RhnZAprrtjY81qkxHX3jGrtvn8esHgm0wzek6Vf76Y2Q19ncibBmymeM1Mz+H1IS2ji9XfPAuZzAm5+ajLWDn8JKfvymgprQczHyvbpGEh14f2nX89sLyVsehQmbQewKj5GBxtQzMXQ3DvyWcvxz9rPvFf9Fed+ELjnl8Q07To07FyJ3MATCDouxXmL344pO55nmsFs8avMHE8jmH1/puzmkEsarBo7n2dweCbn06YFxJizWJzFErVW5Kwez8m45VTgM08txqqhu5C0HxyDHNIIDSxedCP6Ozk5Bb6rNHzkpCWQTJqlwQcWcgkUh+NXG2b4sf1uSjDGPvQITh98Bh/5F35s6UXTovvR+eaVuPD6O/DRt8bg/uL7CK+nj75mI7DtD0CefhkUopfYkUZtDdyn75Y2kMz+wvtW6s8yMRmCaCLwG2Za6E5ch4xnoMLPZUo2g3uPPQfr25iNFob3U76BpUMTVK2JBLOmP37hU5hE5yzBvbZz2p6lyXYSiH/AvBVLCI/pRvnmG7Fy8nysYtgVEz+jIYPuu7+NSvIe2OfZMIvh4YuQevIRkxYtx6fxd662hkZOzu9257Fk/esZrlaI2arY+PY70d8yhRNZOWKWPobSS4fPFBx37YaeHkwdGrgCqfDWZGveRHAQI6GWje07EXvfRzB/0XzMn0UfzdBnH/oLwrOogTcfS7BbtSaPxL7kfp+aLayliR+nJytDEz8jnsRpDW/F45kVFTfE0rmXo7+VPOqXjygOn0f5qXgk5QnKc9Ty50MVfozbGjqyVFFwIFWM0XkioXPiB8hct9wGfI15Qmo3gnfSb3MZVW4e1SGmHtL8K1u1G1QYciyCflPqPFRK9ouN0/CJM6+LNBtOKA6Lqy6hfJri1H5jWbFUIX9D75597yM/NSWaiwfG4ZeDlpw4ldLvjXO23zOPeYMPw9/HqY5pRj+qg8/1yebYp0ktzwfNDGdgvnvcKnd6P7yKDmcTzLQE7Oc4SMflty1xA21JEyazng8v/4110uDmrrAphBXzdK47kUNYdS7j94ITEI7uhOkEh56sCefsGQ1cEotkIV3+ePKUm856txCXlKCXqLzgMIDfqEowaqQ1YaCv0URrjJyciGHu9k24+k8PsiB1EW8q6rg40S6GzPbZ3bSnOK1xAJZtHrpwmHDM4HODnDbtcAiPetNnb8x1fBFmebnK+oBHKVeOZ9JMBPEfHKDbTrBdKZMZX4gS3TDvmHjvA79BayGDYSONWKo8ce36BNZGgCd3EmyRRDt8BMw8kaNquhXmLC3vrHhOj2GXqp54POUHUVL0hQM1fBXvOjnlGOgm2Arjrcdn5VwHJ2zZggueXYEc4tSOD8vxxupW4zDAJcuaxBDSmUaQzzKS5HXV87cowWFMgWPElBtSHLPGW1I/L64HzGwB75KTjqShrI3JlBprgbnoPz3xONqZrVRoEKYVQrGzmJSkhgJ6PABGBLiPBBW3SJySXHhjJd8rfhiK/CVtF8X1pk3EdP4iL/x36ZOZtUonxClJ3iQ3lqldscQK70tmczj/mRUoE6z8TqolBboKWDqSVeDjabvZ0n7MxCH0A/ytjqyf5msspTCxTpvDEdCmHtZrKYuqgC8VbTe5ot1QZWjyg6ztYNbmzZi+Y5tkViqlNKhdQ4BVw45Dc3Uj0CIHalvuFfsJyuqrMLReAcI6+DGCHsX+AccZRPSR4JCa40bVtF8no4tJ4a7GxXELWLnRDyUBt7DghReQCop8gHFAmhdGPWd7f007ddqu4hLt+gX6vuTJCX4MXnHvlVRzS2lmrfgQxYVROtDg1sb+D6Zql4Y4PsY6ltasAQfanA3Px4xtWyIXqFZd9EXF0KFuw4h2rQioAu3UmbmpQUtiIKHDFKtoQTlb0t+9YkeFFtmNFUNMJw0ydGjUwErH16VNR6/rkT9zJCSJc8tNnjLnkD5rIp3N44TB7UzHx8KI75mcxGiw5XIENgLp2AdoPLq2Tx6aV1qOt01CcUieUTk8w0848SpjXeFUPDvUQmCBAloFK2IyZzC1jlIy8mnqN2bVlDWPlqnVhlwO7SOj/DymjYCARdRgBbA8yHXHfLhewwJW/GSbaJkaDrKwk0m4bXMwujkLv1JSWaJ6vIyoKvJMSWwM6XuVyXWM374kO8FBJknYKYn1T07hKzxyjPbfsE7qWoEyIsxU8SliNvFdZdJ8sctEIVEq1/xXDCVkdVQpOHAk+ZDYVSCQpubIj0w9SDVoQycnTGIwyAcOcBr7mAp6MSS6ephenonsrrX06wzcRJSLmJoMaYD0FpvjINsZbeQhxvAKx5HfiFR7hWltXV9bUtyB45G6YzPMS0scq1XTcFjT8Jiz26r0k4nlVS9ATUJ+jpVKcFgD1/uwvKY4GkeyI6fnbZQgWlt0fSqrDPJ039DgxfSFmkd5/Uk+9DiadSWrfhZjgRxrWohyIY+glFcmboQmgcdYVzTDdJs4KQ0E18RrBGi5KA3vRqb/e2jsLfKxjp5ctxW4mwnRmgHFlZ7y33BMwxHVBDqSlgVwuxF94YU6u/KV8UtzkjE3Yrux0B4qwGHF4kB4U5GmNkoQba21RoGWqI8soMVzHufnN1CaWc/6jh4N73HTSdJoS9TlqIoVdTwkhPH54u+Bg1hbL7zhhfByD8BtciS7AJa3oXD3Ls73ND7Oh7TpqiYtMELolkBkEFmzuqajTDnyYb/6i4NkRAKYZSdBM5pZUWjas0f/KBar8+U6ApNguJevepD3S1oq5WFYjjqT9GOPbiEpZ00KWgLpcVV0p0OE1uE0dHGiCLSBz3osicqyvchk5V1mzb9rJh2pStrdUSDca0buq8ZbZWgvMt4SycejnRgHKYCkiad8VF5C08fOnWPsXGXsGmh+bqTJ/5Gv+4skeOL/uxWJVTMwMuH+f2vnVcCVKMaWYIiKfsf33pLF8EuuKtsrDv1eIkagDTqo8+OSF1Y1vM6MNF5LOJT/Rg5QJPuWGGfNAzoH8rk4EkdxOKGb8uI8+6i1wUHdxKuxdB14N5J7ONCnKEkBRMuo7NXaRtSDluEoYNXzYIxn42KFW2H8mr/9RoD8YAK5bJqG7yGXSMC3rJqGa2YtU1RbnsJacZS9QlyS45vRzETxB3kOcJQAmlnlAC8v6Ya2NaG7saTSTbUSsX2H1mZ3J99i6BaPYYyJpO5Fyvd8zdxn82Ux+nSZBOinOIBG3cEQkgqicCXEZEvSQlm5De6d62CtcMmPDvYNtCh05GXsaGmlm/Pd5aI230hpokBZoeF8+VXA2yX58ALNxYrMOMNhpYJhFv4bWzswbe+gWp4/0JdL+RiGCbplCrVbbeYx91Ya6u2l9jy9hUHFV1NPgISpMuUXPF8VgZ7O8zSBm6MRUdmatITtZa1pE8H+gdHg90xP88yVYw72bGiHR841VdAMsbp7kn5HqJspSsOGNueK1uJW6cvZ0Yr6BWOa9RnfPSU+zbm/vRMX9P91nGIsxMiuBrXkku6kFXhV0FsYn8mufX3UakL7uBFpu8ri0vXYxGvfpbRR+qQ/ymE2+nqhf4TnWzlhLxLwFko+VGwfsHzd3d+OYjamwIp2C2T21cccq0mwluqHKsUs+DV3FJy7BfCDlE+q7ocCW1Ga0H+BZ6YcC+8xs6b9AwHLRO3a1KxCTLo9r8OQaGcX/ZmlJSZz5pv5vR1qbVc3usgT04a+f4R/VxDg414UNH3USjaJ55KvM8Hw6Q4717eiRP5wIt5leoLdqUb0d3VANe/qxik/r/PfX1cbAOTN8F7RqMkSzvA9DVYYkgnBo32TsT3Vwhf44y4/BjTnLRtbMTSQ1pwvaaGQlmRh617UMjwytvovImvDVUJL8LzBlrKGk0CRxSdh9WaGuTSvxwzkMzG8tJYxl2DdCFKoSj0Pz07qow83wygXUQ1Gmp1R5SQx598qwAZ1bwTBZw2/sgu+NmVEJm0z192VTuGxqceypK1gvCpW6ksh602bmrCV4rGiUhqVBN3k+fAwTZOgX1jDV/PdmYzWpLCqG9XTMgFy7lRragkbJKB8EQMbXWxY08yCy1Wldf3CiVS/D594orIaQ1mo7pULCZfHNsfcSxnU+7Sk7RJiA5/+Sf7gzv1MWkyLL//ZSSfirc8/zzwjPKAuHnt5Ujieyf3OXUkMZ1z09mTR0soUUIBX15IlKxOti7nXJyhG3Sq/76kmurx+eNjFjp2NJPE4Gvn8GIz9Jl2UsLmhDQ/PnKUX2eQdQri81w9q95JR8c0xi4wiMjV9l+GX51C7HzUi4hJN28UAj0yZhGe6e3Dqzu3Iwh23G5siMGmrDBdsrNnYgPSuBDoIurWpzCTMZ4IU+a56pRexeFhXaxsoknn3jiSxZyiGQs5BOrTQRgDmAWCrgH8697UYbOZ00BoNy9HRgn4fmrWGrCwobKgDnNAxTmvu0wQ7jdq9WJk1NW3zb9G1cMcpc3Dab7brimmcJpzyKYLu5PAkaR3OGViXt2EPkNASHhqZbCQI3LGDagRRIMuUfNFGJm+xxONAPQspPqNLadXcr8yrHi45ZWeiEXedOo+2WyJ1cGRq+cZSZaTkBtT0V3jh9v04x3SeQpibxxtGRKPSLriaoNtpWgurmnaLJfxqxhRc8WwfXrd9G0Zgjdt3rA6skeWdLEEXGY4ynLgcZ2AoK9SnSa32+9BQnmhT4jxvJcAUn+9EXYvxmkEpavfW+QuxpZ2ESu2GaoVfp6msukbD0FrCRy57Wa8g9p5f0s+eRzi0AIYnhWmZEc94yPTKi0hkvaJpiw5VJE+v7whx0Ysb4Pr2YZeFor6m0riYZRMhNfJvo3wmoJQ6t9DMJKOV0hY6PLcI+uDmW//cBpTxdFcvPn7hBZxAQ2l3LKMz/0jbvoqgfnawBTvLeRvhpVfDSD3Hp3GWStKkdzJGJfaQEeTONYJyl1FxOePD2HT2UnrALrxx5SSUEE60vVYDL3bhEk6cwJIEFuNfV5X7Ri3OH+6pYsoVMvn7Lv5HvNTWBlfiOlSltJl+chOB/htls+ztODjgxbKKx9fGNsFs+gPM9ntZkrK+tEdGjHz3b81ifD7cHZPDObfAbFmJJ2ZmMXVLA07d2oa8mt8j7i++TCa+ZhgyGnhYsuhM/Oqk6YiXmDeY5mBoWt8kwA9QHmYY9BXYcQDbtWEECf3XGoLR8X2QMSgztgT5rvuQ2ngG0ttglRLw3AAfvfZpdIzE8PrVnRhGpa67ZEZtfh0fxwCadZVW9bpRIz8j+nSo60Jdab7rK/Pm4tvzZiNeLA7CjP2ARHUbtfvShNcmEj9JtEWl0J66TZ6S2b4OZmkx06+FLDSVFdRWP8m07QT8nS/NxzmruzEkoGMBUhcW4E4vo9zvIv/LJIKyLLP6SF2Uh9PnofRXF7n7Eyp0WC28fnEOdpeP4tMMQcvjasKc7gqSb8nDag5QfDSO/J8lswoU2K/PnYUbz16wwTGdH5pm7K7QcjZSFGGFJsWOxIrxL8W0Dgp4drSzzVHNSr3Fty3a0jv+ki9BNzHkfHXpPFzy5CTElg0geWlG0yqDcf7HDdjzuVZ0LtuN+Hl5XWyzasrc3ozh25rQ+d1diJ1WrDWbRm5uRebeNLp/NAB7dinaZ2lg9DOt2Ht3E76+YMajSxfM/QFJ7Sem6exToBTYIwcsfxdR7o7ATsw0JFelVg1iuXXzdFy7uEHFT5BtmQUwQlRQejyO+MKC6lQq77HKCAs+ys/FEDtLth/FdP/KLiEYZhnX7yB2ulyXriSvx3i+r1z6ycfmfehtfed/H+1WOc2iIqiCOgrAJC21sYRFLO6LAM+e6Hq0RQ2ULQ99cwy8OdHNCyIs4o0043ce9hQBm6Tt9PB6g4qehpGFPZlAPH52u/X1MAnDzcCeRAMrs7Jy5DoLkYATksoWEyflbyqY7s7n9/WgUIrBdkNNSgKoKkbd+SFIq/6KOP5llPOjnaq7J7QIz/LOzUlY4ODcTmqL3uB06hXYkpR3BGx31V3nfaVQA3Wi+90u1ZVU99ukEIelnt2uvy+45tSpQ6nvXPgAnrrsDlwxaxUrRwsFz8HRHPYBw1+ktv8CA9FC7oSOuBnuYaLcBrvDqHU7jfU6T5LNKwJA9aaCqKMRRDvsOnV3RJp0og11Pa0nSMrRIK9VUtLLE3M6d+Dui36IM57ehqWr3oD+zGRYTFmtowQcQv9HC9Hy6ye42WCfZeDz81NSxFpfVqZbXVU0qsCk5OvV8xdGSyWmdD9oAW5v1I2sjO3ZkL2V1fv90aoidJzypca2cc3Jf8a7pq/CHS8uwJfXnIvthW7FsbI74Uj3Sz9GOScC/fNqDXmQTRXS87mlFARnzYwnll3U1JZFmR7g7dba9Bjh1F4Ot4IKjSUY0vslKzs0CLle3qZ70GLS5c16c4rBqqL8kloN1PsqX9K9aea7+42gHEfaKeLDJz+MNRd/HjedfB+unPYnloQWg4F52Dh8qO8lHk+Jtv+INWSjpp+MarjAYvvnfVNxSXOrlJWP8pY07BaClRLUl//g8Fma7FJqmfVAU3Q9WMfrzFF9ZkdxQ5GTtGoN40lev4cfblVmbST0xBnmI/xHdhcVDo6A8++UlH0+t28qrlxxPVbnZnBOjYOy9OG2Hm6OZPz9/q6EHNG4eTlHuIQaPY7mzN+Yn1N9JMMq0mQ/icquHmpwLa/LXotHVPEalD5EP23l9VUc+fUc9UoOKQU/9x7OLSndelJfHwesckRqtKyVdnLbOjQ4hUPuATP+3v4r3n8LMAAsR90w+kkNLQAAAABJRU5ErkJggg==';
152
- }
 
 
153
  ?>
154
- <style type="text/css" id="<?php echo $key; ?>ti-deactivate-css">
155
- input[name="ti-deactivate-option"] ~ div {
156
- display: none;
157
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
158
 
159
- input[name="ti-deactivate-option"]:checked ~ div {
160
- display: block;
 
 
 
 
 
 
 
 
 
 
161
  }
162
 
163
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_window.thickbox-loading:before {
164
- background: none !important;
 
 
165
  }
166
 
167
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_title {
168
- background: url('<?php echo $icon; ?>') 40px 30px no-repeat;
169
- border: none;
170
- box-sizing: border-box;
171
- color: #373e40;
172
- font-size: 24px;
173
- font-weight: 700;
174
- height: 90px;
175
- padding: 40px 40px 0 120px;
176
- text-transform: uppercase;
177
- width: 100%;
178
  }
179
 
180
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #<?php echo $key; ?>-info-disclosure-content ul i {
181
- padding-left: 5px;
182
- margin: 0 1px;
183
  }
184
 
185
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #<?php echo $key; ?>-info-disclosure-content ul strong {
186
- width: 125px;
187
- display: block;
188
  margin: 0;
189
- float: left;
190
  }
191
 
192
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #<?php echo $key; ?>-info-disclosure-content ul {
193
- margin-left: 39px;
194
- margin-top: 2px;
195
- padding-top: 0px;
196
  }
197
 
198
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #<?php echo $key; ?>-info-disclosure-content p {
199
- font-style: italic;
200
- margin-bottom: 0px;
201
  }
202
 
203
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #<?php echo $key; ?>-info-disclosure-content {
 
 
204
  display: none;
205
- }
206
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container.<?php echo $key; ?>-container-disc-open #<?php echo $key; ?>-info-disclosure-content {
207
- display: block;
208
- position:absolute;
209
- bottom: 100px;
210
  }
211
 
212
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container.<?php echo $key; ?>-container-disc-open #<?php echo $key; ?>-info-disclosure {
213
- top: -130px;
 
 
 
214
  }
215
 
216
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container.<?php echo $key; ?>-container-disc-open {
217
- height: 590px !important;
218
- }
219
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #<?php echo $key; ?>-info-disclosure {
220
- position: absolute;
221
- top: -50px;
222
- font-size: 13px;
223
- color: #8d9192;
224
- font-weight: 400;
225
- right: 40px;
226
  }
227
 
228
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container div.actions {
229
- box-sizing: border-box;
230
- padding: 30px 40px;
231
- background-color: #eaeaea;
232
  }
233
 
234
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button {
235
- background: #ec5d60;
236
- border: none;
237
- box-shadow: none;
238
- color: #ffffff;
239
- font-size: 15px;
240
- font-weight: 700;
241
- height: auto;
242
- line-height: 20px;
243
- padding: 10px 15px;
244
- text-transform: uppercase;
245
- -webkit-transition: 0.3s ease;
246
- -moz-transition: 0.3s ease;
247
- -ms-transition: 0.3s ease;
248
- -o-transition: 0.3s ease;
249
- transition: 0.3s ease;
250
  }
251
 
252
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary {
253
- background: transparent;
254
- box-shadow: none;
255
- color: #8d9192;
256
- font-weight: 400;
257
- float: right;
258
- line-height: 40px;
259
- padding: 0;
260
- text-decoration: underline;
261
- text-shadow: none;
262
- text-transform: none;
263
  }
264
 
265
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:hover {
266
- background: #e83f42;
 
267
  }
268
 
269
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary:hover {
270
- background: transparent;
 
 
 
271
  }
272
 
273
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:focus {
274
- box-shadow: none;
275
- outline: none;
276
  }
277
 
278
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:active {
279
- box-shadow: none;
280
- transform: translateY(0);
281
  }
282
 
283
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button:disabled {
284
- cursor: not-allowed;
 
285
  }
286
 
287
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container input.button.button-primary:hover {
288
- text-decoration: none;
 
 
 
 
 
289
  }
290
 
291
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container div.revive_network-container {
292
- background-color: #ffffff;
 
293
  }
294
 
295
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list {
296
- margin: 0;
297
  }
298
 
299
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li {
300
- color: #373e40;
301
- font-size: 13px;
302
- margin-bottom: 5px;
 
303
  }
304
 
305
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li label {
306
- margin-left: 10px;
307
- line-height: 28px;
308
- font-size: 15px;
309
  }
310
 
311
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list input[type=radio] {
312
- margin-top: 1px;
313
  }
314
 
315
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container #TB_ajaxContent {
316
- box-sizing: border-box;
317
- height: auto !important;
318
- padding: 20px 40px;
319
- width: 100% !important;
 
 
 
 
 
 
 
 
 
320
  }
321
 
322
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container li div textarea {
323
- padding: 10px 15px;
324
- width: 100%;
325
  }
326
 
327
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container ul.ti-list li div {
328
- margin: 10px 30px;
329
  }
330
 
331
- .<?php echo $key; ?>-container #TB_title #TB_ajaxWindowTitle {
332
- box-sizing: border-box;
333
- display: block;
334
- float: none;
335
- font-weight: 700;
336
- line-height: 1;
337
- padding: 0;
338
- text-align: left;
339
- width: 100%;
340
  }
341
 
342
- .<?php echo $key; ?>-container #TB_title #TB_ajaxWindowTitle span {
343
- color: #8d9192;
344
- display: block;
345
- font-size: 15px;
346
- font-weight: 400;
347
- margin-top: 5px;
348
- text-transform: none;
349
- }
350
 
351
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container .actions {
352
- width: 100%;
353
  display: block;
354
  position: absolute;
355
- left: 0;
356
- bottom: 0;
 
 
 
 
 
357
  }
358
 
359
- .theme-install-php .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon:before {
360
- font-size: 32px;
 
 
 
 
 
361
  }
362
 
363
- .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon {
364
- color: #eee;
 
 
 
 
 
 
 
 
365
  }
366
 
367
- .<?php echo $key; ?>-container #TB_closeWindowButton {
368
- left: auto;
369
- right: -5px;
370
- top: -35px;
371
- color: #eee;
372
  }
373
 
374
- .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon {
375
- text-align: right;
376
- line-height: 25px;
377
- width: 25px;
378
- height: 25px;
379
- }
380
 
381
- .<?php echo $key; ?>-container #TB_closeWindowButton:focus .tb-close-icon {
382
- box-shadow: none;
383
- outline: none;
384
  }
385
 
386
- .<?php echo $key; ?>-container #TB_closeWindowButton .tb-close-icon:before {
387
- font: normal 25px dashicons;
388
  }
389
 
390
- body.<?php echo $suffix; ?> .<?php echo $key; ?>-container {
391
- margin: auto !important;
392
- height: 500px !important;
393
- top: 0 !important;
394
- left: 0 !important;
395
- bottom: 0 !important;
396
- right: 0 !important;
397
- width: 600px !important;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
398
  }
399
  </style>
400
  <?php
401
- do_action( $this->product->get_key() . '_uninstall_feedback_after_css' );
402
  }
403
 
404
  /**
405
- * Loads the js.
406
- *
407
- * @param string $type The type of product.
408
- * @param string $key The product key.
409
- * @param string $src The url that will hijack the deactivate button url.
410
  */
411
- function add_js( $type, $key, $src ) {
412
- $heading = Product::PLUGIN_TYPE === $type ? $this->heading_plugin : str_replace( '{theme}', $this->product->get_name(), $this->heading_theme );
413
- $key = esc_attr( $key );
414
- $heading = apply_filters( $this->product->get_key() . '_feedback_deactivate_heading', $heading );
415
  ?>
416
  <script type="text/javascript" id="ti-deactivate-js">
417
  (function ($) {
418
  $(document).ready(function () {
419
- var auto_trigger = false;
420
- var target_element = 'tr[data-plugin^="<?php echo $this->product->get_slug(); ?>/"] span.deactivate a';
421
- <?php
422
- if ( 'theme' === $type ) {
423
- ?>
424
- auto_trigger = true;
425
- if ($('a.ti-auto-anchor').length == 0) {
426
- $('body').append($('<a class="ti-auto-anchor" href=""></a>'));
427
- }
428
- target_element = 'a.ti-auto-anchor';
429
- <?php
430
- }
431
- ?>
432
 
433
- if (auto_trigger) {
434
- setTimeout(function () {
435
- $('a.ti-auto-anchor').trigger('click');
436
- }, <?php echo self::AUTO_TRIGGER_DEACTIVATE_WINDOW_SECONDS * 1000; ?> );
437
- }
438
- $(document).on('thickbox:removed', function () {
439
- $.post(ajaxurl, {
440
- 'action': '<?php echo $key . '_uninstall_feedback'; ?>',
441
- 'nonce': '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
442
- 'type': '<?php echo $type; ?>',
443
- 'key': '<?php echo $key; ?>'
444
- });
445
- });
446
- var href = $(target_element).attr('href');
447
- $('#<?php echo $key; ?>ti-deactivate-no').attr('data-ti-action', href).on('click', function (e) {
448
  e.preventDefault();
449
- e.stopPropagation();
450
-
451
- $('body').unbind('thickbox:removed');
452
- tb_remove();
453
- var redirect = $(this).attr('data-ti-action');
454
- if (redirect !== '') {
455
- location.href = redirect;
456
- }
457
  });
458
 
459
- $('#<?php echo $key; ?> ul.ti-list label, #<?php echo $key; ?> ul.ti-list input[name="ti-deactivate-option"]').on('click', function (e) {
460
- $('#<?php echo $key; ?>ti-deactivate-yes').val($('#<?php echo $key; ?>ti-deactivate-yes').attr('data-after-text'));
 
 
461
 
462
- var radio = $(this).prop('tagName') === 'LABEL' ? $(this).parent() : $(this);
463
- if (radio.parent().find('textarea').length > 0 && radio.parent().find('textarea').val().length === 0) {
 
 
464
  $('#<?php echo $key; ?>ti-deactivate-yes').attr('disabled', 'disabled');
465
- radio.parent().find('textarea').on('keyup', function (ee) {
466
  if ($(this).val().length === 0) {
467
  $('#<?php echo $key; ?>ti-deactivate-yes').attr('disabled', 'disabled');
468
  } else {
@@ -473,127 +481,236 @@ class Uninstall_Feedback extends Abstract_Module {
473
  $('#<?php echo $key; ?>ti-deactivate-yes').removeAttr('disabled');
474
  }
475
  });
476
- $("#<?php echo $key; ?>-info-disclosure").on('click', function () {
477
- $("#TB_window").toggleClass("<?php echo $key; ?>-container-disc-open");
478
- return false;
479
- });
480
- $('#<?php echo $key; ?>ti-deactivate-yes').attr('data-ti-action', href).on('click', function (e) {
481
  e.preventDefault();
482
  e.stopPropagation();
 
 
 
483
  $.post(ajaxurl, {
484
- 'action': '<?php echo $key . '_uninstall_feedback'; ?>',
485
  'nonce': '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
486
- 'id': $('#<?php echo $key; ?> input[name="ti-deactivate-option"]:checked').parent().attr('ti-option-id'),
487
- 'msg': $('#<?php echo $key; ?> input[name="ti-deactivate-option"]:checked').parent().find('textarea').val(),
488
- 'type': '<?php echo $type; ?>',
 
489
  });
490
- var redirect = $(this).attr('data-ti-action');
491
- if (redirect != '') {
492
- location.href = redirect;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
493
  } else {
494
- $('body').unbind('thickbox:removed');
495
- tb_remove();
496
  }
497
  });
498
 
499
- $(target_element).attr('name', '<?php echo wp_kses( $heading, array( 'span' => array() ) ); ?>').attr('href', '<?php echo $src; ?>').addClass('thickbox');
500
- var thicbox_timer;
501
- $(target_element).on('click', function () {
502
- tiBindThickbox();
 
 
 
 
 
503
  });
504
 
505
- function tiBindThickbox() {
506
- var thicbox_timer = setTimeout(function () {
507
- if ($("#<?php echo esc_html( $key ); ?>").is(":visible")) {
508
- $("body").trigger('thickbox:iframe:loaded');
509
- $("#TB_window").addClass("<?php echo $key; ?>-container");
510
- clearTimeout(thicbox_timer);
511
- $('body').unbind('thickbox:removed');
512
- } else {
513
- tiBindThickbox();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
514
  }
515
- }, 100);
516
- }
517
  });
518
  })(jQuery);
 
519
  </script>
520
  <?php
521
-
522
  do_action( $this->product->get_key() . '_uninstall_feedback_after_js' );
523
  }
524
 
525
  /**
526
- * Generates the HTML.
527
  *
528
- * @param string $type The type of product.
529
- * @param string $key The product key.
530
  */
531
- function get_html( $type, $key ) {
532
- $options = Product::PLUGIN_TYPE === $type ? $this->options_plugin : $this->options_theme;
533
- $button_cancel = Product::PLUGIN_TYPE === $type ? $this->button_cancel : 'Skip';
534
- $button_submit = Product::PLUGIN_TYPE === $type ? $this->button_submit : 'Submit';
535
- $options = $this->randomize_options( apply_filters( $this->product->get_key() . '_feedback_deactivate_options', $options ) );
536
- $button_submit = apply_filters( $this->product->get_key() . '_feedback_deactivate_button_submit', $button_submit );
537
- $button_cancel = apply_filters( $this->product->get_key() . '_feedback_deactivate_button_cancel', $button_cancel );
538
-
539
- $options += $this->other;
540
-
541
- $list = '';
542
- foreach ( $options as $title => $attributes ) {
543
- $id = $attributes['id'];
544
- $list .= '<li ti-option-id="' . $id . '"><input type="radio" name="ti-deactivate-option" id="' . $key . $id . '"><label for="' . $key . $id . '">' . str_replace( '{theme}', $this->product->get_name(), $title ) . '</label>';
545
- if ( array_key_exists( 'type', $attributes ) ) {
546
- $list .= '<div>';
547
- $placeholder = array_key_exists( 'placeholder', $attributes ) ? $attributes['placeholder'] : '';
548
- switch ( $attributes['type'] ) {
549
- case 'text':
550
- $list .= '<textarea style="width: 100%" rows="1" name="comments" placeholder="' . $placeholder . '"></textarea>';
551
- break;
552
- case 'textarea':
553
- $list .= '<textarea style="width: 100%" rows="2" name="comments" placeholder="' . $placeholder . '"></textarea>';
554
- break;
555
- }
556
- $list .= '</div>';
557
- }
558
- $list .= '</li>';
559
- }
560
-
561
  $disclosure_new_labels = apply_filters( $this->product->get_slug() . '_themeisle_sdk_disclosure_content_labels', [], $this->product );
562
  $disclosure_labels = array_merge(
563
  [
564
  'title' => 'Below is a detailed view of all data that ThemeIsle will receive if you fill in this survey. No domain name, email address or IP addresses are transmited after you submit the survey.',
565
  'items' => [
566
  sprintf( '%s %s version %s %s %s %s', '<strong>', ucwords( $this->product->get_type() ), '</strong>', '<code>', $this->product->get_version(), '</code>' ),
567
- sprintf( '%s Uninstall reason %s %s Selected reson from the above survey %s ', '<strong>', '</strong>', '<i>', '</i>' ),
568
  ],
569
  ],
570
  $disclosure_new_labels
571
  );
572
 
573
- $info_disclosure_link = '<a href="#" id="' . $this->product->get_key() . '-info-disclosure">' . apply_filters( $this->product->get_slug() . '_themeisle_sdk_info_collect_cta', 'What info do we collect?' ) . '</a>';
574
- $info_disclosure_content = '<div id="' . $this->product->get_key() . '-info-disclosure-content"><p>' . wp_kses_post( $disclosure_labels['title'] ) . '</p><ul>';
575
  foreach ( $disclosure_labels['items'] as $disclosure_item ) {
576
  $info_disclosure_content .= sprintf( '<li>%s</li>', wp_kses_post( $disclosure_item ) );
577
  }
578
  $info_disclosure_content .= '</ul></div>';
579
 
580
- return
581
- '<div id="' . $this->product->get_key() . '"><ul class="ti-list">' . $list . '</ul>'
582
- . $info_disclosure_content
583
- . '<div class="actions">'
584
- . get_submit_button(
585
- $button_submit,
586
- 'secondary',
587
- $this->product->get_key() . 'ti-deactivate-yes',
588
- false,
589
- array(
590
- 'data-after-text' => $button_submit,
591
- 'disabled' => true,
592
- )
593
- )
594
- . wp_kses_post( $info_disclosure_link )
595
- . get_submit_button( $button_cancel, 'primary', $this->product->get_key() . 'ti-deactivate-no', false )
596
- . '</div></div>';
597
  }
598
 
599
  /**
@@ -719,6 +836,11 @@ class Uninstall_Feedback extends Abstract_Module {
719
  * @return Uninstall_Feedback Current module instance.
720
  */
721
  public function load( $product ) {
 
 
 
 
 
722
  $this->product = $product;
723
  add_action( 'admin_head', array( $this, 'load_resources' ) );
724
  add_action( 'wp_ajax_' . $this->product->get_key() . '_uninstall_feedback', array( $this, 'post_deactivate' ) );
54
  'placeholder' => 'What\'s the plugin\'s name?',
55
  ),
56
  'I could not get the plugin to work' => array(
57
+ 'type' => 'textarea',
58
+ 'placeholder' => 'What problem are you experiencing?',
59
+ 'id' => 4,
60
  ),
61
  'I no longer need the plugin' => array(
62
  'id' => 5,
64
  'placeholder' => 'If you could improve one thing about our product, what would it be?',
65
  ),
66
  'It\'s a temporary deactivation. I\'m just debugging an issue.' => array(
67
+ 'type' => 'textarea',
68
+ 'placeholder' => 'What problem are you experiencing?',
69
+ 'id' => 6,
70
  ),
71
  );
72
  /**
79
  'id' => 7,
80
  ),
81
  'It lacks options' => array(
82
+ 'placeholder' => 'What option is missing?',
83
+ 'type' => 'text',
84
+ 'id' => 8,
85
  ),
86
  'Is not working with a plugin that I need' => array(
87
  'id' => 9,
101
  'Other' => array(
102
  'id' => 999,
103
  'type' => 'textarea',
104
+ 'placeholder' => 'What can we do better?',
105
  ),
106
  );
107
  /**
109
  *
110
  * @var string $heading_plugin The heading of the modal
111
  */
112
+ private $heading_plugin = 'What’s wrong?';
113
  /**
114
  * Default heading for theme.
115
  *
116
  * @var string $heading_theme The heading of the modal
117
  */
118
+ private $heading_theme = 'What does not work for you in {theme}?';
119
  /**
120
  * Default submit button action text.
121
  *
133
  * Loads the additional resources
134
  */
135
  function load_resources() {
136
+ $screen = get_current_screen();
137
+
138
+ if ( ! $screen || ! in_array( $screen->id, array( 'theme-install', 'plugins' ) ) ) {
139
+ return;
140
+ }
141
 
142
+ $this->add_feedback_popup_style();
143
 
144
+ if ( $this->product->get_type() === 'theme' ) {
145
+ $this->add_theme_feedback_drawer_js();
146
+ $this->render_theme_feedback_popup();
147
 
148
+ return;
149
+ }
150
+ $this->add_plugin_feedback_popup_js();
151
+ $this->render_plugin_feedback_popup();
152
  }
153
 
154
  /**
155
+ * Render theme feedback drawer.
 
 
 
156
  */
157
+ private function render_theme_feedback_popup() {
158
+ $heading = str_replace( '{theme}', $this->product->get_name(), $this->heading_theme );
159
+ $button_submit = apply_filters( $this->product->get_key() . '_feedback_deactivate_button_submit', 'Submit' );
160
+ $options = $this->options_theme;
161
+ $options = $this->randomize_options( apply_filters( $this->product->get_key() . '_feedback_deactivate_options', $options ) );
162
+ $info_disclosure_link = '<a href="#" class="info-disclosure-link">' . apply_filters( $this->product->get_slug() . '_themeisle_sdk_info_collect_cta', 'What info do we collect?' ) . '</a>';
163
+
164
+ $options += $this->other;
165
+
166
  ?>
167
+ <div class="ti-theme-uninstall-feedback-drawer ti-feedback">
168
+ <div class="popup--header">
169
+ <h5><?php echo wp_kses( $heading, array( 'span' => true ) ); ?> </h5>
170
+ <button class="toggle"><span>&times;</span></button>
171
+ </div><!--/.popup--header-->
172
+ <div class="popup--body">
173
+ <?php $this->render_options_list( $options ); ?>
174
+ </div><!--/.popup--body-->
175
+ <div class="popup--footer">
176
+ <div class="actions">
177
+ <?php
178
+ echo wp_kses_post( $info_disclosure_link );
179
+ echo wp_kses_post( $this->get_disclosure_labels() );
180
+ echo '<div class="buttons">';
181
+ echo get_submit_button(
182
+ $button_submit,
183
+ 'secondary',
184
+ $this->product->get_key() . 'ti-deactivate-yes',
185
+ false,
186
+ array(
187
+ 'data-after-text' => $button_submit,
188
+ 'disabled' => true,
189
+ )
190
+ );
191
+ echo '</div>';
192
+ ?>
193
+ </div><!--/.actions-->
194
+ </div><!--/.popup--footer-->
195
+ </div>
196
+ <?php
197
+ }
198
 
199
+ /**
200
+ * Add feedback styles.
201
+ */
202
+ private function add_feedback_popup_style() {
203
+ ?>
204
+ <style>
205
+ .ti-feedback {
206
+ background: #fff;
207
+ max-width: 400px;
208
+ z-index: 10000;
209
+ box-shadow: 0 0 15px -5px rgba(0, 0, 0, .5);
210
+ transition: all .3s ease-out;
211
  }
212
 
213
+
214
+ .ti-feedback .popup--header {
215
+ position: relative;
216
+ background-color: #23A1CE;
217
  }
218
 
219
+ .ti-feedback .popup--header h5 {
220
+ margin: 0;
221
+ font-size: 16px;
222
+ padding: 15px;
223
+ color: #fff;
224
+ font-weight: 600;
225
+ text-align: center;
226
+ letter-spacing: .3px;
 
 
 
227
  }
228
 
229
+ .ti-feedback .popup--body {
230
+ padding: 15px;
 
231
  }
232
 
233
+ .ti-feedback .popup--form {
 
 
234
  margin: 0;
235
+ font-size: 13px;
236
  }
237
 
238
+ .ti-feedback .popup--form input[type="radio"] {
239
+ margin: 0 10px 0 0;
 
 
240
  }
241
 
242
+ .ti-feedback .popup--form input[type="radio"]:checked ~ textarea {
243
+ display: block;
 
244
  }
245
 
246
+ .ti-feedback .popup--form textarea {
247
+ width: 100%;
248
+ margin: 10px 0 0;
249
  display: none;
250
+ max-height: 150px;
 
 
 
 
251
  }
252
 
253
+ .ti-feedback li {
254
+ display: flex;
255
+ align-items: center;
256
+ margin-bottom: 15px;
257
+ flex-wrap: wrap;
258
  }
259
 
260
+ .ti-feedback li label {
261
+ max-width: 90%;
 
 
 
 
 
 
 
 
262
  }
263
 
264
+ .ti-feedback li:last-child {
265
+ margin-bottom: 0;
 
 
266
  }
267
 
268
+ .ti-feedback .popup--footer {
269
+ padding: 0 15px 15px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
270
  }
271
 
272
+ .ti-feedback .actions {
273
+ display: flex;
274
+ flex-wrap: wrap;
 
 
 
 
 
 
 
 
275
  }
276
 
277
+ .info-disclosure-link {
278
+ width: 100%;
279
+ margin-bottom: 15px;
280
  }
281
 
282
+ .ti-feedback .info-disclosure-content {
283
+ max-height: 0;
284
+ overflow: hidden;
285
+ width: 100%;
286
+ transition: .3s ease;
287
  }
288
 
289
+ .ti-feedback .info-disclosure-content.active {
290
+ max-height: 300px;
 
291
  }
292
 
293
+ .ti-feedback .info-disclosure-content p {
294
+ margin: 0;
 
295
  }
296
 
297
+ .ti-feedback .info-disclosure-content ul {
298
+ margin: 10px 0;
299
+ border-radius: 3px;
300
  }
301
 
302
+ .ti-feedback .info-disclosure-content ul li {
303
+ display: flex;
304
+ align-items: center;
305
+ justify-content: space-between;
306
+ margin-bottom: 0;
307
+ padding: 5px 0;
308
+ border-bottom: 1px solid #ccc;
309
  }
310
 
311
+ .ti-feedback .buttons {
312
+ display: flex;
313
+ width: 100%;
314
  }
315
 
316
+ .ti-feedback .buttons input:last-child {
317
+ margin-left: auto;
318
  }
319
 
320
+ .ti-theme-uninstall-feedback-drawer {
321
+ border-top-left-radius: 5px;
322
+ position: fixed;
323
+ top: 100%;
324
+ right: 15px;
325
  }
326
 
327
+ .ti-theme-uninstall-feedback-drawer.active {
328
+ transform: translateY(-100%);
 
 
329
  }
330
 
331
+ .ti-theme-uninstall-feedback-drawer .popup--header {
332
+ border-top-left-radius: 5px;
333
  }
334
 
335
+ .ti-theme-uninstall-feedback-drawer .popup--header .toggle {
336
+ position: absolute;
337
+ padding: 3px 0;
338
+ width: 30px;
339
+ top: -26px;
340
+ right: 0;
341
+ cursor: pointer;
342
+ border-top-left-radius: 5px;
343
+ border-top-right-radius: 5px;
344
+ font-size: 20px;
345
+ background-color: #23A1CE;
346
+ color: #fff;
347
+ border: none;
348
+ line-height: 20px;
349
  }
350
 
351
+ .ti-theme-uninstall-feedback-drawer .toggle span {
352
+ margin: 0;
353
+ display: inline-block;
354
  }
355
 
356
+ .ti-theme-uninstall-feedback-drawer:not(.active) .toggle span {
357
+ transform: rotate(45deg);
358
  }
359
 
360
+ .ti-theme-uninstall-feedback-drawer .popup--header .toggle:hover {
361
+ background-color: #1880a5;
 
 
 
 
 
 
 
362
  }
363
 
 
 
 
 
 
 
 
 
364
 
365
+ .ti-plugin-uninstall-feedback-popup .popup--header:before {
366
+ content: "";
367
  display: block;
368
  position: absolute;
369
+ border: 20px solid #23A1CE;
370
+ left: -10px;
371
+ top: 50%;
372
+ border-top: 20px solid transparent;
373
+ border-bottom: 20px solid transparent;
374
+ border-left: 0;
375
+ transform: translateY(-50%);
376
  }
377
 
378
+ .ti-plugin-uninstall-feedback-popup {
379
+ display: none;
380
+ position: absolute;
381
+ white-space: normal;
382
+ width: 400px;
383
+ left: 100%;
384
+ top: -15px;
385
  }
386
 
387
+ .ti-plugin-uninstall-feedback-popup.sending-feedback .popup--body i {
388
+ animation: rotation 2s infinite linear;
389
+ display: block;
390
+ float: none;
391
+ align-items: center;
392
+ width: 100%;
393
+ margin: 0 auto;
394
+ height: 100%;
395
+ background: transparent;
396
+ padding: 0;
397
  }
398
 
399
+ .ti-plugin-uninstall-feedback-popup.sending-feedback .popup--body i:before {
400
+ padding: 0;
401
+ background: transparent;
402
+ box-shadow: none;
403
+ color: #b4b9be
404
  }
405
 
 
 
 
 
 
 
406
 
407
+ .ti-plugin-uninstall-feedback-popup.active {
408
+ display: block;
 
409
  }
410
 
411
+ tr[data-plugin^="<?php echo $this->product->get_slug(); ?>"] .deactivate {
412
+ position: relative;
413
  }
414
 
415
+ body.ti-feedback-open .ti-feedback-overlay {
416
+ content: "";
417
+ display: block;
418
+ background-color: rgba(0, 0, 0, 0.5);
419
+ top: 0;
420
+ bottom: 0;
421
+ right: 0;
422
+ left: 0;
423
+ z-index: 10000;
424
+ position: fixed;
425
+ }
426
+
427
+ @media (max-width: 768px) {
428
+ .ti-plugin-uninstall-feedback-popup {
429
+ position: fixed;
430
+ max-width: 100%;
431
+ margin: 0 auto;
432
+ left: 50%;
433
+ top: 50px;
434
+ transform: translateX(-50%);
435
+ }
436
+
437
+ .ti-plugin-uninstall-feedback-popup .popup--header:before {
438
+ display: none;
439
+ }
440
  }
441
  </style>
442
  <?php
 
443
  }
444
 
445
  /**
446
+ * Theme feedback drawer JS.
 
 
 
 
447
  */
448
+ private function add_theme_feedback_drawer_js() {
449
+ $key = $this->product->get_key();
 
 
450
  ?>
451
  <script type="text/javascript" id="ti-deactivate-js">
452
  (function ($) {
453
  $(document).ready(function () {
454
+ setTimeout(function () {
455
+ $('.ti-theme-uninstall-feedback-drawer').addClass('active');
456
+ }, <?php echo absint( self::AUTO_TRIGGER_DEACTIVATE_WINDOW_SECONDS * 1000 ); ?> );
 
 
 
 
 
 
 
 
 
 
457
 
458
+ $('.ti-theme-uninstall-feedback-drawer .toggle').on('click', function (e) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
459
  e.preventDefault();
460
+ $('.ti-theme-uninstall-feedback-drawer').toggleClass('active');
 
 
 
 
 
 
 
461
  });
462
 
463
+ $('.info-disclosure-link').on('click', function (e) {
464
+ e.preventDefault();
465
+ $('.info-disclosure-content').toggleClass('active');
466
+ });
467
 
468
+ $('.ti-theme-uninstall-feedback-drawer input[type="radio"]').on('change', function () {
469
+ var radio = $(this);
470
+ if (radio.parent().find('textarea').length > 0 &&
471
+ radio.parent().find('textarea').val().length === 0) {
472
  $('#<?php echo $key; ?>ti-deactivate-yes').attr('disabled', 'disabled');
473
+ radio.parent().find('textarea').on('keyup', function (e) {
474
  if ($(this).val().length === 0) {
475
  $('#<?php echo $key; ?>ti-deactivate-yes').attr('disabled', 'disabled');
476
  } else {
481
  $('#<?php echo $key; ?>ti-deactivate-yes').removeAttr('disabled');
482
  }
483
  });
484
+
485
+ $('#<?php echo $key; ?>ti-deactivate-yes').on('click', function (e) {
 
 
 
486
  e.preventDefault();
487
  e.stopPropagation();
488
+
489
+ var selectedOption = $(
490
+ '.ti-theme-uninstall-feedback-drawer input[name="ti-deactivate-option"]:checked');
491
  $.post(ajaxurl, {
492
+ 'action': '<?php echo esc_attr( $key ) . '_uninstall_feedback'; ?>',
493
  'nonce': '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
494
+ 'id': selectedOption.parent().attr('ti-option-id'),
495
+ 'msg': selectedOption.parent().find('textarea').val(),
496
+ 'type': 'theme',
497
+ 'key': '<?php echo esc_attr( $key ); ?>'
498
  });
499
+ $('.ti-theme-uninstall-feedback-drawer').fadeOut();
500
+ });
501
+ });
502
+ })(jQuery);
503
+
504
+ </script>
505
+ <?php
506
+ do_action( $this->product->get_key() . '_uninstall_feedback_after_js' );
507
+ }
508
+
509
+ /**
510
+ * Render the options list.
511
+ *
512
+ * @param array $options the options for the feedback form.
513
+ */
514
+ private function render_options_list( $options ) {
515
+ $key = $this->product->get_key();
516
+ $inputs_row_map = [
517
+ 'text' => 1,
518
+ 'textarea' => 2,
519
+ ];
520
+ ?>
521
+ <ul class="popup--form">
522
+ <?php foreach ( $options as $title => $attributes ) { ?>
523
+ <li ti-option-id="<?php echo esc_attr( $attributes['id'] ); ?>">
524
+ <input type="radio" name="ti-deactivate-option" id="<?php echo esc_attr( $key . $attributes['id'] ); ?>">
525
+ <label for="<?php echo esc_attr( $key . $attributes['id'] ); ?>">
526
+ <?php echo str_replace( '{theme}', $this->product->get_name(), $title ); ?>
527
+ </label>
528
+ <?php
529
+ if ( array_key_exists( 'type', $attributes ) ) {
530
+ $placeholder = array_key_exists( 'placeholder', $attributes ) ? $attributes['placeholder'] : '';
531
+ echo '<textarea width="100%" rows="' . $inputs_row_map[ $attributes['type'] ] . '" name="comments" placeholder="' . esc_attr( $placeholder ) . '"></textarea>';
532
+ }
533
+ ?>
534
+ </li>
535
+ <?php } ?>
536
+ </ul>
537
+ <?php
538
+ }
539
+
540
+ /**
541
+ * Render plugin feedback popup.
542
+ */
543
+ private function render_plugin_feedback_popup() {
544
+ $button_cancel = apply_filters( $this->product->get_key() . '_feedback_deactivate_button_cancel', $this->button_cancel );
545
+ $button_submit = apply_filters( $this->product->get_key() . '_feedback_deactivate_button_submit', $this->button_submit );
546
+ $options = $this->randomize_options( apply_filters( $this->product->get_key() . '_feedback_deactivate_options', $this->options_plugin ) );
547
+ $info_disclosure_link = '<a href="#" class="info-disclosure-link">' . apply_filters( $this->product->get_slug() . '_themeisle_sdk_info_collect_cta', 'What info do we collect?' ) . '</a>';
548
+
549
+ $options += $this->other;
550
+ ?>
551
+ <div class="ti-plugin-uninstall-feedback-popup ti-feedback" id="<?php echo esc_attr( $this->product->get_slug() . '_uninstall_feedback_popup' ); ?>">
552
+ <div class="popup--header">
553
+ <h5><?php echo wp_kses( $this->heading_plugin, array( 'span' => true ) ); ?> </h5>
554
+ </div><!--/.popup--header-->
555
+ <div class="popup--body">
556
+ <?php $this->render_options_list( $options ); ?>
557
+ </div><!--/.popup--body-->
558
+ <div class="popup--footer">
559
+ <div class="actions">
560
+ <?php
561
+ echo wp_kses_post( $info_disclosure_link );
562
+ echo wp_kses_post( $this->get_disclosure_labels() );
563
+ echo '<div class="buttons">';
564
+ echo get_submit_button(
565
+ $button_cancel,
566
+ 'secondary',
567
+ $this->product->get_key() . 'ti-deactivate-no',
568
+ false
569
+ );
570
+ echo get_submit_button(
571
+ $button_submit,
572
+ 'primary',
573
+ $this->product->get_key() . 'ti-deactivate-yes',
574
+ false,
575
+ array(
576
+ 'data-after-text' => $button_submit,
577
+ 'disabled' => true,
578
+ )
579
+ );
580
+ echo '</div>';
581
+ ?>
582
+ </div><!--/.actions-->
583
+ </div><!--/.popup--footer-->
584
+ </div>
585
+
586
+ <?php
587
+ }
588
+
589
+ /**
590
+ * Add plugin feedback popup JS
591
+ */
592
+ private function add_plugin_feedback_popup_js() {
593
+ $popup_id = '#' . $this->product->get_slug() . '_uninstall_feedback_popup';
594
+ $key = $this->product->get_key();
595
+ ?>
596
+ <script type="text/javascript" id="ti-deactivate-js">
597
+ (function ($) {
598
+ $(document).ready(function () {
599
+ var targetElement = 'tr[data-plugin^="<?php echo $this->product->get_slug(); ?>/"] span.deactivate a';
600
+ var redirectUrl = $(targetElement).attr('href');
601
+ if ($('.ti-feedback-overlay').length === 0) {
602
+ $('body').prepend('<div class="ti-feedback-overlay"></div>');
603
+ }
604
+ $('<?php echo esc_attr( $popup_id ); ?> ').appendTo($(targetElement).parent());
605
+
606
+ $(targetElement).on('click', function (e) {
607
+ e.preventDefault();
608
+ $('<?php echo esc_attr( $popup_id ); ?> ').addClass('active');
609
+ $('body').addClass('ti-feedback-open');
610
+ $('.ti-feedback-overlay').on('click', function () {
611
+ $('<?php echo esc_attr( $popup_id ); ?> ').removeClass('active');
612
+ $('body').removeClass('ti-feedback-open');
613
+ });
614
+ });
615
+
616
+ $('<?php echo esc_attr( $popup_id ); ?> .info-disclosure-link').on('click', function (e) {
617
+ e.preventDefault();
618
+ $(this).parent().find('.info-disclosure-content').toggleClass('active');
619
+ });
620
+
621
+ $('<?php echo esc_attr( $popup_id ); ?> input[type="radio"]').on('change', function () {
622
+ var radio = $(this);
623
+ if (radio.parent().find('textarea').length > 0 &&
624
+ radio.parent().find('textarea').val().length === 0) {
625
+ $('<?php echo esc_attr( $popup_id ); ?> #<?php echo $key; ?>ti-deactivate-yes').attr('disabled', 'disabled');
626
+ radio.parent().find('textarea').on('keyup', function (e) {
627
+ if ($(this).val().length === 0) {
628
+ $('<?php echo esc_attr( $popup_id ); ?> #<?php echo $key; ?>ti-deactivate-yes').attr('disabled', 'disabled');
629
+ } else {
630
+ $('<?php echo esc_attr( $popup_id ); ?> #<?php echo $key; ?>ti-deactivate-yes').removeAttr('disabled');
631
+ }
632
+ });
633
  } else {
634
+ $('<?php echo esc_attr( $popup_id ); ?> #<?php echo $key; ?>ti-deactivate-yes').removeAttr('disabled');
 
635
  }
636
  });
637
 
638
+ $('<?php echo esc_attr( $popup_id ); ?> #<?php echo $key; ?>ti-deactivate-no').on('click', function (e) {
639
+ e.preventDefault();
640
+ e.stopPropagation();
641
+ $(targetElement).unbind('click');
642
+ $('body').removeClass('ti-feedback-open');
643
+ $('<?php echo esc_attr( $popup_id ); ?>').remove();
644
+ if (redirectUrl !== '') {
645
+ location.href = redirectUrl;
646
+ }
647
  });
648
 
649
+ $('<?php echo esc_attr( $popup_id ); ?> #<?php echo $key; ?>ti-deactivate-yes').on('click', function (e) {
650
+ e.preventDefault();
651
+ e.stopPropagation();
652
+ $(targetElement).unbind('click');
653
+ var selectedOption = $(
654
+ '<?php echo esc_attr( $popup_id ); ?> input[name="ti-deactivate-option"]:checked');
655
+ var data = {
656
+ 'action': '<?php echo esc_attr( $key ) . '_uninstall_feedback'; ?>',
657
+ 'nonce': '<?php echo wp_create_nonce( (string) __CLASS__ ); ?>',
658
+ 'id': selectedOption.parent().attr('ti-option-id'),
659
+ 'msg': selectedOption.parent().find('textarea').val(),
660
+ 'type': 'plugin',
661
+ 'key': '<?php echo esc_attr( $key ); ?>'
662
+ };
663
+ $.ajax({
664
+ type: 'POST',
665
+ url: ajaxurl,
666
+ data: data,
667
+ complete() {
668
+ $('body').removeClass('ti-feedback-open');
669
+ $('<?php echo esc_attr( $popup_id ); ?>').remove();
670
+ if (redirectUrl !== '') {
671
+ location.href = redirectUrl;
672
+ }
673
+ },
674
+ beforeSend() {
675
+ $('<?php echo esc_attr( $popup_id ); ?>').addClass('sending-feedback');
676
+ $('<?php echo esc_attr( $popup_id ); ?> .popup--footer').remove();
677
+ $('<?php echo esc_attr( $popup_id ); ?> .popup--body').html('<i class="dashicons dashicons-update-alt"></i>');
678
  }
679
+ });
680
+ });
681
  });
682
  })(jQuery);
683
+
684
  </script>
685
  <?php
 
686
  do_action( $this->product->get_key() . '_uninstall_feedback_after_js' );
687
  }
688
 
689
  /**
690
+ * Get the disclosure labels markup.
691
  *
692
+ * @return string
 
693
  */
694
+ private function get_disclosure_labels() {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
695
  $disclosure_new_labels = apply_filters( $this->product->get_slug() . '_themeisle_sdk_disclosure_content_labels', [], $this->product );
696
  $disclosure_labels = array_merge(
697
  [
698
  'title' => 'Below is a detailed view of all data that ThemeIsle will receive if you fill in this survey. No domain name, email address or IP addresses are transmited after you submit the survey.',
699
  'items' => [
700
  sprintf( '%s %s version %s %s %s %s', '<strong>', ucwords( $this->product->get_type() ), '</strong>', '<code>', $this->product->get_version(), '</code>' ),
701
+ sprintf( '%s Uninstall reason %s %s Selected reason from the above survey %s ', '<strong>', '</strong>', '<i>', '</i>' ),
702
  ],
703
  ],
704
  $disclosure_new_labels
705
  );
706
 
707
+ $info_disclosure_content = '<div class="info-disclosure-content"><p>' . wp_kses_post( $disclosure_labels['title'] ) . '</p><ul>';
 
708
  foreach ( $disclosure_labels['items'] as $disclosure_item ) {
709
  $info_disclosure_content .= sprintf( '<li>%s</li>', wp_kses_post( $disclosure_item ) );
710
  }
711
  $info_disclosure_content .= '</ul></div>';
712
 
713
+ return $info_disclosure_content;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
714
  }
715
 
716
  /**
836
  * @return Uninstall_Feedback Current module instance.
837
  */
838
  public function load( $product ) {
839
+
840
+ if ( apply_filters( $product->get_key() . '_hide_uninstall_feedback', false ) ) {
841
+ return;
842
+ }
843
+
844
  $this->product = $product;
845
  add_action( 'admin_head', array( $this, 'load_resources' ) );
846
  add_action( 'wp_ajax_' . $this->product->get_key() . '_uninstall_feedback', array( $this, 'post_deactivate' ) );
vendor/codeinwp/themeisle-sdk/src/Product.php CHANGED
@@ -114,7 +114,7 @@ class Product {
114
  */
115
  public function __construct( $basefile ) {
116
  if ( ! empty( $basefile ) ) {
117
- if ( is_readable( $basefile ) ) {
118
  $this->basefile = $basefile;
119
  $this->setup_from_path();
120
  $this->setup_from_fileheaders();
@@ -200,6 +200,7 @@ class Product {
200
  public function get_key() {
201
  return $this->key;
202
  }
 
203
  /**
204
  * Check if the product is either theme or plugin.
205
  *
@@ -342,6 +343,11 @@ class Product {
342
  * @return string The store url.
343
  */
344
  public function get_store_url() {
 
 
 
 
 
345
  return $this->store_url;
346
  }
347
 
@@ -354,6 +360,21 @@ class Product {
354
  return $this->basefile;
355
  }
356
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
357
  /**
358
  * Returns product filename.
359
  *
@@ -362,6 +383,7 @@ class Product {
362
  public function get_file() {
363
  return $this->file;
364
  }
 
365
  /**
366
  * Returns the pro slug, if available.
367
  *
@@ -380,4 +402,17 @@ class Product {
380
  return $this->install;
381
  }
382
 
 
 
 
 
 
 
 
 
 
 
 
 
 
383
  }
114
  */
115
  public function __construct( $basefile ) {
116
  if ( ! empty( $basefile ) ) {
117
+ if ( is_file( $basefile ) ) {
118
  $this->basefile = $basefile;
119
  $this->setup_from_path();
120
  $this->setup_from_fileheaders();
200
  public function get_key() {
201
  return $this->key;
202
  }
203
+
204
  /**
205
  * Check if the product is either theme or plugin.
206
  *
343
  * @return string The store url.
344
  */
345
  public function get_store_url() {
346
+
347
+ if ( strpos( $this->store_url, '/themeisle.com' ) !== false ) {
348
+ return 'https://store.themeisle.com/';
349
+ }
350
+
351
  return $this->store_url;
352
  }
353
 
360
  return $this->basefile;
361
  }
362
 
363
+ /**
364
+ * Get changelog url.
365
+ *
366
+ * @return string Changelog url.
367
+ */
368
+ public function get_changelog() {
369
+ return add_query_arg(
370
+ [
371
+ 'name' => rawurlencode( $this->get_name() ),
372
+ 'edd_action' => 'view_changelog',
373
+ ],
374
+ $this->get_store_url()
375
+ );
376
+ }
377
+
378
  /**
379
  * Returns product filename.
380
  *
383
  public function get_file() {
384
  return $this->file;
385
  }
386
+
387
  /**
388
  * Returns the pro slug, if available.
389
  *
402
  return $this->install;
403
  }
404
 
405
+ /**
406
+ * Returns the URL of the product base file.
407
+ *
408
+ * @param string $path The path to the file.
409
+ *
410
+ * @return string The URL of the product base file.
411
+ */
412
+ public function get_base_url( $path = '/' ) {
413
+ if ( $this->type ) {
414
+ return plugins_url( $path, $this->basefile );
415
+ }
416
+ }
417
+
418
  }
vendor/codeinwp/themeisle-sdk/start.php CHANGED
@@ -31,12 +31,13 @@ $files_to_load = [
31
  $path . '/src/' . 'Modules/Logger.php',
32
  $path . '/src/' . 'Modules/Translate.php',
33
  $path . '/src/' . 'Modules/Review.php',
 
34
  ];
35
 
36
  $files_to_load = array_merge( $files_to_load, apply_filters( 'themeisle_sdk_required_files', [] ) );
37
 
38
  foreach ( $files_to_load as $file ) {
39
- if ( is_readable( $file ) ) {
40
  require_once $file;
41
  }
42
  }
31
  $path . '/src/' . 'Modules/Logger.php',
32
  $path . '/src/' . 'Modules/Translate.php',
33
  $path . '/src/' . 'Modules/Review.php',
34
+ $path . '/src/' . 'Modules/Recommendation.php',
35
  ];
36
 
37
  $files_to_load = array_merge( $files_to_load, apply_filters( 'themeisle_sdk_required_files', [] ) );
38
 
39
  foreach ( $files_to_load as $file ) {
40
+ if ( is_file( $file ) ) {
41
  require_once $file;
42
  }
43
  }
vendor/composer/autoload_real.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
- class ComposerAutoloaderInit47db44a383439f35ebbd40e77d2e5724
6
  {
7
  private static $loader;
8
 
@@ -19,15 +19,15 @@ class ComposerAutoloaderInit47db44a383439f35ebbd40e77d2e5724
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit47db44a383439f35ebbd40e77d2e5724', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit47db44a383439f35ebbd40e77d2e5724', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
- call_user_func(\Composer\Autoload\ComposerStaticInit47db44a383439f35ebbd40e77d2e5724::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
@@ -48,19 +48,19 @@ class ComposerAutoloaderInit47db44a383439f35ebbd40e77d2e5724
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
- $includeFiles = Composer\Autoload\ComposerStaticInit47db44a383439f35ebbd40e77d2e5724::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
- composerRequire47db44a383439f35ebbd40e77d2e5724($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
- function composerRequire47db44a383439f35ebbd40e77d2e5724($fileIdentifier, $file)
64
  {
65
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
66
  require $file;
2
 
3
  // autoload_real.php @generated by Composer
4
 
5
+ class ComposerAutoloaderInit86d4bbcb0c93c7a69621c7a526c43e6f
6
  {
7
  private static $loader;
8
 
19
  return self::$loader;
20
  }
21
 
22
+ spl_autoload_register(array('ComposerAutoloaderInit86d4bbcb0c93c7a69621c7a526c43e6f', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
+ spl_autoload_unregister(array('ComposerAutoloaderInit86d4bbcb0c93c7a69621c7a526c43e6f', 'loadClassLoader'));
25
 
26
  $useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());
27
  if ($useStaticLoader) {
28
  require_once __DIR__ . '/autoload_static.php';
29
 
30
+ call_user_func(\Composer\Autoload\ComposerStaticInit86d4bbcb0c93c7a69621c7a526c43e6f::getInitializer($loader));
31
  } else {
32
  $map = require __DIR__ . '/autoload_namespaces.php';
33
  foreach ($map as $namespace => $path) {
48
  $loader->register(true);
49
 
50
  if ($useStaticLoader) {
51
+ $includeFiles = Composer\Autoload\ComposerStaticInit86d4bbcb0c93c7a69621c7a526c43e6f::$files;
52
  } else {
53
  $includeFiles = require __DIR__ . '/autoload_files.php';
54
  }
55
  foreach ($includeFiles as $fileIdentifier => $file) {
56
+ composerRequire86d4bbcb0c93c7a69621c7a526c43e6f($fileIdentifier, $file);
57
  }
58
 
59
  return $loader;
60
  }
61
  }
62
 
63
+ function composerRequire86d4bbcb0c93c7a69621c7a526c43e6f($fileIdentifier, $file)
64
  {
65
  if (empty($GLOBALS['__composer_autoload_files'][$fileIdentifier])) {
66
  require $file;
vendor/composer/autoload_static.php CHANGED
@@ -4,7 +4,7 @@
4
 
5
  namespace Composer\Autoload;
6
 
7
- class ComposerStaticInit47db44a383439f35ebbd40e77d2e5724
8
  {
9
  public static $files = array (
10
  '9fef4034ed73e26a337d9856ea126f7f' => __DIR__ . '/..' . '/codeinwp/themeisle-sdk/load.php',
4
 
5
  namespace Composer\Autoload;
6
 
7
+ class ComposerStaticInit86d4bbcb0c93c7a69621c7a526c43e6f
8
  {
9
  public static $files = array (
10
  '9fef4034ed73e26a337d9856ea126f7f' => __DIR__ . '/..' . '/codeinwp/themeisle-sdk/load.php',
vendor/composer/installed.json CHANGED
@@ -1,17 +1,17 @@
1
  [
2
  {
3
  "name": "codeinwp/themeisle-sdk",
4
- "version": "3.0.4",
5
- "version_normalized": "3.0.4.0",
6
  "source": {
7
  "type": "git",
8
  "url": "https://github.com/Codeinwp/themeisle-sdk.git",
9
- "reference": "cf03ee5b93c6ca66f0c1a4916309f1270fe12319"
10
  },
11
  "dist": {
12
  "type": "zip",
13
- "url": "https://api.github.com/repos/Codeinwp/themeisle-sdk/zipball/cf03ee5b93c6ca66f0c1a4916309f1270fe12319",
14
- "reference": "cf03ee5b93c6ca66f0c1a4916309f1270fe12319",
15
  "shasum": ""
16
  },
17
  "require-dev": {
@@ -19,7 +19,7 @@
19
  "squizlabs/php_codesniffer": "^3.1",
20
  "wp-coding-standards/wpcs": "^1.0.0"
21
  },
22
- "time": "2019-01-28T12:17:14+00:00",
23
  "type": "library",
24
  "installation-source": "dist",
25
  "notification-url": "https://packagist.org/downloads/",
1
  [
2
  {
3
  "name": "codeinwp/themeisle-sdk",
4
+ "version": "3.1.6",
5
+ "version_normalized": "3.1.6.0",
6
  "source": {
7
  "type": "git",
8
  "url": "https://github.com/Codeinwp/themeisle-sdk.git",
9
+ "reference": "6d2661b91b8ebaed6dea99a29832f33225796c5a"
10
  },
11
  "dist": {
12
  "type": "zip",
13
+ "url": "https://api.github.com/repos/Codeinwp/themeisle-sdk/zipball/6d2661b91b8ebaed6dea99a29832f33225796c5a",
14
+ "reference": "6d2661b91b8ebaed6dea99a29832f33225796c5a",
15
  "shasum": ""
16
  },
17
  "require-dev": {
19
  "squizlabs/php_codesniffer": "^3.1",
20
  "wp-coding-standards/wpcs": "^1.0.0"
21
  },
22
+ "time": "2019-09-24T12:35:52+00:00",
23
  "type": "library",
24
  "installation-source": "dist",
25
  "notification-url": "https://packagist.org/downloads/",