diff --git a/app/design/adminhtml/Magento/backend/web/app/setup/styles/less/lib/_variables.less b/app/design/adminhtml/Magento/backend/web/app/setup/styles/less/lib/_variables.less index ece832d01712b..e7a527c45cf93 100644 --- a/app/design/adminhtml/Magento/backend/web/app/setup/styles/less/lib/_variables.less +++ b/app/design/adminhtml/Magento/backend/web/app/setup/styles/less/lib/_variables.less @@ -112,6 +112,8 @@ @icon-stores__content: '\e60d'; @icon-systems__content: '\e610'; @icon-views__content: '\e60f'; +@icon-module__content: '\e647'; +@icon-alert-round__content: '\e648'; @icons-round__size: 2.5rem; diff --git a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_data-grid.less b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_data-grid.less index db4b8f5eed670..d8d63f09bd1a1 100644 --- a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_data-grid.less +++ b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_data-grid.less @@ -7,7 +7,7 @@ // Variables // _____________________________________________ -@component-indicator__size: 20px; +@component-indicator__size: 16px; // // Component grid elements @@ -19,6 +19,7 @@ display: inline-block; height: @component-indicator__size; text-align: center; + vertical-align: middle; width: @component-indicator__size; &::before, @@ -37,7 +38,7 @@ box-shadow: 0 0 2px rgba(0,0,0,.4); content: attr(data-label); font-size: @font-size__s; - margin: 34px 0 0 -10px; + margin: 30px 0 0 -10px; min-width: 50px; padding: 4px 5px; } @@ -73,7 +74,7 @@ content: ''; display: block; font-family: @icons__font-family; - font-size: 20px; + font-size: @component-indicator__size; height: 100%; line-height: @component-indicator__size; width: 100%; @@ -105,10 +106,105 @@ &:before { color: @color-info; - content: @icon-notice-messages__content; + content: @icon-alert-round__content; font-family: @icons__font-family; - font-size: 21px; + font-size: @component-indicator__size; } } } } + +.col-manager-item-name { + .data-grid-data { + padding-left: 5px; + } + + .ng-hide { + + .data-grid-data { + padding-left: 24px; + } + } + + ._show-dependencies, + ._hide-dependencies { + cursor: pointer; + padding-left: 24px; + position: relative; + + &:before { + display: block; + font-family: @icons__font-family; + font-size: 12px; + left: 0; + position: absolute; + top: 1px; + } + } + + ._show-dependencies { + &:before { + content: @icon-caret-up__content; + } + } + + ._hide-dependencies { + &:before { + content: @icon-caret-down__content; + } + } + + ._no-dependencies { + padding-left: 24px; + } +} + +.product-modules-block { + .lib-font-size(12); + padding: 15px 0 0; + + .col-manager-item-name & { + padding-left: @indent__s; + } +} + +.product-modules-title, +.product-modules-descriprion { + font-weight: @font-weight__bold; + margin: 0 0 7px; +} + +.product-modules-list { + .lib-font-size(11); + list-style: none; + margin: 0; + + .col-manager-item-name & { + margin-left: 15px; + + li { + padding: 0 0 0 15px; + position: relative; + } + } + + li { + margin: 0 0 @indent__xs; + } + + .component-indicator { + height: 10px; + left: 0; + position: absolute; + top: 3px; + width: 10px; + } +} + +.module-summary { + white-space: nowrap; +} + +.module-summary-title { + .lib-font-size(21); + margin-right: @indent__s; +} diff --git a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_header.less b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_header.less index db75d99d26df4..bf4270eb3e4ab 100644 --- a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_header.less +++ b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_header.less @@ -9,7 +9,7 @@ @page-header__border-color: @color-gray89; @page-header__border-width: 1px; -@page-header__padding-bottom: 2.9rem; +@page-header__padding-bottom: 2rem; @page-header__margin-bottom: 2.7rem; @search-global-label-icon__color: @color-very-dark-gray1; diff --git a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_menu.less b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_menu.less index 65b62e2fc07c9..4d0fe89bc9c74 100644 --- a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_menu.less +++ b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/components/_menu.less @@ -64,6 +64,14 @@ } } + .item-extension { + > a { + &:before { + content: @icon-module__content; + } + } + } + .item-upgrade { > a { &:before { diff --git a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_component-manager.less b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_component-manager.less deleted file mode 100644 index 9e5989075d965..0000000000000 --- a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_component-manager.less +++ /dev/null @@ -1,99 +0,0 @@ -// /** -// * Copyright © 2016 Magento. All rights reserved. -// * See COPYING.txt for license details. -// */ - -// -// Upgrade -> Pages -> Magento Connect Account -// _____________________________________________ - -// -// Variables -// --------------------------------------------- - -@component-manager-wrap__border-color: @color-gray-light2; - -@component-manager-title__background-color: @color-white-fog; -@component-manager-title__border-color: @color-gray89; -@component-manager-title__color: @color-brown-darkie; - -@component-manager-button__border-color: @color-gray68; - -// - -.componenet-manager-wrap { - border: 1px solid @component-manager-wrap__border-color; - margin: 0 0 @indent__xl; - - .componenet-manager-account { - .lib-font-size(14); - float: right; - padding: .6rem 0 0; - - .sign-in-out { - margin-left: @indent__base; - } - } -} - -.component-manager-title { - &:extend(.abs-clearer all); - background-color: @component-manager-title__background-color; - border-bottom: 1px solid @component-manager-title__border-color; - color: @component-manager-title__color; - font-size: 2rem; - line-height: 1.2; - padding: @indent__base; -} - -.component-manager-content { - &:extend(.abs-clearer all); - padding: @indent__m @indent__base @indent__base; -} - -.componenet-manager-items { - list-style: none; - margin: 0; - text-align: center; - - .btn { - border: 1px solid @component-manager-button__border-color; - display: block; - margin: @indent__s auto 0; - } - - .item-title { - margin: 0 0 1.5rem; - } - - .item-number { - .lib-font-size(60); - line-height: .8; - margin: 0 0 1.5rem; - } - - .item-date { - margin: 0 0 3.7rem; - } - - .item-install { - margin: 0 0 @indent__base; - - .btn { - .lib-button-as-link( - @_link-color: @link__color, - @_link-color-hover: @link__hover__color, - @_line-height: @line-height__base, - @_disabled_opacity: @disabled__opacity, - @_margin: 0, - @_padding: 0 - ); - .lib-font-size(14); - font-weight: @font-weight__regular; - - &.disabled { - text-decoration: none; - } - } - } -} diff --git a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_extension-manager.less b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_extension-manager.less new file mode 100644 index 0000000000000..33d12df48ba2d --- /dev/null +++ b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_extension-manager.less @@ -0,0 +1,88 @@ +// /** +// * Copyright © 2016 Magento. All rights reserved. +// * See COPYING.txt for license details. +// */ + +// +// Web Setup Wizard -> Extension Manager +// _____________________________________________ + +// +// Variables +// --------------------------------------------- + +@extension-manager-wrap__border-color: @color-gray-light2; + +@extension-manager-title__background-color: @color-white-fog; +@extension-manager-title__border-color: @color-gray89; +@extension-manager-title__color: @color-brown-darkie; + +@extension-manager-button__border-color: @color-gray68; + +// + +.extension-manager-wrap { + border: 1px solid @extension-manager-wrap__border-color; + margin: 0 0 @indent__xl; +} + +.extension-manager-account { + .lib-font-size(21); + display: inline-block; + font-weight: @font-weight__regular; +} + +.extension-manager-title { + &:extend(.abs-clearer all); + .lib-font-size(32); + background-color: @extension-manager-title__background-color; + border-bottom: 1px solid @extension-manager-title__border-color; + color: @extension-manager-title__color; + font-weight: @font-weight__semibold; + line-height: 1.2; + padding: @indent__base; +} + +.extension-manager-content { + &:extend(.abs-clearer all); + padding: @indent__m @indent__base @indent__base; +} + +.extension-manager-items { + list-style: none; + margin: 0; + text-align: center; + + .btn { + border: 1px solid @extension-manager-button__border-color; + display: block; + margin: @indent__s auto 0; + } + + .item-title { + .lib-font-size(21); + display: inline-block; + text-align: left; + } + + .item-number { + .lib-font-size(41); + display: inline-block; + line-height: .8; + margin: 0 5px 1.5rem 0; + vertical-align: top; + } + + .item-date { + .lib-font-size(26); + margin-top: 1px; + } + + .item-date-title { + .lib-font-size(15); + } + + .item-install { + margin: 0 0 @indent__base; + } +} diff --git a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_home.less b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_home.less index 4350611c29a9f..47f99e4f859f9 100644 --- a/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_home.less +++ b/app/design/adminhtml/Magento/backend/web/app/updater/styles/less/pages/_home.less @@ -61,12 +61,19 @@ } } -.setup-home-item-component { +.setup-home-item-component, +.setup-home-item-extension { &:before { content: @icon-lego__content; } } +.setup-home-item-module { + &:before { + content: @icon-module__content; + } +} + .setup-home-item-upgrade { &:before { content: @icon-updater__content; diff --git a/app/design/adminhtml/Magento/backend/web/css/source/actions/_actions-select.less b/app/design/adminhtml/Magento/backend/web/css/source/actions/_actions-select.less index 86b3315b2b4a0..88440254d7a44 100644 --- a/app/design/adminhtml/Magento/backend/web/css/source/actions/_actions-select.less +++ b/app/design/adminhtml/Magento/backend/web/css/source/actions/_actions-select.less @@ -85,6 +85,17 @@ .action-menu { max-height: 45rem; overflow-y: auto; + + ._disabled { + &:hover { + background: @color-white; + } + + .action-menu-item { + cursor: default; + opacity: .5; + } + } } .action-menu-items { diff --git a/app/design/adminhtml/Magento/backend/web/css/source/variables/_icons.less b/app/design/adminhtml/Magento/backend/web/css/source/variables/_icons.less index 28c5047f22b02..53433d3c75703 100644 --- a/app/design/adminhtml/Magento/backend/web/css/source/variables/_icons.less +++ b/app/design/adminhtml/Magento/backend/web/css/source/variables/_icons.less @@ -78,3 +78,5 @@ @icon-video__content: '\e641'; @icon-reset__content: '\e642'; @icon-clip__content: '\e643'; +@icon-module__content: '\e647'; +@icon-alert-round__content: '\e648'; diff --git a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.eot b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.eot index cf4f06eac2846..5bc0bee548c35 100755 Binary files a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.eot and b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.eot differ diff --git a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.svg b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.svg index c03ead846ae96..4478010abc66d 100755 --- a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.svg +++ b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.ttf b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.ttf index 79a0cb0cdf0bb..bc3eddf307438 100755 Binary files a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.ttf and b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.ttf differ diff --git a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff index 13c2be8474a73..bd9560bf58327 100755 Binary files a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff and b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff differ diff --git a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff2 b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff2 index 46b41963b5a72..25c1c88c0bff8 100755 Binary files a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff2 and b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/admin-icons.woff2 differ diff --git a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/selection.json b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/selection.json index 6efc4b0fef198..c1733d650bcd2 100755 --- a/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/selection.json +++ b/app/design/adminhtml/Magento/backend/web/fonts/admin-icons/selection.json @@ -1,2192 +1,2326 @@ { - "IcoMoonType": "selection", - "icons": [ - { - "icon": { - "paths": [ - "M2041.366 1.102v1021.449h-175.926l-411.263-409.297v-204.59l411.263-407.568h175.926z", - "M1305.997 989.076c0 19.377-15.608 34.924-34.856 34.924h-1236.279c-19.255 0-34.863-15.547-34.863-34.924v-954.275c0-19.248 15.608-34.801 34.863-34.801h1236.279c19.248 0 34.856 15.553 34.856 34.801v954.275z" - ], - "width": 2041, - "attrs": [], - "isMulticolor": false, - "tags": [ - "video" - ], - "grid": 0 - }, - "attrs": [], - "properties": { - "order": 127, - "id": 0, - "prevSize": 32, - "code": 58945, - "name": "video" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 0 - }, - { - "icon": { - "paths": [ - "M723.661 889.601c-2.404-10.843-4.034-21.47-5.282-31.583h-277.528c-2.458 20.233-6.917 43.087-14.646 64.305-7.79 21.277-18.796 40.54-33.824 54.15-15.028 13.552-33.689 22.104-59.788 22.158v25.369h494.020v-25.369c-26.142-0.058-44.737-8.61-59.838-22.158-22.44-20.307-35.961-53.91-43.114-86.873zM1126.214 0h-1093.209c-18.22 0-33.005 15.024-33.005 33.596v731.259c0 18.576 14.785 33.623 33.005 33.623h1093.209c18.224 0 33.067-15.051 33.067-33.623v-731.259c0-18.572-14.843-33.596-33.067-33.596zM1079.193 716.922h-999.234v-635.394h999.234v635.394z" - ], - "width": 1159, - "attrs": [], - "isMulticolor": false, - "tags": [ - "screen" - ], - "grid": 0 - }, - "attrs": [], - "properties": { - "order": 72, - "id": 1, - "prevSize": 32, - "code": 58944, - "name": "screen" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 1 - }, - { - "icon": { - "paths": [ - "M771.001 776.737c-55.445 0-100.448 44.754-100.448 100.2s44.879 100.324 100.448 100.324 100.448-44.879 100.448-100.324-45.003-100.2-100.448-100.2zM771.001 918.707c-23.123 0-41.77-18.648-41.77-41.771s18.647-41.77 41.77-41.77c23.247 0 41.895 18.648 41.895 41.77s-18.648 41.771-41.895 41.771z", - "M469.532 776.737c-55.445 0-100.449 44.754-100.449 100.2s45.003 100.324 100.449 100.324c55.445 0 100.448-44.879 100.448-100.324s-45.003-100.2-100.448-100.2zM469.532 918.707c-23.123 0-41.771-18.648-41.771-41.771s18.648-41.77 41.771-41.77 41.77 18.648 41.77 41.77-18.648 41.771-41.77 41.771z", - "M823.587 494.412c-130.036 0-238.441-91.622-264.547-213.825h-207.237l-136.749-198.162v-1.865h-207.237v83.541h169.942l78.693 117.729 83.417 412.857h581.183l49.23-243.786c-42.268 27.474-92.616 43.511-146.694 43.511z", - "M1023.862 249.756v-45.376l-55.073-18.026-12.929-31.204 24.863-52.71-31.95-32.074-5.967 2.984-45.5 23.123-31.328-12.929-19.642-54.948h-45.376l-2.114 6.464-15.912 48.608-31.203 12.929-52.835-24.863-32.074 31.95 3.108 5.967 23.247 45.624-13.053 31.328-54.948 19.766v45.376l6.34 2.113 48.732 15.788 12.929 31.204-24.863 52.71 32.074 32.074 6.092-3.108 45.376-22.999 31.328 12.929 19.642 54.824h45.376l2.113-6.464 15.913-48.359 31.203-12.929 52.71 24.988 32.198-32.074-3.108-6.092-23.247-45.624 12.929-31.203 54.948-19.766zM824.582 291.527c-35.057 0-63.65-28.469-63.65-63.526 0-35.182 28.469-63.526 63.65-63.526s63.526 28.469 63.526 63.526c-0.124 35.182-28.469 63.526-63.526 63.526z" - ], - "attrs": [], - "isMulticolor": false, - "tags": [ - "cart" - ], - "grid": 0 - }, - "attrs": [], - "properties": { - "order": 71, - "id": 2, - "prevSize": 32, - "code": 58943, - "name": "cart" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 2 - }, - { - "icon": { - "paths": [ - "M0.010 188.484h1023.966v136.509h-1023.966z", - "M0.010 442.47h1023.966v136.506h-1023.966z", - "M0.010 699.017h1023.966v136.513h-1023.966z" - ], - "attrs": [ - {}, - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "list-menu" - ], - "grid": 0 - }, - "attrs": [ - {}, - {}, - {} - ], - "properties": { - "order": 61, - "id": 3, - "prevSize": 32, - "code": 58942, - "name": "list-menu" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 3 - }, - { - "icon": { - "paths": [ - "M0.010 0.372h279.074v279.074h-279.074z", - "M372.77 0.372h279.074v279.074h-279.074z", - "M744.892 0.372h279.074v279.074h-279.074z", - "M0.010 372.497h279.074v279.074h-279.074z", - "M372.77 372.497h279.074v279.074h-279.074z", - "M744.892 372.497h279.074v279.074h-279.074z", - "M0.010 744.585h279.074v279.074h-279.074z", - "M372.77 744.585h279.074v279.074h-279.074z", - "M744.892 744.585h279.074v279.074h-279.074z" - ], - "attrs": [ - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "grid" - ], - "grid": 0 - }, - "attrs": [ - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {} - ], - "properties": { - "order": 112, - "id": 4, - "prevSize": 32, - "code": 58941, - "name": "grid" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 4 - }, - { - "icon": { - "paths": [ - "M982.767 231.902h-250.095l-59.255-121.364c0 0-11.827-25.201-42.11-25.201-23.375 0-169.366 0-235.25 0-32.969 0-44.001 25.027-44.001 25.027l-57.484 121.539h-253.406c-22.74 0-41.131 18.459-41.131 41.267v624.333c0 22.743 18.401 41.199 41.131 41.199h941.636c22.74 0 41.199-18.459 41.199-41.199v-624.299c0-22.798-18.456-41.267-41.199-41.267zM512 823.91c-138.793 0-251.597-113.015-251.597-251.931 0-138.912 112.845-251.87 251.597-251.87 138.68 0 251.597 112.981 251.597 251.87 0 138.909-112.913 251.931-251.597 251.931z", - "M512 420.932c-83.255 0-150.972 67.714-150.972 150.972 0 83.197 67.71 150.903 150.972 150.903 83.258 0 150.903-67.714 150.903-150.903 0-83.255-67.652-150.972-150.903-150.972z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "camera" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 121, - "id": 5, - "prevSize": 32, - "code": 58940, - "name": "camera" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 5 - }, - { - "icon": { - "paths": [ - "M904.192 0.027l-307.234 0.116-596.89 596.958 426.906 426.906 596.958-596.958-0.113-305.596-119.603-121.426zM858.679 313.337c-39.997 40.001-104.854 40.001-144.794 0-40.001-40.001-40.001-104.796 0-144.794 39.939-40.001 104.796-40.001 144.794 0 39.997 39.997 39.997 104.793 0 144.794z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "tag" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 111, - "id": 6, - "prevSize": 32, - "code": 58939, - "name": "tag" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 6 - }, - { - "icon": { - "paths": [ - "M1094.391 77.71l-77.71-77.71-423.329 423.347-423.33-423.347-77.71 77.672 423.35 423.368-423.312 423.329 77.672 77.71 423.338-423.338 423.283 423.3 77.671-77.71-423.263-423.281z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "colorPermutations": { - "6868681": [ - 0 - ] - }, - "tags": [ - "close-mage" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 110, - "id": 7, - "prevSize": 32, - "code": 58927, - "name": "close-mage" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 7 - }, - { - "icon": { - "paths": [ - "M857.675 289.413l-403.18-240.514-402.726 240.514v457.026l403.18 240.515 402.726-240.514v-457.027zM454.857 864.465l-298.427-178.383v-335.966l298.157-178.729 298.428 178.383v335.966l-298.158 178.729z" - ], - "width": 903, - "attrs": [ - {} - ], - "isMulticolor": false, - "colorPermutations": { - "6868681": [ - 0 - ] - }, - "tags": [ - "menu-item" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 109, - "id": 8, - "prevSize": 32, - "code": 58938, - "name": "menu-item" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 8 - }, - { - "icon": { - "paths": [ - "M505.704 40.998c-260.096 3.489-468.158 217.202-464.706 477.336 3.489 259.982 217.202 468.12 477.298 464.631s468.158-217.202 464.706-477.336c-3.413-260.058-217.202-468.12-477.298-464.631zM557.928 197.973c47.863 0 62.009 27.762 62.009 59.544 0 39.671-31.782 76.383-86.016 76.383-45.359 0-66.901-22.831-65.65-60.53 0-31.782 26.624-75.435 89.657-75.435zM435.162 806.381c-32.73 0-56.661-19.873-33.792-107.217l37.547-154.814c6.485-24.841 7.585-34.778 0-34.778-9.785 0-52.262 17.143-77.407 34.057l-16.346-26.776c79.607-66.446 171.16-105.472 210.375-105.472 32.73 0 38.153 38.722 21.807 98.266l-43.008 162.816c-7.585 28.786-4.286 38.722 3.262 38.722 9.785 0 41.984-11.871 73.614-36.75l18.47 24.841c-77.369 77.369-161.792 107.179-194.56 107.179z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "info" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 108, - "id": 9, - "prevSize": 32, - "code": 58906, - "name": "info" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 9 - }, - { - "icon": { - "paths": [ - "M591.986 448.019h-16.005v-192.019c0-105.851-86.13-192.019-192.019-192.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-16.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188zM448.019 448.019h-256v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "lock" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 107, - "id": 10, - "prevSize": 32, - "code": 58907, - "name": "lock" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 10 - }, - { - "icon": { - "paths": [ - "M870.4 317.44h-194.56v143.36h153.6v215.040h-634.88v-215.040h215.040v112.64l204.8-184.32-204.8-184.32v112.64h-256c-56.51 0-102.4 45.815-102.4 102.4v296.96c0 56.51 45.89 102.4 102.4 102.4h716.8c56.585 0 102.4-45.89 102.4-102.4v-296.96c0-56.585-45.815-102.4-102.4-102.4z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "loop" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 106, - "id": 11, - "prevSize": 32, - "code": 58908, - "name": "loop" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 11 - }, - { - "icon": { - "paths": [ - "M991.991 384h-351.991v-351.991c0-17.673-14.336-32.009-32.009-32.009h-192.019c-17.673 0-32.009 14.336-32.009 32.009v351.991h-351.991c-17.673 0-32.009 14.336-32.009 32.009v192.019c0 17.673 14.336 32.009 32.009 32.009h351.991v351.991c0 17.673 14.336 32.009 32.009 32.009h192.019c17.673 0 32.009-14.336 32.009-32.009v-351.991h351.991c17.673 0 32.009-14.336 32.009-32.009v-192.019c0-17.673-14.336-32.009-32.009-32.009z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "plus" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 105, - "id": 12, - "prevSize": 32, - "code": 58909, - "name": "plus" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 12 - }, - { - "icon": { - "paths": [ - "M505.704 40.998c-260.096 3.489-468.158 217.126-464.706 477.298 3.489 260.21 217.202 468.158 477.298 464.744 260.134-3.489 468.233-217.202 464.706-477.298-3.489-260.21-217.202-468.233-477.298-464.744zM506.577 102.4c70.163-0.986 136.382 15.853 194.56 46.118l-63.374 105.662c-38.002-18.47-80.631-28.937-125.762-28.937-45.056 0-87.723 10.43-125.687 28.975l-63.336-105.624c54.993-28.672 117.343-45.321 183.599-46.232zM254.255 637.687l-105.586 63.298c-28.672-54.955-45.321-117.305-46.194-183.486-0.986-70.201 15.853-136.457 46.118-194.56l105.624 63.45c-18.546 37.926-28.975 80.555-28.975 125.649 0 45.056 10.43 87.723 28.975 125.687zM517.461 921.562c-70.163 0.986-136.457-15.853-194.56-46.118l63.374-105.662c38.002 18.546 80.631 28.975 125.687 28.975 45.094 0 87.761-10.392 125.687-28.937l63.336 105.586c-54.993 28.634-117.305 45.246-183.561 46.194zM512 737.242c-124.397 0-225.242-100.883-225.242-225.242 0-124.397 100.883-225.28 225.242-225.28 124.473 0 225.28 100.883 225.28 225.28s-100.807 225.242-225.28 225.242zM769.745 637.687c18.546-38.002 28.975-80.631 28.975-125.687 0-45.094-10.43-87.723-28.975-125.687l105.586-63.374c28.672 54.993 45.359 117.305 46.232 183.561 0.91 70.201-15.929 136.457-46.194 194.56l-105.624-63.336z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "recover" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 104, - "id": 13, - "prevSize": 32, - "code": 58910, - "name": "recover" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 13 - }, - { - "icon": { - "paths": [ - "M906.126 135.813v0c-91.174-75.89-202.487-113.171-312.548-113.057-127.014-0.038-253.611 49.683-348.16 145.636l-95.004-79.265-1.593 305.342 300.184-56.282-99.442-82.944c67.546-64.247 155.269-97.204 244.015-97.28 79.948 0.038 159.782 26.7 226.114 81.806 84.347 70.125 127.659 170.629 127.772 272.46-0.038 14.715-0.948 29.431-2.769 44.070l137.519-26.283c0.19-5.954 0.303-11.871 0.303-17.787 0.152-140.098-60.151-279.78-176.431-376.415zM839.035 766.976c-67.736 65.498-156.255 99.025-245.912 99.1-79.986-0.038-159.82-26.738-226.114-81.806-84.347-70.125-127.697-170.629-127.772-272.498 0-16.839 1.252-33.716 3.679-50.366l-138.164 25.941c-0.379 8.116-0.683 16.346-0.683 24.462-0.114 140.174 60.226 279.817 176.545 376.491 91.136 75.852 202.411 113.057 312.51 112.981h0.341c127.924 0 255.241-50.441 349.943-147.759l90.795 75.207 0.569-305.38-299.956 57.344 104.183 86.281z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "refresh" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 113, - "id": 14, - "prevSize": 32, - "code": 58911, - "name": "refresh" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 14 - }, - { - "icon": { - "paths": [ - "M593.351 21.732c-270.753 0-490.268 219.477-490.268 490.231s219.515 490.268 490.268 490.268 490.231-219.515 490.231-490.268c0-270.753-219.477-490.231-490.231-490.231zM828.947 683.653l-72.363 72.363-162.095-162.133-164.902 164.902-73.121-73.121 164.902-164.902-161.678-161.678 72.363-72.325 161.602 161.678 165.774-165.736 73.121 73.083-165.774 165.736 162.171 162.133z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "remove-small" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 114, - "id": 15, - "prevSize": 32, - "code": 58912, - "name": "remove-small" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 15 - }, - { - "icon": { - "paths": [ - "M254.976 675.84v-267.264h103.424l-179.2-203.776-179.2 203.776h103.424v308.224c0 56.51 45.815 102.4 102.4 102.4h459.776l-131.186-143.36h-279.438zM920.538 615.424v-308.224c0-56.51-45.89-102.4-102.4-102.4h-459.738l131.11 143.36h279.514v267.264h-103.424l179.2 203.776 179.2-203.776h-103.462z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "retweet" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 117, - "id": 16, - "prevSize": 32, - "code": 58913, - "name": "retweet" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 16 - }, - { - "icon": { - "paths": [ - "M768 64.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-400.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014h-16.005v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019h128v-192.019c0-105.851-86.13-192.019-192.019-192.019zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "unlocked" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 36, - "id": 17, - "prevSize": 32, - "code": 58914, - "name": "unlocked" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 17 - }, - { - "icon": { - "paths": [ - "M593.351 0l-593.351 1023.962h1186.74l-593.351-1023.962zM653.236 899.451h-125.421v-121.211h125.421v121.211zM622.175 728.329h-62.502l-34.816-288.313v-156.748h131.3v156.748l-33.982 288.313z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "warning" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 37, - "id": 18, - "prevSize": 32, - "code": 58915, - "name": "warning" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 18 - }, - { - "icon": { - "paths": [ - "M0 512l512 512v-320.019h512v-384h-512v-320.019z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "arrow-left" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 38, - "id": 19, - "prevSize": 32, - "code": 58916, - "name": "arrow-left" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 19 - }, - { - "icon": { - "paths": [ - "M1024 512l-512-512v320.019h-512v384h512v320.019z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "arrow-right" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 39, - "id": 20, - "prevSize": 32, - "code": 58917, - "name": "arrow-right" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 20 - }, - { - "icon": { - "paths": [ - "M402.735 146.735l-320.019 320.019c-24.993 24.993-24.993 65.498 0 90.491l320.019 320.019c24.993 24.993 65.498 24.993 90.491 0s24.993-65.498 0-90.491l-210.754-210.754h613.49c35.347 0 64.019-28.634 64.019-64.019s-28.672-64.019-64.019-64.019h-613.49l210.754-210.754c12.478-12.478 18.735-28.862 18.735-45.246s-6.258-32.768-18.735-45.246c-24.993-24.993-65.498-24.993-90.491 0z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "back-arrow" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 103, - "id": 21, - "prevSize": 32, - "code": 58918, - "name": "back-arrow" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 21 - }, - { - "icon": { - "paths": [ - "M507.259 578.522h-102.059v101.717h102.059v-101.717zM650.885 714.714h-101.945v101.717h101.945v-101.717zM507.259 714.714h-102.059v101.717h102.059v-101.717zM507.259 442.33h-102.059v101.679h102.059v-101.679zM843.131 244.091c23.4 0 42.287-18.887 42.287-42.174v-145.408c0-23.324-18.887-42.174-42.287-42.174s-42.325 18.849-42.325 42.174v145.408c0.038 23.324 18.925 42.174 42.325 42.174zM343.419 244.091c23.362 0 42.249-18.887 42.249-42.174v-145.408c0-23.324-18.887-42.174-42.249-42.174-23.4 0-42.325 18.849-42.325 42.174v145.408c0 23.324 18.925 42.174 42.325 42.174zM363.444 578.522h-102.059v101.717h102.059v-101.717zM363.444 714.714h-102.059v101.717h102.059v-101.717zM650.885 578.522h-101.945v101.717h101.945v-101.717zM938.325 578.522h-102.059v101.717h102.059v-101.717zM938.325 442.33h-102.059v101.679h102.059v-101.679zM899.337 84.385v46.914c17.598 15.474 28.71 38.153 28.71 63.412 0 46.801-37.964 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-387.262v46.914c17.56 15.474 28.71 38.153 28.71 63.412 0 46.801-38.002 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-192.322v925.279h997.035v-925.279h-192.512zM999.234 915.304h-809.832v-589.938h809.832v589.938zM650.885 442.33h-101.945v101.679h101.945v-101.679zM794.624 442.33h-101.983v101.679h101.983v-101.679zM794.624 714.714h-101.983v101.717h101.983v-101.717zM794.624 578.522h-101.983v101.717h101.983v-101.717z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "calendar" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 102, - "id": 22, - "prevSize": 32, - "code": 58919, - "name": "calendar" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 22 - }, - { - "icon": { - "paths": [ - "M132.21 286.758c-13.881-13.729-36.295-13.729-50.138 0-13.805 13.653-13.805 35.878 0 49.607l404.897 400.877c13.881 13.729 36.257 13.729 50.138 0l404.897-400.877c13.805-13.729 13.881-35.878 0-49.607s-36.371-13.729-50.138-0.038l-379.866 365.606-379.79-365.568z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-down" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 101, - "id": 23, - "prevSize": 32, - "code": 58920, - "name": "caret-down" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 23 - }, - { - "icon": { - "paths": [ - "M737.242 891.79c13.729 13.881 13.729 36.257 0 50.138s-35.878 13.881-49.607 0l-400.877-404.821c-13.729-13.881-13.729-36.295 0-50.138l400.877-404.897c13.729-13.881 35.878-13.881 49.607 0s13.729 36.257 0 50.138l-365.568 379.79 365.568 379.79z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-left" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 100, - "id": 24, - "prevSize": 32, - "code": 58921, - "name": "caret-left" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 24 - }, - { - "icon": { - "paths": [ - "M286.72 891.79c-13.729 13.881-13.729 36.257 0 50.138s35.878 13.881 49.607 0l400.877-404.821c13.729-13.881 13.729-36.295 0-50.138l-400.915-404.897c-13.729-13.881-35.878-13.881-49.607 0s-13.729 36.257 0 50.138l365.568 379.79-365.568 379.79z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-right" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 99, - "id": 25, - "prevSize": 32, - "code": 58922, - "name": "caret-right" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 25 - }, - { - "icon": { - "paths": [ - "M891.79 737.242c13.881 13.729 36.295 13.729 50.138 0 13.881-13.729 13.881-35.878 0-49.607l-404.897-400.877c-13.805-13.729-36.257-13.729-50.062 0l-404.897 400.877c-13.805 13.729-13.881 35.878 0 49.607s36.257 13.729 50.138 0l379.79-365.606 379.79 365.606z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-up" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 98, - "id": 26, - "prevSize": 32, - "code": 58923, - "name": "caret-up" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 26 - }, - { - "icon": { - "paths": [ - "M574.767 92.16c-227.593 0-412.672 182.386-418.247 409.335h-125.8l188.378 209.92 188.302-209.92h-146.242c5.537-168.998 143.777-304.393 313.609-304.393 173.397 0 313.913 140.971 313.913 314.899s-140.478 314.861-313.913 314.861c-69.48 0-133.689-22.718-185.685-61.099l-71.983 76.99c70.997 55.751 160.465 89.050 257.707 89.050 231.159 0 418.551-187.961 418.551-419.84-0.038-231.879-187.43-419.84-418.551-419.84z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "ccw" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 97, - "id": 27, - "prevSize": 32, - "code": 58924, - "name": "ccw" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 27 - }, - { - "icon": { - "paths": [ - "M996.617 126.786l-513.555 513.555-256.796-256.834-128.379 128.417 385.214 385.252 641.896-642.010z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "check-mage" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 96, - "id": 28, - "prevSize": 32, - "code": 58925, - "name": "check-mage" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 28 - }, - { - "icon": { - "paths": [ - "M512 40.96c-260.134 0-471.040 210.944-471.040 471.040 0 260.134 210.906 471.040 471.040 471.040s471.040-210.906 471.040-471.040c0-260.134-210.906-471.040-471.040-471.040zM512 880.64c-203.624 0-368.64-165.054-368.64-368.64s165.016-368.64 368.64-368.64 368.64 165.054 368.64 368.64-165.016 368.64-368.64 368.64zM547.84 245.76h-71.68v281.069l174.345 174.345 50.669-50.707-153.335-153.335z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "clock" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 95, - "id": 29, - "prevSize": 32, - "code": 58926, - "name": "clock" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 29 - }, - { - "icon": { - "paths": [ - "M337.541 1021.004h513.024l64.512-645.916h-639.128l61.592 645.916zM737.394 154.169v-116.508c0-19.191-15.398-34.702-34.361-34.702h-217.847c-19.001 0-34.361 15.55-34.361 34.702v114.574c-73.576 8.382-150.149 24.614-226.494 52.338v106.989h738.001v-109.833c0 0-90.074-31.403-224.977-47.559zM668.937 147.759c-47.749-3.224-99.252-4.096-153.297-0.986v-61.44c0-9.519 7.623-17.332 17.143-17.332h118.936c9.519 0 17.218 7.813 17.218 17.332v62.426z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "delete" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 94, - "id": 30, - "prevSize": 32, - "code": 58928, - "name": "delete" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 30 - }, - { - "icon": { - "paths": [ - "M928.503 26.889l-111.502 112.109 156.065 156.9 111.502-112.071-156.065-156.937zM215.002 744.41l156.065 156.9 535.211-538.093-156.065-156.9-535.211 538.093zM103.917 1007.161l188.985-49.873-139.302-140.098-49.683 190.009z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "edit" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 115, - "id": 31, - "prevSize": 32, - "code": 58929, - "name": "edit" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 31 - }, - { - "icon": { - "paths": [ - "M1014.67 822.651c0 0 0 0 0 0l-310.651-310.651 310.651-310.651c0 0 0 0 0 0 3.337-3.337 5.765-7.244 7.32-11.416 4.248-11.378 1.82-24.69-7.32-33.83l-146.735-146.735c-9.14-9.14-22.452-11.567-33.83-7.32-4.172 1.555-8.078 3.982-11.416 7.32 0 0 0 0 0 0l-310.651 310.651-310.651-310.651c0 0 0 0 0 0-3.337-3.337-7.244-5.765-11.416-7.32-11.378-4.248-24.69-1.82-33.83 7.32l-146.735 146.735c-9.14 9.14-11.567 22.452-7.32 33.83 1.555 4.172 3.982 8.078 7.32 11.416 0 0 0 0 0 0l310.651 310.651-310.651 310.651c0 0 0 0 0 0-3.337 3.337-5.765 7.244-7.32 11.416-4.248 11.378-1.82 24.69 7.32 33.83l146.735 146.735c9.14 9.14 22.452 11.567 33.83 7.32 4.172-1.555 8.078-3.982 11.416-7.32 0 0 0 0 0 0l310.651-310.651 310.651 310.651c0 0 0 0 0 0 3.337 3.337 7.244 5.765 11.416 7.32 11.378 4.248 24.69 1.82 33.83-7.32l146.735-146.735c9.14-9.14 11.567-22.452 7.32-33.83-1.555-4.172-3.982-8.078-7.32-11.416z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "error" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 122, - "id": 32, - "prevSize": 32, - "code": 58930, - "name": "error" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 32 - }, - { - "icon": { - "paths": [ - "M593.351 22.566c-270.336 0-489.434 219.098-489.434 489.358s219.098 489.434 489.434 489.434 489.434-219.136 489.434-489.434-219.136-489.358-489.434-489.358zM635.752 826.596c-11.985 11.719-26.396 17.636-43.16 17.636-8.154 0-15.967-1.517-23.4-4.589-7.358-3.034-13.843-7.168-19.456-12.174-5.613-5.158-10.126-11.226-13.388-18.356-3.337-7.13-4.968-14.753-4.968-22.945 0-16.308 5.992-30.303 17.977-42.060 11.947-11.681 26.396-17.598 43.198-17.598 16.308 0 30.606 5.689 42.78 16.801 12.25 11.188 18.318 24.993 18.318 41.339-0.038 16.384-5.992 30.303-17.939 41.984zM778.923 382.673c-3.982 13.767-9.747 26.396-17.18 37.774-7.471 11.454-16.498 22.49-27.079 33.071s-22.49 21.618-35.65 33.033c-11.454 9.785-20.783 18.318-27.913 25.79-7.168 7.396-12.895 14.867-17.218 22.338-4.286 7.433-7.282 15.398-9.026 24.007-1.707 8.609-2.617 49.721-2.617 62.35v22.338h-101.376v-32.616c0-13.729 0.986-56.661 3.034-67.584s5.158-21.125 9.481-30.872 10.012-19.228 17.18-28.369c7.168-9.14 16.232-18.887 27.079-29.203l38.647-36.902c10.847-9.747 20.177-20.632 27.951-32.616 7.737-12.060 11.529-26.7 11.529-43.88 0-22.3-6.978-41.036-21.011-56.206-14.071-15.17-33.944-22.793-59.695-22.793-13.16 0-25.069 2.389-35.65 7.282-10.619 4.817-19.797 11.454-27.496 19.759-7.737 8.344-13.577 17.901-17.598 28.786-3.982 10.847-6.334 21.997-6.865 33.527l-105.624-9.444c3.413-27.496 10.733-51.959 21.921-73.463 11.112-21.466 25.562-39.595 43.311-54.575 17.711-14.829 38.078-26.169 61.023-33.944 22.869-7.699 47.521-11.605 73.842-11.605 24.614 0 47.976 3.603 70.049 10.771 21.959 7.168 41.491 17.711 58.406 31.782 16.839 14.033 30.227 31.365 39.936 51.959 9.709 20.632 14.564 44.411 14.564 71.263 0 18.356-2.010 34.475-5.992 48.166z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "help" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 124, - "id": 33, - "prevSize": 32, - "code": 58931, - "name": "help" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 33 - }, - { - "icon": { - "paths": [ - "M574.805 92.16c-227.631 0-412.71 182.386-418.247 409.335h-125.838l188.378 209.958 188.302-209.958h-146.242c5.537-168.998 143.777-304.393 313.647-304.393 173.359 0 313.875 140.971 313.875 314.899s-140.478 314.861-313.875 314.861c-69.518 0-133.727-22.718-185.761-61.099l-71.983 76.99c71.073 55.751 160.503 89.050 257.745 89.050 231.121 0 418.513-187.961 418.513-419.84-0.038-231.879-187.43-419.84-418.513-419.84zM537.6 286.72v240.109l153.865 153.865 50.669-50.669-132.855-132.855v-210.413h-71.68z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "history" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 45, - "id": 34, - "prevSize": 32, - "code": 58932, - "name": "history" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 34 - }, - { - "icon": { - "paths": [ - "M510.413 0c-281.907 0-510.413 228.582-510.413 510.413 0 281.933 228.506 510.464 510.413 510.464s510.387-228.557 510.387-510.464c0-281.83-228.48-510.413-510.387-510.413zM865.843 510.413c0 69.99-20.506 135.27-55.578 190.285l-490.163-490.163c55.091-35.021 120.32-55.475 190.31-55.475 195.942 0 355.43 159.411 355.43 355.354zM154.957 510.413c0-69.939 20.506-135.245 55.578-190.31l490.189 490.189c-55.066 35.072-120.371 55.501-190.31 55.501-195.942 0.026-355.456-159.437-355.456-355.379z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "not-installed" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 58, - "id": 35, - "prevSize": 32, - "code": 58936, - "name": "not-installed" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 35 - }, - { - "icon": { - "paths": [ - "M511.77 0c-282.778 0-512.102 229.222-512.102 512.179 0 282.829 229.325 512.102 512.102 512.102 282.931 0.026 512.23-229.248 512.23-512.102 0-282.957-229.299-512.179-512.23-512.179zM143.718 419.968h736.205v184.269h-736.205v-184.269z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "disabled" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 57, - "id": 36, - "prevSize": 32, - "code": 58937, - "name": "disabled" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 36 - }, - { - "icon": { - "paths": [ - "M505.139 0.085c-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827-3.717-282.658-236.1-508.826-518.793-505.003z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "dot" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 56, - "id": 37, - "prevSize": 32, - "code": 58935, - "name": "dot" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 37 - }, - { - "icon": { - "paths": [ - "M383.462 577.51h255.693v-213.043h127.795l-255.642-255.667-255.642 255.667h127.795z", - "M852.173 577.51v170.394h-681.754v-170.394h-170.419v340.89h1022.618v-340.89z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "export" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 93, - "id": 38, - "prevSize": 32, - "code": 58933, - "name": "export" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 38 - }, - { - "icon": { - "paths": [ - "M639.155 108.8h-255.693v213.043h-127.795l255.667 255.667 255.616-255.667h-127.795z", - "M852.173 577.51v170.394h-681.754v-170.394h-170.419v340.89h1022.618v-340.89z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "import" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 92, - "id": 39, - "prevSize": 32, - "code": 58934, - "name": "import" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 39 - }, - { - "icon": { - "paths": [ - "M259.2 0h214.323v214.323h-214.323v-214.323z", - "M259.2 269.875h214.323v214.349h-214.323v-214.349z", - "M259.2 539.776h214.323v214.349h-214.323v-214.349z", - "M259.2 809.651h214.323v214.349h-214.323v-214.349z", - "M549.325 0h214.323v214.323h-214.323v-214.323z", - "M549.325 269.875h214.323v214.349h-214.323v-214.349z", - "M549.325 539.776h214.323v214.349h-214.323v-214.349z", - "M549.325 809.651h214.323v214.349h-214.323v-214.349z" - ], - "attrs": [ - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "gripper" - ], - "grid": 0 - }, - "attrs": [ - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {} - ], - "properties": { - "order": 91, - "id": 40, - "prevSize": 32, - "code": 58903, - "name": "gripper" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 40 - }, - { - "icon": { - "paths": [ - "M860.058 185.062v272l-430.029-269.158-1.894 253.491-424.371-249.754-3.763 647.834 426.24-241.28-5.606 239.437 439.424-252.16v259.635h163.942v-660.045z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "forward" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 90, - "id": 41, - "prevSize": 32, - "code": 58904, - "name": "forward" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 41 - }, - { - "icon": { - "paths": [ - "M163.942 845.107v-271.974l430.029 269.133 1.894-253.491 424.397 249.754 3.738-647.834-426.24 241.28 5.606-239.437-439.424 252.16v-259.635h-163.942v660.045z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "backward" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 89, - "id": 42, - "prevSize": 32, - "code": 58905, - "name": "backward", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 42 - }, - { - "icon": { - "paths": [ - "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.632 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.368 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.107-205.21 458.368-458.394 458.368z", - "M760.013 625.613l30.387-38.4-265.6-206.413-20.787-1.613-259.226 208.026 28.826 39.987 236.8-177.613z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "expand-close" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 88, - "id": 43, - "prevSize": 32, - "code": 58901, - "name": "expand-close" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 43 - }, - { - "icon": { - "paths": [ - "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.606 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.394 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.133-205.21 458.394-458.394 458.394z", - "M265.6 454.4l-30.387 38.4 265.574 206.387 20.813 1.613 259.2-208-28.8-39.987-236.8 177.587z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "expand-open" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 87, - "id": 44, - "prevSize": 32, - "code": 58902, - "name": "expand-open" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 44 - }, - { - "icon": { - "paths": [ - "M1020.032 565.555v-116.045l-16.41-5.376-124.237-40.525-33.152-80.102 63.718-134.784-82.048-82.125-15.411 7.808-116.531 59.213-80.077-33.178-50.278-140.442h-116.096l-45.875 140.698-80 33.126-134.963-63.744-82.022 82.074 7.834 15.334 59.162 116.608-33.126 80.026-140.518 50.253v116.147l16.435 5.325 124.288 40.576 33.075 80-63.693 134.886 82.048 82.099 131.942-66.97 80.026 33.152 50.304 140.39h116.096l5.35-16.41 40.55-124.237 80.077-33.178 134.886 63.718 82.074-82.074-7.834-15.386-59.213-116.582 33.203-80.026 140.416-50.253zM510.003 672.589c-89.754 0-162.509-72.832-162.509-162.611 0-89.754 72.755-162.483 162.509-162.483 89.83 0 162.509 72.73 162.509 162.483 0.026 89.805-72.653 162.611-162.509 162.611z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "system-config" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 86, - "id": 45, - "prevSize": 32, - "code": 58896, - "name": "system-config" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 45 - }, - { - "icon": { - "paths": [ - "M509.978 54.426l-509.978 509.926 95.949 95.949 414.106-413.978 413.875 413.978 95.949-95.898-509.901-509.978zM146.253 688.563v335.437h259.917v-304.819h207.514v304.819h259.917v-335.488l-363.622-363.597-363.725 363.648z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "home" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 85, - "id": 46, - "prevSize": 32, - "code": 58897, - "name": "home" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 46 - }, - { - "icon": { - "paths": [ - "M0 736.41l498.278 287.59v-421.402l-498.278-287.667v421.478zM894.464 224.486v44.262c0 32.819-62.797 59.418-140.365 59.418-77.466 0-140.262-26.598-140.262-59.418v-73.216h0.435c4.71 30.925 65.408 55.475 139.853 55.475 77.568 0 140.365-26.624 140.365-59.29 0-32.845-62.797-59.366-140.365-59.366-6.195 0-12.262 0.205-18.202 0.563l-90.317-52.147v55.706c0 32.819-62.72 59.392-140.262 59.392-48.691 0-91.597-10.496-116.813-26.47-3.584-3.712-7.987-7.245-13.312-10.598-6.579-6.861-10.24-14.387-10.24-22.323v-53.939l-87.322 50.381c-6.272-0.307-12.646-0.614-19.123-0.614-77.491 0-140.314 26.522-140.314 59.366 0 32.691 62.822 59.29 140.314 59.29 74.445 0 135.219-24.525 139.93-55.475h0.384v73.216c0 32.819-62.746 59.418-140.314 59.418-77.491 0-140.314-26.598-140.314-59.418v-43.622l-108.083 62.31 499.994 288.563 496.691-286.694-112.358-64.768zM646.784 408.013c0 32.794-62.874 59.315-140.365 59.315s-140.339-26.522-140.339-59.315v-73.267h0.41c4.762 30.95 65.459 55.475 139.93 55.475s135.142-24.525 139.904-55.475h0.486v73.267zM525.645 606.234v417.766l498.355-287.718v-417.766l-498.355 287.718zM505.318 118.656c77.542 0 140.262-26.547 140.262-59.315s-62.72-59.315-140.262-59.315c-77.491 0-140.339 26.573-140.339 59.315-0.026 32.768 62.822 59.315 140.339 59.315z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "lego" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 84, - "id": 47, - "prevSize": 32, - "code": 58898, - "name": "lego" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 47 - }, - { - "icon": { - "paths": [ - "M287.002 481.664c0.205 0.23 0.461 0.486 0.691 0.717l103.347 103.373 36.045-36.045-56.55-56.499 90.266-90.189 11.904 1.28c3.046 0.307 6.093 0.538 9.19 0.538 6.246 0 12.314-0.768 18.253-2.125l-66.381-66.381c-1.357-1.382-2.765-2.611-4.173-3.814 20.454-73.6 1.766-155.725-56.038-213.555-57.421-57.421-138.803-76.237-211.968-56.525l123.955 123.981-32.563 121.446-121.395 32.589-124.032-124.006c-19.712 73.19-0.896 154.573 56.525 212.019 60.262 60.288 147.021 77.952 222.925 53.197zM653.235 555.802c-1.997 8.909-2.509 18.202-1.459 27.546l1.306 11.93-90.189 90.189-56.55-56.55-36.070 36.122 327.219 327.194c20.198 20.173 46.618 30.259 73.062 30.259s52.915-10.086 73.037-30.259c40.346-40.32 40.346-105.728 0-146.074l-290.355-290.355zM905.907 958.362l-51.866 13.875-42.112-42.112 13.901-51.891 51.866-13.926 42.112 42.138-13.901 51.917zM506.701 594.099l56.576 56.576 64.128-64.154c-3.482-31.334 6.707-63.821 30.669-87.808 24.013-23.962 56.474-34.176 87.808-30.72l280.397-280.346-157.056-157.056-280.448 280.397c3.482 31.258-6.682 63.821-30.669 87.782-24.013 23.987-56.525 34.176-87.808 30.643l-64.102 64.205 56.499 56.422-277.043 277.12-10.138-10.138-53.248 42.829-89.421 141.312 22.835 22.835 141.312-89.421 42.803-53.222-10.138-10.138 277.043-277.12z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "tool" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 120, - "id": 48, - "prevSize": 32, - "code": 58899, - "name": "tool" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 48 - }, - { - "icon": { - "paths": [ - "M1023.932 505.105c-3.717-282.692-236.1-508.826-518.793-505.003-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827zM623.991 481.304v298.633h-223.983v-298.633h-186.621l298.633-298.633 298.667 298.633h-186.679z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "upgrade" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 125, - "id": 49, - "prevSize": 32, - "code": 58900, - "name": "upgrade" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 49 - }, - { - "icon": { - "paths": [ - "M870.821 731.837c-64.195-65.89-78.231-188.772-91.738-283.159-20.074-139.937-24.259-297.089-226.008-317.693v-25.318c0-25.424-39.195-46.028-64.937-46.028s-62.024 20.551-62.024 46.028v25.371c-200.054 20.816-206.993 177.914-226.855 317.693-13.453 94.439-27.331 217.268-91.049 283.264-12.818 13.348-16.473 32.998-9.11 49.947 7.362 16.843 24.153 27.913 42.797 27.913h695.343c18.75 0 35.593-11.070 42.903-28.019s3.655-36.653-9.322-50z", - "M489.569 963.883c51.060 0 92.373-40.837 92.373-91.367h-184.694c-0.053 50.53 41.314 91.367 92.32 91.367z" - ], - "width": 989, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "notification-02" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 123, - "id": 50, - "prevSize": 32, - "code": 58887, - "name": "notification-02" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 50 - }, - { - "icon": { - "paths": [ - "M252.137 153.228l-160.070 92.393 378.042 218.205 160.023-92.393-377.996-218.205zM845.638 247.063l-377.996-218.252-145.222 83.828 377.996 218.205 145.222-83.782zM502.784 526.15v433.664l376.832-217.507v-433.711l-376.832 217.553zM55.668 742.26l376.785 217.507v-436.503l-376.785-217.46v436.457z" - ], - "width": 954, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "product" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 7, - "id": 51, - "prevSize": 32, - "code": 58888, - "name": "product", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 51 - }, - { - "icon": { - "paths": [ - "M454.495 48.899l-402.697 240.513v457.026l104.632 60.727v-457.049l298.157-178.728 299.698 179.142-0.138 455.922 103.528-60.013v-457.026l-403.18-240.513zM507.766 330.28v534.344l-53.271 32.124-53.34-32.262v-533.792l-138.090 83.853v456.934l191.453 115.516 193.087-116.322v-456.451l-139.839-83.945z" - ], - "width": 903, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "logo" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 17, - "id": 52, - "prevSize": 32, - "code": 58886, - "name": "logo", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 52 - }, - { - "icon": { - "paths": [ - "M709.921 158.694c8.139 32.295 8.927 34.974 8.192 68.162-0.263 12.813-7.772 71.943-5.724 90.112 1.628 14.966 5.461 16.174 11.448 28.514 10.398 21.425 6.984 51.095 2.941 72.678-2.206 11.868-6.827 28.725-13.916 38.387-7.667 10.66-23.211 10.713-30.142 23.158-9.872 17.854-4.306 43.008-10.503 62.385-7.142 21.898-25.101 23.421-26.466 52.145 8.822 1.155 17.592 2.468 26.466 3.623 8.822 18.59 25.049 55.874 41.59 67.059 13.863 3.728 27.727 7.457 41.59 11.185 48.627 19.64 102.558 43.061 151.237 63.33 44.373 18.432 97.411 24.996 113.48 70.84 0 31.035 2.941 104.501 2.153 145.25h-965.553c-0.893-40.697 2.153-114.215 2.153-145.25 15.964-45.844 69.002-52.408 113.375-70.84 48.679-20.27 102.61-43.691 151.237-63.33 13.811-3.728 27.674-7.457 41.59-11.185 16.489-11.185 32.715-48.522 41.538-67.059l19.692-4.621c-4.464-24.576-19.85-26.466-26.256-43.743-2.521-26.099-5.041-52.145-7.509-78.192 0.053 1.155-18.117-3.361-20.48-4.779-25.731-15.806-26.204-80.24-28.725-107.021-1.103-12.183 16.174-22.265 11.343-44.636-28.094-131.44 12.183-192.88 75.881-213.307 44.216-17.749 126.871-50.465 203.855-3.728l19.167 17.487 30.93 5.251c15.491 8.77 25.416 38.124 25.416 38.124z" - ], - "width": 1090, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "account" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 9, - "id": 53, - "prevSize": 32, - "code": 58880, - "name": "account", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 53 - }, - { - "icon": { - "paths": [ - "M529.203 886.14l-468.465-628.209h936.931l-468.465 628.209z" - ], - "width": 1085, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "arrowdown" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 10, - "id": 54, - "prevSize": 32, - "code": 58881, - "name": "arrowdown", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 54 - }, - { - "icon": { - "paths": [ - "M976.793 982.006h-910.388v-910.388h910.388v910.388zM912.622 135.789h-782.046v782.088h782.046v-782.088z", - "M221.432 822.8h152.876v-372.033h-152.876v372.033z", - "M466.323 820.234h350.932v-366.53h-350.932v366.53z", - "M221.432 360.489h595.865v-147.125h-595.865v147.125z" - ], - "width": 1034, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "cms" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 83, - "id": 55, - "prevSize": 32, - "code": 58882, - "name": "cms", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 55 - }, - { - "icon": { - "paths": [ - "M264.319 308.831c75.685 0 136.98-61.259 136.98-136.944 0-75.649-61.295-136.98-136.98-136.98s-137.017 61.331-137.017 136.98c0 75.649 61.331 136.944 137.017 136.944zM448.929 370.851c-28.962-28.926-63.325-46.252-187.655-46.252s-157.859 18.776-185.335 46.252c-27.44 27.44-18.196 320.43-18.196 320.43l60.824-144.411 38.241 430.334 110.23-220.278 102.907 220.278 36.393-430.334 60.824 144.411c-0.036 0 10.693-291.468-18.233-320.43z" - ], - "width": 489, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "customers" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 82, - "id": 56, - "prevSize": 32, - "code": 58883, - "name": "customers", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 56 - }, - { - "icon": { - "paths": [ - "M680.975 73.728c-337.523 0-610.976 273.515-611.038 610.976 0.122 37.72 1.039 251.812 1.039 251.812h1219.997c0 0 0.978-239.219 1.039-251.812-0.183-337.523-273.637-610.976-611.038-610.976zM737.708 197.831c31.117 3.607 61.379 10.271 90.418 19.624l-19.93 61.685c-25.004-8.070-51.169-13.939-78.191-16.995l7.703-64.313zM270.091 673.15h-64.864c0-31.423 3.118-62.235 8.803-92.007l63.702 12.349c-5.135 25.799-7.642 52.392-7.642 79.658zM305.855 504.419l-59.178-26.288c12.655-28.489 28-55.449 45.79-80.636l52.942 37.475c-15.284 21.825-28.611 45.056-39.554 69.449zM407.46 365.155l-43.405-48.113c22.925-20.541 47.807-39.187 74.462-54.96l33.318 55.571c-22.987 13.755-44.567 29.65-64.374 47.501zM536.943 217.455c29.039-9.292 59.178-16.017 90.418-19.624l7.581 64.313c-26.838 3.057-53.003 8.926-78.13 16.995l-19.869-61.685zM761.673 801.532l-152.897 27.205-38.881-150.452 395.172-404.22-203.394 527.467zM1019.476 434.971l52.942-37.414c17.79 25.187 33.257 52.148 45.851 80.636l-59.178 26.288c-10.943-24.454-24.209-47.685-39.615-69.51zM1094.916 673.15c0-27.266-2.69-53.859-7.703-79.658l63.702-12.349c5.808 29.834 8.803 60.645 8.803 92.007h-64.802zM646.006 770.659c26.777 17.056 62.174 9.415 79.291-17.24 17.118-26.593 9.292-62.051-17.301-79.108-26.655-17.24-62.051-9.354-79.23 17.362-17.118 26.349-9.476 61.99 17.24 78.986z" - ], - "width": 1376, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "dashboard" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 81, - "id": 57, - "prevSize": 32, - "code": 58884, - "name": "dashboard", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 57 - }, - { - "icon": { - "paths": [ - "M24.097 113.465h972.827v111.922l-410.504 412.792v238.366l-171.447 87.505v-325.871l-390.875-415.877v-108.837z" - ], - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "filter" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 80, - "id": 58, - "prevSize": 32, - "code": 58885, - "name": "filter", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 58 - }, - { - "icon": { - "paths": [ - "M59.153 534.182l164.053 38.141v-303.902l-164.053 38.141v227.621zM1122.198 59.153l-837.712 194.959v335.978l140.328 376.832 151.712-57.45-104.049-279.113 649.668 151.18v-722.385z" - ], - "width": 1170, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "promotions" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 79, - "id": 59, - "prevSize": 32, - "code": 58889, - "name": "promotions", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 59 - }, - { - "icon": { - "paths": [ - "M736.707 981.234h207.134v-322.703h-207.134v322.703zM399.646 981.234h207.134v-946.793h-207.134v946.793zM62.673 981.19h207.134v-634.704h-207.134v634.704z" - ], - "width": 991, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "reports" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 78, - "id": 60, - "prevSize": 32, - "code": 58890, - "name": "reports", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 60 - }, - { - "icon": { - "paths": [ - "M426.502 612.517c-15.866-13.512-42.796-25.753-80.79-36.723v198.774c11.535-1.459 23.729-4.331 36.299-8.851 12.618-4.426 23.87-10.829 33.804-19.068 9.981-8.427 18.173-18.55 24.529-30.649 6.638-12.006 9.651-26.365 9.651-42.89 0.047-26.836-7.721-47.222-23.493-60.593zM576.736 736.856c-7.109 23.117-19.774 45.762-38.135 67.749-18.503 22.175-43.079 41.855-74.010 58.992-30.885 17.373-70.432 27.683-118.878 31.12v88.088h-57.014v-88.088c-72.080-5.603-128.483-29.237-169.113-71.374-40.536-42.090-63.935-104.095-70.432-185.544h136.251c-0.753 39.359 8.992 70.479 28.86 93.266 20.15 22.74 44.774 37.335 74.434 43.455v-216.523c-3.060-1.318-7.486-2.919-12.994-4.567-5.508-1.789-11.393-3.343-17.938-4.708-23.776-6.827-47.175-15.019-70.291-24.294-23.493-9.369-44.114-21.704-62.523-37.335-18.456-15.584-33.098-34.84-43.879-57.956-11.111-23.211-16.478-51.977-16.478-86.487 0-35.31 6.168-66.336 18.785-93.313 12.665-26.836 29.143-49.529 49.858-67.702 20.621-18.314 44.303-32.58 71.468-42.419 27.071-10.122 55.037-16.149 83.992-18.314v-79.66h57.014v79.66c29.143 3.531 56.308 10.169 81.638 20.292 25.423 10.028 47.787 23.729 67.137 41.478 19.585 17.514 35.357 39.453 47.457 65.771 12.288 26.13 19.35 57.109 21.28 93.172h-137.287c-0.518-27.636-8.616-51.082-23.917-70.432-15.725-19.303-34.275-29.002-56.308-29.002v183.331c7.862 2.072 15.631 4.143 23.729 6.12 8.098 2.072 16.525 4.567 25.565 7.297 47.645 13.983 84.415 31.12 110.168 51.318 25.8 20.292 44.726 41.666 56.92 63.653 12.335 22.175 19.633 44.256 21.704 66.336 2.448 22.081 3.531 41.713 3.531 59.039 0.047 15.207-3.531 34.416-10.593 57.579zM228.905 263.415c-8.38 7.156-15.113 16.196-19.962 26.883-4.802 10.781-7.062 23.352-7.062 37.759 0 22.834 6.733 40.536 20.103 52.824 13.653 12.618 35.734 22.552 66.713 30.131v-168.831c-10.829 0-21.516 1.695-31.826 5.226-10.216 3.437-19.633 8.851-27.966 16.007z" - ], - "width": 659, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "sales" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 77, - "id": 61, - "prevSize": 32, - "code": 58891, - "name": "sales", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 61 - }, - { - "icon": { - "paths": [ - "M555.139 21.642c-218.775-71.601-457.062 40.29-532.231 250.028-75.227 209.681 41.211 437.665 259.928 509.208 218.717 71.601 457.004-40.348 532.231-250.028s-41.211-437.665-259.928-509.208zM320.076 677.045c-158.915-52.089-243.467-217.681-188.903-369.978 54.679-152.296 227.754-233.625 386.669-181.593s243.409 217.624 188.788 369.92c-54.622 152.296-227.696 233.567-386.554 181.65z", - "M638.482 685.794l358.927 349.602 24.807-69.241 24.865-69.241-310.348-302.29z" - ], - "width": 1109, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "search" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 76, - "id": 62, - "prevSize": 32, - "code": 58892, - "name": "search", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 62 - }, - { - "icon": { - "paths": [ - "M1098.281 85.45c19.777-3.723 34.901-21.232 34.901-42.347-0.058-23.791-19.196-43.103-42.812-43.103h-900.508c-23.675 0-42.754 19.312-42.754 43.103 0 21.057 15.007 38.566 34.843 42.347l-181.951 354.421v68.988c0 30.946 32.516 56.016 72.594 56.016 13.437 0 26.001-2.908 36.821-7.795v466.919h1061.286v-466.919c10.878 4.944 23.326 7.795 36.879 7.795 40.078 0 72.594-25.071 72.594-56.016v-68.988l-181.893-354.421zM214.758 564.875c-38.217 0-69.221-25.071-69.221-56.016v-6.457h-0.349v-62.531l137.162-353.665h109.648l-107.961 353.665v68.988c0 0 0 0 0 0 0 30.946-31.004 56.016-69.279 56.016zM498.447 564.875c-38.217 0-69.221-25.071-69.221-56.016v-68.988l57.354-353.665h109.241l-28.095 353.665v68.93c-0.058 31.004-31.004 56.075-69.279 56.075zM782.077 564.875c-38.217 0-69.162-25.071-69.162-56.016v-68.988l-28.154-353.665h108.892l57.296 353.665v68.988c0 0.931 0.175 1.92 0.233 2.792-1.803 29.666-32.051 53.224-69.104 53.224zM1134.637 508.859c0 30.946-31.004 56.016-69.221 56.016s-69.162-25.071-69.162-56.016v-68.988l-108.019-353.665h109.59l137.22 353.665v62.473h-0.349v6.515h-0.058z" - ], - "width": 1280, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "stores" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 75, - "id": 63, - "prevSize": 32, - "code": 58893, - "name": "stores", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 63 - }, - { - "icon": { - "paths": [ - "M944.97 329.042c-97.861 0-177.522 79.581-177.522 177.443 0 97.94 79.66 177.679 177.522 177.679 98.019 0 177.679-79.739 177.679-177.679 0-97.861-79.66-177.443-177.679-177.443zM944.97-0c-470.712 0-944.97 512-944.97 512s474.258 512 944.97 512c470.949 0 945.128-512 945.128-512s-474.179-512-945.128-512zM944.97 868.856c-200.057 0-362.292-162.078-362.292-362.45 0-200.057 162.236-362.292 362.292-362.292 200.214 0 362.45 162.236 362.45 362.292 0 200.451-162.236 362.45-362.45 362.45z" - ], - "width": 1890, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "views" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 73, - "id": 64, - "prevSize": 32, - "code": 58895, - "name": "views", - "ligatures": "" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 64 - }, - { - "icon": { - "paths": [ - "M1042.226 299.849h-598.393v-299.849l-443.833 384.316 443.833 384.403v-299.859h598.393c106.478 0 192.801 86.318 192.801 192.801s-86.318 192.796-192.801 192.796v0.483l-452.707 0.005c-46.695 0.005-84.53 37.845-84.53 84.535 0 46.68 37.84 84.525 84.535 84.525 0.377 0 0.744-0.053 1.121-0.058h451.581c199.964 0 362.044-162.085 362.044-362.039 0-199.964-162.080-362.059-362.044-362.059z" - ], - "width": 1404, - "attrs": [], - "isMulticolor": false, - "tags": [ - "revert" - ], - "grid": 0 - }, - "attrs": [], - "properties": { - "order": 129, - "id": 65, - "prevSize": 32, - "code": 58946, - "name": "revert" - }, - "setIdx": 0, - "setId": 5, - "iconIdx": 65 - }, - { - "icon": { - "paths": [ - "M939.616 148.384c112.512 112.448 112.512 294.816 0 407.264l-350.944 350.976c-12.512 12.544-32.736 12.544-45.248 0-12.576-12.512-12.576-32.704 0-45.248l346.432-346.464c87.488-87.488 87.488-229.248-0.064-316.768-87.36-87.488-229.248-87.488-316.736 0l-462.304 456.864c-62.496 62.464-62.496 163.776 0 226.24 62.496 62.496 163.744 62.496 226.24 0l466.88-461.344c37.44-37.44 37.44-98.336 0-135.776-37.44-37.408-98.304-37.408-135.744 0l-351.008 351.008c-12.512 12.512-32.736 12.512-45.248 0-12.512-12.544-12.512-32.736 0-45.28l350.976-350.976c62.432-62.464 163.744-62.464 226.24 0 62.496 62.496 62.496 163.776 0 226.272l-466.88 461.376c-87.296 87.328-229.408 87.328-316.736 0-87.328-87.328-87.328-229.472 0-316.8l466.88-461.344c112.448-112.512 294.816-112.512 407.264 0z" - ], - "attrs": [], - "isMulticolor": false, - "tags": [ - "clip", - "paperclip", - "attachment" - ], - "grid": 32 - }, - "attrs": [], - "properties": { - "id": 0, - "order": 130, - "prevSize": 32, - "code": 58947, - "name": "clip" - }, - "setIdx": 1, - "setId": 4, - "iconIdx": 0 - } - ], - "height": 1024, - "metadata": { - "name": "icomoon" - }, - "preferences": { - "showGlyphs": true, - "showQuickUse": true, - "showQuickUse2": true, - "showSVGs": true, - "fontPref": { - "prefix": "icon-", - "metadata": { - "fontFamily": "icomoon", - "majorVersion": 1, - "minorVersion": 0 - }, - "metrics": { - "emSize": 1024, - "baseline": 6.25, - "whitespace": 50 - }, - "resetPoint": 58880, - "showVersion": true, - "showSelector": false, - "showMetrics": false, - "showMetadata": false, - "embed": false - }, - "imagePref": { - "prefix": "icon-", - "png": true, - "useClassSelector": true, - "classSelector": ".icon" - }, - "historySize": 100, - "showCodes": true, - "search": "", - "gridSize": 16, - "showLiga": false - } + "IcoMoonType": "selection", + "icons": [ + { + "icon": { + "paths": [ + "M2041.366 1.102v1021.449h-175.926l-411.263-409.297v-204.59l411.263-407.568h175.926z", + "M1305.997 989.076c0 19.377-15.608 34.924-34.856 34.924h-1236.279c-19.255 0-34.863-15.547-34.863-34.924v-954.275c0-19.248 15.608-34.801 34.863-34.801h1236.279c19.248 0 34.856 15.553 34.856 34.801v954.275z" + ], + "width": 2041, + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "video" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 127, + "id": 0, + "prevSize": 32, + "code": 58945, + "name": "video" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 0 + }, + { + "icon": { + "paths": [ + "M723.661 889.601c-2.404-10.843-4.034-21.47-5.282-31.583h-277.528c-2.458 20.233-6.917 43.087-14.646 64.305-7.79 21.277-18.796 40.54-33.824 54.15-15.028 13.552-33.689 22.104-59.788 22.158v25.369h494.020v-25.369c-26.142-0.058-44.737-8.61-59.838-22.158-22.44-20.307-35.961-53.91-43.114-86.873zM1126.214 0h-1093.209c-18.22 0-33.005 15.024-33.005 33.596v731.259c0 18.576 14.785 33.623 33.005 33.623h1093.209c18.224 0 33.067-15.051 33.067-33.623v-731.259c0-18.572-14.843-33.596-33.067-33.596zM1079.193 716.922h-999.234v-635.394h999.234v635.394z" + ], + "width": 1159, + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "screen" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 72, + "id": 1, + "prevSize": 32, + "code": 58944, + "name": "screen" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 1 + }, + { + "icon": { + "paths": [ + "M771.001 776.737c-55.445 0-100.448 44.754-100.448 100.2s44.879 100.324 100.448 100.324 100.448-44.879 100.448-100.324-45.003-100.2-100.448-100.2zM771.001 918.707c-23.123 0-41.77-18.648-41.77-41.771s18.647-41.77 41.77-41.77c23.247 0 41.895 18.648 41.895 41.77s-18.648 41.771-41.895 41.771z", + "M469.532 776.737c-55.445 0-100.449 44.754-100.449 100.2s45.003 100.324 100.449 100.324c55.445 0 100.448-44.879 100.448-100.324s-45.003-100.2-100.448-100.2zM469.532 918.707c-23.123 0-41.771-18.648-41.771-41.771s18.648-41.77 41.771-41.77 41.77 18.648 41.77 41.77-18.648 41.771-41.77 41.771z", + "M823.587 494.412c-130.036 0-238.441-91.622-264.547-213.825h-207.237l-136.749-198.162v-1.865h-207.237v83.541h169.942l78.693 117.729 83.417 412.857h581.183l49.23-243.786c-42.268 27.474-92.616 43.511-146.694 43.511z", + "M1023.862 249.756v-45.376l-55.073-18.026-12.929-31.204 24.863-52.71-31.95-32.074-5.967 2.984-45.5 23.123-31.328-12.929-19.642-54.948h-45.376l-2.114 6.464-15.912 48.608-31.203 12.929-52.835-24.863-32.074 31.95 3.108 5.967 23.247 45.624-13.053 31.328-54.948 19.766v45.376l6.34 2.113 48.732 15.788 12.929 31.204-24.863 52.71 32.074 32.074 6.092-3.108 45.376-22.999 31.328 12.929 19.642 54.824h45.376l2.113-6.464 15.913-48.359 31.203-12.929 52.71 24.988 32.198-32.074-3.108-6.092-23.247-45.624 12.929-31.203 54.948-19.766zM824.582 291.527c-35.057 0-63.65-28.469-63.65-63.526 0-35.182 28.469-63.526 63.65-63.526s63.526 28.469 63.526 63.526c-0.124 35.182-28.469 63.526-63.526 63.526z" + ], + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "cart" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 71, + "id": 2, + "prevSize": 32, + "code": 58943, + "name": "cart" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 2 + }, + { + "icon": { + "paths": [ + "M0.010 188.484h1023.966v136.509h-1023.966z", + "M0.010 442.47h1023.966v136.506h-1023.966z", + "M0.010 699.017h1023.966v136.513h-1023.966z" + ], + "attrs": [ + {}, + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "list-menu" + ], + "grid": 0 + }, + "attrs": [ + {}, + {}, + {} + ], + "properties": { + "order": 61, + "id": 3, + "prevSize": 32, + "code": 58942, + "name": "list-menu" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 3 + }, + { + "icon": { + "paths": [ + "M0.010 0.372h279.074v279.074h-279.074z", + "M372.77 0.372h279.074v279.074h-279.074z", + "M744.892 0.372h279.074v279.074h-279.074z", + "M0.010 372.497h279.074v279.074h-279.074z", + "M372.77 372.497h279.074v279.074h-279.074z", + "M744.892 372.497h279.074v279.074h-279.074z", + "M0.010 744.585h279.074v279.074h-279.074z", + "M372.77 744.585h279.074v279.074h-279.074z", + "M744.892 744.585h279.074v279.074h-279.074z" + ], + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "grid" + ], + "grid": 0 + }, + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "properties": { + "order": 112, + "id": 4, + "prevSize": 32, + "code": 58941, + "name": "grid" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 4 + }, + { + "icon": { + "paths": [ + "M982.767 231.902h-250.095l-59.255-121.364c0 0-11.827-25.201-42.11-25.201-23.375 0-169.366 0-235.25 0-32.969 0-44.001 25.027-44.001 25.027l-57.484 121.539h-253.406c-22.74 0-41.131 18.459-41.131 41.267v624.333c0 22.743 18.401 41.199 41.131 41.199h941.636c22.74 0 41.199-18.459 41.199-41.199v-624.299c0-22.798-18.456-41.267-41.199-41.267zM512 823.91c-138.793 0-251.597-113.015-251.597-251.931 0-138.912 112.845-251.87 251.597-251.87 138.68 0 251.597 112.981 251.597 251.87 0 138.909-112.913 251.931-251.597 251.931z", + "M512 420.932c-83.255 0-150.972 67.714-150.972 150.972 0 83.197 67.71 150.903 150.972 150.903 83.258 0 150.903-67.714 150.903-150.903 0-83.255-67.652-150.972-150.903-150.972z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "camera" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 121, + "id": 5, + "prevSize": 32, + "code": 58940, + "name": "camera" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 5 + }, + { + "icon": { + "paths": [ + "M904.192 0.027l-307.234 0.116-596.89 596.958 426.906 426.906 596.958-596.958-0.113-305.596-119.603-121.426zM858.679 313.337c-39.997 40.001-104.854 40.001-144.794 0-40.001-40.001-40.001-104.796 0-144.794 39.939-40.001 104.796-40.001 144.794 0 39.997 39.997 39.997 104.793 0 144.794z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "tag" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 111, + "id": 6, + "prevSize": 32, + "code": 58939, + "name": "tag" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 6 + }, + { + "icon": { + "paths": [ + "M1094.391 77.71l-77.71-77.71-423.329 423.347-423.33-423.347-77.71 77.672 423.35 423.368-423.312 423.329 77.672 77.71 423.338-423.338 423.283 423.3 77.671-77.71-423.263-423.281z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "colorPermutations": { + "6868681": [ + { + "f": 0 + } + ] + }, + "tags": [ + "close-mage" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 110, + "id": 7, + "prevSize": 32, + "code": 58927, + "name": "close-mage" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 7 + }, + { + "icon": { + "paths": [ + "M857.675 289.413l-403.18-240.514-402.726 240.514v457.026l403.18 240.515 402.726-240.514v-457.027zM454.857 864.465l-298.427-178.383v-335.966l298.157-178.729 298.428 178.383v335.966l-298.158 178.729z" + ], + "width": 903, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "colorPermutations": { + "6868681": [ + { + "f": 0 + } + ] + }, + "tags": [ + "menu-item" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 109, + "id": 8, + "prevSize": 32, + "code": 58938, + "name": "menu-item" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 8 + }, + { + "icon": { + "paths": [ + "M505.704 40.998c-260.096 3.489-468.158 217.202-464.706 477.336 3.489 259.982 217.202 468.12 477.298 464.631s468.158-217.202 464.706-477.336c-3.413-260.058-217.202-468.12-477.298-464.631zM557.928 197.973c47.863 0 62.009 27.762 62.009 59.544 0 39.671-31.782 76.383-86.016 76.383-45.359 0-66.901-22.831-65.65-60.53 0-31.782 26.624-75.435 89.657-75.435zM435.162 806.381c-32.73 0-56.661-19.873-33.792-107.217l37.547-154.814c6.485-24.841 7.585-34.778 0-34.778-9.785 0-52.262 17.143-77.407 34.057l-16.346-26.776c79.607-66.446 171.16-105.472 210.375-105.472 32.73 0 38.153 38.722 21.807 98.266l-43.008 162.816c-7.585 28.786-4.286 38.722 3.262 38.722 9.785 0 41.984-11.871 73.614-36.75l18.47 24.841c-77.369 77.369-161.792 107.179-194.56 107.179z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "info" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 108, + "id": 9, + "prevSize": 32, + "code": 58906, + "name": "info" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 9 + }, + { + "icon": { + "paths": [ + "M591.986 448.019h-16.005v-192.019c0-105.851-86.13-192.019-192.019-192.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-16.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188zM448.019 448.019h-256v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "lock" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 107, + "id": 10, + "prevSize": 32, + "code": 58907, + "name": "lock" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 10 + }, + { + "icon": { + "paths": [ + "M870.4 317.44h-194.56v143.36h153.6v215.040h-634.88v-215.040h215.040v112.64l204.8-184.32-204.8-184.32v112.64h-256c-56.51 0-102.4 45.815-102.4 102.4v296.96c0 56.51 45.89 102.4 102.4 102.4h716.8c56.585 0 102.4-45.89 102.4-102.4v-296.96c0-56.585-45.815-102.4-102.4-102.4z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "loop" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 106, + "id": 11, + "prevSize": 32, + "code": 58908, + "name": "loop" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 11 + }, + { + "icon": { + "paths": [ + "M991.991 384h-351.991v-351.991c0-17.673-14.336-32.009-32.009-32.009h-192.019c-17.673 0-32.009 14.336-32.009 32.009v351.991h-351.991c-17.673 0-32.009 14.336-32.009 32.009v192.019c0 17.673 14.336 32.009 32.009 32.009h351.991v351.991c0 17.673 14.336 32.009 32.009 32.009h192.019c17.673 0 32.009-14.336 32.009-32.009v-351.991h351.991c17.673 0 32.009-14.336 32.009-32.009v-192.019c0-17.673-14.336-32.009-32.009-32.009z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "plus" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 105, + "id": 12, + "prevSize": 32, + "code": 58909, + "name": "plus" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 12 + }, + { + "icon": { + "paths": [ + "M505.704 40.998c-260.096 3.489-468.158 217.126-464.706 477.298 3.489 260.21 217.202 468.158 477.298 464.744 260.134-3.489 468.233-217.202 464.706-477.298-3.489-260.21-217.202-468.233-477.298-464.744zM506.577 102.4c70.163-0.986 136.382 15.853 194.56 46.118l-63.374 105.662c-38.002-18.47-80.631-28.937-125.762-28.937-45.056 0-87.723 10.43-125.687 28.975l-63.336-105.624c54.993-28.672 117.343-45.321 183.599-46.232zM254.255 637.687l-105.586 63.298c-28.672-54.955-45.321-117.305-46.194-183.486-0.986-70.201 15.853-136.457 46.118-194.56l105.624 63.45c-18.546 37.926-28.975 80.555-28.975 125.649 0 45.056 10.43 87.723 28.975 125.687zM517.461 921.562c-70.163 0.986-136.457-15.853-194.56-46.118l63.374-105.662c38.002 18.546 80.631 28.975 125.687 28.975 45.094 0 87.761-10.392 125.687-28.937l63.336 105.586c-54.993 28.634-117.305 45.246-183.561 46.194zM512 737.242c-124.397 0-225.242-100.883-225.242-225.242 0-124.397 100.883-225.28 225.242-225.28 124.473 0 225.28 100.883 225.28 225.28s-100.807 225.242-225.28 225.242zM769.745 637.687c18.546-38.002 28.975-80.631 28.975-125.687 0-45.094-10.43-87.723-28.975-125.687l105.586-63.374c28.672 54.993 45.359 117.305 46.232 183.561 0.91 70.201-15.929 136.457-46.194 194.56l-105.624-63.336z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "recover" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 104, + "id": 13, + "prevSize": 32, + "code": 58910, + "name": "recover" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 13 + }, + { + "icon": { + "paths": [ + "M906.126 135.813v0c-91.174-75.89-202.487-113.171-312.548-113.057-127.014-0.038-253.611 49.683-348.16 145.636l-95.004-79.265-1.593 305.342 300.184-56.282-99.442-82.944c67.546-64.247 155.269-97.204 244.015-97.28 79.948 0.038 159.782 26.7 226.114 81.806 84.347 70.125 127.659 170.629 127.772 272.46-0.038 14.715-0.948 29.431-2.769 44.070l137.519-26.283c0.19-5.954 0.303-11.871 0.303-17.787 0.152-140.098-60.151-279.78-176.431-376.415zM839.035 766.976c-67.736 65.498-156.255 99.025-245.912 99.1-79.986-0.038-159.82-26.738-226.114-81.806-84.347-70.125-127.697-170.629-127.772-272.498 0-16.839 1.252-33.716 3.679-50.366l-138.164 25.941c-0.379 8.116-0.683 16.346-0.683 24.462-0.114 140.174 60.226 279.817 176.545 376.491 91.136 75.852 202.411 113.057 312.51 112.981h0.341c127.924 0 255.241-50.441 349.943-147.759l90.795 75.207 0.569-305.38-299.956 57.344 104.183 86.281z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "refresh" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 113, + "id": 14, + "prevSize": 32, + "code": 58911, + "name": "refresh" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 14 + }, + { + "icon": { + "paths": [ + "M593.351 21.732c-270.753 0-490.268 219.477-490.268 490.231s219.515 490.268 490.268 490.268 490.231-219.515 490.231-490.268c0-270.753-219.477-490.231-490.231-490.231zM828.947 683.653l-72.363 72.363-162.095-162.133-164.902 164.902-73.121-73.121 164.902-164.902-161.678-161.678 72.363-72.325 161.602 161.678 165.774-165.736 73.121 73.083-165.774 165.736 162.171 162.133z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "remove-small" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 114, + "id": 15, + "prevSize": 32, + "code": 58912, + "name": "remove-small" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 15 + }, + { + "icon": { + "paths": [ + "M254.976 675.84v-267.264h103.424l-179.2-203.776-179.2 203.776h103.424v308.224c0 56.51 45.815 102.4 102.4 102.4h459.776l-131.186-143.36h-279.438zM920.538 615.424v-308.224c0-56.51-45.89-102.4-102.4-102.4h-459.738l131.11 143.36h279.514v267.264h-103.424l179.2 203.776 179.2-203.776h-103.462z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "retweet" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 117, + "id": 16, + "prevSize": 32, + "code": 58913, + "name": "retweet" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 16 + }, + { + "icon": { + "paths": [ + "M768 64.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-400.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014h-16.005v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019h128v-192.019c0-105.851-86.13-192.019-192.019-192.019zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "unlocked" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 36, + "id": 17, + "prevSize": 32, + "code": 58914, + "name": "unlocked" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 17 + }, + { + "icon": { + "paths": [ + "M593.351 0l-593.351 1023.962h1186.74l-593.351-1023.962zM653.236 899.451h-125.421v-121.211h125.421v121.211zM622.175 728.329h-62.502l-34.816-288.313v-156.748h131.3v156.748l-33.982 288.313z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "warning" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 37, + "id": 18, + "prevSize": 32, + "code": 58915, + "name": "warning" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 18 + }, + { + "icon": { + "paths": [ + "M0 512l512 512v-320.019h512v-384h-512v-320.019z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "arrow-left" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 38, + "id": 19, + "prevSize": 32, + "code": 58916, + "name": "arrow-left" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 19 + }, + { + "icon": { + "paths": [ + "M1024 512l-512-512v320.019h-512v384h512v320.019z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "arrow-right" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 39, + "id": 20, + "prevSize": 32, + "code": 58917, + "name": "arrow-right" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 20 + }, + { + "icon": { + "paths": [ + "M402.735 146.735l-320.019 320.019c-24.993 24.993-24.993 65.498 0 90.491l320.019 320.019c24.993 24.993 65.498 24.993 90.491 0s24.993-65.498 0-90.491l-210.754-210.754h613.49c35.347 0 64.019-28.634 64.019-64.019s-28.672-64.019-64.019-64.019h-613.49l210.754-210.754c12.478-12.478 18.735-28.862 18.735-45.246s-6.258-32.768-18.735-45.246c-24.993-24.993-65.498-24.993-90.491 0z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "back-arrow" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 103, + "id": 21, + "prevSize": 32, + "code": 58918, + "name": "back-arrow" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 21 + }, + { + "icon": { + "paths": [ + "M507.259 578.522h-102.059v101.717h102.059v-101.717zM650.885 714.714h-101.945v101.717h101.945v-101.717zM507.259 714.714h-102.059v101.717h102.059v-101.717zM507.259 442.33h-102.059v101.679h102.059v-101.679zM843.131 244.091c23.4 0 42.287-18.887 42.287-42.174v-145.408c0-23.324-18.887-42.174-42.287-42.174s-42.325 18.849-42.325 42.174v145.408c0.038 23.324 18.925 42.174 42.325 42.174zM343.419 244.091c23.362 0 42.249-18.887 42.249-42.174v-145.408c0-23.324-18.887-42.174-42.249-42.174-23.4 0-42.325 18.849-42.325 42.174v145.408c0 23.324 18.925 42.174 42.325 42.174zM363.444 578.522h-102.059v101.717h102.059v-101.717zM363.444 714.714h-102.059v101.717h102.059v-101.717zM650.885 578.522h-101.945v101.717h101.945v-101.717zM938.325 578.522h-102.059v101.717h102.059v-101.717zM938.325 442.33h-102.059v101.679h102.059v-101.679zM899.337 84.385v46.914c17.598 15.474 28.71 38.153 28.71 63.412 0 46.801-37.964 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-387.262v46.914c17.56 15.474 28.71 38.153 28.71 63.412 0 46.801-38.002 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-192.322v925.279h997.035v-925.279h-192.512zM999.234 915.304h-809.832v-589.938h809.832v589.938zM650.885 442.33h-101.945v101.679h101.945v-101.679zM794.624 442.33h-101.983v101.679h101.983v-101.679zM794.624 714.714h-101.983v101.717h101.983v-101.717zM794.624 578.522h-101.983v101.717h101.983v-101.717z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "calendar" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 102, + "id": 22, + "prevSize": 32, + "code": 58919, + "name": "calendar" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 22 + }, + { + "icon": { + "paths": [ + "M132.21 286.758c-13.881-13.729-36.295-13.729-50.138 0-13.805 13.653-13.805 35.878 0 49.607l404.897 400.877c13.881 13.729 36.257 13.729 50.138 0l404.897-400.877c13.805-13.729 13.881-35.878 0-49.607s-36.371-13.729-50.138-0.038l-379.866 365.606-379.79-365.568z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-down" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 101, + "id": 23, + "prevSize": 32, + "code": 58920, + "name": "caret-down" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 23 + }, + { + "icon": { + "paths": [ + "M737.242 891.79c13.729 13.881 13.729 36.257 0 50.138s-35.878 13.881-49.607 0l-400.877-404.821c-13.729-13.881-13.729-36.295 0-50.138l400.877-404.897c13.729-13.881 35.878-13.881 49.607 0s13.729 36.257 0 50.138l-365.568 379.79 365.568 379.79z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-left" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 100, + "id": 24, + "prevSize": 32, + "code": 58921, + "name": "caret-left" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 24 + }, + { + "icon": { + "paths": [ + "M286.72 891.79c-13.729 13.881-13.729 36.257 0 50.138s35.878 13.881 49.607 0l400.877-404.821c13.729-13.881 13.729-36.295 0-50.138l-400.915-404.897c-13.729-13.881-35.878-13.881-49.607 0s-13.729 36.257 0 50.138l365.568 379.79-365.568 379.79z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-right" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 99, + "id": 25, + "prevSize": 32, + "code": 58922, + "name": "caret-right" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 25 + }, + { + "icon": { + "paths": [ + "M891.79 737.242c13.881 13.729 36.295 13.729 50.138 0 13.881-13.729 13.881-35.878 0-49.607l-404.897-400.877c-13.805-13.729-36.257-13.729-50.062 0l-404.897 400.877c-13.805 13.729-13.881 35.878 0 49.607s36.257 13.729 50.138 0l379.79-365.606 379.79 365.606z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-up" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 98, + "id": 26, + "prevSize": 32, + "code": 58923, + "name": "caret-up" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 26 + }, + { + "icon": { + "paths": [ + "M574.767 92.16c-227.593 0-412.672 182.386-418.247 409.335h-125.8l188.378 209.92 188.302-209.92h-146.242c5.537-168.998 143.777-304.393 313.609-304.393 173.397 0 313.913 140.971 313.913 314.899s-140.478 314.861-313.913 314.861c-69.48 0-133.689-22.718-185.685-61.099l-71.983 76.99c70.997 55.751 160.465 89.050 257.707 89.050 231.159 0 418.551-187.961 418.551-419.84-0.038-231.879-187.43-419.84-418.551-419.84z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "ccw" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 97, + "id": 27, + "prevSize": 32, + "code": 58924, + "name": "ccw" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 27 + }, + { + "icon": { + "paths": [ + "M996.617 126.786l-513.555 513.555-256.796-256.834-128.379 128.417 385.214 385.252 641.896-642.010z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "check-mage" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 96, + "id": 28, + "prevSize": 32, + "code": 58925, + "name": "check-mage" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 28 + }, + { + "icon": { + "paths": [ + "M512 40.96c-260.134 0-471.040 210.944-471.040 471.040 0 260.134 210.906 471.040 471.040 471.040s471.040-210.906 471.040-471.040c0-260.134-210.906-471.040-471.040-471.040zM512 880.64c-203.624 0-368.64-165.054-368.64-368.64s165.016-368.64 368.64-368.64 368.64 165.054 368.64 368.64-165.016 368.64-368.64 368.64zM547.84 245.76h-71.68v281.069l174.345 174.345 50.669-50.707-153.335-153.335z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "clock" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 95, + "id": 29, + "prevSize": 32, + "code": 58926, + "name": "clock" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 29 + }, + { + "icon": { + "paths": [ + "M337.541 1021.004h513.024l64.512-645.916h-639.128l61.592 645.916zM737.394 154.169v-116.508c0-19.191-15.398-34.702-34.361-34.702h-217.847c-19.001 0-34.361 15.55-34.361 34.702v114.574c-73.576 8.382-150.149 24.614-226.494 52.338v106.989h738.001v-109.833c0 0-90.074-31.403-224.977-47.559zM668.937 147.759c-47.749-3.224-99.252-4.096-153.297-0.986v-61.44c0-9.519 7.623-17.332 17.143-17.332h118.936c9.519 0 17.218 7.813 17.218 17.332v62.426z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "delete" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 94, + "id": 30, + "prevSize": 32, + "code": 58928, + "name": "delete" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 30 + }, + { + "icon": { + "paths": [ + "M928.503 26.889l-111.502 112.109 156.065 156.9 111.502-112.071-156.065-156.937zM215.002 744.41l156.065 156.9 535.211-538.093-156.065-156.9-535.211 538.093zM103.917 1007.161l188.985-49.873-139.302-140.098-49.683 190.009z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "edit" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 115, + "id": 31, + "prevSize": 32, + "code": 58929, + "name": "edit" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 31 + }, + { + "icon": { + "paths": [ + "M1014.67 822.651c0 0 0 0 0 0l-310.651-310.651 310.651-310.651c0 0 0 0 0 0 3.337-3.337 5.765-7.244 7.32-11.416 4.248-11.378 1.82-24.69-7.32-33.83l-146.735-146.735c-9.14-9.14-22.452-11.567-33.83-7.32-4.172 1.555-8.078 3.982-11.416 7.32 0 0 0 0 0 0l-310.651 310.651-310.651-310.651c0 0 0 0 0 0-3.337-3.337-7.244-5.765-11.416-7.32-11.378-4.248-24.69-1.82-33.83 7.32l-146.735 146.735c-9.14 9.14-11.567 22.452-7.32 33.83 1.555 4.172 3.982 8.078 7.32 11.416 0 0 0 0 0 0l310.651 310.651-310.651 310.651c0 0 0 0 0 0-3.337 3.337-5.765 7.244-7.32 11.416-4.248 11.378-1.82 24.69 7.32 33.83l146.735 146.735c9.14 9.14 22.452 11.567 33.83 7.32 4.172-1.555 8.078-3.982 11.416-7.32 0 0 0 0 0 0l310.651-310.651 310.651 310.651c0 0 0 0 0 0 3.337 3.337 7.244 5.765 11.416 7.32 11.378 4.248 24.69 1.82 33.83-7.32l146.735-146.735c9.14-9.14 11.567-22.452 7.32-33.83-1.555-4.172-3.982-8.078-7.32-11.416z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "error" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 122, + "id": 32, + "prevSize": 32, + "code": 58930, + "name": "error" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 32 + }, + { + "icon": { + "paths": [ + "M593.351 22.566c-270.336 0-489.434 219.098-489.434 489.358s219.098 489.434 489.434 489.434 489.434-219.136 489.434-489.434-219.136-489.358-489.434-489.358zM635.752 826.596c-11.985 11.719-26.396 17.636-43.16 17.636-8.154 0-15.967-1.517-23.4-4.589-7.358-3.034-13.843-7.168-19.456-12.174-5.613-5.158-10.126-11.226-13.388-18.356-3.337-7.13-4.968-14.753-4.968-22.945 0-16.308 5.992-30.303 17.977-42.060 11.947-11.681 26.396-17.598 43.198-17.598 16.308 0 30.606 5.689 42.78 16.801 12.25 11.188 18.318 24.993 18.318 41.339-0.038 16.384-5.992 30.303-17.939 41.984zM778.923 382.673c-3.982 13.767-9.747 26.396-17.18 37.774-7.471 11.454-16.498 22.49-27.079 33.071s-22.49 21.618-35.65 33.033c-11.454 9.785-20.783 18.318-27.913 25.79-7.168 7.396-12.895 14.867-17.218 22.338-4.286 7.433-7.282 15.398-9.026 24.007-1.707 8.609-2.617 49.721-2.617 62.35v22.338h-101.376v-32.616c0-13.729 0.986-56.661 3.034-67.584s5.158-21.125 9.481-30.872 10.012-19.228 17.18-28.369c7.168-9.14 16.232-18.887 27.079-29.203l38.647-36.902c10.847-9.747 20.177-20.632 27.951-32.616 7.737-12.060 11.529-26.7 11.529-43.88 0-22.3-6.978-41.036-21.011-56.206-14.071-15.17-33.944-22.793-59.695-22.793-13.16 0-25.069 2.389-35.65 7.282-10.619 4.817-19.797 11.454-27.496 19.759-7.737 8.344-13.577 17.901-17.598 28.786-3.982 10.847-6.334 21.997-6.865 33.527l-105.624-9.444c3.413-27.496 10.733-51.959 21.921-73.463 11.112-21.466 25.562-39.595 43.311-54.575 17.711-14.829 38.078-26.169 61.023-33.944 22.869-7.699 47.521-11.605 73.842-11.605 24.614 0 47.976 3.603 70.049 10.771 21.959 7.168 41.491 17.711 58.406 31.782 16.839 14.033 30.227 31.365 39.936 51.959 9.709 20.632 14.564 44.411 14.564 71.263 0 18.356-2.010 34.475-5.992 48.166z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "help" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 124, + "id": 33, + "prevSize": 32, + "code": 58931, + "name": "help" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 33 + }, + { + "icon": { + "paths": [ + "M574.805 92.16c-227.631 0-412.71 182.386-418.247 409.335h-125.838l188.378 209.958 188.302-209.958h-146.242c5.537-168.998 143.777-304.393 313.647-304.393 173.359 0 313.875 140.971 313.875 314.899s-140.478 314.861-313.875 314.861c-69.518 0-133.727-22.718-185.761-61.099l-71.983 76.99c71.073 55.751 160.503 89.050 257.745 89.050 231.121 0 418.513-187.961 418.513-419.84-0.038-231.879-187.43-419.84-418.513-419.84zM537.6 286.72v240.109l153.865 153.865 50.669-50.669-132.855-132.855v-210.413h-71.68z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "history" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 45, + "id": 34, + "prevSize": 32, + "code": 58932, + "name": "history" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 34 + }, + { + "icon": { + "paths": [ + "M510.413 0c-281.907 0-510.413 228.582-510.413 510.413 0 281.933 228.506 510.464 510.413 510.464s510.387-228.557 510.387-510.464c0-281.83-228.48-510.413-510.387-510.413zM865.843 510.413c0 69.99-20.506 135.27-55.578 190.285l-490.163-490.163c55.091-35.021 120.32-55.475 190.31-55.475 195.942 0 355.43 159.411 355.43 355.354zM154.957 510.413c0-69.939 20.506-135.245 55.578-190.31l490.189 490.189c-55.066 35.072-120.371 55.501-190.31 55.501-195.942 0.026-355.456-159.437-355.456-355.379z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "not-installed" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 58, + "id": 35, + "prevSize": 32, + "code": 58936, + "name": "not-installed" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 35 + }, + { + "icon": { + "paths": [ + "M511.77 0c-282.778 0-512.102 229.222-512.102 512.179 0 282.829 229.325 512.102 512.102 512.102 282.931 0.026 512.23-229.248 512.23-512.102 0-282.957-229.299-512.179-512.23-512.179zM143.718 419.968h736.205v184.269h-736.205v-184.269z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "disabled" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 57, + "id": 36, + "prevSize": 32, + "code": 58937, + "name": "disabled" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 36 + }, + { + "icon": { + "paths": [ + "M505.139 0.085c-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827-3.717-282.658-236.1-508.826-518.793-505.003z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "dot" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 56, + "id": 37, + "prevSize": 32, + "code": 58935, + "name": "dot" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 37 + }, + { + "icon": { + "paths": [ + "M383.462 577.51h255.693v-213.043h127.795l-255.642-255.667-255.642 255.667h127.795z", + "M852.173 577.51v170.394h-681.754v-170.394h-170.419v340.89h1022.618v-340.89z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "export" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 93, + "id": 38, + "prevSize": 32, + "code": 58933, + "name": "export" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 38 + }, + { + "icon": { + "paths": [ + "M639.155 108.8h-255.693v213.043h-127.795l255.667 255.667 255.616-255.667h-127.795z", + "M852.173 577.51v170.394h-681.754v-170.394h-170.419v340.89h1022.618v-340.89z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "import" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 92, + "id": 39, + "prevSize": 32, + "code": 58934, + "name": "import" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 39 + }, + { + "icon": { + "paths": [ + "M259.2 0h214.323v214.323h-214.323v-214.323z", + "M259.2 269.875h214.323v214.349h-214.323v-214.349z", + "M259.2 539.776h214.323v214.349h-214.323v-214.349z", + "M259.2 809.651h214.323v214.349h-214.323v-214.349z", + "M549.325 0h214.323v214.323h-214.323v-214.323z", + "M549.325 269.875h214.323v214.349h-214.323v-214.349z", + "M549.325 539.776h214.323v214.349h-214.323v-214.349z", + "M549.325 809.651h214.323v214.349h-214.323v-214.349z" + ], + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "gripper" + ], + "grid": 0 + }, + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "properties": { + "order": 91, + "id": 40, + "prevSize": 32, + "code": 58903, + "name": "gripper" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 40 + }, + { + "icon": { + "paths": [ + "M860.058 185.062v272l-430.029-269.158-1.894 253.491-424.371-249.754-3.763 647.834 426.24-241.28-5.606 239.437 439.424-252.16v259.635h163.942v-660.045z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "forward" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 90, + "id": 41, + "prevSize": 32, + "code": 58904, + "name": "forward" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 41 + }, + { + "icon": { + "paths": [ + "M163.942 845.107v-271.974l430.029 269.133 1.894-253.491 424.397 249.754 3.738-647.834-426.24 241.28 5.606-239.437-439.424 252.16v-259.635h-163.942v660.045z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "backward" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 89, + "id": 42, + "prevSize": 32, + "code": 58905, + "name": "backward", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 42 + }, + { + "icon": { + "paths": [ + "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.632 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.368 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.107-205.21 458.368-458.394 458.368z", + "M760.013 625.613l30.387-38.4-265.6-206.413-20.787-1.613-259.226 208.026 28.826 39.987 236.8-177.613z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "expand-close" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 88, + "id": 43, + "prevSize": 32, + "code": 58901, + "name": "expand-close" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 43 + }, + { + "icon": { + "paths": [ + "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.606 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.394 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.133-205.21 458.394-458.394 458.394z", + "M265.6 454.4l-30.387 38.4 265.574 206.387 20.813 1.613 259.2-208-28.8-39.987-236.8 177.587z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "expand-open" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 87, + "id": 44, + "prevSize": 32, + "code": 58902, + "name": "expand-open" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 44 + }, + { + "icon": { + "paths": [ + "M1020.032 565.555v-116.045l-16.41-5.376-124.237-40.525-33.152-80.102 63.718-134.784-82.048-82.125-15.411 7.808-116.531 59.213-80.077-33.178-50.278-140.442h-116.096l-45.875 140.698-80 33.126-134.963-63.744-82.022 82.074 7.834 15.334 59.162 116.608-33.126 80.026-140.518 50.253v116.147l16.435 5.325 124.288 40.576 33.075 80-63.693 134.886 82.048 82.099 131.942-66.97 80.026 33.152 50.304 140.39h116.096l5.35-16.41 40.55-124.237 80.077-33.178 134.886 63.718 82.074-82.074-7.834-15.386-59.213-116.582 33.203-80.026 140.416-50.253zM510.003 672.589c-89.754 0-162.509-72.832-162.509-162.611 0-89.754 72.755-162.483 162.509-162.483 89.83 0 162.509 72.73 162.509 162.483 0.026 89.805-72.653 162.611-162.509 162.611z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "system-config" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 86, + "id": 45, + "prevSize": 32, + "code": 58896, + "name": "system-config" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 45 + }, + { + "icon": { + "paths": [ + "M509.978 54.426l-509.978 509.926 95.949 95.949 414.106-413.978 413.875 413.978 95.949-95.898-509.901-509.978zM146.253 688.563v335.437h259.917v-304.819h207.514v304.819h259.917v-335.488l-363.622-363.597-363.725 363.648z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "home" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 85, + "id": 46, + "prevSize": 32, + "code": 58897, + "name": "home" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 46 + }, + { + "icon": { + "paths": [ + "M0 736.41l498.278 287.59v-421.402l-498.278-287.667v421.478zM894.464 224.486v44.262c0 32.819-62.797 59.418-140.365 59.418-77.466 0-140.262-26.598-140.262-59.418v-73.216h0.435c4.71 30.925 65.408 55.475 139.853 55.475 77.568 0 140.365-26.624 140.365-59.29 0-32.845-62.797-59.366-140.365-59.366-6.195 0-12.262 0.205-18.202 0.563l-90.317-52.147v55.706c0 32.819-62.72 59.392-140.262 59.392-48.691 0-91.597-10.496-116.813-26.47-3.584-3.712-7.987-7.245-13.312-10.598-6.579-6.861-10.24-14.387-10.24-22.323v-53.939l-87.322 50.381c-6.272-0.307-12.646-0.614-19.123-0.614-77.491 0-140.314 26.522-140.314 59.366 0 32.691 62.822 59.29 140.314 59.29 74.445 0 135.219-24.525 139.93-55.475h0.384v73.216c0 32.819-62.746 59.418-140.314 59.418-77.491 0-140.314-26.598-140.314-59.418v-43.622l-108.083 62.31 499.994 288.563 496.691-286.694-112.358-64.768zM646.784 408.013c0 32.794-62.874 59.315-140.365 59.315s-140.339-26.522-140.339-59.315v-73.267h0.41c4.762 30.95 65.459 55.475 139.93 55.475s135.142-24.525 139.904-55.475h0.486v73.267zM525.645 606.234v417.766l498.355-287.718v-417.766l-498.355 287.718zM505.318 118.656c77.542 0 140.262-26.547 140.262-59.315s-62.72-59.315-140.262-59.315c-77.491 0-140.339 26.573-140.339 59.315-0.026 32.768 62.822 59.315 140.339 59.315z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "lego" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 84, + "id": 47, + "prevSize": 32, + "code": 58898, + "name": "lego" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 47 + }, + { + "icon": { + "paths": [ + "M287.002 481.664c0.205 0.23 0.461 0.486 0.691 0.717l103.347 103.373 36.045-36.045-56.55-56.499 90.266-90.189 11.904 1.28c3.046 0.307 6.093 0.538 9.19 0.538 6.246 0 12.314-0.768 18.253-2.125l-66.381-66.381c-1.357-1.382-2.765-2.611-4.173-3.814 20.454-73.6 1.766-155.725-56.038-213.555-57.421-57.421-138.803-76.237-211.968-56.525l123.955 123.981-32.563 121.446-121.395 32.589-124.032-124.006c-19.712 73.19-0.896 154.573 56.525 212.019 60.262 60.288 147.021 77.952 222.925 53.197zM653.235 555.802c-1.997 8.909-2.509 18.202-1.459 27.546l1.306 11.93-90.189 90.189-56.55-56.55-36.070 36.122 327.219 327.194c20.198 20.173 46.618 30.259 73.062 30.259s52.915-10.086 73.037-30.259c40.346-40.32 40.346-105.728 0-146.074l-290.355-290.355zM905.907 958.362l-51.866 13.875-42.112-42.112 13.901-51.891 51.866-13.926 42.112 42.138-13.901 51.917zM506.701 594.099l56.576 56.576 64.128-64.154c-3.482-31.334 6.707-63.821 30.669-87.808 24.013-23.962 56.474-34.176 87.808-30.72l280.397-280.346-157.056-157.056-280.448 280.397c3.482 31.258-6.682 63.821-30.669 87.782-24.013 23.987-56.525 34.176-87.808 30.643l-64.102 64.205 56.499 56.422-277.043 277.12-10.138-10.138-53.248 42.829-89.421 141.312 22.835 22.835 141.312-89.421 42.803-53.222-10.138-10.138 277.043-277.12z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "tool" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 120, + "id": 48, + "prevSize": 32, + "code": 58899, + "name": "tool" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 48 + }, + { + "icon": { + "paths": [ + "M1023.932 505.105c-3.717-282.692-236.1-508.826-518.793-505.003-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827zM623.991 481.304v298.633h-223.983v-298.633h-186.621l298.633-298.633 298.667 298.633h-186.679z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "upgrade" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 125, + "id": 49, + "prevSize": 32, + "code": 58900, + "name": "upgrade" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 49 + }, + { + "icon": { + "paths": [ + "M870.821 731.837c-64.195-65.89-78.231-188.772-91.738-283.159-20.074-139.937-24.259-297.089-226.008-317.693v-25.318c0-25.424-39.195-46.028-64.937-46.028s-62.024 20.551-62.024 46.028v25.371c-200.054 20.816-206.993 177.914-226.855 317.693-13.453 94.439-27.331 217.268-91.049 283.264-12.818 13.348-16.473 32.998-9.11 49.947 7.362 16.843 24.153 27.913 42.797 27.913h695.343c18.75 0 35.593-11.070 42.903-28.019s3.655-36.653-9.322-50z", + "M489.569 963.883c51.060 0 92.373-40.837 92.373-91.367h-184.694c-0.053 50.53 41.314 91.367 92.32 91.367z" + ], + "width": 989, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "notification-02" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 123, + "id": 50, + "prevSize": 32, + "code": 58887, + "name": "notification-02" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 50 + }, + { + "icon": { + "paths": [ + "M252.137 153.228l-160.070 92.393 378.042 218.205 160.023-92.393-377.996-218.205zM845.638 247.063l-377.996-218.252-145.222 83.828 377.996 218.205 145.222-83.782zM502.784 526.15v433.664l376.832-217.507v-433.711l-376.832 217.553zM55.668 742.26l376.785 217.507v-436.503l-376.785-217.46v436.457z" + ], + "width": 954, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "product" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 7, + "id": 51, + "prevSize": 32, + "code": 58888, + "name": "product", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 51 + }, + { + "icon": { + "paths": [ + "M454.495 48.899l-402.697 240.513v457.026l104.632 60.727v-457.049l298.157-178.728 299.698 179.142-0.138 455.922 103.528-60.013v-457.026l-403.18-240.513zM507.766 330.28v534.344l-53.271 32.124-53.34-32.262v-533.792l-138.090 83.853v456.934l191.453 115.516 193.087-116.322v-456.451l-139.839-83.945z" + ], + "width": 903, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "logo" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 17, + "id": 52, + "prevSize": 32, + "code": 58886, + "name": "logo", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 52 + }, + { + "icon": { + "paths": [ + "M709.921 158.694c8.139 32.295 8.927 34.974 8.192 68.162-0.263 12.813-7.772 71.943-5.724 90.112 1.628 14.966 5.461 16.174 11.448 28.514 10.398 21.425 6.984 51.095 2.941 72.678-2.206 11.868-6.827 28.725-13.916 38.387-7.667 10.66-23.211 10.713-30.142 23.158-9.872 17.854-4.306 43.008-10.503 62.385-7.142 21.898-25.101 23.421-26.466 52.145 8.822 1.155 17.592 2.468 26.466 3.623 8.822 18.59 25.049 55.874 41.59 67.059 13.863 3.728 27.727 7.457 41.59 11.185 48.627 19.64 102.558 43.061 151.237 63.33 44.373 18.432 97.411 24.996 113.48 70.84 0 31.035 2.941 104.501 2.153 145.25h-965.553c-0.893-40.697 2.153-114.215 2.153-145.25 15.964-45.844 69.002-52.408 113.375-70.84 48.679-20.27 102.61-43.691 151.237-63.33 13.811-3.728 27.674-7.457 41.59-11.185 16.489-11.185 32.715-48.522 41.538-67.059l19.692-4.621c-4.464-24.576-19.85-26.466-26.256-43.743-2.521-26.099-5.041-52.145-7.509-78.192 0.053 1.155-18.117-3.361-20.48-4.779-25.731-15.806-26.204-80.24-28.725-107.021-1.103-12.183 16.174-22.265 11.343-44.636-28.094-131.44 12.183-192.88 75.881-213.307 44.216-17.749 126.871-50.465 203.855-3.728l19.167 17.487 30.93 5.251c15.491 8.77 25.416 38.124 25.416 38.124z" + ], + "width": 1090, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "account" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 9, + "id": 53, + "prevSize": 32, + "code": 58880, + "name": "account", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 53 + }, + { + "icon": { + "paths": [ + "M529.203 886.14l-468.465-628.209h936.931l-468.465 628.209z" + ], + "width": 1085, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "arrowdown" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 10, + "id": 54, + "prevSize": 32, + "code": 58881, + "name": "arrowdown", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 54 + }, + { + "icon": { + "paths": [ + "M976.793 982.006h-910.388v-910.388h910.388v910.388zM912.622 135.789h-782.046v782.088h782.046v-782.088z", + "M221.432 822.8h152.876v-372.033h-152.876v372.033z", + "M466.323 820.234h350.932v-366.53h-350.932v366.53z", + "M221.432 360.489h595.865v-147.125h-595.865v147.125z" + ], + "width": 1034, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "cms" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 83, + "id": 55, + "prevSize": 32, + "code": 58882, + "name": "cms", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 55 + }, + { + "icon": { + "paths": [ + "M264.319 308.831c75.685 0 136.98-61.259 136.98-136.944 0-75.649-61.295-136.98-136.98-136.98s-137.017 61.331-137.017 136.98c0 75.649 61.331 136.944 137.017 136.944zM448.929 370.851c-28.962-28.926-63.325-46.252-187.655-46.252s-157.859 18.776-185.335 46.252c-27.44 27.44-18.196 320.43-18.196 320.43l60.824-144.411 38.241 430.334 110.23-220.278 102.907 220.278 36.393-430.334 60.824 144.411c-0.036 0 10.693-291.468-18.233-320.43z" + ], + "width": 489, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "customers" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 82, + "id": 56, + "prevSize": 32, + "code": 58883, + "name": "customers", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 56 + }, + { + "icon": { + "paths": [ + "M680.975 73.728c-337.523 0-610.976 273.515-611.038 610.976 0.122 37.72 1.039 251.812 1.039 251.812h1219.997c0 0 0.978-239.219 1.039-251.812-0.183-337.523-273.637-610.976-611.038-610.976zM737.708 197.831c31.117 3.607 61.379 10.271 90.418 19.624l-19.93 61.685c-25.004-8.070-51.169-13.939-78.191-16.995l7.703-64.313zM270.091 673.15h-64.864c0-31.423 3.118-62.235 8.803-92.007l63.702 12.349c-5.135 25.799-7.642 52.392-7.642 79.658zM305.855 504.419l-59.178-26.288c12.655-28.489 28-55.449 45.79-80.636l52.942 37.475c-15.284 21.825-28.611 45.056-39.554 69.449zM407.46 365.155l-43.405-48.113c22.925-20.541 47.807-39.187 74.462-54.96l33.318 55.571c-22.987 13.755-44.567 29.65-64.374 47.501zM536.943 217.455c29.039-9.292 59.178-16.017 90.418-19.624l7.581 64.313c-26.838 3.057-53.003 8.926-78.13 16.995l-19.869-61.685zM761.673 801.532l-152.897 27.205-38.881-150.452 395.172-404.22-203.394 527.467zM1019.476 434.971l52.942-37.414c17.79 25.187 33.257 52.148 45.851 80.636l-59.178 26.288c-10.943-24.454-24.209-47.685-39.615-69.51zM1094.916 673.15c0-27.266-2.69-53.859-7.703-79.658l63.702-12.349c5.808 29.834 8.803 60.645 8.803 92.007h-64.802zM646.006 770.659c26.777 17.056 62.174 9.415 79.291-17.24 17.118-26.593 9.292-62.051-17.301-79.108-26.655-17.24-62.051-9.354-79.23 17.362-17.118 26.349-9.476 61.99 17.24 78.986z" + ], + "width": 1376, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "dashboard" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 81, + "id": 57, + "prevSize": 32, + "code": 58884, + "name": "dashboard", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 57 + }, + { + "icon": { + "paths": [ + "M24.097 113.465h972.827v111.922l-410.504 412.792v238.366l-171.447 87.505v-325.871l-390.875-415.877v-108.837z" + ], + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "filter" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 80, + "id": 58, + "prevSize": 32, + "code": 58885, + "name": "filter", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 58 + }, + { + "icon": { + "paths": [ + "M59.153 534.182l164.053 38.141v-303.902l-164.053 38.141v227.621zM1122.198 59.153l-837.712 194.959v335.978l140.328 376.832 151.712-57.45-104.049-279.113 649.668 151.18v-722.385z" + ], + "width": 1170, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "promotions" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 79, + "id": 59, + "prevSize": 32, + "code": 58889, + "name": "promotions", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 59 + }, + { + "icon": { + "paths": [ + "M736.707 981.234h207.134v-322.703h-207.134v322.703zM399.646 981.234h207.134v-946.793h-207.134v946.793zM62.673 981.19h207.134v-634.704h-207.134v634.704z" + ], + "width": 991, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "reports" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 78, + "id": 60, + "prevSize": 32, + "code": 58890, + "name": "reports", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 60 + }, + { + "icon": { + "paths": [ + "M426.502 612.517c-15.866-13.512-42.796-25.753-80.79-36.723v198.774c11.535-1.459 23.729-4.331 36.299-8.851 12.618-4.426 23.87-10.829 33.804-19.068 9.981-8.427 18.173-18.55 24.529-30.649 6.638-12.006 9.651-26.365 9.651-42.89 0.047-26.836-7.721-47.222-23.493-60.593zM576.736 736.856c-7.109 23.117-19.774 45.762-38.135 67.749-18.503 22.175-43.079 41.855-74.010 58.992-30.885 17.373-70.432 27.683-118.878 31.12v88.088h-57.014v-88.088c-72.080-5.603-128.483-29.237-169.113-71.374-40.536-42.090-63.935-104.095-70.432-185.544h136.251c-0.753 39.359 8.992 70.479 28.86 93.266 20.15 22.74 44.774 37.335 74.434 43.455v-216.523c-3.060-1.318-7.486-2.919-12.994-4.567-5.508-1.789-11.393-3.343-17.938-4.708-23.776-6.827-47.175-15.019-70.291-24.294-23.493-9.369-44.114-21.704-62.523-37.335-18.456-15.584-33.098-34.84-43.879-57.956-11.111-23.211-16.478-51.977-16.478-86.487 0-35.31 6.168-66.336 18.785-93.313 12.665-26.836 29.143-49.529 49.858-67.702 20.621-18.314 44.303-32.58 71.468-42.419 27.071-10.122 55.037-16.149 83.992-18.314v-79.66h57.014v79.66c29.143 3.531 56.308 10.169 81.638 20.292 25.423 10.028 47.787 23.729 67.137 41.478 19.585 17.514 35.357 39.453 47.457 65.771 12.288 26.13 19.35 57.109 21.28 93.172h-137.287c-0.518-27.636-8.616-51.082-23.917-70.432-15.725-19.303-34.275-29.002-56.308-29.002v183.331c7.862 2.072 15.631 4.143 23.729 6.12 8.098 2.072 16.525 4.567 25.565 7.297 47.645 13.983 84.415 31.12 110.168 51.318 25.8 20.292 44.726 41.666 56.92 63.653 12.335 22.175 19.633 44.256 21.704 66.336 2.448 22.081 3.531 41.713 3.531 59.039 0.047 15.207-3.531 34.416-10.593 57.579zM228.905 263.415c-8.38 7.156-15.113 16.196-19.962 26.883-4.802 10.781-7.062 23.352-7.062 37.759 0 22.834 6.733 40.536 20.103 52.824 13.653 12.618 35.734 22.552 66.713 30.131v-168.831c-10.829 0-21.516 1.695-31.826 5.226-10.216 3.437-19.633 8.851-27.966 16.007z" + ], + "width": 659, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "sales" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 77, + "id": 61, + "prevSize": 32, + "code": 58891, + "name": "sales", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 61 + }, + { + "icon": { + "paths": [ + "M555.139 21.642c-218.775-71.601-457.062 40.29-532.231 250.028-75.227 209.681 41.211 437.665 259.928 509.208 218.717 71.601 457.004-40.348 532.231-250.028s-41.211-437.665-259.928-509.208zM320.076 677.045c-158.915-52.089-243.467-217.681-188.903-369.978 54.679-152.296 227.754-233.625 386.669-181.593s243.409 217.624 188.788 369.92c-54.622 152.296-227.696 233.567-386.554 181.65z", + "M638.482 685.794l358.927 349.602 24.807-69.241 24.865-69.241-310.348-302.29z" + ], + "width": 1109, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "search" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 76, + "id": 62, + "prevSize": 32, + "code": 58892, + "name": "search", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 62 + }, + { + "icon": { + "paths": [ + "M1098.281 85.45c19.777-3.723 34.901-21.232 34.901-42.347-0.058-23.791-19.196-43.103-42.812-43.103h-900.508c-23.675 0-42.754 19.312-42.754 43.103 0 21.057 15.007 38.566 34.843 42.347l-181.951 354.421v68.988c0 30.946 32.516 56.016 72.594 56.016 13.437 0 26.001-2.908 36.821-7.795v466.919h1061.286v-466.919c10.878 4.944 23.326 7.795 36.879 7.795 40.078 0 72.594-25.071 72.594-56.016v-68.988l-181.893-354.421zM214.758 564.875c-38.217 0-69.221-25.071-69.221-56.016v-6.457h-0.349v-62.531l137.162-353.665h109.648l-107.961 353.665v68.988c0 0 0 0 0 0 0 30.946-31.004 56.016-69.279 56.016zM498.447 564.875c-38.217 0-69.221-25.071-69.221-56.016v-68.988l57.354-353.665h109.241l-28.095 353.665v68.93c-0.058 31.004-31.004 56.075-69.279 56.075zM782.077 564.875c-38.217 0-69.162-25.071-69.162-56.016v-68.988l-28.154-353.665h108.892l57.296 353.665v68.988c0 0.931 0.175 1.92 0.233 2.792-1.803 29.666-32.051 53.224-69.104 53.224zM1134.637 508.859c0 30.946-31.004 56.016-69.221 56.016s-69.162-25.071-69.162-56.016v-68.988l-108.019-353.665h109.59l137.22 353.665v62.473h-0.349v6.515h-0.058z" + ], + "width": 1280, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "stores" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 75, + "id": 63, + "prevSize": 32, + "code": 58893, + "name": "stores", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 63 + }, + { + "icon": { + "paths": [ + "M944.97 329.042c-97.861 0-177.522 79.581-177.522 177.443 0 97.94 79.66 177.679 177.522 177.679 98.019 0 177.679-79.739 177.679-177.679 0-97.861-79.66-177.443-177.679-177.443zM944.97-0c-470.712 0-944.97 512-944.97 512s474.258 512 944.97 512c470.949 0 945.128-512 945.128-512s-474.179-512-945.128-512zM944.97 868.856c-200.057 0-362.292-162.078-362.292-362.45 0-200.057 162.236-362.292 362.292-362.292 200.214 0 362.45 162.236 362.45 362.292 0 200.451-162.236 362.45-362.45 362.45z" + ], + "width": 1890, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "views" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 73, + "id": 64, + "prevSize": 32, + "code": 58895, + "name": "views", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 64 + }, + { + "icon": { + "paths": [ + "M1042.226 299.849h-598.393v-299.849l-443.833 384.316 443.833 384.403v-299.859h598.393c106.478 0 192.801 86.318 192.801 192.801s-86.318 192.796-192.801 192.796v0.483l-452.707 0.005c-46.695 0.005-84.53 37.845-84.53 84.535 0 46.68 37.84 84.525 84.535 84.525 0.377 0 0.744-0.053 1.121-0.058h451.581c199.964 0 362.044-162.085 362.044-362.039 0-199.964-162.080-362.059-362.044-362.059z" + ], + "width": 1404, + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "revert" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 129, + "id": 65, + "prevSize": 32, + "code": 58946, + "name": "revert" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 65 + }, + { + "icon": { + "paths": [ + "M1023.959 505.088c-3.717-282.665-236.121-508.842-518.817-505.040-282.689 3.772-508.866 236.091-505.094 518.868 3.772 282.58 236.121 508.842 518.813 505.040 282.689-3.772 508.866-236.067 505.098-518.868zM580.086 904.359h-136.149v-136.163h136.149v136.163zM597.168 293.742l-44.103 388.928h-83.113l-43.099-388.928v-171.575h170.318v171.575z" + ], + "attrs": [ + { + "fill": "rgb(100, 97, 96)" + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "alert-round" + ], + "grid": 32 + }, + "attrs": [ + { + "fill": "rgb(100, 97, 96)" + } + ], + "properties": { + "order": 132, + "id": 0, + "name": "alert-round", + "prevSize": 32, + "code": 58952 + }, + "setIdx": 1, + "setId": 6, + "iconIdx": 0 + }, + { + "icon": { + "paths": [ + "M793.271 222.6l-192.695-83.055v80.482c-2.517 31.926-83.182 57.618-182.582 57.618-99.309 0-180.126-25.692-182.398-57.618h-0.318l-0.465-80.482-197.709 83.055 381.218 167.697 374.95-167.697zM265.959 118.114l-1.104 0.428c32.596 16.331 89.086 27.124 153.551 27.124 64.726 0 121.621-10.94 153.996-27.355l-1.168-0.512c18.811-9.3 29.664-20.34 29.664-32.264 0-32.713-81.606-59.114-182.492-59.114-100.759 0-182.806 26.401-182.806 59.114-0.003 12.007 11.295 23.218 30.36 32.579zM418.418 462.436l-418.418-191.009v563.335l418.321 189.238 418.321-189.238v-563.733l-418.224 191.407z" + ], + "width": 883, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "module" + ], + "grid": 32 + }, + "attrs": [ + {} + ], + "properties": { + "order": 131, + "id": 1, + "name": "module", + "prevSize": 32, + "code": 58951 + }, + "setIdx": 1, + "setId": 6, + "iconIdx": 1 + }, + { + "icon": { + "paths": [ + "M939.616 148.384c112.512 112.448 112.512 294.816 0 407.264l-350.944 350.976c-12.512 12.544-32.736 12.544-45.248 0-12.576-12.512-12.576-32.704 0-45.248l346.432-346.464c87.488-87.488 87.488-229.248-0.064-316.768-87.36-87.488-229.248-87.488-316.736 0l-462.304 456.864c-62.496 62.464-62.496 163.776 0 226.24 62.496 62.496 163.744 62.496 226.24 0l466.88-461.344c37.44-37.44 37.44-98.336 0-135.776-37.44-37.408-98.304-37.408-135.744 0l-351.008 351.008c-12.512 12.512-32.736 12.512-45.248 0-12.512-12.544-12.512-32.736 0-45.28l350.976-350.976c62.432-62.464 163.744-62.464 226.24 0 62.496 62.496 62.496 163.776 0 226.272l-466.88 461.376c-87.296 87.328-229.408 87.328-316.736 0-87.328-87.328-87.328-229.472 0-316.8l466.88-461.344c112.448-112.512 294.816-112.512 407.264 0z" + ], + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "clip", + "paperclip", + "attachment" + ], + "grid": 32 + }, + "attrs": [], + "properties": { + "id": 2, + "order": 130, + "prevSize": 32, + "code": 58947, + "name": "clip" + }, + "setIdx": 1, + "setId": 6, + "iconIdx": 2 + } + ], + "height": 1024, + "metadata": { + "name": "icomoon" + }, + "preferences": { + "showGlyphs": true, + "showQuickUse": true, + "showQuickUse2": true, + "showSVGs": true, + "fontPref": { + "prefix": "icon-", + "metadata": { + "fontFamily": "icomoon", + "majorVersion": 1, + "minorVersion": 0 + }, + "metrics": { + "emSize": 1024, + "baseline": 6.25, + "whitespace": 50 + }, + "resetPoint": 58880, + "showVersion": true, + "showSelector": false, + "showMetrics": false, + "showMetadata": false, + "embed": false + }, + "imagePref": { + "prefix": "icon-", + "png": true, + "useClassSelector": true, + "classSelector": ".icon" + }, + "historySize": 100, + "showCodes": true, + "search": "", + "gridSize": 16, + "showLiga": false + } } \ No newline at end of file diff --git a/dev/tests/functional/phpunit.xml.dist b/dev/tests/functional/phpunit.xml.dist index af11fffff29fa..29a67beb0bccc 100644 --- a/dev/tests/functional/phpunit.xml.dist +++ b/dev/tests/functional/phpunit.xml.dist @@ -35,7 +35,7 @@ - + diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Authentication.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Authentication.php similarity index 84% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Authentication.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/Authentication.php index 4973c8e72174e..c381632ca4aa9 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Authentication.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Authentication.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Block; +namespace Magento\Setup\Test\Block; use Magento\Mtf\Block\Form; use Magento\Mtf\Client\Element\SimpleElement; @@ -30,6 +30,13 @@ class Authentication extends Form */ protected $firstField = '[name="username"]'; + /** + * Popup Loading. + * + * @var string + */ + protected $popupLoading = '.popup popup-loading'; + /** * Click on 'Save Config' button. * @@ -38,6 +45,7 @@ class Authentication extends Form public function clickSaveConfig() { $this->_rootElement->find($this->save, Locator::SELECTOR_CSS)->click(); + $this->waitForElementNotVisible($this->popupLoading); } /** diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Authentication.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Authentication.xml similarity index 100% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Authentication.xml rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/Authentication.xml diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/CreateBackup.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/CreateBackup.php similarity index 94% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/CreateBackup.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/CreateBackup.php index 72d3853bd1674..4c3442784e5aa 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/CreateBackup.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/CreateBackup.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Block; +namespace Magento\Setup\Test\Block; use Magento\Mtf\Block\Form; use Magento\Mtf\Client\Element\SimpleElement; diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/CreateBackup.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/CreateBackup.xml similarity index 96% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/CreateBackup.xml rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/CreateBackup.xml index d3c5a953f767a..d6a25b358ee3e 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/CreateBackup.xml +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/CreateBackup.xml @@ -5,7 +5,7 @@ * See COPYING.txt for license details. */ --> - + #optionsCode diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/AbstractGrid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/AbstractGrid.php new file mode 100644 index 0000000000000..a71d23be952ef --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/AbstractGrid.php @@ -0,0 +1,88 @@ +isExtensionOnGrid($extension->getExtensionName())) || !$this->clickNextPageButton()) { + break; + } + } + + return $result; + } + + /** + * Check that there is extension on grid. + * + * @param string $name + * @return bool + */ + protected function isExtensionOnGrid($name) + { + $this->waitForElementVisible($this->dataGrid); + return $this->_rootElement->find( + sprintf($this->extensionName, $name), + Locator::SELECTOR_XPATH + )->isVisible(); + } + + /** + * Click 'Next Page' button. + * + * @return bool + */ + protected function clickNextPageButton() + { + $this->waitForElementVisible($this->nextPageButton); + $nextPageButton = $this->_rootElement->find($this->nextPageButton); + if (!$nextPageButton->isDisabled() && $nextPageButton->isVisible()) { + $nextPageButton->click(); + return true; + } + + return false; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/DataOption.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/DataOption.php new file mode 100644 index 0000000000000..2e78e66feb412 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/DataOption.php @@ -0,0 +1,33 @@ +_rootElement->find($this->nextState, Locator::SELECTOR_CSS)->click(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/Grid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/Grid.php new file mode 100644 index 0000000000000..bfa6ed4ca9a6e --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/Grid.php @@ -0,0 +1,180 @@ +_rootElement->find($this->installButton, Locator::SELECTOR_XPATH)->click(); + } + + /** + * Click to uninstall button. + * + * @param Extension $extension + * @return void + */ + public function clickUninstallButton(Extension $extension) + { + $this->clickSelectActionButton($extension); + $button = $this->_rootElement->find( + sprintf($this->uninstallAction, $extension->getExtensionName()), + Locator::SELECTOR_XPATH + ); + + if ($button->isVisible()) { + $button->click(); + } + } + + /** + * Get version of extension. + * + * @param Extension $extension + * @return string + */ + public function getVersion(Extension $extension) + { + return $this->_rootElement->find( + sprintf($this->versionContainer, $extension->getExtensionName()), + Locator::SELECTOR_XPATH + )->getText(); + } + + /** + * Click to update button. + * + * @param Extension $extension + * @return void + */ + public function clickUpdateButton(Extension $extension) + { + $this->clickSelectActionButton($extension); + $button = $this->_rootElement->find( + sprintf($this->updateAction, $extension->getExtensionName()), + Locator::SELECTOR_XPATH + ); + + if ($button->isVisible()) { + $button->click(); + } + } + + /** + * {@inheritdoc} + */ + public function findExtensionOnGrid(Extension $extension) + { + $this->_rootElement->waitUntil( + function () { + $message = $this->_rootElement->find($this->notFoundMessage)->isVisible(); + $grid = $this->_rootElement->find($this->dataGrid)->isVisible(); + + return ($message && !$grid) || (!$message && $grid); + } + ); + + if ($this->_rootElement->find($this->notFoundMessage)->isVisible()) { + return false; + } + + return parent::findExtensionOnGrid($extension); + } + + /** + * Click to Select action + * + * @param Extension $extension + * @return void + */ + protected function clickSelectActionButton(Extension $extension) + { + $this->_rootElement->find( + sprintf($this->selectAction, $extension->getExtensionName()), + Locator::SELECTOR_XPATH + )->click(); + } + + /** + * Wait loader. + * + * @return void + */ + public function waitLoader() + { + $this->waitForElementVisible($this->popupLoading); + $this->waitForElementNotVisible($this->popupLoading); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/InstallGrid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/InstallGrid.php new file mode 100644 index 0000000000000..710e14a166982 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/InstallGrid.php @@ -0,0 +1,116 @@ +_rootElement->find( + sprintf($this->extensionSelectVersion, $extension->getExtensionName()), + Locator::SELECTOR_XPATH, + 'strictselect' + ); + + if ($select->isVisible()) { + $select->setValue('Version ' . $extension->getVersion()); + } + + $this->_rootElement->find( + sprintf($this->extensionInstall, $extension->getExtensionName()), + Locator::SELECTOR_XPATH + )->click(); + } + + /** + * Click to "Install" button that starts installing of selected extensions. + * + * @return void + */ + public function clickInstallAll() + { + $this->_rootElement->find($this->installAllButton, Locator::SELECTOR_CSS)->click(); + } + + /** + * Select several extensions to install on grid. + * + * @param Extension[] $extensions + * @return Extension[] + */ + public function selectSeveralExtensions(array $extensions) + { + while (true) { + foreach ($extensions as $key => $extension) { + if ($this->isExtensionOnGrid($extension->getExtensionName())) { + $this->selectExtension($extension->getExtensionName()); + unset($extensions[$key]); + } + } + + if (empty($extensions) || !$this->clickNextPageButton()) { + break; + } + } + + return $extensions; + } + + /** + * Select extension on grid, check checkbox. + * + * @param string $extensionName + * @return void + */ + protected function selectExtension($extensionName) + { + $this->_rootElement->find( + sprintf($this->extensionCheckbox, $extensionName), + Locator::SELECTOR_XPATH + )->click(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/Updater.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/Updater.php new file mode 100644 index 0000000000000..4a76795aa4af0 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Extension/Updater.php @@ -0,0 +1,50 @@ +_rootElement->find($this->button, Locator::SELECTOR_CSS)->click(); + } + + /** + * Get message. + * + * @return string + */ + public function getMessage() + { + return $this->_rootElement->find($this->message, Locator::SELECTOR_NAME)->getText(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Home.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Home.php new file mode 100644 index 0000000000000..7499a751b7052 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Home.php @@ -0,0 +1,65 @@ +_rootElement->find($this->systemUpgrade, Locator::SELECTOR_CSS)->click(); + } + + /** + * Click on 'Extension Manager' button. + * + * @return void + */ + public function clickExtensionManager() + { + $this->_rootElement->find($this->extensionManager, Locator::SELECTOR_CSS)->click(); + } + + /** + * Click on 'Module Manager' section. + * + * @return void + */ + public function clickModuleManager() + { + $this->_rootElement->find($this->moduleManager, Locator::SELECTOR_CSS)->click(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Module/Grid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Module/Grid.php new file mode 100644 index 0000000000000..41970f54bb9ec --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Module/Grid.php @@ -0,0 +1,167 @@ +_rootElement->find($this->next, Locator::SELECTOR_CSS)->click(); + } + + /** + * Check if Next page button is available. + * + * @return bool + */ + public function isClickNextAvailable() + { + return !$this->_rootElement->find($this->next, Locator::SELECTOR_CSS)->isDisabled(); + } + + /** + * Find module by it's name. + * + * @param string $name + * @return ElementInterface + */ + public function findModuleByName($name) + { + $element = $this->getModuleByName($name); + + while (!$element->isVisible() && $this->isClickNextAvailable()) { + $this->clickNext(); + + $element = $this->getModuleByName($name); + } + + return $element; + } + + /** + * Retrieve module by it's name. + * + * @param string $name + * @return ElementInterface + */ + private function getModuleByName($name) + { + $componentName = sprintf($this->componentName, $name); + + return $this->_rootElement->find($componentName, Locator::SELECTOR_XPATH); + } + + /** + * Check if Module is enabled.s + * + * @param string $name + * @return bool + */ + public function isModuleEnabled($name) + { + $element = $this->findModuleByName($name); + $select = sprintf($this->select, $name); + + $element->find($select, Locator::SELECTOR_XPATH)->find($this->button)->click(); + $isVisible = $element->find($select, Locator::SELECTOR_XPATH)->find($this->itemDisable)->isVisible(); + $element->find($select, Locator::SELECTOR_XPATH)->find($this->button)->click(); + + return $isVisible; + } + + /** + * Disable Module. + * + * @param string $name + * @return void + */ + public function disableModule($name) + { + $element = $this->findModuleByName($name); + $select = sprintf($this->select, $name); + + $element->find($select, Locator::SELECTOR_XPATH)->find($this->button)->click(); + $element->find($select, Locator::SELECTOR_XPATH)->find($this->itemDisable)->click(); + } + + /** + * Enable Module. + * + * @param string $name + * @return void + */ + public function enableModule($name) + { + $element = $this->findModuleByName($name); + $select = sprintf($this->select, $name); + + $element->find($select, Locator::SELECTOR_XPATH)->find($this->button)->click(); + $element->find($select, Locator::SELECTOR_XPATH)->find($this->itemEnable)->click(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Module/Status.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Module/Status.php new file mode 100644 index 0000000000000..f35ec656dc92d --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Module/Status.php @@ -0,0 +1,44 @@ +_rootElement->find($this->button, Locator::SELECTOR_CSS)->click(); + } + + /** + * Click en Enable element. + * + * @return void + */ + public function clickEnable() + { + $this->_rootElement->find($this->button, Locator::SELECTOR_CSS)->click(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Readiness.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Readiness.php similarity index 98% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Readiness.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/Readiness.php index 648627dc8f475..9be5c9479ded9 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Readiness.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/Readiness.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Block; +namespace Magento\Setup\Test\Block; use Magento\Mtf\Block\Block; use Magento\Mtf\Client\Locator; diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SelectVersion.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SelectVersion.php similarity index 97% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SelectVersion.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/SelectVersion.php index d1979716e1f2c..0ce9dd2867a13 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SelectVersion.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SelectVersion.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Block; +namespace Magento\Setup\Test\Block; use Magento\Mtf\Block\Form; use Magento\Mtf\Client\Element\SimpleElement; diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SelectVersion.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SelectVersion.xml similarity index 100% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SelectVersion.xml rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/SelectVersion.xml diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SuccessMessage.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SuccessMessage.php new file mode 100644 index 0000000000000..327bb2867e44e --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SuccessMessage.php @@ -0,0 +1,57 @@ +waitForElementVisible($this->successMessage, Locator::SELECTOR_CLASS_NAME); + + return $this->_rootElement->find($this->successMessage, Locator::SELECTOR_CLASS_NAME)->getText(); + } + + /** + * Retrieve status of Module. + * + * @return array|string + */ + public function getDisableModuleStatus() + { + $this->waitForElementVisible($this->successMessage, Locator::SELECTOR_CLASS_NAME); + + return $this->_rootElement->find($this->successMessage, Locator::SELECTOR_CLASS_NAME)->getText(); + } + + /** + * Click Back to Setup button. + * + * @return void + */ + public function clickBackToSetup() + { + $this->_rootElement->find('btn-prime', Locator::SELECTOR_CLASS_NAME)->click(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SystemConfig.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SystemConfig.php similarity index 93% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SystemConfig.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/SystemConfig.php index e3e68a8cfcdcb..71372c6be4cbd 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SystemConfig.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SystemConfig.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Block; +namespace Magento\Setup\Test\Block; use Magento\Mtf\Block\Block; use Magento\Mtf\Client\Locator; diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SystemUpgrade.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SystemUpgrade.php similarity index 95% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SystemUpgrade.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Block/SystemUpgrade.php index 5af372786ba94..63fbaa0eb28f7 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SystemUpgrade.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Block/SystemUpgrade.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Block; +namespace Magento\Setup\Test\Block; use Magento\Mtf\Block\Block; use Magento\Mtf\Client\Locator; diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertApplicationVersion.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertApplicationVersion.php similarity index 95% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertApplicationVersion.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertApplicationVersion.php index 7f11a0de69aed..0113223c13c50 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertApplicationVersion.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertApplicationVersion.php @@ -4,7 +4,7 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Constraint; +namespace Magento\Setup\Test\Constraint; use Magento\Backend\Test\Page\Adminhtml\Dashboard; use Magento\Mtf\Constraint\AbstractConstraint; diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertSuccessMessage.php similarity index 92% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertSuccessMessage.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertSuccessMessage.php index 6b1ac3996751f..7f7d17f60679c 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertSuccessMessage.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertSuccessMessage.php @@ -4,9 +4,9 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Constraint; +namespace Magento\Setup\Test\Constraint; -use Magento\Upgrade\Test\Page\Adminhtml\SetupWizard; +use Magento\Setup\Test\Page\Adminhtml\SetupWizard; use Magento\Mtf\Constraint\AbstractConstraint; /** diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertSuccessfulReadinessCheck.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertSuccessfulReadinessCheck.php similarity index 96% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertSuccessfulReadinessCheck.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertSuccessfulReadinessCheck.php index 9bf88a7072bb6..194f0285f83be 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertSuccessfulReadinessCheck.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertSuccessfulReadinessCheck.php @@ -4,9 +4,9 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Constraint; +namespace Magento\Setup\Test\Constraint; -use Magento\Upgrade\Test\Page\Adminhtml\SetupWizard; +use Magento\Setup\Test\Page\Adminhtml\SetupWizard; use Magento\Mtf\Constraint\AbstractConstraint; /** diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertVersionAndEditionCheck.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertVersionAndEditionCheck.php similarity index 91% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertVersionAndEditionCheck.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertVersionAndEditionCheck.php index 5961b068fc530..57588ecabfcd1 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Constraint/AssertVersionAndEditionCheck.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/AssertVersionAndEditionCheck.php @@ -4,9 +4,9 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\Constraint; +namespace Magento\Setup\Test\Constraint; -use Magento\Upgrade\Test\Page\Adminhtml\SetupWizard; +use Magento\Setup\Test\Page\Adminhtml\SetupWizard; use Magento\Mtf\Constraint\AbstractConstraint; /** diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertExtensionAndVersionCheck.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertExtensionAndVersionCheck.php new file mode 100644 index 0000000000000..84bf6459e9d8d --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertExtensionAndVersionCheck.php @@ -0,0 +1,71 @@ +getExtensionName() + . " to " . $extension->getVersion(); + break; + + case self::TYPE_UNINSTALL: + $message = "We're ready to uninstall " . $extension->getExtensionName(); + break; + + case self::TYPE_UPDATE: + $message = "We're ready to update " . $extension->getExtensionName() + . " to " . $extension->getVersionToUpdate(); + break; + + default: + $message = ''; + } + + \PHPUnit_Framework_Assert::assertContains( + $message, + $setupWizard->getUpdaterExtension()->getMessage(), + 'Extension name and version check is incorrect.' + ); + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Extension name and version check passed."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertFindExtensionOnGrid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertFindExtensionOnGrid.php new file mode 100644 index 0000000000000..5e3e7bca9c238 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertFindExtensionOnGrid.php @@ -0,0 +1,42 @@ +findExtensionOnGrid($extension), + 'Extension is not found on the grid.' + ); + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Extension is found on the grid."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertMultipleExtensionAndVersionCheck.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertMultipleExtensionAndVersionCheck.php new file mode 100644 index 0000000000000..b12483f530045 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertMultipleExtensionAndVersionCheck.php @@ -0,0 +1,43 @@ +objectManager->get(AssertExtensionAndVersionCheck::class); + foreach ($extensions as $extension) { + $assertExtensionAndVersionCheck->processAssert($setupWizard, $extension, $type); + } + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Extension name and version check passed."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertMultipleSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertMultipleSuccessMessage.php new file mode 100644 index 0000000000000..db32e740a5d70 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertMultipleSuccessMessage.php @@ -0,0 +1,43 @@ +objectManager->get(AssertSuccessMessage::class); + foreach ($extensions as $extension) { + $assertSuccessMessage->processAssert($setupWizard, $extension, $type); + } + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Extension Updater success message is correct."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertSelectSeveralExtensions.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertSelectSeveralExtensions.php new file mode 100644 index 0000000000000..094ae1509899c --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertSelectSeveralExtensions.php @@ -0,0 +1,59 @@ +selectSeveralExtensions($extensions); + \PHPUnit_Framework_Assert::assertEmpty( + $extensions, + 'Next extensions are not found on the grid: ' . $this->getExtensionsNames($extensions) + ); + } + + /** + * Get names of extensions. + * + * @param Extension[] $extensions + * @return string + */ + protected function getExtensionsNames(array $extensions) + { + $result = []; + foreach ($extensions as $extension) { + $result[] = $extension->getExtensionName(); + } + + return implode(', ', $result); + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Extensions are found and selected on the grid."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertSuccessMessage.php new file mode 100644 index 0000000000000..7d8b2eedd8ef4 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertSuccessMessage.php @@ -0,0 +1,74 @@ +getSuccessMessage()->getUpdaterStatus(), + 'Success message is incorrect.' + ); + \PHPUnit_Framework_Assert::assertContains( + $extension->getExtensionName(), + $setupWizard->getSuccessMessage()->getUpdaterStatus(), + 'Extension name is incorrect.' + ); + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Extension Updater success message is correct."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertVersionOnGrid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertVersionOnGrid.php new file mode 100644 index 0000000000000..ad9dbb5fcd1ff --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Extension/AssertVersionOnGrid.php @@ -0,0 +1,63 @@ +getVersion(); + break; + + case self::TYPE_UPDATE: + $version = $extension->getVersionToUpdate(); + break; + + default: + $version = ''; + } + + \PHPUnit_Framework_Assert::assertTrue( + $grid->getVersion($extension) === $version, + 'Version of extension is not correct.' + ); + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Version of extension is correct."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Module/AssertModuleInGrid.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Module/AssertModuleInGrid.php new file mode 100644 index 0000000000000..8049cef9cdf13 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Module/AssertModuleInGrid.php @@ -0,0 +1,42 @@ +getModuleGrid()->findModuleByName($moduleName)->isVisible(), + 'Module was not found in grid.' + ); + } + + /** + * Returns a string representation of the object. + * + * @return string + */ + public function toString() + { + return 'Module was found in grid.'; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Module/AssertSuccessMessage.php b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Module/AssertSuccessMessage.php new file mode 100644 index 0000000000000..c5247940eea3a --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Constraint/Module/AssertSuccessMessage.php @@ -0,0 +1,43 @@ +getSuccessMessage()->getDisableModuleStatus(), + 'Success message is incorrect.' + ); + } + + /** + * Returns a string representation of successful assertion. + * + * @return string + */ + public function toString() + { + return "Success message is correct."; + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/BackupOptions.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/BackupOptions.xml new file mode 100644 index 0000000000000..37cade8f60bad --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/BackupOptions.xml @@ -0,0 +1,19 @@ + + + + + + + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Extension.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Extension.xml new file mode 100644 index 0000000000000..c772485bca650 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Extension.xml @@ -0,0 +1,19 @@ + + + + + + + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Module.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Module.xml new file mode 100644 index 0000000000000..563a00230efa7 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Module.xml @@ -0,0 +1,16 @@ + + + + + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/RepoCredentials.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/RepoCredentials.xml new file mode 100644 index 0000000000000..0312bc769e5b7 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/RepoCredentials.xml @@ -0,0 +1,18 @@ + + + + + + + + diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Fixture/Upgrade.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Upgrade.xml similarity index 77% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/Fixture/Upgrade.xml rename to dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Upgrade.xml index eaae274e77d28..8c6e996bed1e5 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Fixture/Upgrade.xml +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Fixture/Upgrade.xml @@ -7,11 +7,11 @@ --> + handler_interface="Magento\Setup\Test\Handler\Upgrade\UpgradeInterface" + class="Magento\Setup\Test\Fixture\Upgrade"> diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Page/Adminhtml/SetupWizard.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Page/Adminhtml/SetupWizard.xml new file mode 100644 index 0000000000000..2e5ad0b1fdc6b --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Page/Adminhtml/SetupWizard.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/BackupOptions.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/BackupOptions.xml new file mode 100644 index 0000000000000..013384168e3d0 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/BackupOptions.xml @@ -0,0 +1,16 @@ + + + + + + No + No + No + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/Extension.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/Extension.xml new file mode 100644 index 0000000000000..2a015016a78a7 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/Extension.xml @@ -0,0 +1,24 @@ + + + + + + magento/module-customer-sample-data + 100.1.0-rc3 + 100.1.0 + + + + magento/module-customer-sample-data + + + + magento/module-theme-sample-data + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/RepoCredentials.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/RepoCredentials.xml new file mode 100644 index 0000000000000..2ae795ed9c7b8 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/Repository/RepoCredentials.xml @@ -0,0 +1,15 @@ + + + + + + {publicKey} + {privateKey} + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/AbstractExtensionTest.php b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/AbstractExtensionTest.php new file mode 100644 index 0000000000000..f1374d4ef73b0 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/AbstractExtensionTest.php @@ -0,0 +1,146 @@ +adminDashboard = $adminDashboard; + $this->setupWizard = $setupWizard; + } + + /** + * Set credentials for connecting to repo.magento.com + * + * @param bool $needAuthentication + * @param RepoCredentials $repoCredentials + * @return void + */ + protected function repoAuthentication($needAuthentication, RepoCredentials $repoCredentials) + { + if ($needAuthentication) { + $this->setupWizard->getSystemConfig()->clickSystemConfig(); + $this->setupWizard->getAuthentication()->fill($repoCredentials); + $this->setupWizard->getAuthentication()->clickSaveConfig(); + $this->setupWizard->open(); + } + } + + /** + * Readiness check and Create Backup steps. + * + * @param AssertSuccessfulReadinessCheck $assertReadiness + * @param BackupOptions $backupOptions + * @return void + */ + protected function readinessCheckAndBackup( + AssertSuccessfulReadinessCheck $assertReadiness, + BackupOptions $backupOptions + ) { + // Readiness Check + $this->setupWizard->getReadiness()->clickReadinessCheck(); + $assertReadiness->processAssert($this->setupWizard); + $this->setupWizard->getReadiness()->clickNext(); + + // Create Backup page + $this->setupWizard->getCreateBackup()->fill($backupOptions); + $this->setupWizard->getCreateBackup()->clickNext(); + } + + /** + * Uninstall extension. + * + * @param Extension $extension + * @param BackupOptions $backupOptions + * @param AssertSuccessfulReadinessCheck $assertReadiness + * @param AssertFindExtensionOnGrid $assertFindExtensionOnGrid + * @param AssertExtensionAndVersionCheck $assertExtensionAndVersionCheck + * @param AssertSuccessMessage $assertSuccessMessage + */ + protected function uninstallExtension( + Extension $extension, + BackupOptions $backupOptions, + AssertSuccessfulReadinessCheck $assertReadiness, + AssertFindExtensionOnGrid $assertFindExtensionOnGrid, + AssertExtensionAndVersionCheck $assertExtensionAndVersionCheck, + AssertSuccessMessage $assertSuccessMessage + ) { + // Open Extension Grid with installed extensions and find installed extension + $this->setupWizard->open(); + $this->setupWizard->getSetupHome()->clickExtensionManager(); + $this->setupWizard->getExtensionsGrid()->waitLoader(); + $assertFindExtensionOnGrid->processAssert($this->setupWizard->getExtensionsGrid(), $extension); + + // Click to uninstall extension + $this->setupWizard->getExtensionsGrid()->clickUninstallButton($extension); + + $this->readinessCheckAndBackup($assertReadiness, $backupOptions); + + // Data Option (keep or remove data of extension) + $this->setupWizard->getDataOption()->clickNext(); + + // Uninstall extension + $assertExtensionAndVersionCheck->processAssert( + $this->setupWizard, + $extension, + AssertExtensionAndVersionCheck::TYPE_UNINSTALL + ); + $this->setupWizard->getUpdaterExtension()->clickStartButton(); + $assertSuccessMessage->processAssert( + $this->setupWizard, + $extension, + AssertSuccessMessage::TYPE_UNINSTALL + ); + + // Check that extension is uninstalled + $this->setupWizard->open(); + $this->setupWizard->getSetupHome()->clickExtensionManager(); + $this->setupWizard->getExtensionsGrid()->waitLoader(); + + if ($this->setupWizard->getExtensionsGrid()->findExtensionOnGrid($extension)) { + $this->fail('Extension is not uninstalled!'); + } + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/EnableDisableModuleTest.php b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/EnableDisableModuleTest.php new file mode 100644 index 0000000000000..5344e07cfc9fa --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/EnableDisableModuleTest.php @@ -0,0 +1,148 @@ + Web Setup Wizard. + * 3. Click "Module Manager" button. + * 4. Find Module in the Grid and click Select > Disable module. + * 5. Perform Readiness Checks. + * 6. Perform DB Backup. + * 7. Click "Disable" button. + * 8. Check for Success message + * 9. Return to "Web Setup Wizard". + * 10. Click "Module Manager" button. + * 11. Find appropriate Module in the Grid. + * 12. Find Module in the Grid and click Select > Enable module. + * 13. Perform Readiness Checks. + * 14. Perform DB Backup. + * 15. Click "Enable" button. + * 16. Check for Success message + * 17. Return to "Web Setup Wizard". + * + * @group Setup_(CS) + * @ZephyrId MAGETWO-43202 + */ +class EnableDisableModuleTest extends Injectable +{ + /** + * Dashboard page. + * + * @var Dashboard + */ + private $adminDashboard; + + /** + * Web Setup Wizard page. + * + * @var SetupWizard + */ + private $setupWizard; + + /** + * Injection of pages. + * + * @param Dashboard $dashboard + * @param SetupWizard $setupWizard + */ + public function __inject(Dashboard $dashboard, SetupWizard $setupWizard) + { + $this->adminDashboard = $dashboard; + $this->setupWizard = $setupWizard; + } + + /** + * Test root method. + * + * @param Module $module + * @param BackupOptions $backupOptions + * @param AssertModuleInGrid $assertModuleInGrid + * @param AssertSuccessfulReadinessCheck $assertReadiness + * @param AssertSuccessMessage $assertSuccessMessage + */ + public function test( + Module $module, + BackupOptions $backupOptions, + AssertModuleInGrid $assertModuleInGrid, + AssertSuccessfulReadinessCheck $assertReadiness, + AssertSuccessMessage $assertSuccessMessage + ) { + // Open Backend + $this->adminDashboard->open(); + + // Go to System > Web Setup Wizard + $this->setupWizard->open(); + + // Click "Module Manager" button + $this->setupWizard->getSetupHome()->clickModuleManager(); + + // Find appropriate Module in the grid + $assertModuleInGrid->processAssert($this->setupWizard, $module->getModuleName()); + + if (!$this->setupWizard->getModuleGrid()->isModuleEnabled($module->getModuleName())) { + $this->fail('Module is already disabled.'); + } + + // Find Module in the Grid and click Select > Disable module + $this->setupWizard->getModuleGrid()->disableModule($module->getModuleName()); + + // Perform Readiness Checks + $this->setupWizard->getReadiness()->clickReadinessCheck(); + $assertReadiness->processAssert($this->setupWizard); + $this->setupWizard->getReadiness()->clickNext(); + + // Perform DB Backup + $this->setupWizard->getCreateBackup()->fill($backupOptions); + $this->setupWizard->getCreateBackup()->clickNext(); + + // Click "Disable" button + $this->setupWizard->getModuleStatus()->clickDisable(); + + // Check for Success message + $assertSuccessMessage->processAssert($this->setupWizard); + + // Return to "Web Setup Wizard" + $this->setupWizard->getSuccessMessage()->clickBackToSetup(); + + // Find appropriate Module in the Grid + $assertModuleInGrid->processAssert($this->setupWizard, $module->getModuleName()); + + // Find Module in the Grid and click Select > Enable module + $this->setupWizard->getModuleGrid()->enableModule($module->getModuleName()); + + // Perform Readiness Checks + $this->setupWizard->getReadiness()->clickReadinessCheck(); + $assertReadiness->processAssert($this->setupWizard); + $this->setupWizard->getReadiness()->clickNext(); + + // Perform DB Backup + $this->setupWizard->getCreateBackup()->fill($backupOptions); + $this->setupWizard->getCreateBackup()->clickNext(); + + // Click "Enable" button + $this->setupWizard->getModuleStatus()->clickEnable(); + + // Check for Success message + $assertSuccessMessage->processAssert($this->setupWizard); + + // Return to "Web Setup Wizard" + $this->setupWizard->getSuccessMessage()->clickBackToSetup(); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/EnableDisableModuleTest.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/EnableDisableModuleTest.xml new file mode 100644 index 0000000000000..9ee47a4824b8a --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/EnableDisableModuleTest.xml @@ -0,0 +1,14 @@ + + + + + + magento/module-sitemap + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionMultipleTest.php b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionMultipleTest.php new file mode 100644 index 0000000000000..128f9dafa397b --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionMultipleTest.php @@ -0,0 +1,110 @@ + $options) { + $extensions[$key] = $fixtureFactory->create(Extension::class, $options); + } + + // Authenticate in admin area + $this->adminDashboard->open(); + + // Open Web Setup Wizard + $this->setupWizard->open(); + + // Authenticate on repo.magento.com + $this->repoAuthentication($needAuthentication, $repoCredentials); + + // Open Extension Grid with extensions to install + $this->setupWizard->getSetupHome()->clickExtensionManager(); + $this->setupWizard->getExtensionsGrid()->waitLoader(); + $this->setupWizard->getExtensionsGrid()->clickInstallButton(); + + // Select several extensions on grid and check it + $assertSelectSeveralExtensions->processAssert($this->setupWizard->getExtensionsInstallGrid(), $extensions); + + // Click general "Install" button + $this->setupWizard->getExtensionsInstallGrid()->clickInstallAll(); + + $this->readinessCheckAndBackup($assertReadiness, $backupOptions); + + // Check selected extensions + $assertMultipleExtensionAndVersionCheck->processAssert( + $this->setupWizard, + $extensions, + AssertExtensionAndVersionCheck::TYPE_INSTALL + ); + + // Start installing + $this->setupWizard->getUpdaterExtension()->clickStartButton(); + + // Check success message + $assertMultipleSuccessMessage->processAssert( + $this->setupWizard, + $extensions, + AssertSuccessMessage::TYPE_INSTALL + ); + + // Uninstall installed extensions + foreach ($extensions as $extension) { + $this->uninstallExtension( + $extension, + $backupOptions, + $assertReadiness, + $assertFindExtensionOnGrid, + $assertExtensionAndVersionCheck, + $assertSuccessMessage + ); + } + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionMultipleTest.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionMultipleTest.xml new file mode 100644 index 0000000000000..76f5e5ac6efae --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionMultipleTest.xml @@ -0,0 +1,23 @@ + + + + + + false + + + firstExtension + + + secondExtension + + + + + diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionTest.php b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionTest.php new file mode 100644 index 0000000000000..3dcceaeeb3b5a --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionTest.php @@ -0,0 +1,133 @@ +adminDashboard->open(); + + // Open Web Setup Wizard + $this->setupWizard->open(); + + // Authenticate on repo.magento.com + $this->repoAuthentication($needAuthentication, $repoCredentials); + + // Open Extension Grid with extensions to install + $this->setupWizard->getSetupHome()->clickExtensionManager(); + $this->setupWizard->getExtensionsGrid()->waitLoader(); + $this->setupWizard->getExtensionsGrid()->clickInstallButton(); + + // Find extension on grid and install + $assertFindExtensionOnGrid->processAssert($this->setupWizard->getExtensionsInstallGrid(), $extension); + $this->setupWizard->getExtensionsInstallGrid()->install($extension); + + $this->readinessCheckAndBackup($assertReadiness, $backupOptions); + + // Install Extension + $assertExtensionAndVersionCheck->processAssert( + $this->setupWizard, + $extension, + AssertExtensionAndVersionCheck::TYPE_INSTALL + ); + $this->setupWizard->getUpdaterExtension()->clickStartButton(); + $assertSuccessMessage->processAssert( + $this->setupWizard, + $extension, + AssertSuccessMessage::TYPE_INSTALL + ); + + // Open Extension Grid with installed extensions and find installed extension + $this->setupWizard->open(); + $this->setupWizard->getSetupHome()->clickExtensionManager(); + $this->setupWizard->getExtensionsGrid()->waitLoader(); + $assertFindExtensionOnGrid->processAssert($this->setupWizard->getExtensionsGrid(), $extension); + + // Check version of installed extension + $assertVersionOnGrid->processAssert( + $this->setupWizard->getExtensionsGrid(), + $extension, + AssertVersionOnGrid::TYPE_INSTALL + ); + + // Update extension + $this->setupWizard->getExtensionsGrid()->clickUpdateButton($extension); + + $this->readinessCheckAndBackup($assertReadiness, $backupOptions); + + // Update extension + $assertExtensionAndVersionCheck->processAssert( + $this->setupWizard, + $extension, + AssertExtensionAndVersionCheck::TYPE_UPDATE + ); + $this->setupWizard->getUpdaterExtension()->clickStartButton(); + $assertSuccessMessage->processAssert( + $this->setupWizard, + $extension, + AssertSuccessMessage::TYPE_UPDATE + ); + + // Open Extension Grid with updated extensions and find updated extension + $this->setupWizard->open(); + $this->setupWizard->getSetupHome()->clickExtensionManager(); + $this->setupWizard->getExtensionsGrid()->waitLoader(); + $assertFindExtensionOnGrid->processAssert($this->setupWizard->getExtensionsGrid(), $extension); + + // Check version of updated extension + $assertVersionOnGrid->processAssert( + $this->setupWizard->getExtensionsGrid(), + $extension, + AssertVersionOnGrid::TYPE_UPDATE + ); + + // Uninstall extension + $this->uninstallExtension( + $extension, + $backupOptions, + $assertReadiness, + $assertFindExtensionOnGrid, + $assertExtensionAndVersionCheck, + $assertSuccessMessage + ); + } +} diff --git a/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionTest.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionTest.xml new file mode 100644 index 0000000000000..5812858077834 --- /dev/null +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/ExtensionTest.xml @@ -0,0 +1,14 @@ + + + + + + false + + + diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/TestCase/UpgradeSystemTest.php b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/UpgradeSystemTest.php similarity index 87% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/TestCase/UpgradeSystemTest.php rename to dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/UpgradeSystemTest.php index f5933fa91e51d..43c101176bdac 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/TestCase/UpgradeSystemTest.php +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/UpgradeSystemTest.php @@ -4,16 +4,17 @@ * See COPYING.txt for license details. */ -namespace Magento\Upgrade\Test\TestCase; +namespace Magento\Setup\Test\TestCase; use Magento\Mtf\TestCase\Injectable; -use Magento\Upgrade\Test\Page\Adminhtml\SetupWizard; +use Magento\Setup\Test\Fixture\Upgrade; +use Magento\Setup\Test\Page\Adminhtml\SetupWizard; use Magento\Backend\Test\Page\Adminhtml\Dashboard; use Magento\Mtf\Fixture\FixtureFactory; -use Magento\Upgrade\Test\Constraint\AssertSuccessfulReadinessCheck; -use Magento\Upgrade\Test\Constraint\AssertVersionAndEditionCheck; -use Magento\Upgrade\Test\Constraint\AssertSuccessMessage; -use Magento\Upgrade\Test\Constraint\AssertApplicationVersion; +use Magento\Setup\Test\Constraint\AssertSuccessfulReadinessCheck; +use Magento\Setup\Test\Constraint\AssertVersionAndEditionCheck; +use Magento\Setup\Test\Constraint\AssertSuccessMessage; +use Magento\Setup\Test\Constraint\AssertApplicationVersion; class UpgradeSystemTest extends Injectable { @@ -59,16 +60,16 @@ public function test( AssertVersionAndEditionCheck $assertVersionAndEdition, AssertSuccessMessage $assertSuccessMessage, AssertApplicationVersion $assertApplicationVersion, - $upgrade = [] + array $upgrade = [] ) { // Create fixture - $upgradeFixture = $fixtureFactory->create('Magento\Upgrade\Test\Fixture\Upgrade', ['data' => $upgrade]); + $upgradeFixture = $fixtureFactory->create(Upgrade::class, ['data' => $upgrade]); $createBackupConfig = array_intersect_key( $upgrade, ['optionsCode' => '', 'optionsMedia' => '', 'optionsDb' => ''] ); $createBackupFixture = $fixtureFactory->create( - 'Magento\Upgrade\Test\Fixture\Upgrade', + Upgrade::class, ['data' => $createBackupConfig] ); $version = $upgrade['upgradeVersion']; @@ -105,7 +106,7 @@ public function test( } // Select upgrade to version - $this->setupWizard->getSystemUpgradeHome()->clickSystemUpgrade(); + $this->setupWizard->getSetupHome()->clickSystemUpgrade(); $this->setupWizard->getSelectVersion()->fill($upgradeFixture); if ($upgrade['otherComponents'] === 'Yes') { $this->setupWizard->getSelectVersion()->chooseUpgradeOtherComponents(); diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/TestCase/UpgradeSystemTest.xml b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/UpgradeSystemTest.xml similarity index 90% rename from dev/tests/functional/tests/app/Magento/Upgrade/Test/TestCase/UpgradeSystemTest.xml rename to dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/UpgradeSystemTest.xml index 3b88f360ec156..660df28945a8d 100644 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/TestCase/UpgradeSystemTest.xml +++ b/dev/tests/functional/tests/app/Magento/Setup/Test/TestCase/UpgradeSystemTest.xml @@ -6,7 +6,7 @@ */ --> - + System Upgrade Page {version} diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Home.php b/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Home.php deleted file mode 100644 index 9651a15c86572..0000000000000 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/Home.php +++ /dev/null @@ -1,31 +0,0 @@ -_rootElement->find($this->systemUpgrade, Locator::SELECTOR_CSS)->click(); - } -} diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SuccessMessage.php b/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SuccessMessage.php deleted file mode 100644 index a175ff4b32965..0000000000000 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Block/SuccessMessage.php +++ /dev/null @@ -1,30 +0,0 @@ -waitForElementVisible($this->successMessage, Locator::SELECTOR_CLASS_NAME); - return $this->_rootElement->find($this->successMessage, Locator::SELECTOR_CLASS_NAME)->getText(); - } -} diff --git a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Page/Adminhtml/SetupWizard.xml b/dev/tests/functional/tests/app/Magento/Upgrade/Test/Page/Adminhtml/SetupWizard.xml deleted file mode 100644 index 73b07ca848c1d..0000000000000 --- a/dev/tests/functional/tests/app/Magento/Upgrade/Test/Page/Adminhtml/SetupWizard.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - diff --git a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/upgrade.xml b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/setup.xml similarity index 89% rename from dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/upgrade.xml rename to dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/setup.xml index 4d883813f938f..6a5c6e5d904dd 100644 --- a/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/upgrade.xml +++ b/dev/tests/functional/testsuites/Magento/Mtf/TestSuite/InjectableTests/setup.xml @@ -9,7 +9,7 @@ xsi:noNamespaceSchemaLocation="../../../../../vendor/magento/mtf/Magento/Mtf/TestRunner/etc/testRunner.xsd"> - + diff --git a/dev/tests/integration/testsuite/Magento/Setup/Model/ObjectManagerProviderTest.php b/dev/tests/integration/testsuite/Magento/Setup/Model/ObjectManagerProviderTest.php index 89268adb07696..5aa48f28ae3dd 100644 --- a/dev/tests/integration/testsuite/Magento/Setup/Model/ObjectManagerProviderTest.php +++ b/dev/tests/integration/testsuite/Magento/Setup/Model/ObjectManagerProviderTest.php @@ -23,7 +23,7 @@ class ObjectManagerProviderTest extends \PHPUnit_Framework_TestCase protected function setUp() { $this->locator = $this->getMockForAbstractClass('Zend\ServiceManager\ServiceLocatorInterface'); - $this->object = new ObjectManagerProvider($this->locator); + $this->object = new ObjectManagerProvider($this->locator, new Bootstrap()); } public function testGet() diff --git a/lib/internal/Magento/Framework/Module/PackageInfo.php b/lib/internal/Magento/Framework/Module/PackageInfo.php index 7a7b424a5d882..29da357d31fc3 100644 --- a/lib/internal/Magento/Framework/Module/PackageInfo.php +++ b/lib/internal/Magento/Framework/Module/PackageInfo.php @@ -213,6 +213,25 @@ public function getRequire($moduleName) return $require; } + /** + * Get all module names a module required by + * + * @param string $requiredModuleName + * @return array + */ + public function getRequiredBy($requiredModuleName) + { + $this->load(); + $requiredBy = []; + foreach ($this->requireMap as $moduleName => $moduleRequireList) { + if (in_array($requiredModuleName, $moduleRequireList)) { + $requiredBy[] = $moduleName; + } + } + + return $requiredBy; + } + /** * Get all module names a module conflicts * diff --git a/lib/internal/Magento/Framework/Module/Test/Unit/PackageInfoTest.php b/lib/internal/Magento/Framework/Module/Test/Unit/PackageInfoTest.php index 19fb536031d5c..11c5f193b6f0e 100644 --- a/lib/internal/Magento/Framework/Module/Test/Unit/PackageInfoTest.php +++ b/lib/internal/Magento/Framework/Module/Test/Unit/PackageInfoTest.php @@ -5,6 +5,7 @@ */ namespace Magento\Framework\Module\Test\Unit; +use Magento\Framework\Module\ModuleList; use \Magento\Framework\Module\PackageInfo; class PackageInfoTest extends \PHPUnit_Framework_TestCase @@ -100,4 +101,9 @@ public function testGetVersion() $this->assertEquals('0.4', $this->packageInfo->getVersion('E')); $this->assertEquals('', $this->packageInfo->getVersion('F')); } + + public function testGetRequiredBy() + { + $this->assertEquals(['A'], $this->packageInfo->getRequiredBy('b')); + } } diff --git a/setup/config/di.config.php b/setup/config/di.config.php index 81ddbde7adb1e..a94c28da1b5f0 100644 --- a/setup/config/di.config.php +++ b/setup/config/di.config.php @@ -29,7 +29,8 @@ 'Magento\Setup\Controller\Install', 'Magento\Setup\Controller\Success', 'Magento\Setup\Controller\Modules', - 'Magento\Setup\Controller\ComponentGrid', + 'Magento\Setup\Controller\ModuleGrid', + 'Magento\Setup\Controller\ExtensionGrid', 'Magento\Setup\Controller\StartUpdater', 'Magento\Setup\Controller\UpdaterSuccess', 'Magento\Setup\Controller\BackupActionItems', @@ -39,6 +40,7 @@ 'Magento\Setup\Controller\Marketplace', 'Magento\Setup\Controller\SystemConfig', 'Magento\Setup\Controller\InstallExtensionGrid', + 'Magento\Setup\Controller\UpdateExtensionGrid', 'Magento\Setup\Controller\MarketplaceCredentials', 'Magento\Setup\Controller\Session' ], diff --git a/setup/config/states.home.config.php b/setup/config/states.home.config.php index ddb6c7430248f..c22cd5653a0da 100644 --- a/setup/config/states.home.config.php +++ b/setup/config/states.home.config.php @@ -25,27 +25,63 @@ 'order' => -1, ], [ - 'id' => 'root.update', - 'url' => 'component-grid', - 'templateUrl' => "$base/component-grid", - 'title' => 'Component Manager', - 'controller' => 'componentGridController', + 'id' => 'root.module', + 'url' => 'module-grid', + 'templateUrl' => "$base/module-grid", + 'title' => 'Module Manager', + 'controller' => 'moduleGridController', 'nav' => false, 'noMenu' => true, 'order' => 1, - 'type' => 'update' + 'type' => 'module' + ], + [ + 'id' => 'root.extension-auth', + 'url' => 'marketplace-credentials', + 'templateUrl' => "$base/marketplace-credentials", + 'title' => 'Extension Manager', + 'controller' => 'MarketplaceCredentialsController', + 'order' => 1, + 'nav' => false, + 'noMenu' => true, + 'type' => 'extension' + ], + [ + 'id' => 'root.extension', + 'url' => 'extension-grid', + 'templateUrl' => "$base/extension-grid", + 'title' => 'Extension Manager', + 'controller' => 'extensionGridController', + 'order' => 2, + 'nav' => false, + 'noMenu' => true, + 'type' => 'extension' ], [ 'id' => 'root.install', 'url' => 'install-extension-grid', 'templateUrl' => "$base/install-extension-grid", - 'title' => "Extensions Grid", + 'title' => "Extension Manager", 'controller' => 'installExtensionGridController', 'nav' => false, 'noMenu' => true, 'order' => 1, 'type' => 'install', - 'wrapper' => 1 + 'wrapper' => 1, + 'header' => 'Ready to Install' + ], + [ + 'id' => 'root.update', + 'url' => 'update-extension-grid', + 'templateUrl' => "$base/update-extension-grid", + 'title' => "Extension Manager", + 'controller' => 'updateExtensionGridController', + 'nav' => false, + 'noMenu' => true, + 'order' => 1, + 'type' => 'update', + 'wrapper' => 1, + 'header' => 'New Updates' ], [ 'id' => 'root.upgrade', diff --git a/setup/pub/fonts/icons/icons.eot b/setup/pub/fonts/icons/icons.eot index 3d281e633887a..5bc0bee548c35 100644 Binary files a/setup/pub/fonts/icons/icons.eot and b/setup/pub/fonts/icons/icons.eot differ diff --git a/setup/pub/fonts/icons/icons.svg b/setup/pub/fonts/icons/icons.svg index 8adaa3aa6182f..4478010abc66d 100644 --- a/setup/pub/fonts/icons/icons.svg +++ b/setup/pub/fonts/icons/icons.svg @@ -1,63 +1 @@ - - - -Generated by IcoMoon - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/setup/pub/fonts/icons/icons.ttf b/setup/pub/fonts/icons/icons.ttf index e0a3198df0233..bc3eddf307438 100644 Binary files a/setup/pub/fonts/icons/icons.ttf and b/setup/pub/fonts/icons/icons.ttf differ diff --git a/setup/pub/fonts/icons/icons.woff b/setup/pub/fonts/icons/icons.woff index 8bc8fec1c4e6c..bd9560bf58327 100644 Binary files a/setup/pub/fonts/icons/icons.woff and b/setup/pub/fonts/icons/icons.woff differ diff --git a/setup/pub/fonts/icons/icons.woff2 b/setup/pub/fonts/icons/icons.woff2 index a8eb24de4ecb8..25c1c88c0bff8 100644 Binary files a/setup/pub/fonts/icons/icons.woff2 and b/setup/pub/fonts/icons/icons.woff2 differ diff --git a/setup/pub/fonts/icons/selection.json b/setup/pub/fonts/icons/selection.json index f7cf712049b33..c1733d650bcd2 100644 --- a/setup/pub/fonts/icons/selection.json +++ b/setup/pub/fonts/icons/selection.json @@ -1,1785 +1,2326 @@ { - "IcoMoonType": "selection", - "icons": [ - { - "icon": { - "paths": [ - "M1023.966 79.428l-79.428-79.401-432.538 432.613-432.565-432.613-79.425 79.37 432.63 432.602-432.572 432.606 79.367 79.394 432.565-432.606 432.538 432.572 79.326-79.394-432.503-432.572z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "grid": 0, - "tags": [ - "close-mage" - ] - }, - "attrs": [ - {} - ], - "properties": { - "order": 57, - "id": 29, - "prevSize": 27, - "code": 58927, - "name": "close-mage" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 0 - }, - { - "icon": { - "paths": [ - "M505.704 40.998c-260.096 3.489-468.158 217.202-464.706 477.336 3.489 259.982 217.202 468.12 477.298 464.631s468.158-217.202 464.706-477.336c-3.413-260.058-217.202-468.12-477.298-464.631zM557.928 197.973c47.863 0 62.009 27.762 62.009 59.544 0 39.671-31.782 76.383-86.016 76.383-45.359 0-66.901-22.831-65.65-60.53 0-31.782 26.624-75.435 89.657-75.435zM435.162 806.381c-32.73 0-56.661-19.873-33.792-107.217l37.547-154.814c6.485-24.841 7.585-34.778 0-34.778-9.785 0-52.262 17.143-77.407 34.057l-16.346-26.776c79.607-66.446 171.16-105.472 210.375-105.472 32.73 0 38.153 38.722 21.807 98.266l-43.008 162.816c-7.585 28.786-4.286 38.722 3.262 38.722 9.785 0 41.984-11.871 73.614-36.75l18.47 24.841c-77.369 77.369-161.792 107.179-194.56 107.179z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "info" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 27, - "id": 28, - "prevSize": 27, - "code": 58906, - "name": "info" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 1 - }, - { - "icon": { - "paths": [ - "M591.986 448.019h-16.005v-192.019c0-105.851-86.13-192.019-192.019-192.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-16.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188zM448.019 448.019h-256v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "lock" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 28, - "id": 27, - "prevSize": 27, - "code": 58907, - "name": "lock" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 2 - }, - { - "icon": { - "paths": [ - "M870.4 317.44h-194.56v143.36h153.6v215.040h-634.88v-215.040h215.040v112.64l204.8-184.32-204.8-184.32v112.64h-256c-56.51 0-102.4 45.815-102.4 102.4v296.96c0 56.51 45.89 102.4 102.4 102.4h716.8c56.585 0 102.4-45.89 102.4-102.4v-296.96c0-56.585-45.815-102.4-102.4-102.4z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "loop" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 29, - "id": 26, - "prevSize": 27, - "code": 58908, - "name": "loop" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 3 - }, - { - "icon": { - "paths": [ - "M991.991 384h-351.991v-351.991c0-17.673-14.336-32.009-32.009-32.009h-192.019c-17.673 0-32.009 14.336-32.009 32.009v351.991h-351.991c-17.673 0-32.009 14.336-32.009 32.009v192.019c0 17.673 14.336 32.009 32.009 32.009h351.991v351.991c0 17.673 14.336 32.009 32.009 32.009h192.019c17.673 0 32.009-14.336 32.009-32.009v-351.991h351.991c17.673 0 32.009-14.336 32.009-32.009v-192.019c0-17.673-14.336-32.009-32.009-32.009z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "plus" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 32, - "id": 25, - "prevSize": 27, - "code": 58909, - "name": "plus" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 4 - }, - { - "icon": { - "paths": [ - "M505.704 40.998c-260.096 3.489-468.158 217.126-464.706 477.298 3.489 260.21 217.202 468.158 477.298 464.744 260.134-3.489 468.233-217.202 464.706-477.298-3.489-260.21-217.202-468.233-477.298-464.744zM506.577 102.4c70.163-0.986 136.382 15.853 194.56 46.118l-63.374 105.662c-38.002-18.47-80.631-28.937-125.762-28.937-45.056 0-87.723 10.43-125.687 28.975l-63.336-105.624c54.993-28.672 117.343-45.321 183.599-46.232zM254.255 637.687l-105.586 63.298c-28.672-54.955-45.321-117.305-46.194-183.486-0.986-70.201 15.853-136.457 46.118-194.56l105.624 63.45c-18.546 37.926-28.975 80.555-28.975 125.649 0 45.056 10.43 87.723 28.975 125.687zM517.461 921.562c-70.163 0.986-136.457-15.853-194.56-46.118l63.374-105.662c38.002 18.546 80.631 28.975 125.687 28.975 45.094 0 87.761-10.392 125.687-28.937l63.336 105.586c-54.993 28.634-117.305 45.246-183.561 46.194zM512 737.242c-124.397 0-225.242-100.883-225.242-225.242 0-124.397 100.883-225.28 225.242-225.28 124.473 0 225.28 100.883 225.28 225.28s-100.807 225.242-225.28 225.242zM769.745 637.687c18.546-38.002 28.975-80.631 28.975-125.687 0-45.094-10.43-87.723-28.975-125.687l105.586-63.374c28.672 54.993 45.359 117.305 46.232 183.561 0.91 70.201-15.929 136.457-46.194 194.56l-105.624-63.336z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "recover" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 30, - "id": 24, - "prevSize": 27, - "code": 58910, - "name": "recover" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 5 - }, - { - "icon": { - "paths": [ - "M906.126 135.813v0c-91.174-75.89-202.487-113.171-312.548-113.057-127.014-0.038-253.611 49.683-348.16 145.636l-95.004-79.265-1.593 305.342 300.184-56.282-99.442-82.944c67.546-64.247 155.269-97.204 244.015-97.28 79.948 0.038 159.782 26.7 226.114 81.806 84.347 70.125 127.659 170.629 127.772 272.46-0.038 14.715-0.948 29.431-2.769 44.070l137.519-26.283c0.19-5.954 0.303-11.871 0.303-17.787 0.152-140.098-60.151-279.78-176.431-376.415zM839.035 766.976c-67.736 65.498-156.255 99.025-245.912 99.1-79.986-0.038-159.82-26.738-226.114-81.806-84.347-70.125-127.697-170.629-127.772-272.498 0-16.839 1.252-33.716 3.679-50.366l-138.164 25.941c-0.379 8.116-0.683 16.346-0.683 24.462-0.114 140.174 60.226 279.817 176.545 376.491 91.136 75.852 202.411 113.057 312.51 112.981h0.341c127.924 0 255.241-50.441 349.943-147.759l90.795 75.207 0.569-305.38-299.956 57.344 104.183 86.281z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "refresh" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 33, - "id": 23, - "prevSize": 27, - "code": 58911, - "name": "refresh" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 6 - }, - { - "icon": { - "paths": [ - "M593.351 21.732c-270.753 0-490.268 219.477-490.268 490.231s219.515 490.268 490.268 490.268 490.231-219.515 490.231-490.268c0-270.753-219.477-490.231-490.231-490.231zM828.947 683.653l-72.363 72.363-162.095-162.133-164.902 164.902-73.121-73.121 164.902-164.902-161.678-161.678 72.363-72.325 161.602 161.678 165.774-165.736 73.121 73.083-165.774 165.736 162.171 162.133z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "remove-small" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 34, - "id": 22, - "prevSize": 27, - "code": 58912, - "name": "remove-small" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 7 - }, - { - "icon": { - "paths": [ - "M254.976 675.84v-267.264h103.424l-179.2-203.776-179.2 203.776h103.424v308.224c0 56.51 45.815 102.4 102.4 102.4h459.776l-131.186-143.36h-279.438zM920.538 615.424v-308.224c0-56.51-45.89-102.4-102.4-102.4h-459.738l131.11 143.36h279.514v267.264h-103.424l179.2 203.776 179.2-203.776h-103.462z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "retweet" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 35, - "id": 21, - "prevSize": 27, - "code": 58913, - "name": "retweet" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 8 - }, - { - "icon": { - "paths": [ - "M768 64.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-400.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014h-16.005v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019h128v-192.019c0-105.851-86.13-192.019-192.019-192.019zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "unlocked" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 36, - "id": 20, - "prevSize": 27, - "code": 58914, - "name": "unlocked" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 9 - }, - { - "icon": { - "paths": [ - "M593.351 0l-593.351 1023.962h1186.74l-593.351-1023.962zM653.236 899.451h-125.421v-121.211h125.421v121.211zM622.175 728.329h-62.502l-34.816-288.313v-156.748h131.3v156.748l-33.982 288.313z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "warning" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 37, - "id": 19, - "prevSize": 27, - "code": 58915, - "name": "warning" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 10 - }, - { - "icon": { - "paths": [ - "M0 512l512 512v-320.019h512v-384h-512v-320.019z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "arrow-left" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 38, - "id": 18, - "prevSize": 27, - "code": 58916, - "name": "arrow-left" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 11 - }, - { - "icon": { - "paths": [ - "M1024 512l-512-512v320.019h-512v384h512v320.019z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "arrow-right" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 39, - "id": 17, - "prevSize": 27, - "code": 58917, - "name": "arrow-right" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 12 - }, - { - "icon": { - "paths": [ - "M402.735 146.735l-320.019 320.019c-24.993 24.993-24.993 65.498 0 90.491l320.019 320.019c24.993 24.993 65.498 24.993 90.491 0s24.993-65.498 0-90.491l-210.754-210.754h613.49c35.347 0 64.019-28.634 64.019-64.019s-28.672-64.019-64.019-64.019h-613.49l210.754-210.754c12.478-12.478 18.735-28.862 18.735-45.246s-6.258-32.768-18.735-45.246c-24.993-24.993-65.498-24.993-90.491 0z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "back-arrow" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 40, - "id": 16, - "prevSize": 27, - "code": 58918, - "name": "back-arrow" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 13 - }, - { - "icon": { - "paths": [ - "M507.259 578.522h-102.059v101.717h102.059v-101.717zM650.885 714.714h-101.945v101.717h101.945v-101.717zM507.259 714.714h-102.059v101.717h102.059v-101.717zM507.259 442.33h-102.059v101.679h102.059v-101.679zM843.131 244.091c23.4 0 42.287-18.887 42.287-42.174v-145.408c0-23.324-18.887-42.174-42.287-42.174s-42.325 18.849-42.325 42.174v145.408c0.038 23.324 18.925 42.174 42.325 42.174zM343.419 244.091c23.362 0 42.249-18.887 42.249-42.174v-145.408c0-23.324-18.887-42.174-42.249-42.174-23.4 0-42.325 18.849-42.325 42.174v145.408c0 23.324 18.925 42.174 42.325 42.174zM363.444 578.522h-102.059v101.717h102.059v-101.717zM363.444 714.714h-102.059v101.717h102.059v-101.717zM650.885 578.522h-101.945v101.717h101.945v-101.717zM938.325 578.522h-102.059v101.717h102.059v-101.717zM938.325 442.33h-102.059v101.679h102.059v-101.679zM899.337 84.385v46.914c17.598 15.474 28.71 38.153 28.71 63.412 0 46.801-37.964 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-387.262v46.914c17.56 15.474 28.71 38.153 28.71 63.412 0 46.801-38.002 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-192.322v925.279h997.035v-925.279h-192.512zM999.234 915.304h-809.832v-589.938h809.832v589.938zM650.885 442.33h-101.945v101.679h101.945v-101.679zM794.624 442.33h-101.983v101.679h101.983v-101.679zM794.624 714.714h-101.983v101.717h101.983v-101.717zM794.624 578.522h-101.983v101.717h101.983v-101.717z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "calendar" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 41, - "id": 15, - "prevSize": 27, - "code": 58919, - "name": "calendar" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 14 - }, - { - "icon": { - "paths": [ - "M132.21 286.758c-13.881-13.729-36.295-13.729-50.138 0-13.805 13.653-13.805 35.878 0 49.607l404.897 400.877c13.881 13.729 36.257 13.729 50.138 0l404.897-400.877c13.805-13.729 13.881-35.878 0-49.607s-36.371-13.729-50.138-0.038l-379.866 365.606-379.79-365.568z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-down" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 42, - "id": 14, - "prevSize": 27, - "code": 58920, - "name": "caret-down" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 15 - }, - { - "icon": { - "paths": [ - "M737.242 891.79c13.729 13.881 13.729 36.257 0 50.138s-35.878 13.881-49.607 0l-400.877-404.821c-13.729-13.881-13.729-36.295 0-50.138l400.877-404.897c13.729-13.881 35.878-13.881 49.607 0s13.729 36.257 0 50.138l-365.568 379.79 365.568 379.79z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-left" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 43, - "id": 13, - "prevSize": 27, - "code": 58921, - "name": "caret-left" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 16 - }, - { - "icon": { - "paths": [ - "M286.72 891.79c-13.729 13.881-13.729 36.257 0 50.138s35.878 13.881 49.607 0l400.877-404.821c13.729-13.881 13.729-36.295 0-50.138l-400.915-404.897c-13.729-13.881-35.878-13.881-49.607 0s-13.729 36.257 0 50.138l365.568 379.79-365.568 379.79z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-right" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 44, - "id": 12, - "prevSize": 27, - "code": 58922, - "name": "caret-right" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 17 - }, - { - "icon": { - "paths": [ - "M891.79 737.242c13.881 13.729 36.295 13.729 50.138 0 13.881-13.729 13.881-35.878 0-49.607l-404.897-400.877c-13.805-13.729-36.257-13.729-50.062 0l-404.897 400.877c-13.805 13.729-13.881 35.878 0 49.607s36.257 13.729 50.138 0l379.79-365.606 379.79 365.606z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "caret-up" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 53, - "id": 11, - "prevSize": 27, - "code": 58923, - "name": "caret-up" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 18 - }, - { - "icon": { - "paths": [ - "M574.767 92.16c-227.593 0-412.672 182.386-418.247 409.335h-125.8l188.378 209.92 188.302-209.92h-146.242c5.537-168.998 143.777-304.393 313.609-304.393 173.397 0 313.913 140.971 313.913 314.899s-140.478 314.861-313.913 314.861c-69.48 0-133.689-22.718-185.685-61.099l-71.983 76.99c70.997 55.751 160.465 89.050 257.707 89.050 231.159 0 418.551-187.961 418.551-419.84-0.038-231.879-187.43-419.84-418.551-419.84z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "ccw" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 52, - "id": 10, - "prevSize": 27, - "code": 58924, - "name": "ccw" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 19 - }, - { - "icon": { - "paths": [ - "M996.617 126.786l-513.555 513.555-256.796-256.834-128.379 128.417 385.214 385.252 641.896-642.010z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "check-mage" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 51, - "id": 9, - "prevSize": 27, - "code": 58925, - "name": "check-mage" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 20 - }, - { - "icon": { - "paths": [ - "M512 40.96c-260.134 0-471.040 210.944-471.040 471.040 0 260.134 210.906 471.040 471.040 471.040s471.040-210.906 471.040-471.040c0-260.134-210.906-471.040-471.040-471.040zM512 880.64c-203.624 0-368.64-165.054-368.64-368.64s165.016-368.64 368.64-368.64 368.64 165.054 368.64 368.64-165.016 368.64-368.64 368.64zM547.84 245.76h-71.68v281.069l174.345 174.345 50.669-50.707-153.335-153.335z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "clock" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 31, - "id": 8, - "prevSize": 27, - "code": 58926, - "name": "clock" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 21 - }, - { - "icon": { - "paths": [ - "M337.541 1021.004h513.024l64.512-645.916h-639.128l61.592 645.916zM737.394 154.169v-116.508c0-19.191-15.398-34.702-34.361-34.702h-217.847c-19.001 0-34.361 15.55-34.361 34.702v114.574c-73.576 8.382-150.149 24.614-226.494 52.338v106.989h738.001v-109.833c0 0-90.074-31.403-224.977-47.559zM668.937 147.759c-47.749-3.224-99.252-4.096-153.297-0.986v-61.44c0-9.519 7.623-17.332 17.143-17.332h118.936c9.519 0 17.218 7.813 17.218 17.332v62.426z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "delete" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 49, - "id": 5, - "prevSize": 27, - "code": 58928, - "name": "delete" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 22 - }, - { - "icon": { - "paths": [ - "M928.503 26.889l-111.502 112.109 156.065 156.9 111.502-112.071-156.065-156.937zM215.002 744.41l156.065 156.9 535.211-538.093-156.065-156.9-535.211 538.093zM103.917 1007.161l188.985-49.873-139.302-140.098-49.683 190.009z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "edit" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 48, - "id": 4, - "prevSize": 27, - "code": 58929, - "name": "edit" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 23 - }, - { - "icon": { - "paths": [ - "M1014.67 822.651c0 0 0 0 0 0l-310.651-310.651 310.651-310.651c0 0 0 0 0 0 3.337-3.337 5.765-7.244 7.32-11.416 4.248-11.378 1.82-24.69-7.32-33.83l-146.735-146.735c-9.14-9.14-22.452-11.567-33.83-7.32-4.172 1.555-8.078 3.982-11.416 7.32 0 0 0 0 0 0l-310.651 310.651-310.651-310.651c0 0 0 0 0 0-3.337-3.337-7.244-5.765-11.416-7.32-11.378-4.248-24.69-1.82-33.83 7.32l-146.735 146.735c-9.14 9.14-11.567 22.452-7.32 33.83 1.555 4.172 3.982 8.078 7.32 11.416 0 0 0 0 0 0l310.651 310.651-310.651 310.651c0 0 0 0 0 0-3.337 3.337-5.765 7.244-7.32 11.416-4.248 11.378-1.82 24.69 7.32 33.83l146.735 146.735c9.14 9.14 22.452 11.567 33.83 7.32 4.172-1.555 8.078-3.982 11.416-7.32 0 0 0 0 0 0l310.651-310.651 310.651 310.651c0 0 0 0 0 0 3.337 3.337 7.244 5.765 11.416 7.32 11.378 4.248 24.69 1.82 33.83-7.32l146.735-146.735c9.14-9.14 11.567-22.452 7.32-33.83-1.555-4.172-3.982-8.078-7.32-11.416z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "error" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 47, - "id": 3, - "prevSize": 27, - "code": 58930, - "name": "error" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 24 - }, - { - "icon": { - "paths": [ - "M593.351 22.566c-270.336 0-489.434 219.098-489.434 489.358s219.098 489.434 489.434 489.434 489.434-219.136 489.434-489.434-219.136-489.358-489.434-489.358zM635.752 826.596c-11.985 11.719-26.396 17.636-43.16 17.636-8.154 0-15.967-1.517-23.4-4.589-7.358-3.034-13.843-7.168-19.456-12.174-5.613-5.158-10.126-11.226-13.388-18.356-3.337-7.13-4.968-14.753-4.968-22.945 0-16.308 5.992-30.303 17.977-42.060 11.947-11.681 26.396-17.598 43.198-17.598 16.308 0 30.606 5.689 42.78 16.801 12.25 11.188 18.318 24.993 18.318 41.339-0.038 16.384-5.992 30.303-17.939 41.984zM778.923 382.673c-3.982 13.767-9.747 26.396-17.18 37.774-7.471 11.454-16.498 22.49-27.079 33.071s-22.49 21.618-35.65 33.033c-11.454 9.785-20.783 18.318-27.913 25.79-7.168 7.396-12.895 14.867-17.218 22.338-4.286 7.433-7.282 15.398-9.026 24.007-1.707 8.609-2.617 49.721-2.617 62.35v22.338h-101.376v-32.616c0-13.729 0.986-56.661 3.034-67.584s5.158-21.125 9.481-30.872 10.012-19.228 17.18-28.369c7.168-9.14 16.232-18.887 27.079-29.203l38.647-36.902c10.847-9.747 20.177-20.632 27.951-32.616 7.737-12.060 11.529-26.7 11.529-43.88 0-22.3-6.978-41.036-21.011-56.206-14.071-15.17-33.944-22.793-59.695-22.793-13.16 0-25.069 2.389-35.65 7.282-10.619 4.817-19.797 11.454-27.496 19.759-7.737 8.344-13.577 17.901-17.598 28.786-3.982 10.847-6.334 21.997-6.865 33.527l-105.624-9.444c3.413-27.496 10.733-51.959 21.921-73.463 11.112-21.466 25.562-39.595 43.311-54.575 17.711-14.829 38.078-26.169 61.023-33.944 22.869-7.699 47.521-11.605 73.842-11.605 24.614 0 47.976 3.603 70.049 10.771 21.959 7.168 41.491 17.711 58.406 31.782 16.839 14.033 30.227 31.365 39.936 51.959 9.709 20.632 14.564 44.411 14.564 71.263 0 18.356-2.010 34.475-5.992 48.166z" - ], - "width": 1176, - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "help" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 46, - "id": 1, - "prevSize": 27, - "code": 58931, - "name": "help" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 25 - }, - { - "icon": { - "paths": [ - "M574.805 92.16c-227.631 0-412.71 182.386-418.247 409.335h-125.838l188.378 209.958 188.302-209.958h-146.242c5.537-168.998 143.777-304.393 313.647-304.393 173.359 0 313.875 140.971 313.875 314.899s-140.478 314.861-313.875 314.861c-69.518 0-133.727-22.718-185.761-61.099l-71.983 76.99c71.073 55.751 160.503 89.050 257.745 89.050 231.121 0 418.513-187.961 418.513-419.84-0.038-231.879-187.43-419.84-418.513-419.84zM537.6 286.72v240.109l153.865 153.865 50.669-50.669-132.855-132.855v-210.413h-71.68z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "history" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 45, - "id": 0, - "prevSize": 27, - "code": 58932, - "name": "history" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 26 - }, - { - "icon": { - "paths": [ - "M259.2 0h214.323v214.323h-214.323v-214.323z", - "M259.2 269.875h214.323v214.349h-214.323v-214.349z", - "M259.2 539.776h214.323v214.349h-214.323v-214.349z", - "M259.2 809.651h214.323v214.349h-214.323v-214.349z", - "M549.325 0h214.323v214.323h-214.323v-214.323z", - "M549.325 269.875h214.323v214.349h-214.323v-214.349z", - "M549.325 539.776h214.323v214.349h-214.323v-214.349z", - "M549.325 809.651h214.323v214.349h-214.323v-214.349z" - ], - "attrs": [ - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "gripper" - ], - "grid": 0 - }, - "attrs": [ - {}, - {}, - {}, - {}, - {}, - {}, - {}, - {} - ], - "properties": { - "order": 26, - "id": 11, - "prevSize": 27, - "code": 58903, - "name": "gripper" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 27 - }, - { - "icon": { - "paths": [ - "M860.058 185.062v272l-430.029-269.158-1.894 253.491-424.371-249.754-3.763 647.834 426.24-241.28-5.606 239.437 439.424-252.16v259.635h163.942v-660.045z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "forward" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 25, - "id": 10, - "prevSize": 27, - "code": 58904, - "name": "forward" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 28 - }, - { - "icon": { - "paths": [ - "M163.942 845.107v-271.974l430.029 269.133 1.894-253.491 424.397 249.754 3.738-647.834-426.24 241.28 5.606-239.437-439.424 252.16v-259.635h-163.942v660.045z" - ], - "attrs": [ - {} - ], - "isMulticolor": false, - "tags": [ - "backward" - ], - "grid": 0 - }, - "attrs": [ - {} - ], - "properties": { - "order": 24, - "id": 9, - "prevSize": 27, - "code": 58905, - "name": "backward" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 29 - }, - { - "icon": { - "paths": [ - "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.632 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.368 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.107-205.21 458.368-458.394 458.368z", - "M760.013 625.613l30.387-38.4-265.6-206.413-20.787-1.613-259.226 208.026 28.826 39.987 236.8-177.613z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "expand-close" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 23, - "id": 8, - "prevSize": 27, - "code": 58901, - "name": "expand-close" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 30 - }, - { - "icon": { - "paths": [ - "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.606 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.394 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.133-205.21 458.394-458.394 458.394z", - "M265.6 454.4l-30.387 38.4 265.574 206.387 20.813 1.613 259.2-208-28.8-39.987-236.8 177.587z" - ], - "attrs": [ - {}, - {} - ], - "isMulticolor": false, - "tags": [ - "expand-open" - ], - "grid": 0 - }, - "attrs": [ - {}, - {} - ], - "properties": { - "order": 21, - "id": 7, - "prevSize": 27, - "code": 58902, - "name": "expand-open" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 31 - }, - { - "icon": { - "paths": [ - "M1020.032 565.555v-116.045l-16.41-5.376-124.237-40.525-33.152-80.102 63.718-134.784-82.048-82.125-15.411 7.808-116.531 59.213-80.077-33.178-50.278-140.442h-116.096l-45.875 140.698-80 33.126-134.963-63.744-82.022 82.074 7.834 15.334 59.162 116.608-33.126 80.026-140.518 50.253v116.147l16.435 5.325 124.288 40.576 33.075 80-63.693 134.886 82.048 82.099 131.942-66.97 80.026 33.152 50.304 140.39h116.096l5.35-16.41 40.55-124.237 80.077-33.178 134.886 63.718 82.074-82.074-7.834-15.386-59.213-116.582 33.203-80.026 140.416-50.253zM510.003 672.589c-89.754 0-162.509-72.832-162.509-162.611 0-89.754 72.755-162.483 162.509-162.483 89.83 0 162.509 72.73 162.509 162.483 0.026 89.805-72.653 162.611-162.509 162.611z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "system-config" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 22, - "id": 5, - "prevSize": 27, - "code": 58896, - "name": "system-config" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 32 - }, - { - "icon": { - "paths": [ - "M509.978 54.426l-509.978 509.926 95.949 95.949 414.106-413.978 413.875 413.978 95.949-95.898-509.901-509.978zM146.253 688.563v335.437h259.917v-304.819h207.514v304.819h259.917v-335.488l-363.622-363.597-363.725 363.648z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "home" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 20, - "id": 3, - "prevSize": 27, - "code": 58897, - "name": "home" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 33 - }, - { - "icon": { - "paths": [ - "M0 736.41l498.278 287.59v-421.402l-498.278-287.667v421.478zM894.464 224.486v44.262c0 32.819-62.797 59.418-140.365 59.418-77.466 0-140.262-26.598-140.262-59.418v-73.216h0.435c4.71 30.925 65.408 55.475 139.853 55.475 77.568 0 140.365-26.624 140.365-59.29 0-32.845-62.797-59.366-140.365-59.366-6.195 0-12.262 0.205-18.202 0.563l-90.317-52.147v55.706c0 32.819-62.72 59.392-140.262 59.392-48.691 0-91.597-10.496-116.813-26.47-3.584-3.712-7.987-7.245-13.312-10.598-6.579-6.861-10.24-14.387-10.24-22.323v-53.939l-87.322 50.381c-6.272-0.307-12.646-0.614-19.123-0.614-77.491 0-140.314 26.522-140.314 59.366 0 32.691 62.822 59.29 140.314 59.29 74.445 0 135.219-24.525 139.93-55.475h0.384v73.216c0 32.819-62.746 59.418-140.314 59.418-77.491 0-140.314-26.598-140.314-59.418v-43.622l-108.083 62.31 499.994 288.563 496.691-286.694-112.358-64.768zM646.784 408.013c0 32.794-62.874 59.315-140.365 59.315s-140.339-26.522-140.339-59.315v-73.267h0.41c4.762 30.95 65.459 55.475 139.93 55.475s135.142-24.525 139.904-55.475h0.486v73.267zM525.645 606.234v417.766l498.355-287.718v-417.766l-498.355 287.718zM505.318 118.656c77.542 0 140.262-26.547 140.262-59.315s-62.72-59.315-140.262-59.315c-77.491 0-140.339 26.573-140.339 59.315-0.026 32.768 62.822 59.315 140.339 59.315z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "lego" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 19, - "id": 2, - "prevSize": 27, - "code": 58898, - "name": "lego" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 34 - }, - { - "icon": { - "paths": [ - "M287.002 481.664c0.205 0.23 0.461 0.486 0.691 0.717l103.347 103.373 36.045-36.045-56.55-56.499 90.266-90.189 11.904 1.28c3.046 0.307 6.093 0.538 9.19 0.538 6.246 0 12.314-0.768 18.253-2.125l-66.381-66.381c-1.357-1.382-2.765-2.611-4.173-3.814 20.454-73.6 1.766-155.725-56.038-213.555-57.421-57.421-138.803-76.237-211.968-56.525l123.955 123.981-32.563 121.446-121.395 32.589-124.032-124.006c-19.712 73.19-0.896 154.573 56.525 212.019 60.262 60.288 147.021 77.952 222.925 53.197zM653.235 555.802c-1.997 8.909-2.509 18.202-1.459 27.546l1.306 11.93-90.189 90.189-56.55-56.55-36.070 36.122 327.219 327.194c20.198 20.173 46.618 30.259 73.062 30.259s52.915-10.086 73.037-30.259c40.346-40.32 40.346-105.728 0-146.074l-290.355-290.355zM905.907 958.362l-51.866 13.875-42.112-42.112 13.901-51.891 51.866-13.926 42.112 42.138-13.901 51.917zM506.701 594.099l56.576 56.576 64.128-64.154c-3.482-31.334 6.707-63.821 30.669-87.808 24.013-23.962 56.474-34.176 87.808-30.72l280.397-280.346-157.056-157.056-280.448 280.397c3.482 31.258-6.682 63.821-30.669 87.782-24.013 23.987-56.525 34.176-87.808 30.643l-64.102 64.205 56.499 56.422-277.043 277.12-10.138-10.138-53.248 42.829-89.421 141.312 22.835 22.835 141.312-89.421 42.803-53.222-10.138-10.138 277.043-277.12z" - ], - "attrs": [ - { - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "tool" - ], - "grid": 0 - }, - "attrs": [ - { - "visibility": false - } - ], - "properties": { - "order": 18, - "id": 1, - "prevSize": 27, - "code": 58899, - "name": "tool" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 35 - }, - { - "icon": { - "paths": [ - "M1023.932 505.105c-3.717-282.692-236.1-508.826-518.793-505.003-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827zM623.991 481.304v298.633h-223.983v-298.633h-186.621l298.633-298.633 298.667 298.633h-186.679z" - ], - "attrs": [ - { - "fill": "rgb(68, 68, 68)", - "opacity": 1, - "visibility": false - }, - { - "fill": "rgb(255, 255, 255)", - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "upgrade" - ], - "grid": 0, - "colorPermutations": { - "25525525516868681": [ - 0, - 1 - ] - } - }, - "attrs": [ - { - "fill": "rgb(68, 68, 68)", - "opacity": 1, - "visibility": false - }, - { - "fill": "rgb(255, 255, 255)", - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 54, - "id": 0, - "prevSize": 27, - "code": 58900, - "name": "upgrade" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 36 - }, - { - "icon": { - "paths": [ - "M870.821 731.837c-64.195-65.89-78.231-188.772-91.738-283.159-20.074-139.937-24.259-297.089-226.008-317.693v-25.318c0-25.424-39.195-46.028-64.937-46.028s-62.024 20.551-62.024 46.028v25.371c-200.054 20.816-206.993 177.914-226.855 317.693-13.453 94.439-27.331 217.268-91.049 283.264-12.818 13.348-16.473 32.998-9.11 49.947 7.362 16.843 24.153 27.913 42.797 27.913h695.343c18.75 0 35.593-11.070 42.903-28.019s3.655-36.653-9.322-50z", - "M489.569 963.883c51.060 0 92.373-40.837 92.373-91.367h-184.694c-0.053 50.53 41.314 91.367 92.32 91.367z" - ], - "width": 989, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "notification-02" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 6, - "id": 18, - "prevSize": 27, - "code": 58887, - "name": "notification-02" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 37 - }, - { - "icon": { - "paths": [ - "M252.137 153.228l-160.070 92.393 378.042 218.205 160.023-92.393-377.996-218.205zM845.638 247.063l-377.996-218.252-145.222 83.828 377.996 218.205 145.222-83.782zM502.784 526.15v433.664l376.832-217.507v-433.711l-376.832 217.553zM55.668 742.26l376.785 217.507v-436.503l-376.785-217.46v436.457z" - ], - "width": 954, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "product" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 7, - "id": 17, - "prevSize": 27, - "code": 58888, - "name": "product", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 38 - }, - { - "icon": { - "paths": [ - "M454.495 48.899l-402.697 240.513v457.026l104.632 60.727v-457.049l298.157-178.728 299.698 179.142-0.138 455.922 103.528-60.013v-457.026l-403.18-240.513zM507.766 330.28v534.344l-53.271 32.124-53.34-32.262v-533.792l-138.090 83.853v456.934l191.453 115.516 193.087-116.322v-456.451l-139.839-83.945z" - ], - "width": 903, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "logo" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 8, - "id": 16, - "prevSize": 27, - "code": 58886, - "name": "logo", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 39 - }, - { - "icon": { - "paths": [ - "M709.921 158.694c8.139 32.295 8.927 34.974 8.192 68.162-0.263 12.813-7.772 71.943-5.724 90.112 1.628 14.966 5.461 16.174 11.448 28.514 10.398 21.425 6.984 51.095 2.941 72.678-2.206 11.868-6.827 28.725-13.916 38.387-7.667 10.66-23.211 10.713-30.142 23.158-9.872 17.854-4.306 43.008-10.503 62.385-7.142 21.898-25.101 23.421-26.466 52.145 8.822 1.155 17.592 2.468 26.466 3.623 8.822 18.59 25.049 55.874 41.59 67.059 13.863 3.728 27.727 7.457 41.59 11.185 48.627 19.64 102.558 43.061 151.237 63.33 44.373 18.432 97.411 24.996 113.48 70.84 0 31.035 2.941 104.501 2.153 145.25h-965.553c-0.893-40.697 2.153-114.215 2.153-145.25 15.964-45.844 69.002-52.408 113.375-70.84 48.679-20.27 102.61-43.691 151.237-63.33 13.811-3.728 27.674-7.457 41.59-11.185 16.489-11.185 32.715-48.522 41.538-67.059l19.692-4.621c-4.464-24.576-19.85-26.466-26.256-43.743-2.521-26.099-5.041-52.145-7.509-78.192 0.053 1.155-18.117-3.361-20.48-4.779-25.731-15.806-26.204-80.24-28.725-107.021-1.103-12.183 16.174-22.265 11.343-44.636-28.094-131.44 12.183-192.88 75.881-213.307 44.216-17.749 126.871-50.465 203.855-3.728l19.167 17.487 30.93 5.251c15.491 8.77 25.416 38.124 25.416 38.124z" - ], - "width": 1090, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "account" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 9, - "id": 15, - "prevSize": 27, - "code": 58880, - "name": "account", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 40 - }, - { - "icon": { - "paths": [ - "M529.203 886.14l-468.465-628.209h936.931l-468.465 628.209z" - ], - "width": 1085, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "arrowdown" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 10, - "id": 14, - "prevSize": 27, - "code": 58881, - "name": "arrowdown", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 41 - }, - { - "icon": { - "paths": [ - "M976.793 982.006h-910.388v-910.388h910.388v910.388zM912.622 135.789h-782.046v782.088h782.046v-782.088z", - "M221.432 822.8h152.876v-372.033h-152.876v372.033z", - "M466.323 820.234h350.932v-366.53h-350.932v366.53z", - "M221.432 360.489h595.865v-147.125h-595.865v147.125z" - ], - "width": 1034, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "cms" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 11, - "id": 13, - "prevSize": 27, - "code": 58882, - "name": "cms", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 42 - }, - { - "icon": { - "paths": [ - "M264.319 308.831c75.685 0 136.98-61.259 136.98-136.944 0-75.649-61.295-136.98-136.98-136.98s-137.017 61.331-137.017 136.98c0 75.649 61.331 136.944 137.017 136.944zM448.929 370.851c-28.962-28.926-63.325-46.252-187.655-46.252s-157.859 18.776-185.335 46.252c-27.44 27.44-18.196 320.43-18.196 320.43l60.824-144.411 38.241 430.334 110.23-220.278 102.907 220.278 36.393-430.334 60.824 144.411c-0.036 0 10.693-291.468-18.233-320.43z" - ], - "width": 489, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "customers" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 12, - "id": 12, - "prevSize": 27, - "code": 58883, - "name": "customers", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 43 - }, - { - "icon": { - "paths": [ - "M680.975 73.728c-337.523 0-610.976 273.515-611.038 610.976 0.122 37.72 1.039 251.812 1.039 251.812h1219.997c0 0 0.978-239.219 1.039-251.812-0.183-337.523-273.637-610.976-611.038-610.976zM737.708 197.831c31.117 3.607 61.379 10.271 90.418 19.624l-19.93 61.685c-25.004-8.070-51.169-13.939-78.191-16.995l7.703-64.313zM270.091 673.15h-64.864c0-31.423 3.118-62.235 8.803-92.007l63.702 12.349c-5.135 25.799-7.642 52.392-7.642 79.658zM305.855 504.419l-59.178-26.288c12.655-28.489 28-55.449 45.79-80.636l52.942 37.475c-15.284 21.825-28.611 45.056-39.554 69.449zM407.46 365.155l-43.405-48.113c22.925-20.541 47.807-39.187 74.462-54.96l33.318 55.571c-22.987 13.755-44.567 29.65-64.374 47.501zM536.943 217.455c29.039-9.292 59.178-16.017 90.418-19.624l7.581 64.313c-26.838 3.057-53.003 8.926-78.13 16.995l-19.869-61.685zM761.673 801.532l-152.897 27.205-38.881-150.452 395.172-404.22-203.394 527.467zM1019.476 434.971l52.942-37.414c17.79 25.187 33.257 52.148 45.851 80.636l-59.178 26.288c-10.943-24.454-24.209-47.685-39.615-69.51zM1094.916 673.15c0-27.266-2.69-53.859-7.703-79.658l63.702-12.349c5.808 29.834 8.803 60.645 8.803 92.007h-64.802zM646.006 770.659c26.777 17.056 62.174 9.415 79.291-17.24 17.118-26.593 9.292-62.051-17.301-79.108-26.655-17.24-62.051-9.354-79.23 17.362-17.118 26.349-9.476 61.99 17.24 78.986z" - ], - "width": 1376, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "dashboard" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 13, - "id": 11, - "prevSize": 27, - "code": 58884, - "name": "dashboard", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 44 - }, - { - "icon": { - "paths": [ - "M24.097 113.465h972.827v111.922l-410.504 412.792v238.366l-171.447 87.505v-325.871l-390.875-415.877v-108.837z" - ], - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "filter" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 14, - "id": 10, - "prevSize": 27, - "code": 58885, - "name": "filter", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 45 - }, - { - "icon": { - "paths": [ - "M59.153 534.182l164.053 38.141v-303.902l-164.053 38.141v227.621zM1122.198 59.153l-837.712 194.959v335.978l140.328 376.832 151.712-57.45-104.049-279.113 649.668 151.18v-722.385z" - ], - "width": 1170, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "promotions" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 15, - "id": 6, - "prevSize": 27, - "code": 58889, - "name": "promotions", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 46 - }, - { - "icon": { - "paths": [ - "M736.707 981.234h207.134v-322.703h-207.134v322.703zM399.646 981.234h207.134v-946.793h-207.134v946.793zM62.673 981.19h207.134v-634.704h-207.134v634.704z" - ], - "width": 991, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "reports" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 16, - "id": 5, - "prevSize": 27, - "code": 58890, - "name": "reports", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 47 - }, - { - "icon": { - "paths": [ - "M426.502 612.517c-15.866-13.512-42.796-25.753-80.79-36.723v198.774c11.535-1.459 23.729-4.331 36.299-8.851 12.618-4.426 23.87-10.829 33.804-19.068 9.981-8.427 18.173-18.55 24.529-30.649 6.638-12.006 9.651-26.365 9.651-42.89 0.047-26.836-7.721-47.222-23.493-60.593zM576.736 736.856c-7.109 23.117-19.774 45.762-38.135 67.749-18.503 22.175-43.079 41.855-74.010 58.992-30.885 17.373-70.432 27.683-118.878 31.12v88.088h-57.014v-88.088c-72.080-5.603-128.483-29.237-169.113-71.374-40.536-42.090-63.935-104.095-70.432-185.544h136.251c-0.753 39.359 8.992 70.479 28.86 93.266 20.15 22.74 44.774 37.335 74.434 43.455v-216.523c-3.060-1.318-7.486-2.919-12.994-4.567-5.508-1.789-11.393-3.343-17.938-4.708-23.776-6.827-47.175-15.019-70.291-24.294-23.493-9.369-44.114-21.704-62.523-37.335-18.456-15.584-33.098-34.84-43.879-57.956-11.111-23.211-16.478-51.977-16.478-86.487 0-35.31 6.168-66.336 18.785-93.313 12.665-26.836 29.143-49.529 49.858-67.702 20.621-18.314 44.303-32.58 71.468-42.419 27.071-10.122 55.037-16.149 83.992-18.314v-79.66h57.014v79.66c29.143 3.531 56.308 10.169 81.638 20.292 25.423 10.028 47.787 23.729 67.137 41.478 19.585 17.514 35.357 39.453 47.457 65.771 12.288 26.13 19.35 57.109 21.28 93.172h-137.287c-0.518-27.636-8.616-51.082-23.917-70.432-15.725-19.303-34.275-29.002-56.308-29.002v183.331c7.862 2.072 15.631 4.143 23.729 6.12 8.098 2.072 16.525 4.567 25.565 7.297 47.645 13.983 84.415 31.12 110.168 51.318 25.8 20.292 44.726 41.666 56.92 63.653 12.335 22.175 19.633 44.256 21.704 66.336 2.448 22.081 3.531 41.713 3.531 59.039 0.047 15.207-3.531 34.416-10.593 57.579zM228.905 263.415c-8.38 7.156-15.113 16.196-19.962 26.883-4.802 10.781-7.062 23.352-7.062 37.759 0 22.834 6.733 40.536 20.103 52.824 13.653 12.618 35.734 22.552 66.713 30.131v-168.831c-10.829 0-21.516 1.695-31.826 5.226-10.216 3.437-19.633 8.851-27.966 16.007z" - ], - "width": 659, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "sales" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 5, - "id": 4, - "prevSize": 27, - "code": 58891, - "name": "sales", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 48 - }, - { - "icon": { - "paths": [ - "M555.139 21.642c-218.775-71.601-457.062 40.29-532.231 250.028-75.227 209.681 41.211 437.665 259.928 509.208 218.717 71.601 457.004-40.348 532.231-250.028s-41.211-437.665-259.928-509.208zM320.076 677.045c-158.915-52.089-243.467-217.681-188.903-369.978 54.679-152.296 227.754-233.625 386.669-181.593s243.409 217.624 188.788 369.92c-54.622 152.296-227.696 233.567-386.554 181.65z", - "M638.482 685.794l358.927 349.602 24.807-69.241 24.865-69.241-310.348-302.29z" - ], - "width": 1109, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "search" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - }, - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 4, - "id": 3, - "prevSize": 27, - "code": 58892, - "name": "search", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 49 - }, - { - "icon": { - "paths": [ - "M1098.281 85.45c19.777-3.723 34.901-21.232 34.901-42.347-0.058-23.791-19.196-43.103-42.812-43.103h-900.508c-23.675 0-42.754 19.312-42.754 43.103 0 21.057 15.007 38.566 34.843 42.347l-181.951 354.421v68.988c0 30.946 32.516 56.016 72.594 56.016 13.437 0 26.001-2.908 36.821-7.795v466.919h1061.286v-466.919c10.878 4.944 23.326 7.795 36.879 7.795 40.078 0 72.594-25.071 72.594-56.016v-68.988l-181.893-354.421zM214.758 564.875c-38.217 0-69.221-25.071-69.221-56.016v-6.457h-0.349v-62.531l137.162-353.665h109.648l-107.961 353.665v68.988c0 0 0 0 0 0 0 30.946-31.004 56.016-69.279 56.016zM498.447 564.875c-38.217 0-69.221-25.071-69.221-56.016v-68.988l57.354-353.665h109.241l-28.095 353.665v68.93c-0.058 31.004-31.004 56.075-69.279 56.075zM782.077 564.875c-38.217 0-69.162-25.071-69.162-56.016v-68.988l-28.154-353.665h108.892l57.296 353.665v68.988c0 0.931 0.175 1.92 0.233 2.792-1.803 29.666-32.051 53.224-69.104 53.224zM1134.637 508.859c0 30.946-31.004 56.016-69.221 56.016s-69.162-25.071-69.162-56.016v-68.988l-108.019-353.665h109.59l137.22 353.665v62.473h-0.349v6.515h-0.058z" - ], - "width": 1280, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "stores" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 3, - "id": 2, - "prevSize": 27, - "code": 58893, - "name": "stores", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 50 - }, - { - "icon": { - "paths": [ - "M1024 567.842v-116.547l-141.218-46.117-33.219-80.36 63.981-135.383-82.407-82.407-15.458 7.831-117.008 59.477-80.309-33.321-50.57-141.014h-116.496l-5.374 16.533-40.743 124.686-80.258 33.321-135.537-63.981-82.356 82.407 7.882 15.407 59.323 117.059-33.219 80.258-141.014 50.519v116.547l141.218 46.066 33.219 80.36-63.878 135.383 82.254 82.407 15.458-7.831 117.008-59.425 80.36 33.27 50.468 140.963h116.496l5.426-16.43 40.692-124.737 80.309-33.27 135.383 63.981 82.458-82.407-7.882-15.458-59.374-116.957 33.27-80.36 141.116-50.468zM512 675.228c-90.136 0-163.177-73.040-163.177-163.177s73.040-163.177 163.177-163.177c90.187 0 163.177 73.040 163.177 163.177s-72.989 163.177-163.177 163.177z" - ], - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "systems" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 2, - "id": 1, - "prevSize": 27, - "code": 58894, - "name": "systems", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 51 - }, - { - "icon": { - "paths": [ - "M944.97 329.042c-97.861 0-177.522 79.581-177.522 177.443 0 97.94 79.66 177.679 177.522 177.679 98.019 0 177.679-79.739 177.679-177.679 0-97.861-79.66-177.443-177.679-177.443zM944.97-0c-470.712 0-944.97 512-944.97 512s474.258 512 944.97 512c470.949 0 945.128-512 945.128-512s-474.179-512-945.128-512zM944.97 868.856c-200.057 0-362.292-162.078-362.292-362.45 0-200.057 162.236-362.292 362.292-362.292 200.214 0 362.45 162.236 362.45 362.292 0 200.451-162.236 362.45-362.45 362.45z" - ], - "width": 1890, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "isMulticolor": false, - "tags": [ - "views" - ], - "grid": 0 - }, - "attrs": [ - { - "opacity": 1, - "visibility": false - } - ], - "properties": { - "order": 1, - "id": 0, - "prevSize": 27, - "code": 58895, - "name": "views", - "ligatures": "" - }, - "setIdx": 0, - "setId": 3, - "iconIdx": 52 - } - ], - "height": 1024, - "metadata": { - "name": "icomoon" - }, - "preferences": { - "showGlyphs": true, - "showQuickUse": true, - "showQuickUse2": true, - "showSVGs": true, - "fontPref": { - "prefix": "icon-", - "metadata": { - "fontFamily": "icomoon", - "majorVersion": 1, - "minorVersion": 0 - }, - "metrics": { - "emSize": 1024, - "baseline": 6.25, - "whitespace": 50 - }, - "resetPoint": 58880, - "showVersion": false - }, - "imagePref": { - "prefix": "icon-", - "png": true, - "useClassSelector": true, - "classSelector": ".icon" - }, - "historySize": 100, - "showCodes": true, - "search": "", - "gridSize": 16 - } + "IcoMoonType": "selection", + "icons": [ + { + "icon": { + "paths": [ + "M2041.366 1.102v1021.449h-175.926l-411.263-409.297v-204.59l411.263-407.568h175.926z", + "M1305.997 989.076c0 19.377-15.608 34.924-34.856 34.924h-1236.279c-19.255 0-34.863-15.547-34.863-34.924v-954.275c0-19.248 15.608-34.801 34.863-34.801h1236.279c19.248 0 34.856 15.553 34.856 34.801v954.275z" + ], + "width": 2041, + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "video" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 127, + "id": 0, + "prevSize": 32, + "code": 58945, + "name": "video" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 0 + }, + { + "icon": { + "paths": [ + "M723.661 889.601c-2.404-10.843-4.034-21.47-5.282-31.583h-277.528c-2.458 20.233-6.917 43.087-14.646 64.305-7.79 21.277-18.796 40.54-33.824 54.15-15.028 13.552-33.689 22.104-59.788 22.158v25.369h494.020v-25.369c-26.142-0.058-44.737-8.61-59.838-22.158-22.44-20.307-35.961-53.91-43.114-86.873zM1126.214 0h-1093.209c-18.22 0-33.005 15.024-33.005 33.596v731.259c0 18.576 14.785 33.623 33.005 33.623h1093.209c18.224 0 33.067-15.051 33.067-33.623v-731.259c0-18.572-14.843-33.596-33.067-33.596zM1079.193 716.922h-999.234v-635.394h999.234v635.394z" + ], + "width": 1159, + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "screen" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 72, + "id": 1, + "prevSize": 32, + "code": 58944, + "name": "screen" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 1 + }, + { + "icon": { + "paths": [ + "M771.001 776.737c-55.445 0-100.448 44.754-100.448 100.2s44.879 100.324 100.448 100.324 100.448-44.879 100.448-100.324-45.003-100.2-100.448-100.2zM771.001 918.707c-23.123 0-41.77-18.648-41.77-41.771s18.647-41.77 41.77-41.77c23.247 0 41.895 18.648 41.895 41.77s-18.648 41.771-41.895 41.771z", + "M469.532 776.737c-55.445 0-100.449 44.754-100.449 100.2s45.003 100.324 100.449 100.324c55.445 0 100.448-44.879 100.448-100.324s-45.003-100.2-100.448-100.2zM469.532 918.707c-23.123 0-41.771-18.648-41.771-41.771s18.648-41.77 41.771-41.77 41.77 18.648 41.77 41.77-18.648 41.771-41.77 41.771z", + "M823.587 494.412c-130.036 0-238.441-91.622-264.547-213.825h-207.237l-136.749-198.162v-1.865h-207.237v83.541h169.942l78.693 117.729 83.417 412.857h581.183l49.23-243.786c-42.268 27.474-92.616 43.511-146.694 43.511z", + "M1023.862 249.756v-45.376l-55.073-18.026-12.929-31.204 24.863-52.71-31.95-32.074-5.967 2.984-45.5 23.123-31.328-12.929-19.642-54.948h-45.376l-2.114 6.464-15.912 48.608-31.203 12.929-52.835-24.863-32.074 31.95 3.108 5.967 23.247 45.624-13.053 31.328-54.948 19.766v45.376l6.34 2.113 48.732 15.788 12.929 31.204-24.863 52.71 32.074 32.074 6.092-3.108 45.376-22.999 31.328 12.929 19.642 54.824h45.376l2.113-6.464 15.913-48.359 31.203-12.929 52.71 24.988 32.198-32.074-3.108-6.092-23.247-45.624 12.929-31.203 54.948-19.766zM824.582 291.527c-35.057 0-63.65-28.469-63.65-63.526 0-35.182 28.469-63.526 63.65-63.526s63.526 28.469 63.526 63.526c-0.124 35.182-28.469 63.526-63.526 63.526z" + ], + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "cart" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 71, + "id": 2, + "prevSize": 32, + "code": 58943, + "name": "cart" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 2 + }, + { + "icon": { + "paths": [ + "M0.010 188.484h1023.966v136.509h-1023.966z", + "M0.010 442.47h1023.966v136.506h-1023.966z", + "M0.010 699.017h1023.966v136.513h-1023.966z" + ], + "attrs": [ + {}, + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "list-menu" + ], + "grid": 0 + }, + "attrs": [ + {}, + {}, + {} + ], + "properties": { + "order": 61, + "id": 3, + "prevSize": 32, + "code": 58942, + "name": "list-menu" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 3 + }, + { + "icon": { + "paths": [ + "M0.010 0.372h279.074v279.074h-279.074z", + "M372.77 0.372h279.074v279.074h-279.074z", + "M744.892 0.372h279.074v279.074h-279.074z", + "M0.010 372.497h279.074v279.074h-279.074z", + "M372.77 372.497h279.074v279.074h-279.074z", + "M744.892 372.497h279.074v279.074h-279.074z", + "M0.010 744.585h279.074v279.074h-279.074z", + "M372.77 744.585h279.074v279.074h-279.074z", + "M744.892 744.585h279.074v279.074h-279.074z" + ], + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "grid" + ], + "grid": 0 + }, + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "properties": { + "order": 112, + "id": 4, + "prevSize": 32, + "code": 58941, + "name": "grid" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 4 + }, + { + "icon": { + "paths": [ + "M982.767 231.902h-250.095l-59.255-121.364c0 0-11.827-25.201-42.11-25.201-23.375 0-169.366 0-235.25 0-32.969 0-44.001 25.027-44.001 25.027l-57.484 121.539h-253.406c-22.74 0-41.131 18.459-41.131 41.267v624.333c0 22.743 18.401 41.199 41.131 41.199h941.636c22.74 0 41.199-18.459 41.199-41.199v-624.299c0-22.798-18.456-41.267-41.199-41.267zM512 823.91c-138.793 0-251.597-113.015-251.597-251.931 0-138.912 112.845-251.87 251.597-251.87 138.68 0 251.597 112.981 251.597 251.87 0 138.909-112.913 251.931-251.597 251.931z", + "M512 420.932c-83.255 0-150.972 67.714-150.972 150.972 0 83.197 67.71 150.903 150.972 150.903 83.258 0 150.903-67.714 150.903-150.903 0-83.255-67.652-150.972-150.903-150.972z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "camera" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 121, + "id": 5, + "prevSize": 32, + "code": 58940, + "name": "camera" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 5 + }, + { + "icon": { + "paths": [ + "M904.192 0.027l-307.234 0.116-596.89 596.958 426.906 426.906 596.958-596.958-0.113-305.596-119.603-121.426zM858.679 313.337c-39.997 40.001-104.854 40.001-144.794 0-40.001-40.001-40.001-104.796 0-144.794 39.939-40.001 104.796-40.001 144.794 0 39.997 39.997 39.997 104.793 0 144.794z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "tag" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 111, + "id": 6, + "prevSize": 32, + "code": 58939, + "name": "tag" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 6 + }, + { + "icon": { + "paths": [ + "M1094.391 77.71l-77.71-77.71-423.329 423.347-423.33-423.347-77.71 77.672 423.35 423.368-423.312 423.329 77.672 77.71 423.338-423.338 423.283 423.3 77.671-77.71-423.263-423.281z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "colorPermutations": { + "6868681": [ + { + "f": 0 + } + ] + }, + "tags": [ + "close-mage" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 110, + "id": 7, + "prevSize": 32, + "code": 58927, + "name": "close-mage" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 7 + }, + { + "icon": { + "paths": [ + "M857.675 289.413l-403.18-240.514-402.726 240.514v457.026l403.18 240.515 402.726-240.514v-457.027zM454.857 864.465l-298.427-178.383v-335.966l298.157-178.729 298.428 178.383v335.966l-298.158 178.729z" + ], + "width": 903, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "colorPermutations": { + "6868681": [ + { + "f": 0 + } + ] + }, + "tags": [ + "menu-item" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 109, + "id": 8, + "prevSize": 32, + "code": 58938, + "name": "menu-item" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 8 + }, + { + "icon": { + "paths": [ + "M505.704 40.998c-260.096 3.489-468.158 217.202-464.706 477.336 3.489 259.982 217.202 468.12 477.298 464.631s468.158-217.202 464.706-477.336c-3.413-260.058-217.202-468.12-477.298-464.631zM557.928 197.973c47.863 0 62.009 27.762 62.009 59.544 0 39.671-31.782 76.383-86.016 76.383-45.359 0-66.901-22.831-65.65-60.53 0-31.782 26.624-75.435 89.657-75.435zM435.162 806.381c-32.73 0-56.661-19.873-33.792-107.217l37.547-154.814c6.485-24.841 7.585-34.778 0-34.778-9.785 0-52.262 17.143-77.407 34.057l-16.346-26.776c79.607-66.446 171.16-105.472 210.375-105.472 32.73 0 38.153 38.722 21.807 98.266l-43.008 162.816c-7.585 28.786-4.286 38.722 3.262 38.722 9.785 0 41.984-11.871 73.614-36.75l18.47 24.841c-77.369 77.369-161.792 107.179-194.56 107.179z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "info" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 108, + "id": 9, + "prevSize": 32, + "code": 58906, + "name": "info" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 9 + }, + { + "icon": { + "paths": [ + "M591.986 448.019h-16.005v-192.019c0-105.851-86.13-192.019-192.019-192.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-16.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188zM448.019 448.019h-256v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "lock" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 107, + "id": 10, + "prevSize": 32, + "code": 58907, + "name": "lock" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 10 + }, + { + "icon": { + "paths": [ + "M870.4 317.44h-194.56v143.36h153.6v215.040h-634.88v-215.040h215.040v112.64l204.8-184.32-204.8-184.32v112.64h-256c-56.51 0-102.4 45.815-102.4 102.4v296.96c0 56.51 45.89 102.4 102.4 102.4h716.8c56.585 0 102.4-45.89 102.4-102.4v-296.96c0-56.585-45.815-102.4-102.4-102.4z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "loop" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 106, + "id": 11, + "prevSize": 32, + "code": 58908, + "name": "loop" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 11 + }, + { + "icon": { + "paths": [ + "M991.991 384h-351.991v-351.991c0-17.673-14.336-32.009-32.009-32.009h-192.019c-17.673 0-32.009 14.336-32.009 32.009v351.991h-351.991c-17.673 0-32.009 14.336-32.009 32.009v192.019c0 17.673 14.336 32.009 32.009 32.009h351.991v351.991c0 17.673 14.336 32.009 32.009 32.009h192.019c17.673 0 32.009-14.336 32.009-32.009v-351.991h351.991c17.673 0 32.009-14.336 32.009-32.009v-192.019c0-17.673-14.336-32.009-32.009-32.009z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "plus" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 105, + "id": 12, + "prevSize": 32, + "code": 58909, + "name": "plus" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 12 + }, + { + "icon": { + "paths": [ + "M505.704 40.998c-260.096 3.489-468.158 217.126-464.706 477.298 3.489 260.21 217.202 468.158 477.298 464.744 260.134-3.489 468.233-217.202 464.706-477.298-3.489-260.21-217.202-468.233-477.298-464.744zM506.577 102.4c70.163-0.986 136.382 15.853 194.56 46.118l-63.374 105.662c-38.002-18.47-80.631-28.937-125.762-28.937-45.056 0-87.723 10.43-125.687 28.975l-63.336-105.624c54.993-28.672 117.343-45.321 183.599-46.232zM254.255 637.687l-105.586 63.298c-28.672-54.955-45.321-117.305-46.194-183.486-0.986-70.201 15.853-136.457 46.118-194.56l105.624 63.45c-18.546 37.926-28.975 80.555-28.975 125.649 0 45.056 10.43 87.723 28.975 125.687zM517.461 921.562c-70.163 0.986-136.457-15.853-194.56-46.118l63.374-105.662c38.002 18.546 80.631 28.975 125.687 28.975 45.094 0 87.761-10.392 125.687-28.937l63.336 105.586c-54.993 28.634-117.305 45.246-183.561 46.194zM512 737.242c-124.397 0-225.242-100.883-225.242-225.242 0-124.397 100.883-225.28 225.242-225.28 124.473 0 225.28 100.883 225.28 225.28s-100.807 225.242-225.28 225.242zM769.745 637.687c18.546-38.002 28.975-80.631 28.975-125.687 0-45.094-10.43-87.723-28.975-125.687l105.586-63.374c28.672 54.993 45.359 117.305 46.232 183.561 0.91 70.201-15.929 136.457-46.194 194.56l-105.624-63.336z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "recover" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 104, + "id": 13, + "prevSize": 32, + "code": 58910, + "name": "recover" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 13 + }, + { + "icon": { + "paths": [ + "M906.126 135.813v0c-91.174-75.89-202.487-113.171-312.548-113.057-127.014-0.038-253.611 49.683-348.16 145.636l-95.004-79.265-1.593 305.342 300.184-56.282-99.442-82.944c67.546-64.247 155.269-97.204 244.015-97.28 79.948 0.038 159.782 26.7 226.114 81.806 84.347 70.125 127.659 170.629 127.772 272.46-0.038 14.715-0.948 29.431-2.769 44.070l137.519-26.283c0.19-5.954 0.303-11.871 0.303-17.787 0.152-140.098-60.151-279.78-176.431-376.415zM839.035 766.976c-67.736 65.498-156.255 99.025-245.912 99.1-79.986-0.038-159.82-26.738-226.114-81.806-84.347-70.125-127.697-170.629-127.772-272.498 0-16.839 1.252-33.716 3.679-50.366l-138.164 25.941c-0.379 8.116-0.683 16.346-0.683 24.462-0.114 140.174 60.226 279.817 176.545 376.491 91.136 75.852 202.411 113.057 312.51 112.981h0.341c127.924 0 255.241-50.441 349.943-147.759l90.795 75.207 0.569-305.38-299.956 57.344 104.183 86.281z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "refresh" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 113, + "id": 14, + "prevSize": 32, + "code": 58911, + "name": "refresh" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 14 + }, + { + "icon": { + "paths": [ + "M593.351 21.732c-270.753 0-490.268 219.477-490.268 490.231s219.515 490.268 490.268 490.268 490.231-219.515 490.231-490.268c0-270.753-219.477-490.231-490.231-490.231zM828.947 683.653l-72.363 72.363-162.095-162.133-164.902 164.902-73.121-73.121 164.902-164.902-161.678-161.678 72.363-72.325 161.602 161.678 165.774-165.736 73.121 73.083-165.774 165.736 162.171 162.133z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "remove-small" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 114, + "id": 15, + "prevSize": 32, + "code": 58912, + "name": "remove-small" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 15 + }, + { + "icon": { + "paths": [ + "M254.976 675.84v-267.264h103.424l-179.2-203.776-179.2 203.776h103.424v308.224c0 56.51 45.815 102.4 102.4 102.4h459.776l-131.186-143.36h-279.438zM920.538 615.424v-308.224c0-56.51-45.89-102.4-102.4-102.4h-459.738l131.11 143.36h279.514v267.264h-103.424l179.2 203.776 179.2-203.776h-103.462z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "retweet" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 117, + "id": 16, + "prevSize": 32, + "code": 58913, + "name": "retweet" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 16 + }, + { + "icon": { + "paths": [ + "M768 64.019h-128c-105.851 0-192.019 86.13-192.019 192.019v192.019h-400.005c-26.396 0-48.014 21.618-48.014 48.014v479.991c0 26.396 21.618 48.014 48.014 48.014h544.009c26.396 0 48.014-21.618 48.014-48.014v-479.991c0-26.396-21.618-48.014-48.014-48.014h-16.005v-192.019c0-35.271 28.71-64.019 64.019-64.019h128c35.271 0 64.019 28.71 64.019 64.019v192.019h128v-192.019c0-105.851-86.13-192.019-192.019-192.019zM384 896h-128l27.838-139.188c-16.801-11.529-27.838-30.872-27.838-52.793 0-35.347 28.672-64.019 64.019-64.019s64.019 28.672 64.019 64.019c0 21.921-11.036 41.263-27.838 52.793l27.838 139.188z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "unlocked" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 36, + "id": 17, + "prevSize": 32, + "code": 58914, + "name": "unlocked" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 17 + }, + { + "icon": { + "paths": [ + "M593.351 0l-593.351 1023.962h1186.74l-593.351-1023.962zM653.236 899.451h-125.421v-121.211h125.421v121.211zM622.175 728.329h-62.502l-34.816-288.313v-156.748h131.3v156.748l-33.982 288.313z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "warning" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 37, + "id": 18, + "prevSize": 32, + "code": 58915, + "name": "warning" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 18 + }, + { + "icon": { + "paths": [ + "M0 512l512 512v-320.019h512v-384h-512v-320.019z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "arrow-left" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 38, + "id": 19, + "prevSize": 32, + "code": 58916, + "name": "arrow-left" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 19 + }, + { + "icon": { + "paths": [ + "M1024 512l-512-512v320.019h-512v384h512v320.019z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "arrow-right" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 39, + "id": 20, + "prevSize": 32, + "code": 58917, + "name": "arrow-right" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 20 + }, + { + "icon": { + "paths": [ + "M402.735 146.735l-320.019 320.019c-24.993 24.993-24.993 65.498 0 90.491l320.019 320.019c24.993 24.993 65.498 24.993 90.491 0s24.993-65.498 0-90.491l-210.754-210.754h613.49c35.347 0 64.019-28.634 64.019-64.019s-28.672-64.019-64.019-64.019h-613.49l210.754-210.754c12.478-12.478 18.735-28.862 18.735-45.246s-6.258-32.768-18.735-45.246c-24.993-24.993-65.498-24.993-90.491 0z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "back-arrow" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 103, + "id": 21, + "prevSize": 32, + "code": 58918, + "name": "back-arrow" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 21 + }, + { + "icon": { + "paths": [ + "M507.259 578.522h-102.059v101.717h102.059v-101.717zM650.885 714.714h-101.945v101.717h101.945v-101.717zM507.259 714.714h-102.059v101.717h102.059v-101.717zM507.259 442.33h-102.059v101.679h102.059v-101.679zM843.131 244.091c23.4 0 42.287-18.887 42.287-42.174v-145.408c0-23.324-18.887-42.174-42.287-42.174s-42.325 18.849-42.325 42.174v145.408c0.038 23.324 18.925 42.174 42.325 42.174zM343.419 244.091c23.362 0 42.249-18.887 42.249-42.174v-145.408c0-23.324-18.887-42.174-42.249-42.174-23.4 0-42.325 18.849-42.325 42.174v145.408c0 23.324 18.925 42.174 42.325 42.174zM363.444 578.522h-102.059v101.717h102.059v-101.717zM363.444 714.714h-102.059v101.717h102.059v-101.717zM650.885 578.522h-101.945v101.717h101.945v-101.717zM938.325 578.522h-102.059v101.717h102.059v-101.717zM938.325 442.33h-102.059v101.679h102.059v-101.679zM899.337 84.385v46.914c17.598 15.474 28.71 38.153 28.71 63.412 0 46.801-37.964 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-387.262v46.914c17.56 15.474 28.71 38.153 28.71 63.412 0 46.801-38.002 84.764-84.916 84.764s-84.954-37.964-84.954-84.764c0-25.259 11.15-47.938 28.71-63.412v-46.914h-192.322v925.279h997.035v-925.279h-192.512zM999.234 915.304h-809.832v-589.938h809.832v589.938zM650.885 442.33h-101.945v101.679h101.945v-101.679zM794.624 442.33h-101.983v101.679h101.983v-101.679zM794.624 714.714h-101.983v101.717h101.983v-101.717zM794.624 578.522h-101.983v101.717h101.983v-101.717z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "calendar" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 102, + "id": 22, + "prevSize": 32, + "code": 58919, + "name": "calendar" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 22 + }, + { + "icon": { + "paths": [ + "M132.21 286.758c-13.881-13.729-36.295-13.729-50.138 0-13.805 13.653-13.805 35.878 0 49.607l404.897 400.877c13.881 13.729 36.257 13.729 50.138 0l404.897-400.877c13.805-13.729 13.881-35.878 0-49.607s-36.371-13.729-50.138-0.038l-379.866 365.606-379.79-365.568z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-down" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 101, + "id": 23, + "prevSize": 32, + "code": 58920, + "name": "caret-down" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 23 + }, + { + "icon": { + "paths": [ + "M737.242 891.79c13.729 13.881 13.729 36.257 0 50.138s-35.878 13.881-49.607 0l-400.877-404.821c-13.729-13.881-13.729-36.295 0-50.138l400.877-404.897c13.729-13.881 35.878-13.881 49.607 0s13.729 36.257 0 50.138l-365.568 379.79 365.568 379.79z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-left" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 100, + "id": 24, + "prevSize": 32, + "code": 58921, + "name": "caret-left" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 24 + }, + { + "icon": { + "paths": [ + "M286.72 891.79c-13.729 13.881-13.729 36.257 0 50.138s35.878 13.881 49.607 0l400.877-404.821c13.729-13.881 13.729-36.295 0-50.138l-400.915-404.897c-13.729-13.881-35.878-13.881-49.607 0s-13.729 36.257 0 50.138l365.568 379.79-365.568 379.79z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-right" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 99, + "id": 25, + "prevSize": 32, + "code": 58922, + "name": "caret-right" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 25 + }, + { + "icon": { + "paths": [ + "M891.79 737.242c13.881 13.729 36.295 13.729 50.138 0 13.881-13.729 13.881-35.878 0-49.607l-404.897-400.877c-13.805-13.729-36.257-13.729-50.062 0l-404.897 400.877c-13.805 13.729-13.881 35.878 0 49.607s36.257 13.729 50.138 0l379.79-365.606 379.79 365.606z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "caret-up" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 98, + "id": 26, + "prevSize": 32, + "code": 58923, + "name": "caret-up" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 26 + }, + { + "icon": { + "paths": [ + "M574.767 92.16c-227.593 0-412.672 182.386-418.247 409.335h-125.8l188.378 209.92 188.302-209.92h-146.242c5.537-168.998 143.777-304.393 313.609-304.393 173.397 0 313.913 140.971 313.913 314.899s-140.478 314.861-313.913 314.861c-69.48 0-133.689-22.718-185.685-61.099l-71.983 76.99c70.997 55.751 160.465 89.050 257.707 89.050 231.159 0 418.551-187.961 418.551-419.84-0.038-231.879-187.43-419.84-418.551-419.84z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "ccw" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 97, + "id": 27, + "prevSize": 32, + "code": 58924, + "name": "ccw" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 27 + }, + { + "icon": { + "paths": [ + "M996.617 126.786l-513.555 513.555-256.796-256.834-128.379 128.417 385.214 385.252 641.896-642.010z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "check-mage" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 96, + "id": 28, + "prevSize": 32, + "code": 58925, + "name": "check-mage" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 28 + }, + { + "icon": { + "paths": [ + "M512 40.96c-260.134 0-471.040 210.944-471.040 471.040 0 260.134 210.906 471.040 471.040 471.040s471.040-210.906 471.040-471.040c0-260.134-210.906-471.040-471.040-471.040zM512 880.64c-203.624 0-368.64-165.054-368.64-368.64s165.016-368.64 368.64-368.64 368.64 165.054 368.64 368.64-165.016 368.64-368.64 368.64zM547.84 245.76h-71.68v281.069l174.345 174.345 50.669-50.707-153.335-153.335z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "clock" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 95, + "id": 29, + "prevSize": 32, + "code": 58926, + "name": "clock" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 29 + }, + { + "icon": { + "paths": [ + "M337.541 1021.004h513.024l64.512-645.916h-639.128l61.592 645.916zM737.394 154.169v-116.508c0-19.191-15.398-34.702-34.361-34.702h-217.847c-19.001 0-34.361 15.55-34.361 34.702v114.574c-73.576 8.382-150.149 24.614-226.494 52.338v106.989h738.001v-109.833c0 0-90.074-31.403-224.977-47.559zM668.937 147.759c-47.749-3.224-99.252-4.096-153.297-0.986v-61.44c0-9.519 7.623-17.332 17.143-17.332h118.936c9.519 0 17.218 7.813 17.218 17.332v62.426z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "delete" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 94, + "id": 30, + "prevSize": 32, + "code": 58928, + "name": "delete" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 30 + }, + { + "icon": { + "paths": [ + "M928.503 26.889l-111.502 112.109 156.065 156.9 111.502-112.071-156.065-156.937zM215.002 744.41l156.065 156.9 535.211-538.093-156.065-156.9-535.211 538.093zM103.917 1007.161l188.985-49.873-139.302-140.098-49.683 190.009z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "edit" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 115, + "id": 31, + "prevSize": 32, + "code": 58929, + "name": "edit" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 31 + }, + { + "icon": { + "paths": [ + "M1014.67 822.651c0 0 0 0 0 0l-310.651-310.651 310.651-310.651c0 0 0 0 0 0 3.337-3.337 5.765-7.244 7.32-11.416 4.248-11.378 1.82-24.69-7.32-33.83l-146.735-146.735c-9.14-9.14-22.452-11.567-33.83-7.32-4.172 1.555-8.078 3.982-11.416 7.32 0 0 0 0 0 0l-310.651 310.651-310.651-310.651c0 0 0 0 0 0-3.337-3.337-7.244-5.765-11.416-7.32-11.378-4.248-24.69-1.82-33.83 7.32l-146.735 146.735c-9.14 9.14-11.567 22.452-7.32 33.83 1.555 4.172 3.982 8.078 7.32 11.416 0 0 0 0 0 0l310.651 310.651-310.651 310.651c0 0 0 0 0 0-3.337 3.337-5.765 7.244-7.32 11.416-4.248 11.378-1.82 24.69 7.32 33.83l146.735 146.735c9.14 9.14 22.452 11.567 33.83 7.32 4.172-1.555 8.078-3.982 11.416-7.32 0 0 0 0 0 0l310.651-310.651 310.651 310.651c0 0 0 0 0 0 3.337 3.337 7.244 5.765 11.416 7.32 11.378 4.248 24.69 1.82 33.83-7.32l146.735-146.735c9.14-9.14 11.567-22.452 7.32-33.83-1.555-4.172-3.982-8.078-7.32-11.416z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "error" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 122, + "id": 32, + "prevSize": 32, + "code": 58930, + "name": "error" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 32 + }, + { + "icon": { + "paths": [ + "M593.351 22.566c-270.336 0-489.434 219.098-489.434 489.358s219.098 489.434 489.434 489.434 489.434-219.136 489.434-489.434-219.136-489.358-489.434-489.358zM635.752 826.596c-11.985 11.719-26.396 17.636-43.16 17.636-8.154 0-15.967-1.517-23.4-4.589-7.358-3.034-13.843-7.168-19.456-12.174-5.613-5.158-10.126-11.226-13.388-18.356-3.337-7.13-4.968-14.753-4.968-22.945 0-16.308 5.992-30.303 17.977-42.060 11.947-11.681 26.396-17.598 43.198-17.598 16.308 0 30.606 5.689 42.78 16.801 12.25 11.188 18.318 24.993 18.318 41.339-0.038 16.384-5.992 30.303-17.939 41.984zM778.923 382.673c-3.982 13.767-9.747 26.396-17.18 37.774-7.471 11.454-16.498 22.49-27.079 33.071s-22.49 21.618-35.65 33.033c-11.454 9.785-20.783 18.318-27.913 25.79-7.168 7.396-12.895 14.867-17.218 22.338-4.286 7.433-7.282 15.398-9.026 24.007-1.707 8.609-2.617 49.721-2.617 62.35v22.338h-101.376v-32.616c0-13.729 0.986-56.661 3.034-67.584s5.158-21.125 9.481-30.872 10.012-19.228 17.18-28.369c7.168-9.14 16.232-18.887 27.079-29.203l38.647-36.902c10.847-9.747 20.177-20.632 27.951-32.616 7.737-12.060 11.529-26.7 11.529-43.88 0-22.3-6.978-41.036-21.011-56.206-14.071-15.17-33.944-22.793-59.695-22.793-13.16 0-25.069 2.389-35.65 7.282-10.619 4.817-19.797 11.454-27.496 19.759-7.737 8.344-13.577 17.901-17.598 28.786-3.982 10.847-6.334 21.997-6.865 33.527l-105.624-9.444c3.413-27.496 10.733-51.959 21.921-73.463 11.112-21.466 25.562-39.595 43.311-54.575 17.711-14.829 38.078-26.169 61.023-33.944 22.869-7.699 47.521-11.605 73.842-11.605 24.614 0 47.976 3.603 70.049 10.771 21.959 7.168 41.491 17.711 58.406 31.782 16.839 14.033 30.227 31.365 39.936 51.959 9.709 20.632 14.564 44.411 14.564 71.263 0 18.356-2.010 34.475-5.992 48.166z" + ], + "width": 1176, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "help" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 124, + "id": 33, + "prevSize": 32, + "code": 58931, + "name": "help" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 33 + }, + { + "icon": { + "paths": [ + "M574.805 92.16c-227.631 0-412.71 182.386-418.247 409.335h-125.838l188.378 209.958 188.302-209.958h-146.242c5.537-168.998 143.777-304.393 313.647-304.393 173.359 0 313.875 140.971 313.875 314.899s-140.478 314.861-313.875 314.861c-69.518 0-133.727-22.718-185.761-61.099l-71.983 76.99c71.073 55.751 160.503 89.050 257.745 89.050 231.121 0 418.513-187.961 418.513-419.84-0.038-231.879-187.43-419.84-418.513-419.84zM537.6 286.72v240.109l153.865 153.865 50.669-50.669-132.855-132.855v-210.413h-71.68z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "history" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 45, + "id": 34, + "prevSize": 32, + "code": 58932, + "name": "history" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 34 + }, + { + "icon": { + "paths": [ + "M510.413 0c-281.907 0-510.413 228.582-510.413 510.413 0 281.933 228.506 510.464 510.413 510.464s510.387-228.557 510.387-510.464c0-281.83-228.48-510.413-510.387-510.413zM865.843 510.413c0 69.99-20.506 135.27-55.578 190.285l-490.163-490.163c55.091-35.021 120.32-55.475 190.31-55.475 195.942 0 355.43 159.411 355.43 355.354zM154.957 510.413c0-69.939 20.506-135.245 55.578-190.31l490.189 490.189c-55.066 35.072-120.371 55.501-190.31 55.501-195.942 0.026-355.456-159.437-355.456-355.379z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "not-installed" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 58, + "id": 35, + "prevSize": 32, + "code": 58936, + "name": "not-installed" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 35 + }, + { + "icon": { + "paths": [ + "M511.77 0c-282.778 0-512.102 229.222-512.102 512.179 0 282.829 229.325 512.102 512.102 512.102 282.931 0.026 512.23-229.248 512.23-512.102 0-282.957-229.299-512.179-512.23-512.179zM143.718 419.968h736.205v184.269h-736.205v-184.269z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "disabled" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 57, + "id": 36, + "prevSize": 32, + "code": 58937, + "name": "disabled" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 36 + }, + { + "icon": { + "paths": [ + "M505.139 0.085c-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827-3.717-282.658-236.1-508.826-518.793-505.003z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "dot" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 56, + "id": 37, + "prevSize": 32, + "code": 58935, + "name": "dot" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 37 + }, + { + "icon": { + "paths": [ + "M383.462 577.51h255.693v-213.043h127.795l-255.642-255.667-255.642 255.667h127.795z", + "M852.173 577.51v170.394h-681.754v-170.394h-170.419v340.89h1022.618v-340.89z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "export" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 93, + "id": 38, + "prevSize": 32, + "code": 58933, + "name": "export" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 38 + }, + { + "icon": { + "paths": [ + "M639.155 108.8h-255.693v213.043h-127.795l255.667 255.667 255.616-255.667h-127.795z", + "M852.173 577.51v170.394h-681.754v-170.394h-170.419v340.89h1022.618v-340.89z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "import" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 92, + "id": 39, + "prevSize": 32, + "code": 58934, + "name": "import" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 39 + }, + { + "icon": { + "paths": [ + "M259.2 0h214.323v214.323h-214.323v-214.323z", + "M259.2 269.875h214.323v214.349h-214.323v-214.349z", + "M259.2 539.776h214.323v214.349h-214.323v-214.349z", + "M259.2 809.651h214.323v214.349h-214.323v-214.349z", + "M549.325 0h214.323v214.323h-214.323v-214.323z", + "M549.325 269.875h214.323v214.349h-214.323v-214.349z", + "M549.325 539.776h214.323v214.349h-214.323v-214.349z", + "M549.325 809.651h214.323v214.349h-214.323v-214.349z" + ], + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "gripper" + ], + "grid": 0 + }, + "attrs": [ + {}, + {}, + {}, + {}, + {}, + {}, + {}, + {} + ], + "properties": { + "order": 91, + "id": 40, + "prevSize": 32, + "code": 58903, + "name": "gripper" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 40 + }, + { + "icon": { + "paths": [ + "M860.058 185.062v272l-430.029-269.158-1.894 253.491-424.371-249.754-3.763 647.834 426.24-241.28-5.606 239.437 439.424-252.16v259.635h163.942v-660.045z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "forward" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 90, + "id": 41, + "prevSize": 32, + "code": 58904, + "name": "forward" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 41 + }, + { + "icon": { + "paths": [ + "M163.942 845.107v-271.974l430.029 269.133 1.894-253.491 424.397 249.754 3.738-647.834-426.24 241.28 5.606-239.437-439.424 252.16v-259.635h-163.942v660.045z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "backward" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 89, + "id": 42, + "prevSize": 32, + "code": 58905, + "name": "backward", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 42 + }, + { + "icon": { + "paths": [ + "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.632 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.368 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.107-205.21 458.368-458.394 458.368z", + "M760.013 625.613l30.387-38.4-265.6-206.413-20.787-1.613-259.226 208.026 28.826 39.987 236.8-177.613z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "expand-close" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 88, + "id": 43, + "prevSize": 32, + "code": 58901, + "name": "expand-close" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 43 + }, + { + "icon": { + "paths": [ + "M512.794 0c-283.187 0-512.794 229.581-512.794 512.794 0 283.187 229.606 512.794 512.794 512.794s512.794-229.606 512.794-512.794c0-283.213-229.581-512.794-512.794-512.794zM512.794 971.213c-253.158 0-458.394-205.261-458.394-458.394 0-253.158 205.261-458.394 458.394-458.394 253.184 0 458.394 205.235 458.394 458.394 0.026 253.133-205.21 458.394-458.394 458.394z", + "M265.6 454.4l-30.387 38.4 265.574 206.387 20.813 1.613 259.2-208-28.8-39.987-236.8 177.587z" + ], + "attrs": [ + {}, + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "expand-open" + ], + "grid": 0 + }, + "attrs": [ + {}, + {} + ], + "properties": { + "order": 87, + "id": 44, + "prevSize": 32, + "code": 58902, + "name": "expand-open" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 44 + }, + { + "icon": { + "paths": [ + "M1020.032 565.555v-116.045l-16.41-5.376-124.237-40.525-33.152-80.102 63.718-134.784-82.048-82.125-15.411 7.808-116.531 59.213-80.077-33.178-50.278-140.442h-116.096l-45.875 140.698-80 33.126-134.963-63.744-82.022 82.074 7.834 15.334 59.162 116.608-33.126 80.026-140.518 50.253v116.147l16.435 5.325 124.288 40.576 33.075 80-63.693 134.886 82.048 82.099 131.942-66.97 80.026 33.152 50.304 140.39h116.096l5.35-16.41 40.55-124.237 80.077-33.178 134.886 63.718 82.074-82.074-7.834-15.386-59.213-116.582 33.203-80.026 140.416-50.253zM510.003 672.589c-89.754 0-162.509-72.832-162.509-162.611 0-89.754 72.755-162.483 162.509-162.483 89.83 0 162.509 72.73 162.509 162.483 0.026 89.805-72.653 162.611-162.509 162.611z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "system-config" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 86, + "id": 45, + "prevSize": 32, + "code": 58896, + "name": "system-config" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 45 + }, + { + "icon": { + "paths": [ + "M509.978 54.426l-509.978 509.926 95.949 95.949 414.106-413.978 413.875 413.978 95.949-95.898-509.901-509.978zM146.253 688.563v335.437h259.917v-304.819h207.514v304.819h259.917v-335.488l-363.622-363.597-363.725 363.648z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "home" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 85, + "id": 46, + "prevSize": 32, + "code": 58897, + "name": "home" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 46 + }, + { + "icon": { + "paths": [ + "M0 736.41l498.278 287.59v-421.402l-498.278-287.667v421.478zM894.464 224.486v44.262c0 32.819-62.797 59.418-140.365 59.418-77.466 0-140.262-26.598-140.262-59.418v-73.216h0.435c4.71 30.925 65.408 55.475 139.853 55.475 77.568 0 140.365-26.624 140.365-59.29 0-32.845-62.797-59.366-140.365-59.366-6.195 0-12.262 0.205-18.202 0.563l-90.317-52.147v55.706c0 32.819-62.72 59.392-140.262 59.392-48.691 0-91.597-10.496-116.813-26.47-3.584-3.712-7.987-7.245-13.312-10.598-6.579-6.861-10.24-14.387-10.24-22.323v-53.939l-87.322 50.381c-6.272-0.307-12.646-0.614-19.123-0.614-77.491 0-140.314 26.522-140.314 59.366 0 32.691 62.822 59.29 140.314 59.29 74.445 0 135.219-24.525 139.93-55.475h0.384v73.216c0 32.819-62.746 59.418-140.314 59.418-77.491 0-140.314-26.598-140.314-59.418v-43.622l-108.083 62.31 499.994 288.563 496.691-286.694-112.358-64.768zM646.784 408.013c0 32.794-62.874 59.315-140.365 59.315s-140.339-26.522-140.339-59.315v-73.267h0.41c4.762 30.95 65.459 55.475 139.93 55.475s135.142-24.525 139.904-55.475h0.486v73.267zM525.645 606.234v417.766l498.355-287.718v-417.766l-498.355 287.718zM505.318 118.656c77.542 0 140.262-26.547 140.262-59.315s-62.72-59.315-140.262-59.315c-77.491 0-140.339 26.573-140.339 59.315-0.026 32.768 62.822 59.315 140.339 59.315z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "lego" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 84, + "id": 47, + "prevSize": 32, + "code": 58898, + "name": "lego" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 47 + }, + { + "icon": { + "paths": [ + "M287.002 481.664c0.205 0.23 0.461 0.486 0.691 0.717l103.347 103.373 36.045-36.045-56.55-56.499 90.266-90.189 11.904 1.28c3.046 0.307 6.093 0.538 9.19 0.538 6.246 0 12.314-0.768 18.253-2.125l-66.381-66.381c-1.357-1.382-2.765-2.611-4.173-3.814 20.454-73.6 1.766-155.725-56.038-213.555-57.421-57.421-138.803-76.237-211.968-56.525l123.955 123.981-32.563 121.446-121.395 32.589-124.032-124.006c-19.712 73.19-0.896 154.573 56.525 212.019 60.262 60.288 147.021 77.952 222.925 53.197zM653.235 555.802c-1.997 8.909-2.509 18.202-1.459 27.546l1.306 11.93-90.189 90.189-56.55-56.55-36.070 36.122 327.219 327.194c20.198 20.173 46.618 30.259 73.062 30.259s52.915-10.086 73.037-30.259c40.346-40.32 40.346-105.728 0-146.074l-290.355-290.355zM905.907 958.362l-51.866 13.875-42.112-42.112 13.901-51.891 51.866-13.926 42.112 42.138-13.901 51.917zM506.701 594.099l56.576 56.576 64.128-64.154c-3.482-31.334 6.707-63.821 30.669-87.808 24.013-23.962 56.474-34.176 87.808-30.72l280.397-280.346-157.056-157.056-280.448 280.397c3.482 31.258-6.682 63.821-30.669 87.782-24.013 23.987-56.525 34.176-87.808 30.643l-64.102 64.205 56.499 56.422-277.043 277.12-10.138-10.138-53.248 42.829-89.421 141.312 22.835 22.835 141.312-89.421 42.803-53.222-10.138-10.138 277.043-277.12z" + ], + "attrs": [ + { + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "tool" + ], + "grid": 0 + }, + "attrs": [ + { + "visibility": false + } + ], + "properties": { + "order": 120, + "id": 48, + "prevSize": 32, + "code": 58899, + "name": "tool" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 48 + }, + { + "icon": { + "paths": [ + "M1023.932 505.105c-3.717-282.692-236.1-508.826-518.793-505.003-282.658 3.775-508.826 236.066-505.071 518.827 3.772 282.556 236.1 508.826 518.793 505.003 282.658-3.768 508.826-236.066 505.071-518.827zM623.991 481.304v298.633h-223.983v-298.633h-186.621l298.633-298.633 298.667 298.633h-186.679z" + ], + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "upgrade" + ], + "grid": 0 + }, + "attrs": [ + {} + ], + "properties": { + "order": 125, + "id": 49, + "prevSize": 32, + "code": 58900, + "name": "upgrade" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 49 + }, + { + "icon": { + "paths": [ + "M870.821 731.837c-64.195-65.89-78.231-188.772-91.738-283.159-20.074-139.937-24.259-297.089-226.008-317.693v-25.318c0-25.424-39.195-46.028-64.937-46.028s-62.024 20.551-62.024 46.028v25.371c-200.054 20.816-206.993 177.914-226.855 317.693-13.453 94.439-27.331 217.268-91.049 283.264-12.818 13.348-16.473 32.998-9.11 49.947 7.362 16.843 24.153 27.913 42.797 27.913h695.343c18.75 0 35.593-11.070 42.903-28.019s3.655-36.653-9.322-50z", + "M489.569 963.883c51.060 0 92.373-40.837 92.373-91.367h-184.694c-0.053 50.53 41.314 91.367 92.32 91.367z" + ], + "width": 989, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "notification-02" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 123, + "id": 50, + "prevSize": 32, + "code": 58887, + "name": "notification-02" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 50 + }, + { + "icon": { + "paths": [ + "M252.137 153.228l-160.070 92.393 378.042 218.205 160.023-92.393-377.996-218.205zM845.638 247.063l-377.996-218.252-145.222 83.828 377.996 218.205 145.222-83.782zM502.784 526.15v433.664l376.832-217.507v-433.711l-376.832 217.553zM55.668 742.26l376.785 217.507v-436.503l-376.785-217.46v436.457z" + ], + "width": 954, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "product" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 7, + "id": 51, + "prevSize": 32, + "code": 58888, + "name": "product", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 51 + }, + { + "icon": { + "paths": [ + "M454.495 48.899l-402.697 240.513v457.026l104.632 60.727v-457.049l298.157-178.728 299.698 179.142-0.138 455.922 103.528-60.013v-457.026l-403.18-240.513zM507.766 330.28v534.344l-53.271 32.124-53.34-32.262v-533.792l-138.090 83.853v456.934l191.453 115.516 193.087-116.322v-456.451l-139.839-83.945z" + ], + "width": 903, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "logo" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 17, + "id": 52, + "prevSize": 32, + "code": 58886, + "name": "logo", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 52 + }, + { + "icon": { + "paths": [ + "M709.921 158.694c8.139 32.295 8.927 34.974 8.192 68.162-0.263 12.813-7.772 71.943-5.724 90.112 1.628 14.966 5.461 16.174 11.448 28.514 10.398 21.425 6.984 51.095 2.941 72.678-2.206 11.868-6.827 28.725-13.916 38.387-7.667 10.66-23.211 10.713-30.142 23.158-9.872 17.854-4.306 43.008-10.503 62.385-7.142 21.898-25.101 23.421-26.466 52.145 8.822 1.155 17.592 2.468 26.466 3.623 8.822 18.59 25.049 55.874 41.59 67.059 13.863 3.728 27.727 7.457 41.59 11.185 48.627 19.64 102.558 43.061 151.237 63.33 44.373 18.432 97.411 24.996 113.48 70.84 0 31.035 2.941 104.501 2.153 145.25h-965.553c-0.893-40.697 2.153-114.215 2.153-145.25 15.964-45.844 69.002-52.408 113.375-70.84 48.679-20.27 102.61-43.691 151.237-63.33 13.811-3.728 27.674-7.457 41.59-11.185 16.489-11.185 32.715-48.522 41.538-67.059l19.692-4.621c-4.464-24.576-19.85-26.466-26.256-43.743-2.521-26.099-5.041-52.145-7.509-78.192 0.053 1.155-18.117-3.361-20.48-4.779-25.731-15.806-26.204-80.24-28.725-107.021-1.103-12.183 16.174-22.265 11.343-44.636-28.094-131.44 12.183-192.88 75.881-213.307 44.216-17.749 126.871-50.465 203.855-3.728l19.167 17.487 30.93 5.251c15.491 8.77 25.416 38.124 25.416 38.124z" + ], + "width": 1090, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "account" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 9, + "id": 53, + "prevSize": 32, + "code": 58880, + "name": "account", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 53 + }, + { + "icon": { + "paths": [ + "M529.203 886.14l-468.465-628.209h936.931l-468.465 628.209z" + ], + "width": 1085, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "arrowdown" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 10, + "id": 54, + "prevSize": 32, + "code": 58881, + "name": "arrowdown", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 54 + }, + { + "icon": { + "paths": [ + "M976.793 982.006h-910.388v-910.388h910.388v910.388zM912.622 135.789h-782.046v782.088h782.046v-782.088z", + "M221.432 822.8h152.876v-372.033h-152.876v372.033z", + "M466.323 820.234h350.932v-366.53h-350.932v366.53z", + "M221.432 360.489h595.865v-147.125h-595.865v147.125z" + ], + "width": 1034, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "cms" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 83, + "id": 55, + "prevSize": 32, + "code": 58882, + "name": "cms", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 55 + }, + { + "icon": { + "paths": [ + "M264.319 308.831c75.685 0 136.98-61.259 136.98-136.944 0-75.649-61.295-136.98-136.98-136.98s-137.017 61.331-137.017 136.98c0 75.649 61.331 136.944 137.017 136.944zM448.929 370.851c-28.962-28.926-63.325-46.252-187.655-46.252s-157.859 18.776-185.335 46.252c-27.44 27.44-18.196 320.43-18.196 320.43l60.824-144.411 38.241 430.334 110.23-220.278 102.907 220.278 36.393-430.334 60.824 144.411c-0.036 0 10.693-291.468-18.233-320.43z" + ], + "width": 489, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "customers" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 82, + "id": 56, + "prevSize": 32, + "code": 58883, + "name": "customers", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 56 + }, + { + "icon": { + "paths": [ + "M680.975 73.728c-337.523 0-610.976 273.515-611.038 610.976 0.122 37.72 1.039 251.812 1.039 251.812h1219.997c0 0 0.978-239.219 1.039-251.812-0.183-337.523-273.637-610.976-611.038-610.976zM737.708 197.831c31.117 3.607 61.379 10.271 90.418 19.624l-19.93 61.685c-25.004-8.070-51.169-13.939-78.191-16.995l7.703-64.313zM270.091 673.15h-64.864c0-31.423 3.118-62.235 8.803-92.007l63.702 12.349c-5.135 25.799-7.642 52.392-7.642 79.658zM305.855 504.419l-59.178-26.288c12.655-28.489 28-55.449 45.79-80.636l52.942 37.475c-15.284 21.825-28.611 45.056-39.554 69.449zM407.46 365.155l-43.405-48.113c22.925-20.541 47.807-39.187 74.462-54.96l33.318 55.571c-22.987 13.755-44.567 29.65-64.374 47.501zM536.943 217.455c29.039-9.292 59.178-16.017 90.418-19.624l7.581 64.313c-26.838 3.057-53.003 8.926-78.13 16.995l-19.869-61.685zM761.673 801.532l-152.897 27.205-38.881-150.452 395.172-404.22-203.394 527.467zM1019.476 434.971l52.942-37.414c17.79 25.187 33.257 52.148 45.851 80.636l-59.178 26.288c-10.943-24.454-24.209-47.685-39.615-69.51zM1094.916 673.15c0-27.266-2.69-53.859-7.703-79.658l63.702-12.349c5.808 29.834 8.803 60.645 8.803 92.007h-64.802zM646.006 770.659c26.777 17.056 62.174 9.415 79.291-17.24 17.118-26.593 9.292-62.051-17.301-79.108-26.655-17.24-62.051-9.354-79.23 17.362-17.118 26.349-9.476 61.99 17.24 78.986z" + ], + "width": 1376, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "dashboard" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 81, + "id": 57, + "prevSize": 32, + "code": 58884, + "name": "dashboard", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 57 + }, + { + "icon": { + "paths": [ + "M24.097 113.465h972.827v111.922l-410.504 412.792v238.366l-171.447 87.505v-325.871l-390.875-415.877v-108.837z" + ], + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "filter" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 80, + "id": 58, + "prevSize": 32, + "code": 58885, + "name": "filter", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 58 + }, + { + "icon": { + "paths": [ + "M59.153 534.182l164.053 38.141v-303.902l-164.053 38.141v227.621zM1122.198 59.153l-837.712 194.959v335.978l140.328 376.832 151.712-57.45-104.049-279.113 649.668 151.18v-722.385z" + ], + "width": 1170, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "promotions" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 79, + "id": 59, + "prevSize": 32, + "code": 58889, + "name": "promotions", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 59 + }, + { + "icon": { + "paths": [ + "M736.707 981.234h207.134v-322.703h-207.134v322.703zM399.646 981.234h207.134v-946.793h-207.134v946.793zM62.673 981.19h207.134v-634.704h-207.134v634.704z" + ], + "width": 991, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "reports" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 78, + "id": 60, + "prevSize": 32, + "code": 58890, + "name": "reports", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 60 + }, + { + "icon": { + "paths": [ + "M426.502 612.517c-15.866-13.512-42.796-25.753-80.79-36.723v198.774c11.535-1.459 23.729-4.331 36.299-8.851 12.618-4.426 23.87-10.829 33.804-19.068 9.981-8.427 18.173-18.55 24.529-30.649 6.638-12.006 9.651-26.365 9.651-42.89 0.047-26.836-7.721-47.222-23.493-60.593zM576.736 736.856c-7.109 23.117-19.774 45.762-38.135 67.749-18.503 22.175-43.079 41.855-74.010 58.992-30.885 17.373-70.432 27.683-118.878 31.12v88.088h-57.014v-88.088c-72.080-5.603-128.483-29.237-169.113-71.374-40.536-42.090-63.935-104.095-70.432-185.544h136.251c-0.753 39.359 8.992 70.479 28.86 93.266 20.15 22.74 44.774 37.335 74.434 43.455v-216.523c-3.060-1.318-7.486-2.919-12.994-4.567-5.508-1.789-11.393-3.343-17.938-4.708-23.776-6.827-47.175-15.019-70.291-24.294-23.493-9.369-44.114-21.704-62.523-37.335-18.456-15.584-33.098-34.84-43.879-57.956-11.111-23.211-16.478-51.977-16.478-86.487 0-35.31 6.168-66.336 18.785-93.313 12.665-26.836 29.143-49.529 49.858-67.702 20.621-18.314 44.303-32.58 71.468-42.419 27.071-10.122 55.037-16.149 83.992-18.314v-79.66h57.014v79.66c29.143 3.531 56.308 10.169 81.638 20.292 25.423 10.028 47.787 23.729 67.137 41.478 19.585 17.514 35.357 39.453 47.457 65.771 12.288 26.13 19.35 57.109 21.28 93.172h-137.287c-0.518-27.636-8.616-51.082-23.917-70.432-15.725-19.303-34.275-29.002-56.308-29.002v183.331c7.862 2.072 15.631 4.143 23.729 6.12 8.098 2.072 16.525 4.567 25.565 7.297 47.645 13.983 84.415 31.12 110.168 51.318 25.8 20.292 44.726 41.666 56.92 63.653 12.335 22.175 19.633 44.256 21.704 66.336 2.448 22.081 3.531 41.713 3.531 59.039 0.047 15.207-3.531 34.416-10.593 57.579zM228.905 263.415c-8.38 7.156-15.113 16.196-19.962 26.883-4.802 10.781-7.062 23.352-7.062 37.759 0 22.834 6.733 40.536 20.103 52.824 13.653 12.618 35.734 22.552 66.713 30.131v-168.831c-10.829 0-21.516 1.695-31.826 5.226-10.216 3.437-19.633 8.851-27.966 16.007z" + ], + "width": 659, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "sales" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 77, + "id": 61, + "prevSize": 32, + "code": 58891, + "name": "sales", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 61 + }, + { + "icon": { + "paths": [ + "M555.139 21.642c-218.775-71.601-457.062 40.29-532.231 250.028-75.227 209.681 41.211 437.665 259.928 509.208 218.717 71.601 457.004-40.348 532.231-250.028s-41.211-437.665-259.928-509.208zM320.076 677.045c-158.915-52.089-243.467-217.681-188.903-369.978 54.679-152.296 227.754-233.625 386.669-181.593s243.409 217.624 188.788 369.92c-54.622 152.296-227.696 233.567-386.554 181.65z", + "M638.482 685.794l358.927 349.602 24.807-69.241 24.865-69.241-310.348-302.29z" + ], + "width": 1109, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "search" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + }, + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 76, + "id": 62, + "prevSize": 32, + "code": 58892, + "name": "search", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 62 + }, + { + "icon": { + "paths": [ + "M1098.281 85.45c19.777-3.723 34.901-21.232 34.901-42.347-0.058-23.791-19.196-43.103-42.812-43.103h-900.508c-23.675 0-42.754 19.312-42.754 43.103 0 21.057 15.007 38.566 34.843 42.347l-181.951 354.421v68.988c0 30.946 32.516 56.016 72.594 56.016 13.437 0 26.001-2.908 36.821-7.795v466.919h1061.286v-466.919c10.878 4.944 23.326 7.795 36.879 7.795 40.078 0 72.594-25.071 72.594-56.016v-68.988l-181.893-354.421zM214.758 564.875c-38.217 0-69.221-25.071-69.221-56.016v-6.457h-0.349v-62.531l137.162-353.665h109.648l-107.961 353.665v68.988c0 0 0 0 0 0 0 30.946-31.004 56.016-69.279 56.016zM498.447 564.875c-38.217 0-69.221-25.071-69.221-56.016v-68.988l57.354-353.665h109.241l-28.095 353.665v68.93c-0.058 31.004-31.004 56.075-69.279 56.075zM782.077 564.875c-38.217 0-69.162-25.071-69.162-56.016v-68.988l-28.154-353.665h108.892l57.296 353.665v68.988c0 0.931 0.175 1.92 0.233 2.792-1.803 29.666-32.051 53.224-69.104 53.224zM1134.637 508.859c0 30.946-31.004 56.016-69.221 56.016s-69.162-25.071-69.162-56.016v-68.988l-108.019-353.665h109.59l137.22 353.665v62.473h-0.349v6.515h-0.058z" + ], + "width": 1280, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "stores" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 75, + "id": 63, + "prevSize": 32, + "code": 58893, + "name": "stores", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 63 + }, + { + "icon": { + "paths": [ + "M944.97 329.042c-97.861 0-177.522 79.581-177.522 177.443 0 97.94 79.66 177.679 177.522 177.679 98.019 0 177.679-79.739 177.679-177.679 0-97.861-79.66-177.443-177.679-177.443zM944.97-0c-470.712 0-944.97 512-944.97 512s474.258 512 944.97 512c470.949 0 945.128-512 945.128-512s-474.179-512-945.128-512zM944.97 868.856c-200.057 0-362.292-162.078-362.292-362.45 0-200.057 162.236-362.292 362.292-362.292 200.214 0 362.45 162.236 362.45 362.292 0 200.451-162.236 362.45-362.45 362.45z" + ], + "width": 1890, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "views" + ], + "grid": 0 + }, + "attrs": [ + { + "opacity": 1, + "visibility": false + } + ], + "properties": { + "order": 73, + "id": 64, + "prevSize": 32, + "code": 58895, + "name": "views", + "ligatures": "" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 64 + }, + { + "icon": { + "paths": [ + "M1042.226 299.849h-598.393v-299.849l-443.833 384.316 443.833 384.403v-299.859h598.393c106.478 0 192.801 86.318 192.801 192.801s-86.318 192.796-192.801 192.796v0.483l-452.707 0.005c-46.695 0.005-84.53 37.845-84.53 84.535 0 46.68 37.84 84.525 84.535 84.525 0.377 0 0.744-0.053 1.121-0.058h451.581c199.964 0 362.044-162.085 362.044-362.039 0-199.964-162.080-362.059-362.044-362.059z" + ], + "width": 1404, + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "revert" + ], + "grid": 0 + }, + "attrs": [], + "properties": { + "order": 129, + "id": 65, + "prevSize": 32, + "code": 58946, + "name": "revert" + }, + "setIdx": 0, + "setId": 7, + "iconIdx": 65 + }, + { + "icon": { + "paths": [ + "M1023.959 505.088c-3.717-282.665-236.121-508.842-518.817-505.040-282.689 3.772-508.866 236.091-505.094 518.868 3.772 282.58 236.121 508.842 518.813 505.040 282.689-3.772 508.866-236.067 505.098-518.868zM580.086 904.359h-136.149v-136.163h136.149v136.163zM597.168 293.742l-44.103 388.928h-83.113l-43.099-388.928v-171.575h170.318v171.575z" + ], + "attrs": [ + { + "fill": "rgb(100, 97, 96)" + } + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "alert-round" + ], + "grid": 32 + }, + "attrs": [ + { + "fill": "rgb(100, 97, 96)" + } + ], + "properties": { + "order": 132, + "id": 0, + "name": "alert-round", + "prevSize": 32, + "code": 58952 + }, + "setIdx": 1, + "setId": 6, + "iconIdx": 0 + }, + { + "icon": { + "paths": [ + "M793.271 222.6l-192.695-83.055v80.482c-2.517 31.926-83.182 57.618-182.582 57.618-99.309 0-180.126-25.692-182.398-57.618h-0.318l-0.465-80.482-197.709 83.055 381.218 167.697 374.95-167.697zM265.959 118.114l-1.104 0.428c32.596 16.331 89.086 27.124 153.551 27.124 64.726 0 121.621-10.94 153.996-27.355l-1.168-0.512c18.811-9.3 29.664-20.34 29.664-32.264 0-32.713-81.606-59.114-182.492-59.114-100.759 0-182.806 26.401-182.806 59.114-0.003 12.007 11.295 23.218 30.36 32.579zM418.418 462.436l-418.418-191.009v563.335l418.321 189.238 418.321-189.238v-563.733l-418.224 191.407z" + ], + "width": 883, + "attrs": [ + {} + ], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "module" + ], + "grid": 32 + }, + "attrs": [ + {} + ], + "properties": { + "order": 131, + "id": 1, + "name": "module", + "prevSize": 32, + "code": 58951 + }, + "setIdx": 1, + "setId": 6, + "iconIdx": 1 + }, + { + "icon": { + "paths": [ + "M939.616 148.384c112.512 112.448 112.512 294.816 0 407.264l-350.944 350.976c-12.512 12.544-32.736 12.544-45.248 0-12.576-12.512-12.576-32.704 0-45.248l346.432-346.464c87.488-87.488 87.488-229.248-0.064-316.768-87.36-87.488-229.248-87.488-316.736 0l-462.304 456.864c-62.496 62.464-62.496 163.776 0 226.24 62.496 62.496 163.744 62.496 226.24 0l466.88-461.344c37.44-37.44 37.44-98.336 0-135.776-37.44-37.408-98.304-37.408-135.744 0l-351.008 351.008c-12.512 12.512-32.736 12.512-45.248 0-12.512-12.544-12.512-32.736 0-45.28l350.976-350.976c62.432-62.464 163.744-62.464 226.24 0 62.496 62.496 62.496 163.776 0 226.272l-466.88 461.376c-87.296 87.328-229.408 87.328-316.736 0-87.328-87.328-87.328-229.472 0-316.8l466.88-461.344c112.448-112.512 294.816-112.512 407.264 0z" + ], + "attrs": [], + "isMulticolor": false, + "isMulticolor2": false, + "tags": [ + "clip", + "paperclip", + "attachment" + ], + "grid": 32 + }, + "attrs": [], + "properties": { + "id": 2, + "order": 130, + "prevSize": 32, + "code": 58947, + "name": "clip" + }, + "setIdx": 1, + "setId": 6, + "iconIdx": 2 + } + ], + "height": 1024, + "metadata": { + "name": "icomoon" + }, + "preferences": { + "showGlyphs": true, + "showQuickUse": true, + "showQuickUse2": true, + "showSVGs": true, + "fontPref": { + "prefix": "icon-", + "metadata": { + "fontFamily": "icomoon", + "majorVersion": 1, + "minorVersion": 0 + }, + "metrics": { + "emSize": 1024, + "baseline": 6.25, + "whitespace": 50 + }, + "resetPoint": 58880, + "showVersion": true, + "showSelector": false, + "showMetrics": false, + "showMetadata": false, + "embed": false + }, + "imagePref": { + "prefix": "icon-", + "png": true, + "useClassSelector": true, + "classSelector": ".icon" + }, + "historySize": 100, + "showCodes": true, + "search": "", + "gridSize": 16, + "showLiga": false + } } \ No newline at end of file diff --git a/setup/pub/magento/setup/app.js b/setup/pub/magento/setup/app.js index 7da6d4dae759b..ec890084324a8 100644 --- a/setup/pub/magento/setup/app.js +++ b/setup/pub/magento/setup/app.js @@ -18,8 +18,10 @@ var app = angular.module( 'create-admin-account', 'install', 'success', - 'component-grid', + 'module-grid', + 'extension-grid', 'install-extension-grid', + 'update-extension-grid', 'create-backup', 'complete-backup', 'data-option', diff --git a/setup/pub/magento/setup/auth-dialog.js b/setup/pub/magento/setup/auth-dialog.js index b6a16f74a6e31..b2b905120a3f8 100644 --- a/setup/pub/magento/setup/auth-dialog.js +++ b/setup/pub/magento/setup/auth-dialog.js @@ -4,89 +4,63 @@ */ 'use strict'; -angular.module('auth-dialog', ['ngStorage', 'ngDialog']) - .controller('authDialogController', ['$rootScope', '$scope', '$state', '$http', 'ngDialog', '$localStorage', - function ($rootScope, $scope, $state, $http, ngDialog, $localStorage) { - $scope.user = { - username : $localStorage.marketplaceUsername ? $localStorage.marketplaceUsername : '', - password : '', - submitted : '' - }; - $scope.errors = false; - if (!$rootScope.authRequest) { - $rootScope.isAuthLoadingComplete = false; - $http.post('index.php/marketplace/check-auth', []) - .success(function (response) { - if (response.success) { - $localStorage.marketplaceUsername = $scope.user.username = response.data.username; - $localStorage.isMarketplaceAuthorized = true; - } else { - $localStorage.isMarketplaceAuthorized = false; - } - $rootScope.isAuthLoadingComplete = true; - $rootScope.authRequest = true; - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - }) - .error(function (data) { - $rootScope.isAuthLoadingComplete = true; - }); - } else { - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $rootScope.isAuthLoadingComplete = true; - } +angular.module('auth-dialog', ['ngStorage']) + .controller('authDialogController', ['$rootScope', '$scope', '$state', '$http', '$localStorage', 'authService', + function ($rootScope, $scope, $state, $http, $localStorage, authService) { + $scope.user = { + username : $localStorage.marketplaceUsername ? $localStorage.marketplaceUsername : '', + password : '', + submitted : '' + }; + $scope.errors = false; - $scope.open = function () { - ngDialog.open({ scope: $scope, template: 'authDialog', showClose: false, controller: 'authDialogController'}); - }; + if (!$rootScope.isMarketplaceAuthorized) { + authService.checkAuth({ + success: function(response) { + $scope.user.username = response.data.username; + }, + fail: function(response) {}, + error: function() {} + }); + } - $scope.saveAuthJson = function () { - if ($scope.auth.$valid) { - $rootScope.saveAuthProccessed = true; - $http.post('index.php/marketplace/save-auth-json', $scope.user) - .success(function (data) { - $scope.saveAuthJson.result = data; - if ($scope.saveAuthJson.result.success) { + $scope.saveAuthJson = function () { + if ($scope.auth.$valid) { + authService.saveAuthJson({ + user: $scope.user, + success: function(response) { + $scope.saveAuthJson.result = response; + $scope.logout = false; + $scope.errors = false; if (typeof($scope.$parent) != 'undefined') { - $scope.$parent.edited = false; $scope.$parent.logout = false; } - ngDialog.close(); - $scope.errors = false; - $scope.logout = false; - $localStorage.isMarketplaceAuthorized = true; - } else { + authService.closeAuthDialog(); + }, + fail: function(response) { + $scope.saveAuthJson.result = response; + $scope.errors = true; + }, + error: function(data) { $scope.errors = true; - $localStorage.isMarketplaceAuthorized = false; + $scope.saveAuthJson.failed = data; } - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $rootScope.saveAuthProccessed = false; - $localStorage.marketplaceUsername = $scope.user.username; - }) - .error(function (data) { - $scope.saveAuthJson.failed = data; - $scope.errors = true; }); - } else { - $scope.validate(); - } - }; + } else { + $scope.validate(); + } + }; - $scope.reset = function () { - $http.post('index.php/marketplace/remove-credentials', []) - .success(function (response) { - if (response.success) { + $scope.reset = function () { + authService.reset({ + success: function() { $scope.logout = true; - $localStorage.isMarketplaceAuthorized = $rootScope.isMarketplaceAuthorized = false; + authService.checkMarketplaceAuthorized(); } }) - .error(function (data) { - }); - }; - $scope.validate = function() { - if ($scope.user.$valid) { - $scope.user.submitted = false; - } else { - $scope.user.submitted = true; + }; + + $scope.validate = function() { + $scope.user.submitted = !$scope.user.$valid; } - } - }]); + }]); diff --git a/setup/pub/magento/setup/component-grid.js b/setup/pub/magento/setup/component-grid.js deleted file mode 100644 index 8ba726780c4c8..0000000000000 --- a/setup/pub/magento/setup/component-grid.js +++ /dev/null @@ -1,183 +0,0 @@ -/** - * Copyright © 2016 Magento. All rights reserved. - * See COPYING.txt for license details. - */ - -'use strict'; -angular.module('component-grid', ['ngStorage']) - .controller('componentGridController', ['$rootScope', '$scope', '$http', '$localStorage', '$state', - function ($rootScope, $scope, $http, $localStorage, $state) { - $rootScope.componentsProcessed = false; - $scope.syncError = false; - $http.get('index.php/componentGrid/components').success(function(data) { - $scope.components = data.components; - $scope.total = data.total; - if(typeof data.lastSyncData.lastSyncDate === "undefined") { - $scope.isOutOfSync = true; - $scope.countOfUpdate = 0; - $scope.countOfInstall = 0; - } else { - $scope.lastSyncDate = data.lastSyncData.lastSyncDate.date; - $scope.lastSyncTime = data.lastSyncData.lastSyncDate.time; - $scope.countOfUpdate = data.lastSyncData.countOfUpdate; - $scope.countOfInstall = data.lastSyncData.countOfInstall; - $scope.enabledInstall = data.lastSyncData.countOfInstall ? true : false; - $scope.isOutOfSync = false; - } - $scope.availableUpdatePackages = data.lastSyncData.packages; - $scope.currentPage = 1; - $scope.rowLimit = 20; - $scope.numberOfPages = Math.ceil($scope.total/$scope.rowLimit); - - $rootScope.componentsProcessed = true; - }); - - $scope.$watch('currentPage + rowLimit', function() { - var begin = (($scope.currentPage - 1) * $scope.rowLimit); - var end = parseInt(begin) + parseInt(($scope.rowLimit)); - $scope.numberOfPages = Math.ceil($scope.total/$scope.rowLimit); - if ($scope.currentPage > $scope.numberOfPages) { - $scope.currentPage = $scope.numberOfPages; - } - }); - - $scope.isOutOfSync = false; - $scope.isHiddenSpinner = true; - $scope.selectedComponent = null; - - $scope.isActiveActionsCell = function(component) { - return $scope.selectedComponent === component; - }; - - $scope.toggleActiveActionsCell = function(component) { - $scope.selectedComponent = $scope.selectedComponent == component ? null : component; - }; - - $scope.closeActiveActionsCell = function(component) { - $scope.toggleActiveActionsCell(component); - }; - - $scope.predicate = 'name'; - $scope.reverse = false; - $scope.order = function(predicate) { - $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false; - $scope.predicate = predicate; - }; - - $scope.sync = function() { - $scope.isHiddenSpinner = false; - $http.get('index.php/componentGrid/sync').success(function(data) { - if(typeof data.lastSyncData.lastSyncDate !== "undefined") { - $scope.lastSyncDate = data.lastSyncData.lastSyncDate.date; - $scope.lastSyncTime = data.lastSyncData.lastSyncDate.time; - } - if (data.error !== '') { - $scope.syncError = true; - $scope.ErrorMessage = data.error; - } - $scope.availableUpdatePackages = data.lastSyncData.packages; - $scope.countOfUpdate = data.lastSyncData.countOfUpdate; - $scope.countOfInstall = data.lastSyncData.countOfInstall; - $scope.enabledInstall = data.lastSyncData.countOfInstall ? true : false; - $scope.isHiddenSpinner = true; - $scope.isOutOfSync = false; - }); - }; - $scope.isAvailableUpdatePackage = function(packageName) { - $localStorage.isMarketplaceAuthorized = typeof $localStorage.isMarketplaceAuthorized !== 'undefined' ? $localStorage.isMarketplaceAuthorized : false; - var isAvailable = typeof $scope.availableUpdatePackages !== 'undefined' - && $localStorage.isMarketplaceAuthorized - && packageName in $scope.availableUpdatePackages; - return isAvailable; - }; - - $scope.getIndicatorInfo = function(component, type) { - var indicators = { - 'info' : {'icon' : '_info', 'label' : 'Update Available'}, - 'on' : {'icon' : '_on', 'label' : 'On'}, - 'off' : {'icon' : '_off', 'label' : 'Off'} - }; - - var types = ['label', 'icon']; - - if (types.indexOf(type) == -1) { - type = 'icon'; - } - - if ($scope.isAvailableUpdatePackage(component.name)) { - return indicators.info[type]; - } else if (component.disable === true) { - return indicators.off[type]; - } - return indicators.on[type]; - }; - - $scope.update = function(component) { - $localStorage.packages = [ - { - name: component.name, - version: $scope.availableUpdatePackages[component.name]['latestVersion'] - } - ]; - if (component.moduleName) { - $localStorage.moduleName = component.moduleName; - } else { - $localStorage.moduleName = component.name; - } - if ($localStorage.titles['update'].indexOf($localStorage.moduleName) < 0 ) { - $localStorage.titles['update'] = 'Update ' + $localStorage.moduleName; - } - $rootScope.titles = $localStorage.titles; - $scope.nextState(); - }; - - $scope.uninstall = function(component) { - $localStorage.packages = [ - { - name: component.name - } - ]; - if (component.moduleName) { - $localStorage.moduleName = component.moduleName; - } else { - $localStorage.moduleName = component.name; - } - if ($localStorage.titles['uninstall'].indexOf($localStorage.moduleName) < 0 ) { - $localStorage.titles['uninstall'] = 'Uninstall ' + $localStorage.moduleName; - } - $rootScope.titles = $localStorage.titles; - $localStorage.componentType = component.type; - $state.go('root.readiness-check-uninstall'); - }; - - $scope.enableDisable = function(type, component) { - if (component.type.indexOf('module') >= 0 ) { - $localStorage.packages = [ - { - name: component.moduleName - } - ]; - if (component.moduleName) { - $localStorage.moduleName = component.moduleName; - } else { - $localStorage.moduleName = component.name; - } - if ($localStorage.titles[type].indexOf($localStorage.moduleName) < 0 ) { - $localStorage.titles[type] = type.charAt(0).toUpperCase() + type.slice(1) + ' ' - + $localStorage.moduleName; - } - $rootScope.titles = $localStorage.titles; - $localStorage.componentType = component.type; - $state.go('root.readiness-check-'+type); - } - }; - } - ]) - .filter('startFrom', function() { - return function(input, start) { - if(input !== undefined && start !== 'NaN') { - start = parseInt(start, 10); - return input.slice(start); - } - } - }); diff --git a/setup/pub/magento/setup/extension-grid.js b/setup/pub/magento/setup/extension-grid.js new file mode 100644 index 0000000000000..255547cb5f750 --- /dev/null +++ b/setup/pub/magento/setup/extension-grid.js @@ -0,0 +1,147 @@ +/** + * Copyright © 2016 Magento. All rights reserved. + * See COPYING.txt for license details. + */ + +'use strict'; + +angular.module('extension-grid', ['ngStorage']) + .controller('extensionGridController', [ + '$rootScope', '$scope', '$http', '$localStorage', '$state','titleService', 'authService', 'paginationService', + function ($rootScope, $scope, $http, $localStorage, $state, titleService, authService, paginationService) { + authService.checkMarketplaceAuthorized(); + $rootScope.extensionsProcessed = false; + $scope.syncError = false; + $scope.currentPage = 1; + + $http.get('index.php/extensionGrid/extensions').success(function (data) { + $scope.extensions = data.extensions; + $scope.total = data.total; + + if (data.error !== '') { + $scope.syncError = true; + $scope.ErrorMessage = data.error; + } + + if (typeof data.lastSyncData.lastSyncDate === 'undefined') { + $scope.isOutOfSync = true; + $scope.countOfUpdate = 0; + $scope.countOfInstall = 0; + } else { + $scope.lastSyncDate = data.lastSyncData.lastSyncDate.date; + $scope.lastSyncTime = data.lastSyncData.lastSyncDate.time; + $scope.countOfUpdate = data.lastSyncData.countOfUpdate; + $scope.countOfInstall = data.lastSyncData.countOfInstall; + $scope.enabledInstall = data.lastSyncData.countOfInstall ? true : false; + $scope.isOutOfSync = false; + } + $scope.availableUpdatePackages = data.lastSyncData.packages; + $scope.currentPage = 1; + $scope.rowLimit = 20; + $scope.numberOfPages = Math.ceil($scope.total / $scope.rowLimit); + $rootScope.extensionsProcessed = true; + }); + + paginationService.initWatchers($scope); + + $scope.isOutOfSync = false; + $scope.isHiddenSpinner = true; + $scope.selectedExtension = null; + + $scope.reset = function () { + authService.reset({ + success: function() { + $scope.logout = true; + authService.checkMarketplaceAuthorized(); + } + }) + }; + + $scope.isActiveActionsCell = function(extension) { + return $scope.selectedExtension === extension; + }; + + $scope.toggleActiveActionsCell = function(extension) { + $scope.selectedExtension = $scope.selectedExtension == extension ? null : extension; + }; + + $scope.closeActiveActionsCell = function(extension) { + $scope.toggleActiveActionsCell(extension); + }; + + $scope.predicate = 'name'; + $scope.reverse = false; + $scope.order = function(predicate) { + $scope.reverse = $scope.predicate === predicate ? !$scope.reverse : false; + $scope.predicate = predicate; + }; + + $scope.sync = function() { + $scope.isHiddenSpinner = false; + $http.get('index.php/extensionGrid/sync').success(function(data) { + if (typeof data.lastSyncData.lastSyncDate !== 'undefined') { + $scope.lastSyncDate = data.lastSyncData.lastSyncDate.date; + $scope.lastSyncTime = data.lastSyncData.lastSyncDate.time; + } + + if (data.error !== '') { + $scope.syncError = true; + $scope.ErrorMessage = data.error; + } + $scope.availableUpdatePackages = data.lastSyncData.packages; + $scope.countOfUpdate = data.lastSyncData.countOfUpdate; + $scope.countOfInstall = data.lastSyncData.countOfInstall; + $scope.enabledInstall = data.lastSyncData.countOfInstall ? true : false; + $scope.isHiddenSpinner = true; + $scope.isOutOfSync = false; + }); + }; + $scope.isAvailableUpdatePackage = function(packageName) { + $localStorage.isMarketplaceAuthorized = typeof $localStorage.isMarketplaceAuthorized !== 'undefined' ? $localStorage.isMarketplaceAuthorized : false; + var isAvailable = typeof $scope.availableUpdatePackages !== 'undefined' + && $localStorage.isMarketplaceAuthorized + && packageName in $scope.availableUpdatePackages; + return isAvailable; + }; + + $scope.getIndicatorInfo = function (extension, type) { + var indicators = { + 'info': { + 'icon': '_info', 'label': 'Update Available' + } + }; + + var types = ['label', 'icon']; + + if (types.indexOf(type) === -1) { + type = 'icon'; + } + + if ($scope.isAvailableUpdatePackage(extension.name)) { + return indicators.info[type]; + } + }; + + $scope.update = function(extension) { + $localStorage.packages = [ + { + name: extension.name, + version: $scope.availableUpdatePackages[extension.name]['latestVersion'] + } + ]; + titleService.setTitle('update', extension.moduleName ? extension.moduleName : extension.name); + $state.go('root.readiness-check-update'); + }; + + $scope.uninstall = function(extension) { + $localStorage.packages = [ + { + name: extension.name + } + ]; + titleService.setTitle('uninstall', extension.moduleName ? extension.moduleName : extension.name); + $localStorage.componentType = extension.type; + $state.go('root.readiness-check-uninstall'); + }; + } + ]); diff --git a/setup/pub/magento/setup/install-extension-grid.js b/setup/pub/magento/setup/install-extension-grid.js index 04a3bb1efb547..f4ed97baae386 100644 --- a/setup/pub/magento/setup/install-extension-grid.js +++ b/setup/pub/magento/setup/install-extension-grid.js @@ -5,176 +5,156 @@ 'use strict'; angular.module('install-extension-grid', ['ngStorage', 'clickOut']) - .controller('installExtensionGridController', ['$scope', '$http', 'ngDialog', '$localStorage', '$rootScope', - function ($scope, $http, ngDialog, $localStorage, $rootScope) { + .controller('installExtensionGridController', ['$scope', '$http', '$localStorage', 'authService', 'paginationService', + function ($scope, $http, $localStorage, authService, paginationService) { - $http.get('index.php/installExtensionGrid/extensions').success(function(data) { - $scope.error = false; - $scope.errorMessage = ''; - $scope.selectedExtensions = {}; - $scope.allExtensions = {}; - angular.forEach(data.extensions, function(value) { - this[value.name] = { - 'name': value.name, - 'version': value.version - }; - }, $scope.allExtensions); - $scope.extensions = data.extensions; - $scope.total = data.total; - $scope.currentPage = 1; - $scope.rowLimit = 20; - $scope.start = 0; - $scope.numberOfPages = Math.ceil($scope.total / $scope.rowLimit); - }); - - $scope.open = function() { - ngDialog.open({ scope: $scope, template: 'authDialog', showClose: false, controller: 'authDialogController' }); - }; + $http.get('index.php/installExtensionGrid/extensions').success(function(data) { + $scope.error = false; + $scope.errorMessage = ''; + $scope.selectedExtensions = {}; + $scope.allExtensions = {}; + angular.forEach(data.extensions, function(value) { + this[value.name] = { + 'name': value.name, + 'version': value.version + }; + }, $scope.allExtensions); + $scope.extensions = data.extensions; + $scope.total = data.total; + $scope.currentPage = 1; + $scope.rowLimit = 20; + $scope.numberOfPages = Math.ceil($scope.total / $scope.rowLimit); + }); - $scope.recalculatePagination = function(currentPage, rowLimit) { - $scope.currentPage = parseInt(currentPage, 10); - $scope.rowLimit = parseInt(rowLimit, 10); - $scope.numberOfPages = Math.ceil($scope.total / $scope.rowLimit); - if ($scope.currentPage > $scope.numberOfPages) { - $scope.currentPage = $scope.numberOfPages; - } - $scope.start = ($scope.currentPage - 1) * $scope.rowLimit; - }; + paginationService.initWatchers($scope); - $scope.updateSelectedExtensions = function($event, name, version) { - var checkbox = $event.target; - if (checkbox.checked) { - $scope.selectedExtensions[name] = { - 'name': name, - 'version': version - }; - if ($scope.getObjectSize($scope.selectedExtensions) == $scope.getObjectSize($scope.allExtensions)) { - $scope.someExtensionsSelected = false; - $scope.allExtensionsSelected = true; + $scope.updateSelectedExtensions = function($event, name, version) { + var checkbox = $event.target; + if (checkbox.checked) { + $scope.selectedExtensions[name] = { + 'name': name, + 'version': version + }; + if ($scope.getObjectSize($scope.selectedExtensions) == $scope.getObjectSize($scope.allExtensions)) { + $scope.someExtensionsSelected = false; + $scope.allExtensionsSelected = true; + } else { + $scope.someExtensionsSelected = true; + $scope.allExtensionsSelected = false; + } } else { - $scope.someExtensionsSelected = true; + delete $scope.selectedExtensions[name]; $scope.allExtensionsSelected = false; + if ($scope.getObjectSize($scope.selectedExtensions) > 0) { + $scope.someExtensionsSelected = true; + } else { + $scope.someExtensionsSelected = false; + } } - } else { - delete $scope.selectedExtensions[name]; - $scope.allExtensionsSelected = false; - if ($scope.getObjectSize($scope.selectedExtensions) > 0) { - $scope.someExtensionsSelected = true; - } else { - $scope.someExtensionsSelected = false; - } - } - }; + }; - $scope.predicate = 'name'; - $scope.reverse = false; - $scope.order = function(predicate) { - $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false; - $scope.predicate = predicate; - }; + $scope.predicate = 'name'; + $scope.reverse = false; + $scope.order = function(predicate) { + $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false; + $scope.predicate = predicate; + }; - $scope.getObjectSize = function(obj) { - var size = 0, key; - for (key in obj) { - if (obj.hasOwnProperty(key)) { - ++size; + $scope.getObjectSize = function(obj) { + var size = 0, key; + for (key in obj) { + if (obj.hasOwnProperty(key)) { + ++size; + } } - } - return size; - }; + return size; + }; - $scope.isNewExtensionsMenuVisible = false; - $scope.toggleNewExtensionsMenu = function() { - $scope.isNewExtensionsMenuVisible = !$scope.isNewExtensionsMenuVisible; - }; - $scope.hideNewExtensionsMenu = function() { - $scope.isNewExtensionsMenuVisible = false; - }; - $scope.someExtensionsSelected = false; - $scope.allExtensionsSelected = false; - $scope.selectAllExtensions = function() { - $scope.isNewExtensionsMenuVisible = false; - $scope.someExtensionsSelected = false; - $scope.allExtensionsSelected = true; - $scope.selectedExtensions = angular.copy($scope.allExtensions); - }; - $scope.deselectAllExtensions = function() { $scope.isNewExtensionsMenuVisible = false; + $scope.toggleNewExtensionsMenu = function() { + $scope.isNewExtensionsMenuVisible = !$scope.isNewExtensionsMenuVisible; + }; + $scope.hideNewExtensionsMenu = function() { + $scope.isNewExtensionsMenuVisible = false; + }; $scope.someExtensionsSelected = false; $scope.allExtensionsSelected = false; - $scope.selectedExtensions = {}; - }; - - $scope.isHiddenSpinner = true; - $scope.installAll = function() { - $scope.checkAuth(); - $localStorage.isMarketplaceAuthorized = typeof $localStorage.isMarketplaceAuthorized !== 'undefined' ? $localStorage.isMarketplaceAuthorized : false; - if ($localStorage.isMarketplaceAuthorized === false) { - $scope.open(); - } else { - if ($scope.getObjectSize($scope.selectedExtensions) > 0) { - $scope.error = false; - $scope.errorMessage = ''; - $localStorage.packages = $scope.selectedExtensions; - } else { - $scope.error = true; - $scope.errorMessage = 'Please select at least one extension'; - } + $scope.selectAllExtensions = function() { + $scope.isNewExtensionsMenuVisible = false; + $scope.someExtensionsSelected = false; + $scope.allExtensionsSelected = true; + $scope.selectedExtensions = angular.copy($scope.allExtensions); + }; + $scope.deselectAllExtensions = function() { + $scope.isNewExtensionsMenuVisible = false; + $scope.someExtensionsSelected = false; + $scope.allExtensionsSelected = false; + $scope.selectedExtensions = {}; + }; - if (!$scope.error) { - $scope.nextState(); - } - } - }; + $scope.isHiddenSpinner = true; + $scope.installAll = function() { + $scope.isHiddenSpinner = false; + authService.checkAuth({ + success: function(response) { + $scope.isHiddenSpinner = true; + if ($scope.getObjectSize($scope.selectedExtensions) > 0) { + $scope.error = false; + $scope.errorMessage = ''; + $localStorage.packages = $scope.selectedExtensions; + } else { + $scope.error = true; + $scope.errorMessage = 'Please select at least one extension'; + } - $scope.install = function(extension) { - $scope.checkAuth(); - $localStorage.isMarketplaceAuthorized = typeof $localStorage.isMarketplaceAuthorized !== 'undefined' ? $localStorage.isMarketplaceAuthorized : false; - if ($localStorage.isMarketplaceAuthorized === false) { - $scope.open(); - } else { - if (extension === 'undefined') { - $scope.error = true; - $scope.errorMessage = 'No extensions for install'; - } else { - $localStorage.packages = [ - { - name: extension.name, - version: extension.version + if (!$scope.error) { + $scope.nextState(); } - ]; - $localStorage.moduleName = extension.name; - $scope.error = false; - $scope.errorMessage = ''; - } + }, + fail: function(response) { + authService.openAuthDialog($scope); + }, + error: function() { + $scope.isHiddenSpinner = true; + $scope.error = true; + $scope.errorMessage = 'Internal server error'; + } + }); + }; - if (!$scope.error) { - $scope.nextState(); - } - } - }; + $scope.install = function(extension) { + $scope.isHiddenSpinner = false; + authService.checkAuth({ + success: function(response) { + $scope.isHiddenSpinner = true; + if (extension === 'undefined') { + $scope.error = true; + $scope.errorMessage = 'No extensions for install'; + } else { + $localStorage.packages = [ + { + name: extension.name, + version: extension.version + } + ]; + $localStorage.moduleName = extension.name; + $scope.error = false; + $scope.errorMessage = ''; + } - $scope.checkAuth = function() { - $http.post('index.php/marketplace/check-auth', []) - .success(function (response) { - if (response.success) { - $localStorage.isMarketplaceAuthorized = true; - } else { - $localStorage.isMarketplaceAuthorized = false; - } - }) - .error(function() { - $localStorage.isMarketplaceAuthorized = false; - $scope.error = true; - $scope.errorMessage = 'Internal server error'; - }); - }; - }]) - .filter('startFrom', function() { - return function(input, start) { - if (input !== undefined && start !== 'NaN') { - start = parseInt(start, 10); - return input.slice(start); - } + if (!$scope.error) { + $scope.nextState(); + } + }, + fail: function(response) { + authService.openAuthDialog($scope); + }, + error: function() { + $scope.isHiddenSpinner = true; + $scope.error = true; + $scope.errorMessage = 'Internal server error'; + } + }); + }; } - }); + ]); diff --git a/setup/pub/magento/setup/main.js b/setup/pub/magento/setup/main.js index 70e768bac22cc..37af464bbb33d 100644 --- a/setup/pub/magento/setup/main.js +++ b/setup/pub/magento/setup/main.js @@ -4,7 +4,7 @@ */ 'use strict'; -var main = angular.module('main', ['ngStorage']); +var main = angular.module('main', ['ngStorage', 'ngDialog']); main.controller('navigationController', ['$scope', '$state', '$rootScope', '$window', 'navigationService', '$localStorage', function ($scope, $state, $rootScope, $window, navigationService, $localStorage) { @@ -63,7 +63,7 @@ main.controller('navigationController', $scope.goToState = function (stateId) { $state.go(stateId) - } + }; $scope.state = $state; @@ -91,21 +91,25 @@ main.controller('navigationController', $scope.endsWith = function(str, suffix) { return str.indexOf(suffix, str.length - suffix.length) !== -1; - } + }; $scope.goToStart = function() { - if ($state.current.type === 'install') { - $state.go('root.landing-install'); - } else if ($state.current.type === 'upgrade') { - $state.go('root.upgrade'); - } else { - $state.go('root.update'); - } - } + $scope.goToAction($state.current.type); + }; $scope.goToBackup = function() { $state.go('root.create-backup-uninstall'); - } + }; + + $scope.goToAction = function(action) { + if (['install', 'upgrade', 'update'].indexOf(action) !== -1) { + $state.go('root.' + action); + } else if (action === 'uninstall') { + $state.go('root.extension'); + } else { + $state.go('root.module'); + } + }; } ]) .service('navigationService', ['$location', '$state', '$http', '$localStorage', @@ -159,5 +163,122 @@ main.controller('navigationController', }); return nItem; } + }; +}]) +.service('authService', ['$localStorage', '$rootScope', '$state', '$http', 'ngDialog', + function ($localStorage, $rootScope, $state, $http, ngDialog) { + return { + checkMarketplaceAuthorized: function() { + $rootScope.isMarketplaceAuthorized = typeof $rootScope.isMarketplaceAuthorized !== 'undefined' + ? $rootScope.isMarketplaceAuthorized : false; + if ($rootScope.isMarketplaceAuthorized == false) { + this.goToAuthPage(); + } + }, + goToAuthPage: function() { + if ($state.current.type === 'upgrade') { + $state.go('root.upgrade'); + } else { + $state.go('root.extension-auth'); + } + }, + reset: function (context) { + return $http.post('index.php/marketplace/remove-credentials', []) + .success(function (response) { + if (response.success) { + $localStorage.isMarketplaceAuthorized = $rootScope.isMarketplaceAuthorized = false; + context.success(); + } + }) + .error(function (data) { + }); + }, + checkAuth: function(context) { + return $http.post('index.php/marketplace/check-auth', []) + .success(function (response) { + if (response.success) { + $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized = true; + $localStorage.marketplaceUsername = response.data.username; + context.success(response); + } else { + $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized = false; + context.fail(response); + } + }) + .error(function() { + $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized = false; + context.error(); + }); + }, + openAuthDialog: function(scope) { + return $http.get('index.php/marketplace/popup-auth').success(function (data) { + scope.isHiddenSpinner = true; + ngDialog.open({ + scope: scope, + template: data, + plain: true, + showClose: false, + controller: 'authDialogController' + }); + }); + }, + closeAuthDialog: function() { + return ngDialog.close(); + }, + saveAuthJson: function (context) { + return $http.post('index.php/marketplace/save-auth-json', context.user) + .success(function (response) { + $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized = response.success; + $localStorage.marketplaceUsername = context.user.username; + if (response.success) { + context.success(response); + } else { + context.fail(response); + } + }) + .error(function (data) { + $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized = false; + context.error(data); + }); + } + }; + }] +) +.service('titleService', ['$localStorage', '$rootScope', + function ($localStorage, $rootScope) { + return { + setTitle: function(type, moduleName) { + $localStorage.moduleName = moduleName; + if (typeof $localStorage.titles === 'undefined') { + $localStorage.titles = []; + } + $localStorage.titles[type] = type.charAt(0).toUpperCase() + type.slice(1) + ' ' + + $localStorage.moduleName; + $rootScope.titles = $localStorage.titles; + } + }; + }] +) +.service('paginationService', [ + function () { + return { + initWatchers: function ($scope) { + $scope.$watch('currentPage + rowLimit', function () { + $scope.numberOfPages = Math.ceil($scope.total / $scope.rowLimit); + if ($scope.currentPage > $scope.numberOfPages) { + $scope.currentPage = $scope.numberOfPages; + } + }); + } + }; } -}]); +]) +.filter('startFrom', function () { + return function (input, start) { + if (input !== undefined && start !== 'NaN') { + start = parseInt(start, 10); + return input.slice(start); + } + return 0; + }; +}); diff --git a/setup/pub/magento/setup/marketplace-credentials.js b/setup/pub/magento/setup/marketplace-credentials.js index 1d1071063d139..ec7bb6d254873 100644 --- a/setup/pub/magento/setup/marketplace-credentials.js +++ b/setup/pub/magento/setup/marketplace-credentials.js @@ -5,83 +5,87 @@ 'use strict'; angular.module('marketplace-credentials', ['ngStorage']) - .controller('MarketplaceCredentialsController', ['$scope', '$state', '$http', '$localStorage', '$rootScope', '$sce', - function ($scope, $state, $http, $localStorage, $rootScope, $sce) { + .controller('MarketplaceCredentialsController', ['$scope', '$state', '$http', '$localStorage', '$rootScope', '$sce', 'authService', + function ($scope, $state, $http, $localStorage, $rootScope, $sce, authService) { $scope.showCredsForm = false; $scope.user = { username : $localStorage.marketplaceUsername ? $localStorage.marketplaceUsername : '', password : '', submitted : false }; + $scope.actionMessage = $state.current.type == 'upgrade' ? 'upgrade' : 'upgrade or install'; + $scope.errors = false; - $scope.upgradeProcessError = false; - - $http.get('index.php/select-version/installedSystemPackage', {'responseType' : 'json'}) - .success(function (data) { - if (data.responseType == 'error') { - $scope.upgradeProcessError = true; - $scope.upgradeProcessErrorMessage = $sce.trustAsHtml(data.error); - } else { - if (!$rootScope.authRequest || !$rootScope.isMarketplaceAuthorized) { - $scope.isHiddenSpinner = false; - $http.post('index.php/marketplace/check-auth', []) - .success(function (response) { - if (response.success) { - $localStorage.marketplaceUsername = $scope.user.username = response.data.username; - $localStorage.isMarketplaceAuthorized = true; - $scope.nextState(); - } else { - $localStorage.isMarketplaceAuthorized = false; - $scope.showCredsForm = true; - } - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $rootScope.authRequest = true; - }); - } else { - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; + $scope.checkAuth = function() { + if (!$rootScope.isMarketplaceAuthorized) { + $scope.isHiddenSpinner = false; + authService.checkAuth({ + success: function(response) { + $scope.isHiddenSpinner = true; + $scope.user.username = response.data.username; $scope.nextState(); + }, + fail: function(response) { + $scope.isHiddenSpinner = true; + $scope.showCredsForm = true; + }, + error: function() { + $scope.isHiddenSpinner = true; + $scope.errors = true; } - } - }) - .error(function (data) { - $scope.upgradeProcessError = true; - }); + }); + } else { + $scope.nextState(); + } + }; - $scope.errors = false; + $scope.upgradeProcessError = false; + if ($state.current.type == 'upgrade') { + $http.get('index.php/select-version/installedSystemPackage', {'responseType' : 'json'}) + .success(function (data) { + if (data.responseType == 'error') { + $scope.upgradeProcessError = true; + $scope.upgradeProcessErrorMessage = $sce.trustAsHtml(data.error); + } else { + $scope.checkAuth(); + } + }) + .error(function (data) { + $scope.upgradeProcessError = true; + }); + } else { + $scope.checkAuth(); + } $scope.saveAuthJson = function () { if ($scope.auth.$valid) { - $http.post('index.php/marketplace/save-auth-json', $scope.user) - .success(function (data) { - $scope.saveAuthJson.result = data; - if ($scope.saveAuthJson.result.success) { - $scope.logout = false; - $localStorage.isMarketplaceAuthorized = true; - $scope.errors = false; - $scope.nextState(); - } else { - $localStorage.isMarketplaceAuthorized = false; - $scope.errors = true; - } - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $localStorage.marketplaceUsername = $scope.user.username; - }) - .error(function (data) { - $scope.saveAuthJson.failed = data; - $localStorage.isMarketplaceAuthorized = false; + $scope.isHiddenSpinner = false; + authService.saveAuthJson({ + user: $scope.user, + success: function(response) { + $scope.isHiddenSpinner = true; + $scope.saveAuthJson.result = response; + $scope.logout = false; + $scope.errors = false; + $scope.nextState(); + }, + fail: function(response) { + $scope.isHiddenSpinner = true; + $scope.saveAuthJson.result = response; $scope.errors = true; - - }); + }, + error: function(data) { + $scope.isHiddenSpinner = true; + $scope.errors = true; + $scope.saveAuthJson.failed = data; + } + }); } else { $scope.validate(); } }; $scope.validate = function() { - if ($scope.user.$valid) { - $scope.user.submitted = false; - } else { - $scope.user.submitted = true; - } + $scope.user.submitted = !$scope.user.$valid; } }]); diff --git a/setup/pub/magento/setup/module-grid.js b/setup/pub/magento/setup/module-grid.js new file mode 100644 index 0000000000000..64d26a97d4661 --- /dev/null +++ b/setup/pub/magento/setup/module-grid.js @@ -0,0 +1,73 @@ +/** + * Copyright © 2016 Magento. All rights reserved. + * See COPYING.txt for license details. + */ + +'use strict'; +angular.module('module-grid', ['ngStorage']) + .controller('moduleGridController', ['$rootScope', '$scope', '$http', '$localStorage', '$state', 'titleService', 'paginationService', + function ($rootScope, $scope, $http, $localStorage, $state, titleService, paginationService) { + $rootScope.modulesProcessed = false; + $http.get('index.php/moduleGrid/modules').success(function(data) { + $scope.modules = data.modules; + $scope.total = data.total; + $scope.currentPage = 1; + $scope.rowLimit = 20; + $scope.numberOfPages = Math.ceil($scope.total/$scope.rowLimit); + $rootScope.modulesProcessed = true; + }); + + paginationService.initWatchers($scope); + + $scope.selectedComponent = null; + + $scope.isActiveActionsCell = function(component) { + return $scope.selectedComponent === component; + }; + + $scope.toggleActiveActionsCell = function(component) { + $scope.selectedComponent = $scope.selectedComponent == component ? null : component; + }; + + $scope.closeActiveActionsCell = function(component) { + $scope.toggleActiveActionsCell(component); + }; + + $scope.predicate = 'name'; + $scope.reverse = false; + $scope.order = function(predicate) { + $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false; + $scope.predicate = predicate; + }; + + $scope.getIndicatorInfo = function(component, type) { + var indicators = { + 'on' : {'icon' : '_on', 'label' : 'On'}, + 'off' : {'icon' : '_off', 'label' : 'Off'} + }; + + var types = ['label', 'icon']; + + if (types.indexOf(type) == -1) { + type = 'icon'; + } + + if (component.enable === true) { + return indicators.on[type]; + } + + return indicators.off[type]; + }; + + $scope.enableDisable = function(type, component) { + $localStorage.packages = [ + { + name: component.moduleName + } + ]; + titleService.setTitle(type, component.moduleName ? component.moduleName : component.name); + $localStorage.componentType = component.type; + $state.go('root.readiness-check-'+type); + }; + } + ]); diff --git a/setup/pub/magento/setup/start-updater.js b/setup/pub/magento/setup/start-updater.js index 5e414bb30064d..ee9bc1e1c0df7 100644 --- a/setup/pub/magento/setup/start-updater.js +++ b/setup/pub/magento/setup/start-updater.js @@ -9,8 +9,7 @@ angular.module('start-updater', ['ngStorage']) $scope.type = $state.current.type; $scope.buttonText = $scope.type.charAt(0).toUpperCase() + $scope.type.slice(1); - $scope.successPageAction = $state.current.type + ($scope.endsWith($state.current.type, 'e') ? 'd' : 'ed'); - $localStorage.successPageAction = $scope.successPageAction; + $localStorage.successPageAction = $state.current.type; if ($localStorage.packages) { $scope.packages = $localStorage.packages; @@ -53,5 +52,5 @@ angular.module('start-updater', ['ngStorage']) } else { $state.go('root.create-backup-' + $state.current.type); } - } + }; }]); diff --git a/setup/pub/magento/setup/system-config.js b/setup/pub/magento/setup/system-config.js index 2e1dcbc8935bc..b8f6f16725802 100644 --- a/setup/pub/magento/setup/system-config.js +++ b/setup/pub/magento/setup/system-config.js @@ -5,80 +5,63 @@ 'use strict'; angular.module('system-config', ['ngStorage']) - .controller('systemConfigController', ['$scope', '$state', '$http','ngDialog', '$localStorage', '$rootScope', - function ($scope, $state, $http, ngDialog, $localStorage, $rootScope) { + .controller('systemConfigController', ['$scope', '$state', '$http', '$localStorage', '$rootScope', 'authService', + function ($scope, $state, $http, $localStorage, $rootScope, authService) { $scope.user = { username : $localStorage.marketplaceUsername ? $localStorage.marketplaceUsername : '', password : '', submitted : false }; - if (!$rootScope.authRequest) { - $scope.isAuthLoadingComplete = false; - $http.post('index.php/marketplace/check-auth', []) - .success(function (response) { - if (response.success) { - $localStorage.marketplaceUsername = $scope.user.username = response.data.username; - $localStorage.isMarketplaceAuthorized = true; - } else { - $localStorage.isMarketplaceAuthorized = false; - } - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $rootScope.authRequest = true; - $scope.isAuthLoadingComplete = true; - }) - .error(function (data) { - $scope.isAuthLoadingComplete = true; - }); - } else { - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $rootScope.isAuthLoadingComplete = true; + if (!$rootScope.isMarketplaceAuthorized) { + $scope.isHiddenSpinner = false; + authService.checkAuth({ + success: function(response) { + $scope.isHiddenSpinner = true; + $scope.user.username = response.data.username; + }, + fail: function(response) { + $scope.isHiddenSpinner = true; + }, + error: function() { + $scope.isHiddenSpinner = true; + } + }); } $scope.saveAuthJson = function () { if ($scope.auth.$valid) { - $scope.isAuthLoadingComplete = false; - $http.post('index.php/marketplace/save-auth-json', $scope.user) - .success(function (data) { - $scope.saveAuthJson.result = data; + $scope.isHiddenSpinner = false; + authService.saveAuthJson({ + user: $scope.user, + success: function(response) { + $scope.isHiddenSpinner = true; + $scope.saveAuthJson.result = response; $scope.logout = false; - if ($scope.saveAuthJson.result.success) { - $scope.logout = false; - $localStorage.isMarketplaceAuthorized = true; - $scope.isAuthLoadingComplete = true; - } else { - $localStorage.isMarketplaceAuthorized = false; - $scope.isAuthLoadingComplete = true; - } - $rootScope.isMarketplaceAuthorized = $localStorage.isMarketplaceAuthorized; - $localStorage.marketplaceUsername = $scope.user.username; - }) - .error(function (data) { + }, + fail: function(response) { + $scope.isHiddenSpinner = true; + $scope.saveAuthJson.result = response; + }, + error: function(data) { + $scope.isHiddenSpinner = true; $scope.saveAuthJson.failed = data; - $localStorage.isMarketplaceAuthorized = false; - - }); + } + }); } else { $scope.validate(); } }; + $scope.reset = function () { - $http.post('index.php/marketplace/remove-credentials', []) - .success(function (response) { - if (response.success) { - $scope.logout = true; - } - $localStorage.isMarketplaceAuthorized = $rootScope.isMarketplaceAuthorized = false; - }) - .error(function (data) { - }); + authService.reset({ + success: function() { + $scope.logout = true; + } + }) }; $scope.validate = function() { - if ($scope.user.$valid) { - $scope.user.submitted = false; - } else { - $scope.user.submitted = true; - } + $scope.user.submitted = !$scope.user.$valid; } }]); diff --git a/setup/pub/magento/setup/update-extension-grid.js b/setup/pub/magento/setup/update-extension-grid.js new file mode 100644 index 0000000000000..f28e0aa385af4 --- /dev/null +++ b/setup/pub/magento/setup/update-extension-grid.js @@ -0,0 +1,46 @@ +/** + * Copyright © 2016 Magento. All rights reserved. + * See COPYING.txt for license details. + */ + +'use strict'; +angular.module('update-extension-grid', ['ngStorage', 'clickOut']) + .controller('updateExtensionGridController', ['$scope', '$http', '$localStorage', 'titleService', 'paginationService', + function ($scope, $http, $localStorage, titleService, paginationService) { + $scope.isHiddenSpinner = false; + + $http.get('index.php/updateExtensionGrid/extensions').success(function(data) { + $scope.error = false; + $scope.errorMessage = ''; + angular.forEach(data.extensions, function(extension) { + extension.updateVersion = extension.latestVersion; + }); + $scope.extensions = data.extensions; + $scope.total = data.total; + $scope.currentPage = 1; + $scope.rowLimit = 20; + $scope.numberOfPages = Math.ceil($scope.total / $scope.rowLimit); + $scope.isHiddenSpinner = true; + }); + + paginationService.initWatchers($scope); + + $scope.predicate = 'name'; + $scope.reverse = false; + $scope.order = function(predicate) { + $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false; + $scope.predicate = predicate; + }; + + $scope.update = function(extension) { + $localStorage.packages = [ + { + name: extension.name, + version: extension.updateVersion + } + ]; + titleService.setTitle('update', extension.name); + $scope.nextState(); + }; + } + ]); diff --git a/setup/pub/magento/setup/updater-success.js b/setup/pub/magento/setup/updater-success.js index c504d7a499b5c..d2e98394251c8 100644 --- a/setup/pub/magento/setup/updater-success.js +++ b/setup/pub/magento/setup/updater-success.js @@ -5,9 +5,11 @@ 'use strict'; angular.module('updater-success', ['ngStorage']) - .controller('updaterSuccessController', ['$scope', '$state', '$localStorage', '$window', function ($scope, $state, $localStorage, $window) { + .controller('updaterSuccessController', ['$scope', '$state', '$localStorage', '$window', 'navigationService', function ($scope, $state, $localStorage, $window, navigationService) { if ($localStorage.successPageAction) { $scope.successPageAction = $localStorage.successPageAction; + $scope.successPageActionMessage = $scope.successPageAction + + ($scope.endsWith($scope.successPageAction, 'e') ? 'd' : 'ed'); } if ($localStorage.packages) { $scope.packages = $localStorage.packages; @@ -16,7 +18,15 @@ angular.module('updater-success', ['ngStorage']) $scope.rollbackStarted = $localStorage.rollbackStarted; } $scope.back = function () { - $window.location.href = ''; - } + if ($scope.successPageAction) { + $scope.goToAction($scope.successPageAction); + } else { + $window.location.href = ''; + } + }; $localStorage.$reset(); + $scope.isHiddenSpinner = false; + navigationService.load().then(function () { + $scope.isHiddenSpinner = true; + }); }]); diff --git a/setup/pub/magento/setup/view/pagination.html b/setup/pub/magento/setup/view/pagination.html new file mode 100644 index 0000000000000..87ba11407e897 --- /dev/null +++ b/setup/pub/magento/setup/view/pagination.html @@ -0,0 +1,33 @@ + + +
+ + + + +
\ No newline at end of file diff --git a/setup/pub/styles/setup.css b/setup/pub/styles/setup.css index 8f3bc14b7a723..4ee5d4979d214 100644 --- a/setup/pub/styles/setup.css +++ b/setup/pub/styles/setup.css @@ -3,4 +3,4 @@ * See COPYING.txt for license details. */ -.abs-action-delete,.abs-icon,.action-close:before,.action-next:before,.action-previous:before,.admin-user .admin__action-dropdown:before,.admin__action-multiselect-dropdown:before,.admin__action-multiselect-search-label:before,.admin__control-checkbox+label:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:before,.admin__control-table .action-delete:before,.admin__current-filters-list .action-remove:before,.admin__data-grid-action-bookmarks .action-delete:before,.admin__data-grid-action-bookmarks .action-edit:before,.admin__data-grid-action-bookmarks .action-submit:before,.admin__data-grid-action-bookmarks .admin__action-dropdown:before,.admin__data-grid-action-columns .admin__action-dropdown:before,.admin__data-grid-action-export .admin__action-dropdown:before,.admin__field-fallback-reset:before,.admin__menu .level-0>a:before,.admin__page-nav-item-message .admin__page-nav-item-message-icon,.admin__page-nav-title._collapsible:after,.data-grid-filters-action-wrap .action-default:before,.data-grid-row-changed:after,.data-grid-row-parent>td .data-grid-checkbox-cell-inner:before,.data-grid-search-control-wrap .action-submit:before,.icon-failed:before,.icon-success:before,.notifications-action:before,.notifications-close:before,.page-actions .page-actions-buttons>button.action-back:before,.page-actions .page-actions-buttons>button.back:before,.page-actions>button.action-back:before,.page-actions>button.back:before,.page-title-jumbo-success:before,.search-global-label:before,.selectmenu .action-delete:before,.selectmenu .action-edit:before,.selectmenu .action-save:before,.setup-home-item:before,.sticky-header .data-grid-search-control-wrap .data-grid-search-label:before,.store-switcher .dropdown-menu .dropdown-toolbar a:before,.tooltip .help a:before,.tooltip .help span:before{-webkit-font-smoothing:antialiased;font-family:Icons;font-style:normal;font-weight:400;line-height:1;speak:none}.validation-symbol:after{color:#e22626;content:'*';font-weight:400;margin-left:3px}.abs-modal-overlay,.modals-overlay{background:rgba(0,0,0,.35);bottom:0;left:0;position:fixed;right:0;top:0}.abs-action-delete>span,.abs-visually-hidden,.action-multicheck-wrap .action-multicheck-toggle>span,.admin__actions-switch-checkbox,.admin__control-fields .admin__field:nth-child(n+2):not(.admin__field-option):not(.admin__field-group-show-label)>.admin__field-label,.admin__field-tooltip .admin__field-tooltip-action span,.customize-your-store .customize-your-store-default .legend,.form-el-checkbox,.form-el-radio,.selectmenu .action-delete>span,.selectmenu .action-edit>span,.selectmenu .action-save>span,.selectmenu-toggle span,.tooltip .help a span,.tooltip .help span span,[class*=admin__control-grouped]>.admin__field:nth-child(n+2):not(.admin__field-option):not(.admin__field-group-show-label):not(.admin__field-date)>.admin__field-label{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.abs-visually-hidden-reset,.admin__field-group-columns>.admin__field:nth-child(n+2):not(.admin__field-option):not(.admin__field-group-show-label):not(.admin__field-date)>.admin__field-label[class]{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.abs-clearfix:after,.abs-clearfix:before,.action-multicheck-wrap:after,.action-multicheck-wrap:before,.actions-split:after,.actions-split:before,.admin__control-table-pagination:after,.admin__control-table-pagination:before,.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content:after,.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content:before,.admin__data-grid-filters-footer:after,.admin__data-grid-filters-footer:before,.admin__data-grid-filters:after,.admin__data-grid-filters:before,.admin__data-grid-header-row:after,.admin__data-grid-header-row:before,.admin__field-complex:after,.admin__field-complex:before,.modal-slide .magento-message .insert-title-inner:after,.modal-slide .magento-message .insert-title-inner:before,.modal-slide .main-col .insert-title-inner:after,.modal-slide .main-col .insert-title-inner:before,.page-actions._fixed:after,.page-actions._fixed:before,.page-content:after,.page-content:before,.page-header-actions:after,.page-header-actions:before,.page-main-actions:not(._hidden):after,.page-main-actions:not(._hidden):before{content:'';display:table}.abs-clearfix:after,.action-multicheck-wrap:after,.actions-split:after,.admin__control-table-pagination:after,.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content:after,.admin__data-grid-filters-footer:after,.admin__data-grid-filters:after,.admin__data-grid-header-row:after,.admin__field-complex:after,.modal-slide .magento-message .insert-title-inner:after,.modal-slide .main-col .insert-title-inner:after,.page-actions._fixed:after,.page-content:after,.page-header-actions:after,.page-main-actions:not(._hidden):after{clear:both}.abs-list-reset-styles{margin:0;padding:0;list-style:none}.abs-draggable-handle,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .draggable-handle,.admin__control-table .draggable-handle,.data-grid .data-grid-draggable-row-cell .draggable-handle{cursor:-webkit-grab;cursor:move;font-size:0;margin-top:-4px;padding:0 1rem 0 0;vertical-align:middle;display:inline-block;text-decoration:none}.abs-draggable-handle:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .draggable-handle:before,.admin__control-table .draggable-handle:before,.data-grid .data-grid-draggable-row-cell .draggable-handle:before{-webkit-font-smoothing:antialiased;font-size:1.8rem;line-height:inherit;color:#9e9e9e;content:'\e617';font-family:Icons;vertical-align:middle;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.abs-draggable-handle:hover:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .draggable-handle:hover:before,.admin__control-table .draggable-handle:hover:before,.data-grid .data-grid-draggable-row-cell .draggable-handle:hover:before{color:#858585}.abs-config-scope-label,.admin__field:not(.admin__field-option)>.admin__field-label span[data-config-scope]:before{bottom:-1.3rem;color:gray;content:attr(data-config-scope);font-size:1.1rem;font-weight:400;min-width:15rem;position:absolute;right:0;text-transform:lowercase}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;box-sizing:border-box}*,:after,:before{box-sizing:inherit}:focus{box-shadow:none;outline:0}._keyfocus :focus{box-shadow:0 0 0 1px #008bdb}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}embed,img,object,video{max-width:100%}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/light/opensans-300.eot);src:url(../fonts/opensans/light/opensans-300.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/light/opensans-300.woff2) format('woff2'),url(../fonts/opensans/light/opensans-300.woff) format('woff'),url(../fonts/opensans/light/opensans-300.ttf) format('truetype'),url('../fonts/opensans/light/opensans-300.svg#Open Sans') format('svg');font-weight:300;font-style:normal}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/regular/opensans-400.eot);src:url(../fonts/opensans/regular/opensans-400.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/regular/opensans-400.woff2) format('woff2'),url(../fonts/opensans/regular/opensans-400.woff) format('woff'),url(../fonts/opensans/regular/opensans-400.ttf) format('truetype'),url('../fonts/opensans/regular/opensans-400.svg#Open Sans') format('svg');font-weight:400;font-style:normal}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/semibold/opensans-600.eot);src:url(../fonts/opensans/semibold/opensans-600.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/semibold/opensans-600.woff2) format('woff2'),url(../fonts/opensans/semibold/opensans-600.woff) format('woff'),url(../fonts/opensans/semibold/opensans-600.ttf) format('truetype'),url('../fonts/opensans/semibold/opensans-600.svg#Open Sans') format('svg');font-weight:600;font-style:normal}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/bold/opensans-700.eot);src:url(../fonts/opensans/bold/opensans-700.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/bold/opensans-700.woff2) format('woff2'),url(../fonts/opensans/bold/opensans-700.woff) format('woff'),url(../fonts/opensans/bold/opensans-700.ttf) format('truetype'),url('../fonts/opensans/bold/opensans-700.svg#Open Sans') format('svg');font-weight:700;font-style:normal}html{font-size:62.5%}body{color:#333;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.36;font-size:1.4rem}h1{margin:0 0 2rem;color:#41362f;font-weight:400;line-height:1.2;font-size:2.8rem}h2{margin:0 0 2rem;color:#41362f;font-weight:400;line-height:1.2;font-size:2rem}h3{margin:0 0 2rem;color:#41362f;font-weight:600;line-height:1.2;font-size:1.7rem}h4,h5,h6{font-weight:600;margin-top:0}p{margin:0 0 1em}small{font-size:1.2rem}a{color:#008bdb;text-decoration:none}a:hover{color:#0fa7ff;text-decoration:underline}dl,ol,ul{padding-left:0}nav ol,nav ul{list-style:none;margin:0;padding:0}html{height:100%}body{background-color:#fff;min-height:100%;min-width:102.4rem}.page-wrapper{background-color:#fff;display:inline-block;margin-left:-4px;vertical-align:top;width:calc(100% - 8.8rem)}.page-content{padding-bottom:3rem;padding-left:3rem;padding-right:3rem}.notices-wrapper{margin:0 3rem}.notices-wrapper .messages{margin-bottom:0}.row{margin-left:0;margin-right:0}.row:after{clear:both;content:'';display:table}.col-l-1,.col-l-10,.col-l-11,.col-l-12,.col-l-2,.col-l-3,.col-l-4,.col-l-5,.col-l-6,.col-l-7,.col-l-8,.col-l-9,.col-m-1,.col-m-10,.col-m-11,.col-m-12,.col-m-2,.col-m-3,.col-m-4,.col-m-5,.col-m-6,.col-m-7,.col-m-8,.col-m-9,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{min-height:1px;padding-left:0;padding-right:0;position:relative}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}.row-gutter{margin-left:-1.5rem;margin-right:-1.5rem}.row-gutter>[class*=col-]{padding-left:1.5rem;padding-right:1.5rem}.abs-clearer:after,.component-manager-content:after,.component-manager-title:after,.form-row:after,.header:after,.nav:after,body:after{clear:both;content:'';display:table}.ng-cloak{display:none!important}.hide.hide{display:none}.show.show{display:block}.text-center{text-align:center}.text-right{text-align:right}@font-face{font-family:Icons;src:url(../fonts/icons/icons.eot);src:url(../fonts/icons/icons.eot?#iefix) format('embedded-opentype'),url(../fonts/icons/icons.woff2) format('woff2'),url(../fonts/icons/icons.woff) format('woff'),url(../fonts/icons/icons.ttf) format('truetype'),url(../fonts/icons/icons.svg#Icons) format('svg');font-weight:400;font-style:normal}[class*=icon-]{display:inline-block;line-height:1}.icon-failed:before,.icon-success:before,[class*=icon-]:after{font-family:Icons}.icon-success{color:#79a22e}.icon-success:before{content:'\e62d'}.icon-failed{color:#e22626}.icon-failed:before{content:'\e632'}.icon-success-thick:after{content:'\e62d'}.icon-collapse:after{content:'\e615'}.icon-failed-thick:after{content:'\e632'}.icon-expand:after{content:'\e616'}.icon-warning:after{content:'\e623'}.icon-failed-round,.icon-success-round{border-radius:100%;color:#fff;font-size:2.5rem;height:1em;position:relative;text-align:center;width:1em}.icon-failed-round:after,.icon-success-round:after{bottom:0;font-size:.5em;left:0;position:absolute;right:0;top:.45em}.icon-success-round{background-color:#79a22e}.icon-success-round:after{content:'\e62d'}.icon-failed-round{background-color:#e22626}.icon-failed-round:after{content:'\e632'}dl,ol,ul{margin-top:0}.list{padding-left:0}.list>li{display:block;margin-bottom:.75em;position:relative}.list>li>.icon-failed,.list>li>.icon-success{font-size:1.6em;left:-.1em;position:absolute;top:0}.list>li>.icon-success{color:#79a22e}.list>li>.icon-failed{color:#e22626}.list-item-failed,.list-item-icon,.list-item-success,.list-item-warning{padding-left:3.5rem}.list-item-failed:before,.list-item-success:before,.list-item-warning:before{left:-.1em;position:absolute}.list-item-success:before{color:#79a22e}.list-item-failed:before{color:#e22626}.list-item-warning:before{color:#ef672f}.list-definition{margin:0 0 3rem;padding:0}.list-definition>dt{clear:left;float:left}.list-definition>dd{margin-bottom:1em;margin-left:20rem}.btn-wrap{margin:0 auto}.btn-wrap .btn{width:100%}.btn{background:#e3e3e3;border:none;color:#514943;display:inline-block;font-size:1.6rem;font-weight:600;padding:.45em .9em;text-align:center}.btn:hover{background-color:#dbdbdb;color:#514943;text-decoration:none}.btn:active{background-color:#d6d6d6}.btn.disabled,.btn[disabled]{cursor:default;opacity:.5;pointer-events:none}.ie9 .btn.disabled,.ie9 .btn[disabled]{background-color:#f0f0f0;opacity:1;text-shadow:none}.btn-large{padding:.75em 1.25em}.btn-medium{font-size:1.4rem;padding:.5em 1.5em .6em}.btn-link{background-color:transparent;border:none;color:#008bdb;font-family:1.6rem;font-size:1.5rem}.btn-link:active,.btn-link:focus,.btn-link:hover{background-color:transparent;color:#0fa7ff}.btn-prime{background-color:#eb5202;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.btn-prime:focus,.btn-prime:hover{background-color:#f65405;background-repeat:repeat-x;background-image:linear-gradient(to right,#e04f00 0,#f65405 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e04f00', endColorstr='#f65405', GradientType=1);color:#fff}.btn-prime:active{background-color:#e04f00;background-repeat:repeat-x;background-image:linear-gradient(to right,#f65405 0,#e04f00 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f65405', endColorstr='#e04f00', GradientType=1);color:#fff}.ie9 .btn-prime.disabled,.ie9 .btn-prime[disabled]{background-color:#fd6e23}.ie9 .btn-prime.disabled:active,.ie9 .btn-prime.disabled:hover,.ie9 .btn-prime[disabled]:active,.ie9 .btn-prime[disabled]:hover{background-color:#fd6e23;-webkit-filter:none;filter:none}.btn-secondary{background-color:#514943;color:#fff}.btn-secondary:hover{background-color:#5f564f;color:#fff}.btn-secondary:active,.btn-secondary:focus{background-color:#574e48;color:#fff}.ie9 .btn-secondary.disabled,.ie9 .btn-secondary[disabled]{background-color:#514943}.ie9 .btn-secondary.disabled:active,.ie9 .btn-secondary[disabled]:active{background-color:#514943;-webkit-filter:none;filter:none}[class*=btn-wrap-triangle]{overflow:hidden;position:relative}[class*=btn-wrap-triangle] .btn:after{border-style:solid;content:'';height:0;position:absolute;top:0;width:0}.btn-wrap-triangle-right{display:inline-block;padding-right:1.74rem;position:relative}.btn-wrap-triangle-right .btn{text-indent:.92rem}.btn-wrap-triangle-right .btn:after{border-color:transparent transparent transparent #e3e3e3;border-width:1.84rem 0 1.84rem 1.84rem;left:100%;margin-left:-1.74rem}.btn-wrap-triangle-right .btn:focus:after,.btn-wrap-triangle-right .btn:hover:after{border-left-color:#dbdbdb}.btn-wrap-triangle-right .btn:active:after{border-left-color:#d6d6d6}.btn-wrap-triangle-right .btn:not(.disabled):active,.btn-wrap-triangle-right .btn:not([disabled]):active{left:1px}.ie9 .btn-wrap-triangle-right .btn.disabled:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:after{border-color:transparent transparent transparent #f0f0f0}.ie9 .btn-wrap-triangle-right .btn.disabled:active:after,.ie9 .btn-wrap-triangle-right .btn.disabled:focus:after,.ie9 .btn-wrap-triangle-right .btn.disabled:hover:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:active:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:focus:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:hover:after{border-left-color:#f0f0f0}.btn-wrap-triangle-right .btn-prime:after{border-color:transparent transparent transparent #eb5202}.btn-wrap-triangle-right .btn-prime:focus:after,.btn-wrap-triangle-right .btn-prime:hover:after{border-left-color:#f65405}.btn-wrap-triangle-right .btn-prime:active:after{border-left-color:#e04f00}.btn-wrap-triangle-right .btn-prime:not(.disabled):active,.btn-wrap-triangle-right .btn-prime:not([disabled]):active{left:1px}.ie9 .btn-wrap-triangle-right .btn-prime.disabled:after,.ie9 .btn-wrap-triangle-right .btn-prime[disabled]:after{border-color:transparent transparent transparent #fd6e23}.ie9 .btn-wrap-triangle-right .btn-prime.disabled:active:after,.ie9 .btn-wrap-triangle-right .btn-prime.disabled:hover:after,.ie9 .btn-wrap-triangle-right .btn-prime[disabled]:active:after,.ie9 .btn-wrap-triangle-right .btn-prime[disabled]:hover:after{border-left-color:#fd6e23}.btn-wrap-triangle-left{display:inline-block;padding-left:1.74rem}.btn-wrap-triangle-left .btn{text-indent:-.92rem}.btn-wrap-triangle-left .btn:after{border-color:transparent #e3e3e3 transparent transparent;border-width:1.84rem 1.84rem 1.84rem 0;margin-right:-1.74rem;right:100%}.btn-wrap-triangle-left .btn:focus:after,.btn-wrap-triangle-left .btn:hover:after{border-right-color:#dbdbdb}.btn-wrap-triangle-left .btn:active:after{border-right-color:#d6d6d6}.btn-wrap-triangle-left .btn:not(.disabled):active,.btn-wrap-triangle-left .btn:not([disabled]):active{right:1px}.ie9 .btn-wrap-triangle-left .btn.disabled:after,.ie9 .btn-wrap-triangle-left .btn[disabled]:after{border-color:transparent #f0f0f0 transparent transparent}.ie9 .btn-wrap-triangle-left .btn.disabled:active:after,.ie9 .btn-wrap-triangle-left .btn.disabled:hover:after,.ie9 .btn-wrap-triangle-left .btn[disabled]:active:after,.ie9 .btn-wrap-triangle-left .btn[disabled]:hover:after{border-right-color:#f0f0f0}.btn-wrap-triangle-left .btn-prime:after{border-color:transparent #eb5202 transparent transparent}.btn-wrap-triangle-left .btn-prime:focus:after,.btn-wrap-triangle-left .btn-prime:hover:after{border-right-color:#e04f00}.btn-wrap-triangle-left .btn-prime:active:after{border-right-color:#f65405}.btn-wrap-triangle-left .btn-prime:not(.disabled):active,.btn-wrap-triangle-left .btn-prime:not([disabled]):active{right:1px}.ie9 .btn-wrap-triangle-left .btn-prime.disabled:after,.ie9 .btn-wrap-triangle-left .btn-prime[disabled]:after{border-color:transparent #fd6e23 transparent transparent}.ie9 .btn-wrap-triangle-left .btn-prime.disabled:active:after,.ie9 .btn-wrap-triangle-left .btn-prime.disabled:hover:after,.ie9 .btn-wrap-triangle-left .btn-prime[disabled]:active:after,.ie9 .btn-wrap-triangle-left .btn-prime[disabled]:hover:after{border-right-color:#fd6e23}.btn-expand{background-color:transparent;border:none;color:#303030;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;padding:0;position:relative}.btn-expand.expanded:after{border-color:transparent transparent #303030;border-width:0 .285em .36em}.btn-expand.expanded:hover:after{border-color:transparent transparent #3d3d3d}.btn-expand:hover{background-color:transparent;border:none;color:#3d3d3d}.btn-expand:hover:after{border-color:#3d3d3d transparent transparent}.btn-expand:after{border-color:#303030 transparent transparent;border-style:solid;border-width:.36em .285em 0;content:'';height:0;left:100%;margin-left:.5em;margin-top:-.18em;position:absolute;top:50%;width:0}[class*=col-] .form-el-input,[class*=col-] .form-el-select{width:100%}.form-fieldset{border:none;margin:0 0 1em;padding:0}.form-row{margin-bottom:2.2rem}.form-row .form-row{margin-bottom:.4rem}.form-row .form-label{display:block;font-weight:600;padding:.6rem 2.1em 0 0;text-align:right}.form-row .form-label.required{position:relative}.form-row .form-label.required:after{color:#eb5202;content:'*';font-size:1.15em;position:absolute;right:.7em;top:.5em}.form-row .form-el-checkbox+.form-label:before,.form-row .form-el-radio+.form-label:before{top:.7rem}.form-row .form-el-checkbox+.form-label:after,.form-row .form-el-radio+.form-label:after{top:1.1rem}.form-row.form-row-text{padding-top:.6rem}.form-row.form-row-text .action-sign-out{font-size:1.2rem;margin-left:1rem}.form-note{font-size:1.2rem;font-weight:600;margin-top:1rem}.form-el-dummy{display:none}.fieldset{border:0;margin:0;min-width:0;padding:0}input:not([disabled]):focus,textarea:not([disabled]):focus{box-shadow:none}.form-el-input{border:1px solid #adadad;color:#303030;padding:.35em .55em .5em}.form-el-input:hover{border-color:#949494}.form-el-input:focus{border-color:#008bdb}.form-el-input:required{box-shadow:none}.form-label{margin-bottom:.5em}[class*=form-label][for]{cursor:pointer}.form-el-insider-wrap{display:table;width:100%}.form-el-insider-input{display:table-cell;width:100%}.form-el-insider{border-radius:2px;display:table-cell;padding:.43em .55em .5em 0;vertical-align:top}.form-legend,.form-legend-expand,.form-legend-light{display:block;margin:0}.form-legend,.form-legend-expand{font-size:1.25em;font-weight:600;margin-bottom:2.5em;padding-top:1.5em}.form-legend{border-top:1px solid #ccc;width:100%}.form-legend-light{font-size:1em;margin-bottom:1.5em}.form-legend-expand{cursor:pointer;transition:opacity .2s linear}.form-legend-expand:hover{opacity:.85}.form-legend-expand.expanded:after{content:'\e615'}.form-legend-expand:after{content:'\e616';font-family:Icons;font-size:1.15em;font-weight:400;margin-left:.5em;vertical-align:sub}.form-el-checkbox.disabled+.form-label,.form-el-checkbox.disabled+.form-label:before,.form-el-checkbox[disabled]+.form-label,.form-el-checkbox[disabled]+.form-label:before,.form-el-radio.disabled+.form-label,.form-el-radio.disabled+.form-label:before,.form-el-radio[disabled]+.form-label,.form-el-radio[disabled]+.form-label:before{cursor:default;opacity:.5;pointer-events:none}.form-el-checkbox:not(.disabled)+.form-label:hover:before,.form-el-checkbox:not([disabled])+.form-label:hover:before,.form-el-radio:not(.disabled)+.form-label:hover:before,.form-el-radio:not([disabled])+.form-label:hover:before{border-color:#514943}.form-el-checkbox+.form-label,.form-el-radio+.form-label{font-weight:400;padding-left:2em;padding-right:0;position:relative;text-align:left;transition:border-color .1s linear}.form-el-checkbox+.form-label:before,.form-el-radio+.form-label:before{border:1px solid;content:'';left:0;position:absolute;top:.1rem;transition:border-color .1s linear}.form-el-checkbox+.form-label:before{background-color:#fff;border-color:#adadad;border-radius:2px;font-size:1.2rem;height:1.6rem;line-height:1.2;width:1.6rem}.form-el-checkbox:checked+.form-label::before{content:'\e62d';font-family:Icons}.form-el-radio+.form-label:before{background-color:#fff;border:1px solid #adadad;border-radius:100%;height:1.8rem;width:1.8rem}.form-el-radio+.form-label:after{background:0 0;border:.5rem solid transparent;border-radius:100%;content:'';height:0;left:.4rem;position:absolute;top:.5rem;transition:background .3s linear;width:0}.form-el-radio:checked+.form-label{cursor:default}.form-el-radio:checked+.form-label:after{border-color:#514943}.form-select-label{border:1px solid #adadad;color:#303030;cursor:pointer;display:block;overflow:hidden;position:relative;z-index:0}.form-select-label:hover,.form-select-label:hover:after{border-color:#949494}.form-select-label:active,.form-select-label:active:after,.form-select-label:focus,.form-select-label:focus:after{border-color:#008bdb}.form-select-label:after{background:#e3e3e3;border-left:1px solid #adadad;bottom:0;content:'';position:absolute;right:0;top:0;width:2.36em;z-index:-2}.ie9 .form-select-label:after{display:none}.form-select-label:before{border-color:#303030 transparent transparent;border-style:solid;border-width:5px 4px 0;content:'';height:0;margin-right:-4px;margin-top:-2.5px;position:absolute;right:1.18em;top:50%;width:0;z-index:-1}.ie9 .form-select-label:before{display:none}.form-select-label .form-el-select{background:0 0;border:none;border-radius:0;content:'';display:block;margin:0;padding:.35em calc(2.36em + 10%) .5em .55em;width:110%}.ie9 .form-select-label .form-el-select{padding-right:.55em;width:100%}.form-select-label .form-el-select::-ms-expand{display:none}.form-el-select{background:#fff;border:1px solid #adadad;border-radius:2px;color:#303030;display:block;padding:.35em .55em}.multiselect-custom{border:1px solid #adadad;height:45.2rem;margin:0 0 1.5rem;overflow:auto;position:relative}.multiselect-custom ul{margin:0;padding:0;list-style:none;min-width:29rem}.multiselect-custom .item{padding:1rem 1.4rem}.multiselect-custom .selected{background-color:#e0f6fe}.multiselect-custom .form-label{margin-bottom:0}[class*=form-el-].invalid{border-color:#e22626}[class*=form-el-].invalid+.error-container{display:block}.error-container{background-color:#fffbbb;border:1px solid #ee7d7d;color:#514943;display:none;font-size:1.19rem;margin-top:.2rem;padding:.8rem 1rem .9rem}.check-result-message{margin-left:.5em;min-height:3.68rem;-webkit-align-items:center;-ms-align-items:center;-ms-flex-align:center;align-items:center;display:-webkit-flex;display:-ms-flexbox;display:flex}.check-result-text{margin-left:.5em}body:not([class]){min-width:0}.container{display:block;margin:0 auto 4rem;max-width:100rem;padding:0}.abs-action-delete,.action-close:before,.action-next:before,.action-previous:before,.admin-user .admin__action-dropdown:before,.admin__action-multiselect-dropdown:before,.admin__action-multiselect-search-label:before,.admin__control-checkbox+label:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:before,.admin__control-table .action-delete:before,.admin__current-filters-list .action-remove:before,.admin__data-grid-action-bookmarks .action-delete:before,.admin__data-grid-action-bookmarks .action-edit:before,.admin__data-grid-action-bookmarks .action-submit:before,.admin__data-grid-action-bookmarks .admin__action-dropdown:before,.admin__data-grid-action-columns .admin__action-dropdown:before,.admin__data-grid-action-export .admin__action-dropdown:before,.admin__field-fallback-reset:before,.admin__menu .level-0>a:before,.admin__page-nav-item-message .admin__page-nav-item-message-icon,.admin__page-nav-title._collapsible:after,.data-grid-filters-action-wrap .action-default:before,.data-grid-row-changed:after,.data-grid-row-parent>td .data-grid-checkbox-cell-inner:before,.data-grid-search-control-wrap .action-submit:before,.icon-failed:before,.icon-success:before,.notifications-action:before,.notifications-close:before,.page-actions .page-actions-buttons>button.action-back:before,.page-actions .page-actions-buttons>button.back:before,.page-actions>button.action-back:before,.page-actions>button.back:before,.page-title-jumbo-success:before,.search-global-label:before,.selectmenu .action-delete:before,.selectmenu .action-edit:before,.selectmenu .action-save:before,.setup-home-item:before,.sticky-header .data-grid-search-control-wrap .data-grid-search-label:before,.store-switcher .dropdown-menu .dropdown-toolbar a:before,.tooltip .help a:before,.tooltip .help span:before{-webkit-font-smoothing:antialiased;font-family:Icons;font-style:normal;font-weight:400;line-height:1;speak:none}.text-stretch{margin-bottom:1.5em}.page-title-jumbo{font-size:4rem;font-weight:300;letter-spacing:-.05em;margin-bottom:2.9rem}.page-title-jumbo-success:before{color:#79a22e;content:'\e62d';font-size:3.9rem;margin-left:-.3rem;margin-right:2.4rem}.list{margin-bottom:3rem}.list-dot .list-item{display:list-item;list-style-position:inside;margin-bottom:1.2rem}.list-title{color:#333;font-size:1.4rem;font-weight:700;letter-spacing:.025em;margin-bottom:1.2rem}.list-item-failed:before,.list-item-success:before,.list-item-warning:before{font-family:Icons;font-size:1.6rem;top:0}.list-item-success:before{content:'\e62d';font-size:1.6rem}.list-item-failed:before{content:'\e632';font-size:1.4rem;left:.1rem;top:.2rem}.list-item-warning:before{content:'\e623';font-size:1.3rem;left:.2rem}.form-wrap{margin-bottom:3.6rem;padding-top:2.1rem}.form-el-label-horizontal{display:inline-block;font-size:1.3rem;font-weight:600;letter-spacing:.025em;margin-bottom:.4rem;margin-left:.4rem}.app-updater{min-width:768px}body._has-modal{height:100%;overflow:hidden;width:100%}.modals-overlay{z-index:899}.modal-popup,.modal-slide{bottom:0;min-width:0;position:fixed;right:0;top:0;visibility:hidden}.modal-popup._show,.modal-slide._show{visibility:visible}.modal-popup._show .modal-inner-wrap,.modal-slide._show .modal-inner-wrap{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-popup .modal-inner-wrap,.modal-slide .modal-inner-wrap{background-color:#fff;box-shadow:0 0 12px 2px rgba(0,0,0,.35);opacity:1;pointer-events:auto}.modal-slide{left:14.8rem;z-index:900}.modal-slide._show .modal-inner-wrap{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.modal-slide .modal-inner-wrap{height:100%;overflow-y:auto;position:static;-webkit-transform:translateX(100%);-ms-transform:translateX(100%);transform:translateX(100%);transition-duration:.3s;transition-property:-webkit-transform,visibility;transition-property:transform,visibility;transition-timing-function:ease-in-out;width:auto}.modal-slide._inner-scroll .modal-inner-wrap{overflow-y:visible;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.modal-slide._inner-scroll .modal-footer,.modal-slide._inner-scroll .modal-header{-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.modal-slide._inner-scroll .modal-content{overflow-y:auto}.modal-slide._inner-scroll .modal-footer{margin-top:auto}.modal-slide .modal-content,.modal-slide .modal-footer,.modal-slide .modal-header{padding:0 2.6rem 2.6rem}.modal-slide .modal-header{padding-bottom:2.1rem;padding-top:2.1rem}.modal-popup{z-index:900;left:0;overflow-y:auto}.modal-popup._show .modal-inner-wrap{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}.modal-popup .modal-inner-wrap{margin:5rem auto;width:75%;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;height:auto;left:0;position:absolute;right:0;-webkit-transform:translateY(-200%);-ms-transform:translateY(-200%);transform:translateY(-200%);transition-duration:.2s;transition-property:-webkit-transform,visibility;transition-property:transform,visibility;transition-timing-function:ease}.modal-popup._inner-scroll{overflow-y:visible}.ie10 .modal-popup._inner-scroll,.ie9 .modal-popup._inner-scroll{overflow-y:auto}.modal-popup._inner-scroll .modal-inner-wrap{max-height:90%}.ie10 .modal-popup._inner-scroll .modal-inner-wrap,.ie9 .modal-popup._inner-scroll .modal-inner-wrap{max-height:none}.modal-popup._inner-scroll .modal-content{overflow-y:auto}.modal-popup .modal-content,.modal-popup .modal-footer,.modal-popup .modal-header{padding-left:3rem;padding-right:3rem}.modal-popup .modal-footer,.modal-popup .modal-header{-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.modal-popup .modal-header{padding-bottom:1.2rem;padding-top:3rem}.modal-popup .modal-footer{margin-top:auto;padding-bottom:3rem}.modal-popup .modal-footer-actions{text-align:right}@media (max-width:768px){.modal-popup.modal-slide{left:14.8rem;z-index:900}.modal-popup.modal-slide._show .modal-inner-wrap{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}.modal-popup.modal-slide .modal-inner-wrap{height:100%;overflow-y:auto;position:static;-webkit-transform:translateX(100%);-ms-transform:translateX(100%);transform:translateX(100%);transition-duration:.3s;transition-property:-webkit-transform,visibility;transition-property:transform,visibility;transition-timing-function:ease-in-out;width:auto;margin:0;max-height:none}}.admin__action-dropdown-wrap{display:inline-block;position:relative}.admin__action-dropdown-wrap .admin__action-dropdown-text:after{left:-6px;right:0}.admin__action-dropdown-wrap .admin__action-dropdown-menu{left:auto;right:0}.admin__action-dropdown-wrap._active .admin__action-dropdown,.admin__action-dropdown-wrap.active .admin__action-dropdown{border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.admin__action-dropdown-wrap._active .admin__action-dropdown-text:after,.admin__action-dropdown-wrap.active .admin__action-dropdown-text:after{background-color:#fff;content:'';height:6px;position:absolute;top:100%}.admin__action-dropdown-wrap._active .admin__action-dropdown-menu,.admin__action-dropdown-wrap.active .admin__action-dropdown-menu{display:block}.admin__action-dropdown-wrap._disabled .admin__action-dropdown{cursor:default}.admin__action-dropdown-wrap._disabled:hover .admin__action-dropdown{color:#333}.admin__action-dropdown{background-color:#fff;border:1px solid transparent;border-bottom:none;border-radius:0;box-shadow:none;color:#333;display:inline-block;font-size:1.3rem;font-weight:400;letter-spacing:-.025em;padding:.7rem 3.3rem .8rem 1.5rem;position:relative;vertical-align:baseline;z-index:2}.admin__action-dropdown._active:after,.admin__action-dropdown.active:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin__action-dropdown:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;top:50%;transition:all .2s linear;width:0}._active .admin__action-dropdown:after,.active .admin__action-dropdown:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin__action-dropdown:hover:after{border-color:#000 transparent transparent}.admin__action-dropdown:focus,.admin__action-dropdown:hover{background-color:#fff;color:#000;text-decoration:none}.admin__action-dropdown:after{right:1.5rem}.admin__action-dropdown:before{margin-right:1rem}.admin__action-dropdown-menu{background-color:#fff;border:1px solid #007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5);display:none;line-height:1.36;margin-top:-1px;min-width:120%;padding:.5rem 1rem;position:absolute;top:100%;transition:all .15s ease;z-index:1}.admin__action-dropdown-menu>li{display:block}.admin__action-dropdown-menu>li>a{color:#333;display:block;text-decoration:none;padding:.6rem .5rem}.selectmenu{display:inline-block;position:relative;text-align:left;z-index:1}.selectmenu._active{border-color:#007bdb;z-index:500}.selectmenu .action-delete,.selectmenu .action-edit,.selectmenu .action-save{background-color:transparent;border-color:transparent;box-shadow:none;padding:0 1rem}.selectmenu .action-delete:hover,.selectmenu .action-edit:hover,.selectmenu .action-save:hover{background-color:transparent;border-color:transparent;box-shadow:none}.selectmenu .action-delete:before,.selectmenu .action-edit:before,.selectmenu .action-save:before{content:'\e630'}.selectmenu .action-delete,.selectmenu .action-edit{border:0 solid #fff;border-left-width:1px;bottom:0;position:absolute;right:0;top:0;z-index:1}.selectmenu .action-delete:hover,.selectmenu .action-edit:hover{border:0 solid #fff;border-left-width:1px}.selectmenu .action-save:before{content:'\e625'}.selectmenu .action-edit:before{content:'\e631'}.selectmenu-value{display:inline-block}.selectmenu-value input[type=text]{-moz-appearance:none;-webkit-appearance:none;appearance:none;border:0;display:inline;margin:0;width:6rem}body._keyfocus .selectmenu-value input[type=text]:focus{box-shadow:none}.selectmenu-toggle{padding-right:3rem;background:0 0;border-width:0;bottom:0;float:right;position:absolute;right:0;top:0;width:0}.selectmenu-toggle._active:after,.selectmenu-toggle.active:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.selectmenu-toggle:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.1rem;top:50%;transition:all .2s linear;width:0}._active .selectmenu-toggle:after,.active .selectmenu-toggle:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.selectmenu-toggle:hover:after{border-color:#000 transparent transparent}.selectmenu-toggle:active,.selectmenu-toggle:focus,.selectmenu-toggle:hover{background:0 0}.selectmenu._active .selectmenu-toggle:before{border-color:#007bdb}body._keyfocus .selectmenu-toggle:focus{box-shadow:none}.selectmenu-toggle:before{background:#e3e3e3;border-left:1px solid #adadad;bottom:0;content:'';display:block;position:absolute;right:0;top:0;width:3.2rem}.selectmenu-items{background:#fff;border:1px solid #007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5);display:none;float:left;left:-1px;margin-top:3px;max-width:20rem;min-width:calc(100% + 2px);position:absolute;top:100%}.selectmenu-items._active{display:block}.selectmenu-items ul{float:left;list-style-type:none;margin:0;min-width:100%;padding:0}.selectmenu-items li{display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;transition:background .2s linear}.selectmenu-items li:hover{background:#e3e3e3}.selectmenu-items li:last-child .selectmenu-item-action,.selectmenu-items li:last-child .selectmenu-item-action:visited{color:#008bdb;text-decoration:none}.selectmenu-items li:last-child .selectmenu-item-action:hover{color:#0fa7ff;text-decoration:underline}.selectmenu-items li:last-child .selectmenu-item-action:active{color:#ff5501;text-decoration:underline}.selectmenu-item{position:relative;width:100%;z-index:1}li._edit>.selectmenu-item{display:none}.selectmenu-item-edit{display:none;padding:.3rem 4rem .3rem .4rem;position:relative;white-space:nowrap;z-index:1}li:last-child .selectmenu-item-edit{padding-right:.4rem}.selectmenu-item-edit .admin__control-text{margin:0;width:5.4rem}li._edit .selectmenu-item-edit{display:block}.selectmenu-item-action{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:0 0;border:0;color:#333;display:block;font-size:1.4rem;font-weight:400;min-width:100%;padding:1rem 6rem 1rem 1.5rem;text-align:left;transition:background .2s linear;width:5rem}.selectmenu-item-action:focus,.selectmenu-item-action:hover{background:#e3e3e3}.abs-actions-split-xl .action-default,.page-actions .actions-split .action-default{margin-right:4rem}.abs-actions-split-xl .action-toggle,.page-actions .actions-split .action-toggle{padding-right:4rem}.abs-actions-split-xl .action-toggle:after,.page-actions .actions-split .action-toggle:after{border-width:.9rem .6rem 0;margin-top:-.3rem;right:1.4rem}.actions-split{position:relative;z-index:400}.actions-split._active,.actions-split.active,.actions-split:hover{box-shadow:0 0 0 1px #007bdb}.actions-split._active .action-toggle.action-primary,.actions-split._active .action-toggle.primary,.actions-split.active .action-toggle.action-primary,.actions-split.active .action-toggle.primary{background-color:#ba4000;border-color:#ba4000}.actions-split._active .dropdown-menu,.actions-split.active .dropdown-menu{opacity:1;visibility:visible;display:block}.actions-split .action-default,.actions-split .action-toggle{float:left;margin:0}.actions-split .action-default._active,.actions-split .action-default.active,.actions-split .action-default:hover,.actions-split .action-toggle._active,.actions-split .action-toggle.active,.actions-split .action-toggle:hover{box-shadow:none}.actions-split .action-default{margin-right:3.2rem;min-width:9.3rem}.actions-split .action-toggle{padding-right:3.2rem;border-left-color:rgba(0,0,0,.2);bottom:0;padding-left:0;position:absolute;right:0;top:0}.actions-split .action-toggle._active:after,.actions-split .action-toggle.active:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.actions-split .action-toggle:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.2rem;top:50%;transition:all .2s linear;width:0}._active .actions-split .action-toggle:after,.active .actions-split .action-toggle:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.actions-split .action-toggle:hover:after{border-color:#000 transparent transparent}.actions-split .action-toggle.action-primary:after,.actions-split .action-toggle.action-secondary:after,.actions-split .action-toggle.primary:after,.actions-split .action-toggle.secondary:after{border-color:#fff transparent transparent}.actions-split .action-toggle>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.action-select-wrap{display:inline-block;position:relative}.action-select-wrap .action-select{padding-right:3.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:#fff;font-weight:400;text-align:left}.action-select-wrap .action-select._active:after,.action-select-wrap .action-select.active:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-select-wrap .action-select:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.2rem;top:50%;transition:all .2s linear;width:0}._active .action-select-wrap .action-select:after,.active .action-select-wrap .action-select:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-select-wrap .action-select:hover:after{border-color:#000 transparent transparent}.action-select-wrap .action-select:hover,.action-select-wrap .action-select:hover:before{border-color:#878787}.action-select-wrap .action-select:before{background-color:#e3e3e3;border:1px solid #adadad;bottom:0;content:'';position:absolute;right:0;top:0;width:3.2rem}.action-select-wrap .action-select._active{border-color:#007bdb}.action-select-wrap .action-select._active:before{border-color:#007bdb #007bdb #007bdb #adadad}.action-select-wrap .action-select[disabled]{color:#333}.action-select-wrap .action-select[disabled]:after{border-color:#333 transparent transparent}.action-select-wrap._active{z-index:500}.action-select-wrap._active .action-select,.action-select-wrap._active .action-select:before{border-color:#007bdb}.action-select-wrap._active .action-select:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-select-wrap .abs-action-menu .action-submenu,.action-select-wrap .abs-action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu,.action-select-wrap .action-menu .action-submenu,.action-select-wrap .actions-split .action-menu .action-submenu,.action-select-wrap .actions-split .action-menu .action-submenu .action-submenu,.action-select-wrap .actions-split .dropdown-menu .action-submenu,.action-select-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{max-height:45rem;overflow-y:auto}.action-select-wrap .action-menu-items{left:0;position:absolute;right:0;top:100%}.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu,.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.action-menu,.action-select-wrap .action-menu-items>.action-menu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu .action-submenu{min-width:100%;position:static}.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.action-menu .action-submenu,.action-select-wrap .action-menu-items>.action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu .action-submenu .action-submenu{position:absolute}.action-multicheck-wrap{display:inline-block;height:1.6rem;padding-top:1px;position:relative;width:3.1rem;z-index:200}.action-multicheck-wrap:hover .action-multicheck-toggle,.action-multicheck-wrap:hover .admin__control-checkbox+label:before{border-color:#878787}.action-multicheck-wrap._active .action-multicheck-toggle,.action-multicheck-wrap._active .admin__control-checkbox+label:before{border-color:#007bdb}.action-multicheck-wrap._active .abs-action-menu .action-submenu,.action-multicheck-wrap._active .abs-action-menu .action-submenu .action-submenu,.action-multicheck-wrap._active .action-menu,.action-multicheck-wrap._active .action-menu .action-submenu,.action-multicheck-wrap._active .actions-split .action-menu .action-submenu,.action-multicheck-wrap._active .actions-split .action-menu .action-submenu .action-submenu,.action-multicheck-wrap._active .actions-split .dropdown-menu .action-submenu,.action-multicheck-wrap._active .actions-split .dropdown-menu .action-submenu .action-submenu{opacity:1;visibility:visible;display:block}.action-multicheck-wrap._disabled .admin__control-checkbox+label:before{background-color:#fff}.action-multicheck-wrap._disabled .action-multicheck-toggle,.action-multicheck-wrap._disabled .admin__control-checkbox+label:before{border-color:#adadad;opacity:1}.action-multicheck-wrap .action-multicheck-toggle,.action-multicheck-wrap .admin__control-checkbox,.action-multicheck-wrap .admin__control-checkbox+label{float:left}.action-multicheck-wrap .action-multicheck-toggle{border-radius:0 1px 1px 0;height:1.6rem;margin-left:-1px;padding:0;position:relative;transition:border-color .1s linear;width:1.6rem}.action-multicheck-wrap .action-multicheck-toggle._active:after,.action-multicheck-wrap .action-multicheck-toggle.active:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-multicheck-wrap .action-multicheck-toggle:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;top:50%;transition:all .2s linear;width:0}._active .action-multicheck-wrap .action-multicheck-toggle:after,.active .action-multicheck-wrap .action-multicheck-toggle:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-multicheck-wrap .action-multicheck-toggle:hover:after{border-color:#000 transparent transparent}.action-multicheck-wrap .action-multicheck-toggle:focus{border-color:#007bdb}.action-multicheck-wrap .action-multicheck-toggle:after{right:.3rem}.action-multicheck-wrap .abs-action-menu .action-submenu,.action-multicheck-wrap .abs-action-menu .action-submenu .action-submenu,.action-multicheck-wrap .action-menu,.action-multicheck-wrap .action-menu .action-submenu,.action-multicheck-wrap .actions-split .action-menu .action-submenu,.action-multicheck-wrap .actions-split .action-menu .action-submenu .action-submenu,.action-multicheck-wrap .actions-split .dropdown-menu .action-submenu,.action-multicheck-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{left:-1.1rem;margin-top:1px;right:auto;text-align:left}.action-multicheck-wrap .action-menu-item{white-space:nowrap}.admin__action-multiselect-wrap{display:block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.admin__action-multiselect-wrap.action-select-wrap:focus{box-shadow:none}.admin__action-multiselect-wrap.action-select-wrap .abs-action-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .abs-action-menu .action-submenu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .action-menu,.admin__action-multiselect-wrap.action-select-wrap .action-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .action-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .action-menu .action-submenu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .dropdown-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{max-height:none;overflow-y:inherit}.admin__action-multiselect-wrap .action-menu-item{transition:background-color .1s linear}.admin__action-multiselect-wrap .action-menu-item._selected{background-color:#e0f6fe}.admin__action-multiselect-wrap .action-menu-item._hover{background-color:#e3e3e3}.admin__action-multiselect-wrap .action-menu-item._unclickable{cursor:default}.admin__action-multiselect-wrap .admin__action-multiselect{border:1px solid #adadad;cursor:pointer;display:block;min-height:3.2rem;padding-right:3.6rem;white-space:normal}.admin__action-multiselect-wrap .admin__action-multiselect:after{bottom:1.25rem;top:auto}.admin__action-multiselect-wrap .admin__action-multiselect:before{height:3.3rem;top:auto}.admin__control-table-wrapper .admin__action-multiselect-wrap{position:static}.admin__control-table-wrapper .admin__action-multiselect-wrap .admin__action-multiselect{position:relative}.admin__control-table-wrapper .admin__action-multiselect-wrap .admin__action-multiselect:before{right:-1px;top:-1px}.admin__control-table-wrapper .admin__action-multiselect-wrap .abs-action-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .abs-action-menu .action-submenu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .action-menu,.admin__control-table-wrapper .admin__action-multiselect-wrap .action-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .action-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .action-menu .action-submenu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .dropdown-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{left:auto;min-width:34rem;right:auto;top:auto;z-index:1}.admin__action-multiselect-wrap .admin__action-multiselect-item-path{color:#a79d95;font-size:1.2rem;font-weight:400;padding-left:1rem}.admin__action-multiselect-actions-wrap{border-top:1px solid #e3e3e3;margin:0 1rem;padding:1rem 0;text-align:center}.admin__action-multiselect-actions-wrap .action-default{font-size:1.3rem;min-width:13rem}.admin__action-multiselect-text{padding:.6rem 1rem}.abs-action-menu .action-submenu,.abs-action-menu .action-submenu .action-submenu,.action-menu,.action-menu .action-submenu,.actions-split .action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu,.actions-split .dropdown-menu .action-submenu .action-submenu{text-align:left}.admin__action-multiselect-label{cursor:pointer;position:relative;z-index:1}.admin__action-multiselect-label:before{margin-right:.5rem}._unclickable .admin__action-multiselect-label{cursor:default;font-weight:700}.admin__action-multiselect-search-wrap{border-bottom:1px solid #e3e3e3;margin:0 1rem;padding:1rem 0;position:relative}.admin__action-multiselect-search{padding-right:3rem;width:100%}.admin__action-multiselect-search-label{display:block;font-size:1.5rem;height:1em;overflow:hidden;position:absolute;right:2.2rem;top:1.7rem;width:1em}.admin__action-multiselect-search-label:before{content:'\e60c'}.admin__action-multiselect-search-count{color:#a79d95;margin-top:1rem}.admin__action-multiselect-menu-inner{margin-bottom:0;max-height:46rem;overflow-y:auto}.admin__action-multiselect-menu-inner .admin__action-multiselect-menu-inner{list-style:none;max-height:none;overflow:hidden;padding-left:2.2rem}.admin__action-multiselect-menu-inner ._hidden{display:none}.admin__action-multiselect-crumb{background-color:#f5f5f5;border:1px solid #a79d95;border-radius:1px;display:inline-block;font-size:1.2rem;margin:.3rem -4px .3rem .3rem;padding:.3rem 2.4rem .4rem 1rem;position:relative;transition:border-color .1s linear}.admin__action-multiselect-crumb:hover{border-color:#908379}.admin__action-multiselect-crumb .action-close{bottom:0;font-size:.5em;position:absolute;right:0;top:0;width:2rem}.admin__action-multiselect-crumb .action-close:hover{color:#000}.admin__action-multiselect-crumb .action-close:active,.admin__action-multiselect-crumb .action-close:focus{background-color:transparent}.admin__action-multiselect-crumb .action-close:active{-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.admin__action-multiselect-tree .abs-action-menu .action-submenu,.admin__action-multiselect-tree .abs-action-menu .action-submenu .action-submenu,.admin__action-multiselect-tree .action-menu,.admin__action-multiselect-tree .action-menu .action-submenu,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu .action-submenu,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu .action-submenu{min-width:34.7rem}.admin__action-multiselect-tree .abs-action-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .abs-action-menu .action-submenu .action-submenu .action-menu-item,.admin__action-multiselect-tree .action-menu .action-menu-item,.admin__action-multiselect-tree .action-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu .action-submenu .action-menu-item{margin-top:.1rem}.admin__action-multiselect-tree .action-menu-item{margin-left:4.2rem;position:relative}.admin__action-multiselect-tree .action-menu-item._expended:before{border-left:1px dashed #a79d95;bottom:0;content:'';left:-1rem;position:absolute;top:1rem;width:1px}.admin__action-multiselect-tree .action-menu-item._expended .admin__action-multiselect-dropdown:before{content:'\e615'}.admin__action-multiselect-tree .action-menu-item._with-checkbox .admin__action-multiselect-label{padding-left:2.6rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner{position:relative}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner .admin__action-multiselect-menu-inner{padding-left:3.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner .admin__action-multiselect-menu-inner:before{left:4.3rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item{position:relative}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:last-child:before{height:2.1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:after,.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:before{content:'';left:0;position:absolute}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:after{border-top:1px dashed #a79d95;height:1px;top:2.1rem;width:5.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:before{border-left:1px dashed #a79d95;height:100%;top:0;width:1px}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._parent:after{width:4.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root{margin-left:-1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:after{left:3.2rem;width:2.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:before{left:3.2rem;top:1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root._parent:after{display:none}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:first-child:before{top:2.1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:last-child:before{height:1rem}.admin__action-multiselect-tree .admin__action-multiselect-label{line-height:2.2rem;vertical-align:middle;word-break:break-all}.admin__action-multiselect-tree .admin__action-multiselect-label:before{left:0;position:absolute;top:.4rem}.admin__action-multiselect-dropdown{border-radius:50%;height:2.2rem;left:-2.2rem;position:absolute;top:1rem;width:2.2rem;z-index:1}.admin__action-multiselect-dropdown:before{background:#fff;color:#a79d95;content:'\e616';font-size:2.2rem}.admin__actions-switch{display:inline-block;position:relative;vertical-align:middle}.admin__field-control .admin__actions-switch{line-height:3.2rem}.admin__actions-switch+.admin__field-service{min-width:34rem}._disabled .admin__actions-switch-checkbox+.admin__actions-switch-label,.admin__actions-switch-checkbox.disabled+.admin__actions-switch-label{cursor:not-allowed;opacity:.5;pointer-events:none}.admin__actions-switch-checkbox:checked+.admin__actions-switch-label:before{left:15px}.admin__actions-switch-checkbox:checked+.admin__actions-switch-label:after{background:#79a22e}.admin__actions-switch-checkbox:checked+.admin__actions-switch-label .admin__actions-switch-text:before{content:attr(data-text-on)}.admin__actions-switch-checkbox:focus+.admin__actions-switch-label:after,.admin__actions-switch-checkbox:focus+.admin__actions-switch-label:before{border-color:#007bdb}._error .admin__actions-switch-checkbox+.admin__actions-switch-label:after,._error .admin__actions-switch-checkbox+.admin__actions-switch-label:before{border-color:#e22626}.admin__actions-switch-label{cursor:pointer;display:inline-block;height:22px;line-height:22px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.admin__actions-switch-label:after,.admin__actions-switch-label:before{left:0;position:absolute;right:auto;top:0}.admin__actions-switch-label:before{background:#fff;border:1px solid #aaa6a0;border-radius:100%;content:'';display:block;height:22px;transition:left .2s ease-in 0s;width:22px;z-index:1}.admin__actions-switch-label:after{background:#e3e3e3;border:1px solid #aaa6a0;border-radius:12px;content:'';display:block;height:22px;transition:background .2s ease-in 0s;vertical-align:middle;width:37px;z-index:0}.admin__actions-switch-text:before{content:attr(data-text-off);padding-left:47px;white-space:nowrap}.abs-action-delete,.abs-action-reset,.action-close,.admin__field-fallback-reset,.notifications-close,.search-global-field._active .search-global-action{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:0}.abs-action-delete:hover,.abs-action-reset:hover,.action-close:hover,.admin__field-fallback-reset:hover,.notifications-close:hover,.search-global-field._active .search-global-action:hover{background-color:transparent;border:none;box-shadow:none}.abs-action-default,.abs-action-pattern,.abs-action-primary,.abs-action-quaternary,.abs-action-secondary,.abs-action-tertiary,.action-default,.action-primary,.action-quaternary,.action-secondary,.action-tertiary,.modal-popup .modal-footer .action-primary,.modal-popup .modal-footer .action-secondary,.page-actions .page-actions-buttons>button,.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.action-secondary,.page-actions .page-actions-buttons>button.primary,.page-actions>button,.page-actions>button.action-primary,.page-actions>button.action-secondary,.page-actions>button.primary,button,button.primary,button.secondary,button.tertiary{border:1px solid;border-radius:0;display:inline-block;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:600;line-height:1.36;padding:.6rem 1em;text-align:center;vertical-align:baseline}.abs-action-default.disabled,.abs-action-default[disabled],.abs-action-pattern.disabled,.abs-action-pattern[disabled],.abs-action-primary.disabled,.abs-action-primary[disabled],.abs-action-quaternary.disabled,.abs-action-quaternary[disabled],.abs-action-secondary.disabled,.abs-action-secondary[disabled],.abs-action-tertiary.disabled,.abs-action-tertiary[disabled],.action-default.disabled,.action-default[disabled],.action-primary.disabled,.action-primary[disabled],.action-quaternary.disabled,.action-quaternary[disabled],.action-secondary.disabled,.action-secondary[disabled],.action-tertiary.disabled,.action-tertiary[disabled],.modal-popup .modal-footer .action-primary.disabled,.modal-popup .modal-footer .action-primary[disabled],.modal-popup .modal-footer .action-secondary.disabled,.modal-popup .modal-footer .action-secondary[disabled],.page-actions .page-actions-buttons>button.action-primary.disabled,.page-actions .page-actions-buttons>button.action-primary[disabled],.page-actions .page-actions-buttons>button.action-secondary.disabled,.page-actions .page-actions-buttons>button.action-secondary[disabled],.page-actions .page-actions-buttons>button.disabled,.page-actions .page-actions-buttons>button.primary.disabled,.page-actions .page-actions-buttons>button.primary[disabled],.page-actions .page-actions-buttons>button[disabled],.page-actions>button.action-primary.disabled,.page-actions>button.action-primary[disabled],.page-actions>button.action-secondary.disabled,.page-actions>button.action-secondary[disabled],.page-actions>button.disabled,.page-actions>button.primary.disabled,.page-actions>button.primary[disabled],.page-actions>button[disabled],button.disabled,button.primary.disabled,button.primary[disabled],button.secondary.disabled,button.secondary[disabled],button.tertiary.disabled,button.tertiary[disabled],button[disabled]{cursor:default;opacity:.5;pointer-events:none}.abs-action-l,.modal-popup .modal-footer .action-primary,.modal-popup .modal-footer .action-secondary,.page-actions .page-actions-buttons>button,.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.action-secondary,.page-actions .page-actions-buttons>button.primary,.page-actions button,.page-actions>button.action-primary,.page-actions>button.action-secondary,.page-actions>button.primary{font-size:1.6rem;letter-spacing:.025em;padding-bottom:.6875em;padding-top:.6875em}.abs-action-delete{display:inline-block;font-size:1.6rem;margin-left:1.2rem;padding-top:.7rem;text-decoration:none;vertical-align:middle}.abs-action-delete:after{color:#666;content:'\e630'}.abs-action-delete:hover:after{color:#35302c}.abs-action-button-as-link,.action-advanced,.data-grid .action-delete{line-height:1.36;padding:0;color:#008bdb;text-decoration:none;background:0 0;border:0;display:inline;font-weight:400;border-radius:0}.abs-action-button-as-link:visited,.action-advanced:visited,.data-grid .action-delete:visited{color:#008bdb;text-decoration:none}.abs-action-button-as-link:hover,.action-advanced:hover,.data-grid .action-delete:hover{text-decoration:underline}.abs-action-button-as-link:active,.action-advanced:active,.data-grid .action-delete:active{color:#ff5501;text-decoration:underline}.abs-action-button-as-link:hover,.action-advanced:hover,.data-grid .action-delete:hover{color:#0fa7ff}.abs-action-button-as-link:active,.abs-action-button-as-link:focus,.abs-action-button-as-link:hover,.action-advanced:active,.action-advanced:focus,.action-advanced:hover,.data-grid .action-delete:active,.data-grid .action-delete:focus,.data-grid .action-delete:hover{background:0 0;border:0}.abs-action-button-as-link.disabled,.abs-action-button-as-link[disabled],.action-advanced.disabled,.action-advanced[disabled],.data-grid .action-delete.disabled,.data-grid .action-delete[disabled],fieldset[disabled] .abs-action-button-as-link,fieldset[disabled] .action-advanced,fieldset[disabled] .data-grid .action-delete{color:#008bdb;opacity:.5;cursor:default;pointer-events:none;text-decoration:underline}.abs-action-button-as-link:active,.abs-action-button-as-link:not(:focus),.action-advanced:active,.action-advanced:not(:focus),.data-grid .action-delete:active,.data-grid .action-delete:not(:focus){box-shadow:none}.abs-action-button-as-link:focus,.action-advanced:focus,.data-grid .action-delete:focus{color:#0fa7ff}.abs-action-default,button{background:#e3e3e3;border-color:#adadad;color:#514943}.abs-action-default:active,.abs-action-default:focus,.abs-action-default:hover,button:active,button:focus,button:hover{background-color:#dbdbdb;color:#514943;text-decoration:none}.abs-action-primary,.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.primary,.page-actions>button.action-primary,.page-actions>button.primary,button.primary{background-color:#eb5202;border-color:#eb5202;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.abs-action-primary:active,.abs-action-primary:focus,.abs-action-primary:hover,.page-actions .page-actions-buttons>button.action-primary:active,.page-actions .page-actions-buttons>button.action-primary:focus,.page-actions .page-actions-buttons>button.action-primary:hover,.page-actions .page-actions-buttons>button.primary:active,.page-actions .page-actions-buttons>button.primary:focus,.page-actions .page-actions-buttons>button.primary:hover,.page-actions>button.action-primary:active,.page-actions>button.action-primary:focus,.page-actions>button.action-primary:hover,.page-actions>button.primary:active,.page-actions>button.primary:focus,.page-actions>button.primary:hover,button.primary:active,button.primary:focus,button.primary:hover{background-color:#ba4000;border-color:#b84002;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.abs-action-primary.disabled,.abs-action-primary[disabled],.page-actions .page-actions-buttons>button.action-primary.disabled,.page-actions .page-actions-buttons>button.action-primary[disabled],.page-actions .page-actions-buttons>button.primary.disabled,.page-actions .page-actions-buttons>button.primary[disabled],.page-actions>button.action-primary.disabled,.page-actions>button.action-primary[disabled],.page-actions>button.primary.disabled,.page-actions>button.primary[disabled],button.primary.disabled,button.primary[disabled]{cursor:default;opacity:.5;pointer-events:none}.abs-action-secondary,.modal-popup .modal-footer .action-primary,.page-actions .page-actions-buttons>button.action-secondary,.page-actions>button.action-secondary,button.secondary{background-color:#514943;border-color:#514943;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.abs-action-secondary:active,.abs-action-secondary:focus,.abs-action-secondary:hover,.modal-popup .modal-footer .action-primary:active,.modal-popup .modal-footer .action-primary:focus,.modal-popup .modal-footer .action-primary:hover,.page-actions .page-actions-buttons>button.action-secondary:active,.page-actions .page-actions-buttons>button.action-secondary:focus,.page-actions .page-actions-buttons>button.action-secondary:hover,.page-actions>button.action-secondary:active,.page-actions>button.action-secondary:focus,.page-actions>button.action-secondary:hover,button.secondary:active,button.secondary:focus,button.secondary:hover{background-color:#35302c;border-color:#35302c;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.abs-action-secondary:active,.modal-popup .modal-footer .action-primary:active,.page-actions .page-actions-buttons>button.action-secondary:active,.page-actions>button.action-secondary:active,button.secondary:active{background-color:#35302c}.abs-action-tertiary,.modal-popup .modal-footer .action-secondary,button.tertiary{background-color:transparent;border-color:transparent;text-shadow:none;color:#008bdb}.abs-action-tertiary:active,.abs-action-tertiary:focus,.abs-action-tertiary:hover,.modal-popup .modal-footer .action-secondary:active,.modal-popup .modal-footer .action-secondary:focus,.modal-popup .modal-footer .action-secondary:hover,button.tertiary:active,button.tertiary:focus,button.tertiary:hover{background-color:transparent;border-color:transparent;box-shadow:none;color:#0fa7ff;text-decoration:underline}.abs-action-quaternary,.page-actions .page-actions-buttons>button,.page-actions>button{background-color:transparent;border-color:transparent;text-shadow:none;color:#333}.abs-action-quaternary:active,.abs-action-quaternary:focus,.abs-action-quaternary:hover,.page-actions .page-actions-buttons>button:active,.page-actions .page-actions-buttons>button:focus,.page-actions .page-actions-buttons>button:hover,.page-actions>button:active,.page-actions>button:focus,.page-actions>button:hover{background-color:transparent;border-color:transparent;box-shadow:none;color:#1a1a1a}.abs-action-menu,.actions-split .abs-action-menu .action-submenu,.actions-split .abs-action-menu .action-submenu .action-submenu,.actions-split .action-menu,.actions-split .action-menu .action-submenu,.actions-split .actions-split .dropdown-menu .action-submenu,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu,.actions-split .dropdown-menu{text-align:left;background-color:#fff;border:1px solid #007bdb;border-radius:1px;box-shadow:1px 1px 5px rgba(0,0,0,.5);color:#333;display:none;font-weight:400;left:0;list-style:none;margin:2px 0 0;min-width:0;padding:0;position:absolute;right:0;top:100%}.abs-action-menu._active,.actions-split .abs-action-menu .action-submenu .action-submenu._active,.actions-split .abs-action-menu .action-submenu._active,.actions-split .action-menu .action-submenu._active,.actions-split .action-menu._active,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu._active,.actions-split .actions-split .dropdown-menu .action-submenu._active,.actions-split .dropdown-menu._active{display:block}.abs-action-menu>li,.actions-split .abs-action-menu .action-submenu .action-submenu>li,.actions-split .abs-action-menu .action-submenu>li,.actions-split .action-menu .action-submenu>li,.actions-split .action-menu>li,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li,.actions-split .actions-split .dropdown-menu .action-submenu>li,.actions-split .dropdown-menu>li{border:none;display:block;padding:0;transition:background-color .1s linear}.abs-action-menu>li>a:hover,.actions-split .abs-action-menu .action-submenu .action-submenu>li>a:hover,.actions-split .abs-action-menu .action-submenu>li>a:hover,.actions-split .action-menu .action-submenu>li>a:hover,.actions-split .action-menu>li>a:hover,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li>a:hover,.actions-split .actions-split .dropdown-menu .action-submenu>li>a:hover,.actions-split .dropdown-menu>li>a:hover{text-decoration:none}.abs-action-menu>li._visible,.abs-action-menu>li:hover,.actions-split .abs-action-menu .action-submenu .action-submenu>li._visible,.actions-split .abs-action-menu .action-submenu .action-submenu>li:hover,.actions-split .abs-action-menu .action-submenu>li._visible,.actions-split .abs-action-menu .action-submenu>li:hover,.actions-split .action-menu .action-submenu>li._visible,.actions-split .action-menu .action-submenu>li:hover,.actions-split .action-menu>li._visible,.actions-split .action-menu>li:hover,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li._visible,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li:hover,.actions-split .actions-split .dropdown-menu .action-submenu>li._visible,.actions-split .actions-split .dropdown-menu .action-submenu>li:hover,.actions-split .dropdown-menu>li._visible,.actions-split .dropdown-menu>li:hover{background-color:#e3e3e3}.abs-action-menu>li:active,.actions-split .abs-action-menu .action-submenu .action-submenu>li:active,.actions-split .abs-action-menu .action-submenu>li:active,.actions-split .action-menu .action-submenu>li:active,.actions-split .action-menu>li:active,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li:active,.actions-split .actions-split .dropdown-menu .action-submenu>li:active,.actions-split .dropdown-menu>li:active{background-color:#cacaca}.abs-action-menu>li._parent,.actions-split .abs-action-menu .action-submenu .action-submenu>li._parent,.actions-split .abs-action-menu .action-submenu>li._parent,.actions-split .action-menu .action-submenu>li._parent,.actions-split .action-menu>li._parent,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li._parent,.actions-split .actions-split .dropdown-menu .action-submenu>li._parent,.actions-split .dropdown-menu>li._parent{display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.abs-action-menu>li._parent>.action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .abs-action-menu .action-submenu>li._parent>.action-menu-item,.actions-split .action-menu .action-submenu>li._parent>.action-menu-item,.actions-split .action-menu>li._parent>.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu>li._parent>.action-menu-item,.actions-split .dropdown-menu>li._parent>.action-menu-item{min-width:100%}.abs-action-menu .action-menu-item,.abs-action-menu .item,.actions-split .abs-action-menu .action-submenu .action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu .action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu .item,.actions-split .abs-action-menu .action-submenu .item,.actions-split .action-menu .action-menu-item,.actions-split .action-menu .action-submenu .action-menu-item,.actions-split .action-menu .action-submenu .item,.actions-split .action-menu .item,.actions-split .actions-split .dropdown-menu .action-submenu .action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu .action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu .item,.actions-split .actions-split .dropdown-menu .action-submenu .item,.actions-split .dropdown-menu .action-menu-item,.actions-split .dropdown-menu .item{cursor:pointer;display:block;padding:.6875em 1em}.abs-action-menu .action-submenu,.actions-split .action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu{bottom:auto;left:auto;margin-left:0;margin-top:-1px;position:absolute;right:auto;top:auto}.ie9 .abs-action-menu .action-submenu,.ie9 .actions-split .abs-action-menu .action-submenu .action-submenu,.ie9 .actions-split .abs-action-menu .action-submenu .action-submenu .action-submenu,.ie9 .actions-split .action-menu .action-submenu,.ie9 .actions-split .action-menu .action-submenu .action-submenu,.ie9 .actions-split .actions-split .dropdown-menu .action-submenu .action-submenu,.ie9 .actions-split .actions-split .dropdown-menu .action-submenu .action-submenu .action-submenu,.ie9 .actions-split .dropdown-menu .action-submenu{margin-left:99%;margin-top:-3.5rem}.abs-action-menu a.action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .abs-action-menu .action-submenu a.action-menu-item,.actions-split .action-menu .action-submenu a.action-menu-item,.actions-split .action-menu a.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu a.action-menu-item,.actions-split .dropdown-menu a.action-menu-item{color:#333}.abs-action-menu a.action-menu-item:focus,.actions-split .abs-action-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .abs-action-menu .action-submenu a.action-menu-item:focus,.actions-split .action-menu .action-submenu a.action-menu-item:focus,.actions-split .action-menu a.action-menu-item:focus,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .actions-split .dropdown-menu .action-submenu a.action-menu-item:focus,.actions-split .dropdown-menu a.action-menu-item:focus{background-color:#e3e3e3;box-shadow:none}.abs-action-wrap-triangle{position:relative}.abs-action-wrap-triangle .action-default{width:100%}.abs-action-wrap-triangle .action-default:after,.abs-action-wrap-triangle .action-default:before{border-style:solid;content:'';height:0;position:absolute;top:0;width:0}.abs-action-wrap-triangle .action-default:active,.abs-action-wrap-triangle .action-default:focus,.abs-action-wrap-triangle .action-default:hover{box-shadow:none}._keyfocus .abs-action-wrap-triangle .action-default:focus{box-shadow:0 0 0 1px #007bdb}.ie10 .abs-action-wrap-triangle .action-default.disabled,.ie10 .abs-action-wrap-triangle .action-default[disabled],.ie9 .abs-action-wrap-triangle .action-default.disabled,.ie9 .abs-action-wrap-triangle .action-default[disabled]{background-color:#fcfcfc;opacity:1;text-shadow:none}.abs-action-wrap-triangle-right{display:inline-block;padding-right:1.6rem;position:relative}.abs-action-wrap-triangle-right .action-default:after,.abs-action-wrap-triangle-right .action-default:before{border-color:transparent transparent transparent #e3e3e3;border-width:1.7rem 0 1.6rem 1.7rem;left:100%;margin-left:-1.7rem}.abs-action-wrap-triangle-right .action-default:before{border-left-color:#949494;right:-1px}.abs-action-wrap-triangle-right .action-default:active:after,.abs-action-wrap-triangle-right .action-default:focus:after,.abs-action-wrap-triangle-right .action-default:hover:after{border-left-color:#dbdbdb}.ie10 .abs-action-wrap-triangle-right .action-default.disabled:after,.ie10 .abs-action-wrap-triangle-right .action-default[disabled]:after,.ie9 .abs-action-wrap-triangle-right .action-default.disabled:after,.ie9 .abs-action-wrap-triangle-right .action-default[disabled]:after{border-color:transparent transparent transparent #fcfcfc}.abs-action-wrap-triangle-right .action-primary:after{border-color:transparent transparent transparent #eb5202}.abs-action-wrap-triangle-right .action-primary:active:after,.abs-action-wrap-triangle-right .action-primary:focus:after,.abs-action-wrap-triangle-right .action-primary:hover:after{border-left-color:#ba4000}.abs-action-wrap-triangle-left{display:inline-block;padding-left:1.6rem}.abs-action-wrap-triangle-left .action-default{text-indent:-.85rem}.abs-action-wrap-triangle-left .action-default:after,.abs-action-wrap-triangle-left .action-default:before{border-color:transparent #e3e3e3 transparent transparent;border-width:1.7rem 1.7rem 1.6rem 0;margin-right:-1.7rem;right:100%}.abs-action-wrap-triangle-left .action-default:before{border-right-color:#949494;left:-1px}.abs-action-wrap-triangle-left .action-default:active:after,.abs-action-wrap-triangle-left .action-default:focus:after,.abs-action-wrap-triangle-left .action-default:hover:after{border-right-color:#dbdbdb}.ie10 .abs-action-wrap-triangle-left .action-default.disabled:after,.ie10 .abs-action-wrap-triangle-left .action-default[disabled]:after,.ie9 .abs-action-wrap-triangle-left .action-default.disabled:after,.ie9 .abs-action-wrap-triangle-left .action-default[disabled]:after{border-color:transparent #fcfcfc transparent transparent}.abs-action-wrap-triangle-left .action-primary:after{border-color:transparent #eb5202 transparent transparent}.abs-action-wrap-triangle-left .action-primary:active:after,.abs-action-wrap-triangle-left .action-primary:focus:after,.abs-action-wrap-triangle-left .action-primary:hover:after{border-right-color:#ba4000}.action-default,button{background:#e3e3e3;border-color:#adadad;color:#514943}.action-default:active,.action-default:focus,.action-default:hover,button:active,button:focus,button:hover{background-color:#dbdbdb;color:#514943;text-decoration:none}.action-primary{background-color:#eb5202;border-color:#eb5202;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.action-primary:active,.action-primary:focus,.action-primary:hover{background-color:#ba4000;border-color:#b84002;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.action-primary.disabled,.action-primary[disabled]{cursor:default;opacity:.5;pointer-events:none}.action-secondary{background-color:#514943;border-color:#514943;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.action-secondary:active,.action-secondary:focus,.action-secondary:hover{background-color:#35302c;border-color:#35302c;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.action-secondary:active{background-color:#35302c}.action-quaternary,.action-tertiary{background-color:transparent;border-color:transparent;text-shadow:none}.action-quaternary:active,.action-quaternary:focus,.action-quaternary:hover,.action-tertiary:active,.action-tertiary:focus,.action-tertiary:hover{background-color:transparent;border-color:transparent;box-shadow:none}.action-tertiary{color:#008bdb}.action-tertiary:active,.action-tertiary:focus,.action-tertiary:hover{color:#0fa7ff;text-decoration:underline}.action-quaternary{color:#333}.action-quaternary:active,.action-quaternary:focus,.action-quaternary:hover{color:#1a1a1a}.action-close>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.action-close:active{-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.action-close:before{content:'\e62f';transition:color .1s linear}.action-close:hover{cursor:pointer;text-decoration:none}.abs-action-menu .action-submenu,.abs-action-menu .action-submenu .action-submenu,.action-menu,.action-menu .action-submenu,.actions-split .action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu,.actions-split .dropdown-menu .action-submenu .action-submenu{background-color:#fff;border:1px solid #007bdb;border-radius:1px;box-shadow:1px 1px 5px rgba(0,0,0,.5);color:#333;display:none;font-weight:400;left:0;list-style:none;margin:2px 0 0;min-width:0;padding:0;position:absolute;right:0;top:100%}.abs-action-menu .action-submenu .action-submenu._active,.abs-action-menu .action-submenu._active,.action-menu .action-submenu._active,.action-menu._active,.actions-split .action-menu .action-submenu .action-submenu._active,.actions-split .action-menu .action-submenu._active,.actions-split .dropdown-menu .action-submenu .action-submenu._active,.actions-split .dropdown-menu .action-submenu._active{display:block}.abs-action-menu .action-submenu .action-submenu>li,.abs-action-menu .action-submenu>li,.action-menu .action-submenu>li,.action-menu>li,.actions-split .action-menu .action-submenu .action-submenu>li,.actions-split .action-menu .action-submenu>li,.actions-split .dropdown-menu .action-submenu .action-submenu>li,.actions-split .dropdown-menu .action-submenu>li{border:none;display:block;padding:0;transition:background-color .1s linear}.abs-action-menu .action-submenu .action-submenu>li>a:hover,.abs-action-menu .action-submenu>li>a:hover,.action-menu .action-submenu>li>a:hover,.action-menu>li>a:hover,.actions-split .action-menu .action-submenu .action-submenu>li>a:hover,.actions-split .action-menu .action-submenu>li>a:hover,.actions-split .dropdown-menu .action-submenu .action-submenu>li>a:hover,.actions-split .dropdown-menu .action-submenu>li>a:hover{text-decoration:none}.abs-action-menu .action-submenu .action-submenu>li._visible,.abs-action-menu .action-submenu .action-submenu>li:hover,.abs-action-menu .action-submenu>li._visible,.abs-action-menu .action-submenu>li:hover,.action-menu .action-submenu>li._visible,.action-menu .action-submenu>li:hover,.action-menu>li._visible,.action-menu>li:hover,.actions-split .action-menu .action-submenu .action-submenu>li._visible,.actions-split .action-menu .action-submenu .action-submenu>li:hover,.actions-split .action-menu .action-submenu>li._visible,.actions-split .action-menu .action-submenu>li:hover,.actions-split .dropdown-menu .action-submenu .action-submenu>li._visible,.actions-split .dropdown-menu .action-submenu .action-submenu>li:hover,.actions-split .dropdown-menu .action-submenu>li._visible,.actions-split .dropdown-menu .action-submenu>li:hover{background-color:#e3e3e3}.abs-action-menu .action-submenu .action-submenu>li:active,.abs-action-menu .action-submenu>li:active,.action-menu .action-submenu>li:active,.action-menu>li:active,.actions-split .action-menu .action-submenu .action-submenu>li:active,.actions-split .action-menu .action-submenu>li:active,.actions-split .dropdown-menu .action-submenu .action-submenu>li:active,.actions-split .dropdown-menu .action-submenu>li:active{background-color:#cacaca}.abs-action-menu .action-submenu .action-submenu>li._parent,.abs-action-menu .action-submenu>li._parent,.action-menu .action-submenu>li._parent,.action-menu>li._parent,.actions-split .action-menu .action-submenu .action-submenu>li._parent,.actions-split .action-menu .action-submenu>li._parent,.actions-split .dropdown-menu .action-submenu .action-submenu>li._parent,.actions-split .dropdown-menu .action-submenu>li._parent{display:flex;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row}.abs-action-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.abs-action-menu .action-submenu>li._parent>.action-menu-item,.action-menu .action-submenu>li._parent>.action-menu-item,.action-menu>li._parent>.action-menu-item,.actions-split .action-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .action-menu .action-submenu>li._parent>.action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .dropdown-menu .action-submenu>li._parent>.action-menu-item{min-width:100%}.abs-action-menu .action-submenu .action-menu-item,.abs-action-menu .action-submenu .action-submenu .action-menu-item,.abs-action-menu .action-submenu .action-submenu .item,.abs-action-menu .action-submenu .item,.action-menu .action-menu-item,.action-menu .action-submenu .action-menu-item,.action-menu .action-submenu .item,.action-menu .item,.actions-split .action-menu .action-submenu .action-menu-item,.actions-split .action-menu .action-submenu .action-submenu .action-menu-item,.actions-split .action-menu .action-submenu .action-submenu .item,.actions-split .action-menu .action-submenu .item,.actions-split .dropdown-menu .action-submenu .action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu .action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu .item,.actions-split .dropdown-menu .action-submenu .item{cursor:pointer;display:block;padding:.6875em 1em}.abs-action-menu .action-submenu .action-submenu,.action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu .action-submenu{bottom:auto;left:auto;margin-left:0;margin-top:-1px;position:absolute;right:auto;top:auto}.ie9 .abs-action-menu .action-submenu .action-submenu,.ie9 .abs-action-menu .action-submenu .action-submenu .action-submenu,.ie9 .action-menu .action-submenu,.ie9 .action-menu .action-submenu .action-submenu,.ie9 .actions-split .action-menu .action-submenu .action-submenu,.ie9 .actions-split .action-menu .action-submenu .action-submenu .action-submenu,.ie9 .actions-split .dropdown-menu .action-submenu .action-submenu,.ie9 .actions-split .dropdown-menu .action-submenu .action-submenu .action-submenu{margin-left:99%;margin-top:-3.5rem}.abs-action-menu .action-submenu .action-submenu a.action-menu-item,.abs-action-menu .action-submenu a.action-menu-item,.action-menu .action-submenu a.action-menu-item,.action-menu a.action-menu-item,.actions-split .action-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .action-menu .action-submenu a.action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .dropdown-menu .action-submenu a.action-menu-item{color:#333}.abs-action-menu .action-submenu .action-submenu a.action-menu-item:focus,.abs-action-menu .action-submenu a.action-menu-item:focus,.action-menu .action-submenu a.action-menu-item:focus,.action-menu a.action-menu-item:focus,.actions-split .action-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .action-menu .action-submenu a.action-menu-item:focus,.actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .dropdown-menu .action-submenu a.action-menu-item:focus{background-color:#e3e3e3;box-shadow:none}.messages .message:last-child{margin:0 0 2rem}.message{background:#fffbbb;border:none;border-radius:0;color:#333;font-size:1.4rem;margin:0 0 1px;padding:1.8rem 4rem 1.8rem 5.5rem;position:relative;text-shadow:none}.message:before{background:0 0;border:0;color:#007bdb;content:'\e61a';font-family:Icons;font-size:1.9rem;font-style:normal;font-weight:400;height:auto;left:1.9rem;line-height:inherit;margin-top:-1.3rem;position:absolute;speak:none;text-shadow:none;top:50%;width:auto}.message-notice:before{color:#007bdb;content:'\e61a'}.message-warning:before{color:#eb5202;content:'\e623'}.message-error{background:#fcc}.message-error:before{color:#e22626;content:'\e632';font-size:1.5rem;left:2.2rem;margin-top:-1rem}.message-success:before{color:#79a22e;content:'\e62d'}.message-spinner:before{display:none}.message-spinner .spinner{font-size:2.5rem;left:1.5rem;position:absolute;top:1.5rem}.message-in-rating-edit{margin-left:1.8rem;margin-right:1.8rem}.modal-popup .action-close,.modal-slide .action-close{color:#736963;position:absolute;right:0;top:0;z-index:1}.modal-popup .action-close:active,.modal-slide .action-close:active{-webkit-transform:none;-ms-transform:none;transform:none}.modal-popup .action-close:active:before,.modal-slide .action-close:active:before{font-size:1.8rem}.modal-popup .action-close:hover:before,.modal-slide .action-close:hover:before{color:#58504b}.modal-popup .action-close:before,.modal-slide .action-close:before{font-size:2rem}.modal-popup .action-close:focus,.modal-slide .action-close:focus{background-color:transparent}.modal-popup.prompt .prompt-message{padding:2rem 0}.modal-popup.prompt .prompt-message input{width:100%}.modal-popup.confirm .modal-inner-wrap .message,.modal-popup.prompt .modal-inner-wrap .message{background:#fff}.modal-popup.modal-system-messages .modal-inner-wrap{background:#fffbbb}.modal-popup._image-box .modal-inner-wrap{margin:5rem auto;max-width:78rem;position:static}.modal-popup._image-box .thumbnail-preview{padding-bottom:3rem;text-align:center}.modal-popup._image-box .thumbnail-preview .thumbnail-preview-image-block{border:1px solid #ccc;margin:0 auto 2rem;max-width:58rem;padding:2rem}.modal-popup._image-box .thumbnail-preview .thumbnail-preview-image{max-height:54rem}.modal-popup .modal-title{font-size:2.4rem;margin-right:6.4rem}.modal-popup .modal-footer{padding-top:2.6rem;text-align:right}.modal-popup .action-close{padding:3rem}.modal-popup .action-close:active,.modal-popup .action-close:focus{background:0 0;padding-right:3.1rem;padding-top:3.1rem}.modal-slide .modal-content-new-attribute{-webkit-overflow-scrolling:touch;overflow:auto;padding-bottom:0}.modal-slide .modal-content-new-attribute iframe{margin-bottom:-2.5rem}.modal-slide .modal-title{font-size:2.1rem;margin-right:5.7rem}.modal-slide .action-close{padding:2.1rem 2.6rem}.modal-slide .action-close:active{padding-right:2.7rem;padding-top:2.2rem}.modal-slide .page-main-actions{margin-bottom:.6rem;margin-top:2.1rem}.modal-slide .magento-message{padding:0 3rem 3rem;position:relative}.modal-slide .magento-message .insert-title-inner,.modal-slide .main-col .insert-title-inner{border-bottom:1px solid #adadad;margin:0 0 2rem;padding-bottom:.5rem}.modal-slide .magento-message .insert-actions,.modal-slide .main-col .insert-actions{float:right}.modal-slide .magento-message .title,.modal-slide .main-col .title{font-size:1.6rem;padding-top:.5rem}.modal-slide .main-col,.modal-slide .side-col{float:left;padding-bottom:0}.modal-slide .main-col:after,.modal-slide .side-col:after{display:none}.modal-slide .side-col{width:20%}.modal-slide .main-col{padding-right:0;width:80%}.modal-slide .content-footer .form-buttons{float:right}.modal-title{font-weight:400;margin-bottom:0;min-height:1em}.modal-title span{font-size:1.4rem;font-style:italic;margin-left:1rem}.spinner{display:inline-block;font-size:4rem;height:1em;margin-right:1.5rem;position:relative;width:1em}.spinner>span:nth-child(1){-webkit-animation-delay:.27s;animation-delay:.27s;-webkit-transform:rotate(-315deg);-ms-transform:rotate(-315deg);transform:rotate(-315deg)}.spinner>span:nth-child(2){-webkit-animation-delay:.36s;animation-delay:.36s;-webkit-transform:rotate(-270deg);-ms-transform:rotate(-270deg);transform:rotate(-270deg)}.spinner>span:nth-child(3){-webkit-animation-delay:.45s;animation-delay:.45s;-webkit-transform:rotate(-225deg);-ms-transform:rotate(-225deg);transform:rotate(-225deg)}.spinner>span:nth-child(4){-webkit-animation-delay:.54s;animation-delay:.54s;-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.spinner>span:nth-child(5){-webkit-animation-delay:.63s;animation-delay:.63s;-webkit-transform:rotate(-135deg);-ms-transform:rotate(-135deg);transform:rotate(-135deg)}.spinner>span:nth-child(6){-webkit-animation-delay:.72s;animation-delay:.72s;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.spinner>span:nth-child(7){-webkit-animation-delay:.81s;animation-delay:.81s;-webkit-transform:rotate(-45deg);-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.spinner>span:nth-child(8){-webkit-animation-delay:.9;animation-delay:.9;-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}@-webkit-keyframes fade{0%{background-color:#514943}100%{background-color:#fff}}@keyframes fade{0%{background-color:#514943}100%{background-color:#fff}}.spinner>span{-webkit-transform:scale(0.4);-ms-transform:scale(0.4);transform:scale(0.4);-webkit-animation-name:fade;animation-name:fade;-webkit-animation-duration:.72s;animation-duration:.72s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-direction:linear;animation-direction:linear;background-color:#fff;border-radius:6px;clip:rect(0 .28571429em .1em 0);height:.1em;margin-top:.5em;position:absolute;width:1em}.ie9 .spinner{background:url(../images/ajax-loader.gif) center no-repeat}.ie9 .spinner>span{display:none}.popup-loading{background:rgba(255,255,255,.8);border-color:#ef672f;color:#ef672f;font-size:14px;font-weight:700;left:50%;margin-left:-100px;padding:100px 0 10px;position:fixed;text-align:center;top:40%;width:200px;z-index:1003}.popup-loading:after{background-image:url(../images/loader-1.gif);content:'';height:64px;left:50%;margin:-32px 0 0 -32px;position:absolute;top:40%;width:64px;z-index:2}.loading-mask,.loading-old{background:rgba(255,255,255,.4);bottom:0;left:0;position:fixed;right:0;top:0;z-index:2003}.loading-mask img,.loading-old img{display:none}.loading-mask p,.loading-old p{margin-top:118px}.loading-mask .loader,.loading-old .loader{background:url(../images/loader-1.gif) 50% 30% no-repeat #f7f3eb;border-radius:5px;bottom:0;color:#575757;font-size:14px;font-weight:700;height:160px;left:0;margin:auto;opacity:.95;position:absolute;right:0;text-align:center;top:0;width:160px}.admin-user{float:right;line-height:1.36;margin-left:.3rem;z-index:490}.admin-user._active .admin__action-dropdown,.admin-user.active .admin__action-dropdown{border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.admin-user .admin__action-dropdown{height:3.3rem;padding:.7rem 2.8rem .4rem 4rem}.admin-user .admin__action-dropdown._active:after,.admin-user .admin__action-dropdown.active:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin-user .admin__action-dropdown:after{border-color:#777 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.3rem;top:50%;transition:all .2s linear;width:0}._active .admin-user .admin__action-dropdown:after,.active .admin-user .admin__action-dropdown:after{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin-user .admin__action-dropdown:hover:after{border-color:#000 transparent transparent}.admin-user .admin__action-dropdown:before{color:#777;content:'\e600';font-size:2rem;left:1.1rem;margin-top:-1.1rem;position:absolute;top:50%}.admin-user .admin__action-dropdown:hover:before{color:#333}.admin-user .admin__action-dropdown-menu{min-width:20rem;padding-left:1rem;padding-right:1rem}.admin-user .admin__action-dropdown-menu>li>a{padding-left:.5em;padding-right:1.8rem;transition:background-color .1s linear;white-space:nowrap}.admin-user .admin__action-dropdown-menu>li>a:hover{background-color:#e0f6fe;color:#333}.admin-user .admin__action-dropdown-menu>li>a:active{background-color:#c7effd;bottom:-1px;position:relative}.admin-user .admin__action-dropdown-menu .admin-user-name{text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:20rem;overflow:hidden;vertical-align:top}.admin-user-account-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:11.2rem}.search-global{float:right;margin-right:-.3rem;position:relative;z-index:480}.search-global-field{min-width:5rem}.search-global-field._active .search-global-input{background-color:#fff;border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5);padding-right:4rem;width:25rem}.search-global-field._active .search-global-action{display:block;height:3.3rem;position:absolute;right:0;text-indent:-100%;top:0;width:5rem;z-index:3}.search-global-field .autocomplete-results{height:3.3rem;position:absolute;right:0;top:0;width:25rem}.search-global-field .search-global-menu{border:1px solid #007bdb;border-top-color:transparent;box-shadow:1px 1px 5px rgba(0,0,0,.5);left:0;margin-top:-2px;padding:0;position:absolute;right:0;top:100%;z-index:2}.search-global-field .search-global-menu:after{background-color:#fff;content:'';height:5px;left:0;position:absolute;right:0;top:-5px}.search-global-field .search-global-menu>li{background-color:#fff;border-top:1px solid #ddd;display:block;font-size:1.2rem;padding:.75rem 1.4rem .55rem}.search-global-field .search-global-menu>li._active{background-color:#e0f6fe}.search-global-field .search-global-menu .title{display:block;font-size:1.4rem}.search-global-field .search-global-menu .type{color:#1a1a1a;display:block}.search-global-label{cursor:pointer;height:3.3rem;padding:.75rem 1.4rem .55rem;position:absolute;right:0;top:0;z-index:2}.search-global-label:active{-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.search-global-label:hover:before{color:#000}.search-global-label:before{color:#777;content:'\e60c';font-size:2rem}.search-global-input{background-color:transparent;border:1px solid transparent;font-size:1.4rem;height:3.3rem;padding:.75rem 1.4rem .55rem;position:absolute;right:0;top:0;transition:all .1s linear,width .3s linear;width:5rem;z-index:1}.search-global-action{display:none}.notifications-wrapper{float:right;line-height:1;position:relative}.notifications-wrapper.active{z-index:500}.notifications-wrapper.active .notifications-action{border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.notifications-wrapper.active .notifications-action:after{background-color:#fff;border:none;content:'';display:block;height:6px;left:-6px;margin-top:0;position:absolute;right:0;top:100%;width:auto}.notifications-wrapper .admin__action-dropdown-menu{padding:1rem 0 0;width:32rem}.notifications-action{color:#777;height:3.3rem;padding:.75rem 2rem .65rem}.notifications-action:after{display:none}.notifications-action:before{content:'\e607';font-size:1.9rem;margin-right:0}.notifications-action:active:before{position:relative;top:1px}.notifications-action .notifications-counter{background-color:#e22626;border-radius:1em;color:#fff;display:inline-block;font-size:1.1rem;font-weight:700;left:50%;margin-left:.3em;margin-top:-1.1em;padding:.3em .5em;position:absolute;top:50%}.notifications-entry{line-height:1.36;padding:.6rem 2rem .8rem;position:relative;transition:background-color .1s linear}.notifications-entry:hover{background-color:#e0f6fe}.notifications-entry.notifications-entry-last{margin:0 2rem;padding:.3rem 0 1.3rem;text-align:center}.notifications-entry.notifications-entry-last:hover{background-color:transparent}.notifications-entry+.notifications-entry-last{border-top:1px solid #ddd;padding-bottom:.6rem}.notifications-entry ._cutted{cursor:pointer}.notifications-entry ._cutted .notifications-entry-description-start:after{content:'...'}.notifications-entry-title{color:#ef672f;display:block;font-size:1.1rem;font-weight:700;margin-bottom:.7rem;margin-right:1em}.notifications-entry-description{color:#333;font-size:1.1rem;margin-bottom:.8rem}.notifications-entry-description-end{display:none}.notifications-entry-description-end._show{display:inline}.notifications-entry-time{color:#777;font-size:1.1rem}.notifications-close{line-height:1;padding:1rem;position:absolute;right:0;top:.6rem}.notifications-close:before{color:#ccc;content:'\e620';transition:color .1s linear}.notifications-close:hover:before{color:#b3b3b3}.notifications-close:active{-webkit-transform:scale(0.95);-ms-transform:scale(0.95);transform:scale(0.95)}.page-header-actions{padding-top:1.1rem}.page-header-hgroup{padding-right:1.5rem}.page-title{color:#333;font-size:2.8rem}.page-header{padding:1.5rem 3rem}.menu-wrapper{display:inline-block;position:relative;width:8.8rem;z-index:700}.menu-wrapper:before{background-color:#373330;bottom:0;content:'';left:0;position:fixed;top:0;width:8.8rem;z-index:699}.menu-wrapper._fixed{left:0;position:fixed;top:0}.menu-wrapper._fixed~.page-wrapper{margin-left:8.8rem}.menu-wrapper .logo{display:block;height:8.8rem;padding:2.4rem 0 2.2rem;position:relative;text-align:center;z-index:700}._keyfocus .menu-wrapper .logo:focus{background-color:#4a4542;box-shadow:none}._keyfocus .menu-wrapper .logo:focus+.admin__menu .level-0:first-child>a{background-color:#373330}._keyfocus .menu-wrapper .logo:focus+.admin__menu .level-0:first-child>a:after{display:none}.menu-wrapper .logo:hover .logo-img{-webkit-filter:brightness(1.1);filter:brightness(1.1)}.menu-wrapper .logo:active .logo-img{-webkit-transform:scale(0.95);-ms-transform:scale(0.95);transform:scale(0.95)}.menu-wrapper .logo .logo-img{height:4.2rem;transition:-webkit-filter .2s linear,filter .2s linear,transform .1s linear;width:3.5rem}.abs-menu-separator,.admin__menu .item-partners>a:after,.admin__menu .level-0:first-child>a:after{background-color:#736963;content:'';display:block;height:1px;left:0;margin-left:16%;position:absolute;top:0;width:68%}.admin__menu li{display:block}.admin__menu .level-0:first-child>a{position:relative}.admin__menu .level-0._active>a,.admin__menu .level-0:hover>a{color:#f7f3eb}.admin__menu .level-0._active>a{background-color:#524d49}.admin__menu .level-0:hover>a{background-color:#4a4542}.admin__menu .level-0>a{color:#aaa6a0;display:block;font-size:1rem;letter-spacing:.025em;min-height:6.2rem;padding:1.2rem .5rem .5rem;position:relative;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .1s linear;word-wrap:break-word;z-index:700}.admin__menu .level-0>a:focus{box-shadow:none}.admin__menu .level-0>a:before{content:'\e63a';display:block;font-size:2.2rem;height:2.2rem}.admin__menu .level-0>.submenu{background-color:#4a4542;box-shadow:0 0 3px #000;left:100%;min-height:calc(8.8rem + 2rem + 100%);padding:2rem 0 0;position:absolute;top:0;-webkit-transform:translateX(-100%);-ms-transform:translateX(-100%);transform:translateX(-100%);transition-duration:.3s;transition-property:-webkit-transform,visibility;transition-property:transform,visibility;transition-timing-function:ease-in-out;visibility:hidden;z-index:697}.ie10 .admin__menu .level-0>.submenu,.ie11 .admin__menu .level-0>.submenu{height:100%}.admin__menu .level-0._show>.submenu{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0);visibility:visible;z-index:698}.admin__menu .level-1{margin-left:1.5rem;margin-right:1.5rem}.admin__menu [class*=level-]:not(.level-0) a{display:block;padding:1.25rem 1.5rem}.admin__menu [class*=level-]:not(.level-0) a:hover{background-color:#403934}.admin__menu [class*=level-]:not(.level-0) a:active{background-color:#322c29;padding-bottom:1.15rem;padding-top:1.35rem}.admin__menu .submenu li{min-width:23.8rem}.admin__menu .submenu a{color:#fcfcfc;transition:background-color .1s linear}.admin__menu .submenu a:focus,.admin__menu .submenu a:hover{box-shadow:none;text-decoration:none}._keyfocus .admin__menu .submenu a:focus{background-color:#403934}._keyfocus .admin__menu .submenu a:active{background-color:#322c29}.admin__menu .submenu .parent{margin-bottom:4.5rem}.admin__menu .submenu .parent .submenu-group-title,.admin__menu .submenu .parent>a{color:#a79d95;display:block;font-size:1.6rem;font-weight:600;margin-bottom:.7rem;padding:1.25rem 1.5rem;pointer-events:none}.admin__menu .submenu .column{display:table-cell}.admin__menu .submenu-title{color:#fff;display:block;font-size:2.2rem;font-weight:600;margin-bottom:4.2rem;margin-left:3rem;margin-right:5.8rem}.admin__menu .submenu-sub-title{color:#fff;display:block;font-size:1.2rem;margin:-3.8rem 5.8rem 3.8rem 3rem}.admin__menu .action-close{padding:2.4rem 2.8rem;position:absolute;right:0;top:0}.admin__menu .action-close:before{color:#a79d95;font-size:1.7rem}.admin__menu .action-close:hover:before{color:#fff}.admin__menu .item-dashboard>a:before{content:'\e604';font-size:1.8rem;padding-top:.4rem}.admin__menu .item-sales>a:before{content:'\e60b'}.admin__menu .item-catalog>a:before{content:'\e608'}.admin__menu .item-customer>a:before{content:'\e603';font-size:2.6rem;position:relative;top:-.4rem}.admin__menu .item-marketing>a:before{content:'\e609';font-size:2rem;padding-top:.2rem}.admin__menu .item-content>a:before{content:'\e602';font-size:2.4rem;position:relative;top:-.2rem}.admin__menu .item-report>a:before{content:'\e60a'}.admin__menu .item-stores>a:before{content:'\e60d';font-size:1.9rem;padding-top:.3rem}.admin__menu .item-system>a:before{content:'\e610'}.admin__menu .item-partners._active>a:after,.admin__menu .item-system._current+.item-partners>a:after{display:none}.admin__menu .item-partners>a{padding-bottom:1rem}.admin__menu .item-partners>a:before{content:'\e612'}.admin__menu-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:697}.store-switcher{color:#333;float:left;font-size:1.3rem;margin-top:.7rem}.store-switcher .admin__action-dropdown{background-color:#f8f8f8;margin-left:.5em}.store-switcher .dropdown{display:inline-block;position:relative}.store-switcher .dropdown:after,.store-switcher .dropdown:before{content:'';display:table}.store-switcher .dropdown:after{clear:both}.store-switcher .dropdown .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.store-switcher .dropdown .action.toggle:after{-webkit-font-smoothing:antialiased;font-size:22px;line-height:2;color:#333;content:'\e607';font-family:icons-blank-theme;margin:0;vertical-align:top;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.store-switcher .dropdown .action.toggle:active:after,.store-switcher .dropdown .action.toggle:hover:after{color:#333}.store-switcher .dropdown .action.toggle.active{display:inline-block;text-decoration:none}.store-switcher .dropdown .action.toggle.active:after{-webkit-font-smoothing:antialiased;font-size:22px;line-height:2;color:#333;content:'\e618';font-family:icons-blank-theme;margin:0;vertical-align:top;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.store-switcher .dropdown .action.toggle.active:active:after,.store-switcher .dropdown .action.toggle.active:hover:after{color:#333}.store-switcher .dropdown .dropdown-menu{background:#fff;border:1px solid #aaa6a0;z-index:100;margin:4px 0 0;padding:0;list-style:none;box-sizing:border-box;position:absolute;top:100%;box-shadow:1px 1px 5px rgba(0,0,0,.5);min-width:19.5rem;display:none}.store-switcher .dropdown .dropdown-menu li{margin:0;padding:0}.store-switcher .dropdown .dropdown-menu li:hover{background:0 0;cursor:pointer}.store-switcher .dropdown.active{overflow:visible}.store-switcher .dropdown.active .dropdown-menu{display:block}.store-switcher .dropdown-menu{left:0;margin-top:.5em;padding-top:.25em}.store-switcher .dropdown-menu li{border:0;cursor:default}.store-switcher .dropdown-menu li:hover{cursor:default}.store-switcher .dropdown-menu li a,.store-switcher .dropdown-menu li span{color:#333;display:block;padding:.5rem 1.3rem}.store-switcher .dropdown-menu li a{text-decoration:none}.store-switcher .dropdown-menu li a:hover{background:#e9e9e9}.store-switcher .dropdown-menu li span{color:#adadad;cursor:default}.store-switcher .dropdown-menu li.current span{background:#eee;color:#333}.store-switcher .dropdown-menu .store-switcher-store a,.store-switcher .dropdown-menu .store-switcher-store span{padding-left:2.6rem}.store-switcher .dropdown-menu .store-switcher-store-view a,.store-switcher .dropdown-menu .store-switcher-store-view span{padding-left:3.9rem}.store-switcher .dropdown-menu .dropdown-toolbar{border-top:1px solid #ebebeb;margin-top:1rem}.store-switcher .dropdown-menu .dropdown-toolbar a:before{content:'\e610';margin-right:.25em;position:relative;top:1px}.store-switcher-label{font-weight:700}.store-switcher-alt{display:inline-block;position:relative}.store-switcher-alt.active .dropdown-menu{display:block}.store-switcher-alt .dropdown-menu{margin-top:2px;white-space:nowrap}.store-switcher-alt .dropdown-menu ul{list-style:none;margin:0;padding:0}.store-switcher-alt strong{color:#a79d95;display:block;font-size:14px;font-weight:500;line-height:1.333;padding:5px 10px}.store-switcher-alt .store-selected{color:#676056;cursor:pointer;font-size:12px;font-weight:400;line-height:1.333}.store-switcher-alt .store-selected:after{-webkit-font-smoothing:antialiased;color:#afadac;content:'\e02c';font-style:normal;font-weight:400;margin:0 0 0 3px;speak:none;vertical-align:text-top}.store-switcher-alt .store-switcher-store,.store-switcher-alt .store-switcher-website{padding:0}.store-switcher-alt .store-switcher-store:hover,.store-switcher-alt .store-switcher-website:hover{background:0 0}.store-switcher-alt .manage-stores,.store-switcher-alt .store-switcher-all,.store-switcher-alt .store-switcher-store-view{padding:0}.store-switcher-alt .manage-stores>a,.store-switcher-alt .store-switcher-all>a{color:#676056;display:block;font-size:12px;padding:8px 15px;text-decoration:none}.store-switcher-website{margin:5px 0 0}.store-switcher-website>strong{padding-left:13px}.store-switcher-store{margin:1px 0 0}.store-switcher-store>strong{padding-left:20px}.store-switcher-store>ul{margin-top:1px}.store-switcher-store-view:first-child{border-top:1px solid #e5e5e5}.store-switcher-store-view>a{color:#333;display:block;font-size:13px;padding:5px 15px 5px 24px;text-decoration:none}.store-view:not(.store-switcher){float:left}.store-view .store-switcher-label{display:inline-block;margin-top:1rem}.tooltip{margin-left:.5em}.tooltip .help a,.tooltip .help span{cursor:pointer;display:inline-block;height:22px;position:relative;vertical-align:middle;width:22px;z-index:2}.tooltip .help a:before,.tooltip .help span:before{color:#333;content:'\e633';font-size:1.7rem}.tooltip .help a:hover{text-decoration:none}.tooltip .tooltip-content{background:#000;border-radius:3px;color:#fff;display:none;margin-left:-19px;margin-top:10px;max-width:200px;padding:4px 8px;position:absolute;text-shadow:none;z-index:20}.tooltip .tooltip-content:before{border-bottom:5px solid #000;border-left:5px solid transparent;border-right:5px solid transparent;content:'';height:0;left:20px;opacity:.8;position:absolute;top:-5px;width:0}.tooltip .tooltip-content.loading{position:absolute}.tooltip .tooltip-content.loading:before{border-bottom-color:rgba(0,0,0,.3)}.tooltip:hover>.tooltip-content{display:block}.page-actions._fixed,.page-main-actions:not(._hidden){background:#f8f8f8;border-bottom:1px solid #e3e3e3;border-top:1px solid #e3e3e3;padding:1.5rem}.page-main-actions{margin:0 0 3rem}.page-main-actions._hidden .store-switcher{display:none}.page-main-actions._hidden .page-actions-placeholder{min-height:50px}.page-actions{float:right}.page-main-actions .page-actions._fixed{left:8.8rem;position:fixed;right:0;top:0;z-index:501}.page-main-actions .page-actions._fixed .page-actions-inner:before{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333;content:attr(data-title);float:left;font-size:2.8rem;margin-top:.3rem;max-width:50%}.page-actions .page-actions-buttons>button,.page-actions>button{float:right;margin-left:1.3rem}.page-actions .page-actions-buttons>button.action-back,.page-actions .page-actions-buttons>button.back,.page-actions>button.action-back,.page-actions>button.back{float:left;-ms-flex-order:-1;-webkit-order:-1;order:-1}.page-actions .page-actions-buttons>button.action-back:before,.page-actions .page-actions-buttons>button.back:before,.page-actions>button.action-back:before,.page-actions>button.back:before{content:'\e626';margin-right:.5em;position:relative;top:1px}.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.primary,.page-actions>button.action-primary,.page-actions>button.primary{-ms-flex-order:2;-webkit-order:2;order:2}.page-actions .page-actions-buttons>button.save:not(.primary),.page-actions>button.save:not(.primary){-ms-flex-order:1;-webkit-order:1;order:1}.page-actions .page-actions-buttons>button.delete,.page-actions>button.delete{-ms-flex-order:-1;-webkit-order:-1;order:-1}.page-actions .actions-split{float:right;margin-left:1.3rem;-ms-flex-order:2;-webkit-order:2;order:2}.page-actions .actions-split .dropdown-menu .item{display:block}.page-actions-buttons{float:right;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;display:-webkit-flex;display:-ms-flexbox;display:flex}.customer-index-edit .page-actions-buttons{background-color:transparent}.admin__page-nav{background:#f1f1f1;border:1px solid #e3e3e3}.admin__page-nav._collapsed:first-child{border-bottom:none}.admin__page-nav._collapsed._show{border-bottom:1px solid #e3e3e3}.admin__page-nav._collapsed._show ._collapsible{background:#f1f1f1}.admin__page-nav._collapsed._show ._collapsible:after{content:'\e62b'}.admin__page-nav._collapsed._show ._collapsible+.admin__page-nav-items{display:block}.admin__page-nav._collapsed._hide .admin__page-nav-title-messages,.admin__page-nav._collapsed._hide .admin__page-nav-title-messages ._active{display:inline-block}.admin__page-nav+._collapsed{border-bottom:none;border-top:none}.admin__page-nav-title{border-bottom:1px solid #e3e3e3;color:#303030;display:block;font-size:1.4rem;line-height:1.2;margin:0 0 -1px;padding:1.8rem 1.5rem;position:relative;text-transform:uppercase}.admin__page-nav-title._collapsible{background:#fff;cursor:pointer;margin:0;padding-right:3.5rem;transition:border-color .1s ease-out,background-color .1s ease-out}.admin__page-nav-title._collapsible+.admin__page-nav-items{display:none;margin-top:-1px}.admin__page-nav-title._collapsible:after{content:'\e628';font-size:1.3rem;font-weight:700;position:absolute;right:1.8rem;top:2rem}.admin__page-nav-title._collapsible:hover{background:#f1f1f1}.admin__page-nav-title._collapsible:last-child{margin:0 0 -1px}.admin__page-nav-title strong{font-weight:700}.admin__page-nav-title .admin__page-nav-title-messages{display:none}.admin__page-nav-items{list-style-type:none;margin:0;padding:1rem 0 1.3rem}.admin__page-nav-item{border-left:3px solid transparent;margin-left:.7rem;padding:0;position:relative;transition:border-color .1s ease-out,background-color .1s ease-out}.admin__page-nav-item:hover{border-color:#e4e4e4}.admin__page-nav-item:hover .admin__page-nav-link{background:#e4e4e4;color:#303030;text-decoration:none}.admin__page-nav-item._active,.admin__page-nav-item.ui-state-active{border-color:#eb5202}.admin__page-nav-item._active .admin__page-nav-link,.admin__page-nav-item.ui-state-active .admin__page-nav-link{background:#fff;border-color:#e3e3e3;border-right:1px solid #fff;color:#303030;margin-right:-1px;font-weight:600}.admin__page-nav-item._loading:before,.admin__page-nav-item.ui-tabs-loading:before{display:none}.admin__page-nav-item._loading .admin__page-nav-item-message-loader,.admin__page-nav-item.ui-tabs-loading .admin__page-nav-item-message-loader{display:inline-block}.admin__page-nav-link{border:1px solid transparent;border-width:1px 0;color:#303030;display:block;font-weight:500;line-height:1.2;margin:0 0 -1px;padding:2rem 4rem 2rem 1rem;transition:border-color .1s ease-out,background-color .1s ease-out;word-wrap:break-word}.admin__page-nav-item-messages{display:inline-block}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip{background:#f1f1f1;border:1px solid #f1f1f1;border-radius:1px;bottom:3.7rem;box-shadow:0 3px 9px 0 rgba(0,0,0,.3);display:none;font-size:1.4rem;font-weight:400;left:-1rem;line-height:1.36;padding:1.5rem;position:absolute;text-transform:none;width:27rem;word-break:normal;z-index:2}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:after,.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:before{border:15px solid transparent;height:0;width:0;border-top-color:#f1f1f1;content:'';display:block;left:2rem;position:absolute;top:100%;z-index:3}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:after{border-top-color:#f1f1f1;margin-top:-1px;z-index:4}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:before{border-top-color:#bfbfbf;margin-top:1px}.admin__page-nav-item-message-loader{display:none;margin-top:-1rem;position:absolute;right:0;top:50%}.admin__page-nav-item-message-loader .spinner{font-size:2rem;margin-right:1.5rem}._loading>.admin__page-nav-item-messages .admin__page-nav-item-message-loader{display:inline-block}.admin__page-nav-item-message{position:relative}.admin__page-nav-item-message:hover{z-index:500}.admin__page-nav-item-message:hover .admin__page-nav-item-message-tooltip{display:block}.admin__page-nav-item-message._changed,.admin__page-nav-item-message._error{display:none}.admin__page-nav-item-message .admin__page-nav-item-message-icon{display:inline-block;font-size:1.4rem;padding-left:.8em;vertical-align:baseline}.admin__page-nav-item-message .admin__page-nav-item-message-icon:after{color:#666;content:'\e631'}._changed:not(._error)>.admin__page-nav-item-messages ._changed{display:inline-block}._error .admin__page-nav-item-message-icon:after{color:#eb5202;content:'\e623'}._error>.admin__page-nav-item-messages ._error{display:inline-block}._error>.admin__page-nav-item-messages ._error .spinner{font-size:2rem;margin-right:1.5rem}._error .admin__page-nav-item-message-tooltip{background:#f1f1f1;border:1px solid #f1f1f1;border-radius:1px;bottom:3.7rem;box-shadow:0 3px 9px 0 rgba(0,0,0,.3);display:none;font-weight:400;left:-1rem;line-height:1.36;padding:2rem;position:absolute;text-transform:none;width:27rem;word-break:normal;z-index:2}._error .admin__page-nav-item-message-tooltip:after,._error .admin__page-nav-item-message-tooltip:before{border:15px solid transparent;height:0;width:0;border-top-color:#f1f1f1;content:'';display:block;left:2rem;position:absolute;top:100%;z-index:3}._error .admin__page-nav-item-message-tooltip:after{border-top-color:#f1f1f1;margin-top:-1px;z-index:4}._error .admin__page-nav-item-message-tooltip:before{border-top-color:#bfbfbf}.admin__data-grid-wrap-static .data-grid{box-sizing:border-box}.admin__data-grid-wrap-static .data-grid thead{color:#333}.admin__data-grid-wrap-static .data-grid tr:nth-child(even) td{background-color:#f5f5f5}.admin__data-grid-wrap-static .data-grid tr:nth-child(even) td._dragging{background-color:rgba(245,245,245,.95)}.admin__data-grid-wrap-static .data-grid ul{margin-left:1rem;padding-left:1rem}.admin__data-grid-wrap-static .admin__data-grid-loading-mask{background:rgba(255,255,255,.5);bottom:0;left:0;position:absolute;right:0;top:0;z-index:399}.admin__data-grid-wrap-static .admin__data-grid-loading-mask .grid-loader{background:url(../images/loader-2.gif) 50% 50% no-repeat;bottom:0;height:149px;left:0;margin:auto;position:absolute;right:0;top:0;width:218px}.data-grid-filters-actions-wrap{float:right}.data-grid-search-control-wrap{float:left;max-width:45.5rem;position:relative;width:35%}.data-grid-search-control-wrap :-ms-input-placeholder{font-style:italic}.data-grid-search-control-wrap ::-webkit-input-placeholder{font-style:italic}.data-grid-search-control-wrap ::-moz-placeholder{font-style:italic}.data-grid-search-control-wrap .action-submit{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:.6rem 2rem .2rem;position:absolute;right:0;top:1px}.data-grid-search-control-wrap .action-submit:hover{background-color:transparent;border:none;box-shadow:none}.data-grid-search-control-wrap .action-submit:active{-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.data-grid-search-control-wrap .action-submit:hover:before{color:#1a1a1a}._keyfocus .data-grid-search-control-wrap .action-submit:focus{box-shadow:0 0 0 1px #008bdb}.data-grid-search-control-wrap .action-submit:before{content:'\e60c';font-size:2rem;transition:color .1s linear}.data-grid-search-control-wrap .action-submit>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.data-grid-search-control-wrap .abs-action-menu .action-submenu,.data-grid-search-control-wrap .abs-action-menu .action-submenu .action-submenu,.data-grid-search-control-wrap .action-menu,.data-grid-search-control-wrap .action-menu .action-submenu,.data-grid-search-control-wrap .actions-split .action-menu .action-submenu,.data-grid-search-control-wrap .actions-split .action-menu .action-submenu .action-submenu,.data-grid-search-control-wrap .actions-split .dropdown-menu .action-submenu,.data-grid-search-control-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{max-height:19.25rem;overflow-y:auto;z-index:398}.data-grid-search-control-wrap .action-menu-item._selected{background-color:#e0f6fe}.data-grid-search-control-wrap .data-grid-search-label{display:none}.data-grid-search-control{padding-right:6rem;width:100%}.data-grid-filters-action-wrap{float:left;padding-left:2rem}.data-grid-filters-action-wrap .action-default{font-size:1.3rem;margin-bottom:1rem;padding-left:1.7rem;padding-right:2.1rem;padding-top:.7rem}.data-grid-filters-action-wrap .action-default._active{background-color:#fff;border-bottom-color:#fff;border-right-color:#ccc;font-weight:600;margin:-.1rem 0 0;padding-bottom:1.6rem;padding-top:.8rem;position:relative;z-index:281}.data-grid-filters-action-wrap .action-default._active:after{background-color:#eb5202;bottom:100%;content:'';height:3px;left:-1px;position:absolute;right:-1px}.data-grid-filters-action-wrap .action-default:before{color:#333;content:'\e605';font-size:1.8rem;margin-right:.4rem;position:relative;top:-1px;vertical-align:top}.data-grid-filters-action-wrap .filters-active{display:none}.admin__action-grid-select .admin__control-select{margin:.5rem .5rem 0 0;padding-bottom:.6rem;padding-top:.6rem}.admin__data-grid-filters-wrap{opacity:0;visibility:hidden;clear:both;font-size:1.3rem;transition:opacity .3s ease}.admin__data-grid-filters-wrap._show{opacity:1;visibility:visible;border-bottom:1px solid #ccc;border-top:1px solid #ccc;margin-bottom:.7rem;padding:3.6rem 0 3rem;position:relative;top:-1px;z-index:280}.admin__data-grid-filters-wrap._show .admin__data-grid-filters,.admin__data-grid-filters-wrap._show .admin__data-grid-filters-footer{display:block}.admin__data-grid-filters-wrap .admin__form-field-label,.admin__data-grid-filters-wrap .admin__form-field-legend{display:block;font-weight:700;margin:0 0 .3rem;text-align:left}.admin__data-grid-filters-wrap .admin__form-field{display:inline-block;margin-bottom:2em;margin-left:0;padding-left:2rem;padding-right:2rem;vertical-align:top;width:calc(100% / 4 - 4px)}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field{display:block;float:none;margin-bottom:1.5rem;padding-left:0;padding-right:0;width:auto}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field:last-child{margin-bottom:0}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field .admin__form-field-label{border:1px solid transparent;float:left;font-weight:400;line-height:1.36;margin-bottom:0;padding-bottom:.6rem;padding-right:1em;padding-top:.6rem;width:25%}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field .admin__form-field-control{margin-left:25%}.admin__data-grid-filters-wrap .admin__action-multiselect,.admin__data-grid-filters-wrap .admin__control-select,.admin__data-grid-filters-wrap .admin__control-text,.admin__data-grid-filters-wrap .admin__form-field-label{font-size:1.3rem}.admin__data-grid-filters-wrap .admin__control-select{height:3.2rem;padding-top:.5rem}.admin__data-grid-filters-wrap .admin__action-multiselect:before{height:3.2rem;width:3.2rem}.admin__data-grid-filters-wrap .admin__control-select,.admin__data-grid-filters-wrap .admin__control-text._has-datepicker{width:100%}.admin__data-grid-filters{display:none;margin-left:-2rem;margin-right:-2rem}.admin__filters-legend{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.admin__data-grid-filters-footer{display:none;font-size:1.4rem}.admin__data-grid-filters-footer .admin__footer-main-actions{margin-left:25%;text-align:right}.admin__data-grid-filters-footer .admin__footer-secondary-actions{float:left;width:50%}.admin__data-grid-filters-current{border-bottom:.1rem solid #ccc;border-top:.1rem solid #ccc;display:none;font-size:1.3rem;margin-bottom:.9rem;padding-bottom:.8rem;padding-top:1.1rem;width:100%}.admin__data-grid-filters-current._show{display:table;position:relative;top:-1px;z-index:3}.admin__data-grid-filters-current._show+.admin__data-grid-filters-wrap._show{margin-top:-1rem}.admin__current-filters-actions-wrap,.admin__current-filters-list-wrap,.admin__current-filters-title-wrap{display:table-cell;vertical-align:top}.admin__current-filters-title{margin-right:1em;white-space:nowrap}.admin__current-filters-list-wrap{width:100%}.admin__current-filters-list{margin-bottom:0}.admin__current-filters-list>li{display:inline-block;font-weight:600;margin:0 1rem .5rem;padding-right:2.6rem;position:relative}.admin__current-filters-list .action-remove{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:0;line-height:1;position:absolute;right:0;top:1px}.admin__current-filters-list .action-remove:hover{background-color:transparent;border:none;box-shadow:none}.admin__current-filters-list .action-remove:hover:before{color:#949494}.admin__current-filters-list .action-remove:active{-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.admin__current-filters-list .action-remove:before{color:#adadad;content:'\e620';font-size:1.6rem;transition:color .1s linear}.admin__current-filters-list .action-remove>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.admin__current-filters-actions-wrap .action-clear{border:none;padding-bottom:0;padding-top:0;white-space:nowrap}.admin__data-grid-pager-wrap{float:right;text-align:right}.admin__data-grid-pager{display:inline-block;margin-left:3rem}.admin__data-grid-pager .admin__control-text::-webkit-inner-spin-button,.admin__data-grid-pager .admin__control-text::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.admin__data-grid-pager .admin__control-text{-moz-appearance:textfield;text-align:center;width:4.4rem}.action-next,.action-previous{width:4.4rem}.action-next:before,.action-previous:before{font-weight:700}.action-next>span,.action-previous>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.action-previous{margin-right:2.5rem;text-indent:-.25em}.action-previous:before{content:'\e629'}.action-next{margin-left:1.5rem;text-indent:.1em}.action-next:before{content:'\e62a'}.admin__data-grid-action-bookmarks{opacity:.98}.admin__data-grid-action-bookmarks .admin__action-dropdown-text:after{left:0;right:-6px}.admin__data-grid-action-bookmarks._active{z-index:290}.admin__data-grid-action-bookmarks .admin__action-dropdown .admin__action-dropdown-text{display:inline-block;max-width:15rem;min-width:4.9rem;vertical-align:top;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin__data-grid-action-bookmarks .admin__action-dropdown:before{content:'\e60f'}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu{font-size:1.3rem;left:0;padding:1rem 0;right:auto}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu>li{padding:0 5rem 0 0;position:relative;white-space:nowrap}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu>li:not(.action-dropdown-menu-action){transition:background-color .1s linear}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu>li:not(.action-dropdown-menu-action):hover{background-color:#e3e3e3}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item{max-width:23rem;min-width:18rem;white-space:normal;word-break:break-all}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-edit{display:none;padding-bottom:1rem;padding-left:1rem;padding-top:1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-edit .action-dropdown-menu-item-actions{padding-bottom:1rem;padding-top:1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action{padding-left:1rem;padding-top:1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action+.action-dropdown-menu-item-last{padding-top:.5rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action>a{color:#008bdb;text-decoration:none;display:inline-block;padding-left:1.1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action>a:hover{color:#0fa7ff;text-decoration:underline}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-last{padding-bottom:0}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu ._edit .action-dropdown-menu-item{display:none}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu ._edit .action-dropdown-menu-item-edit{display:block}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu ._active .action-dropdown-menu-link{font-weight:600}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .admin__control-text{font-size:1.3rem;min-width:15rem;width:calc(100% - 4rem)}.ie9 .admin__data-grid-action-bookmarks .admin__action-dropdown-menu .admin__control-text{width:15rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-actions{border-left:1px solid #fff;bottom:0;position:absolute;right:0;top:0;width:5rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-link{color:#333;display:block;text-decoration:none;padding:1rem 1rem 1rem 2.1rem}.admin__data-grid-action-bookmarks .action-delete,.admin__data-grid-action-bookmarks .action-edit,.admin__data-grid-action-bookmarks .action-submit{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;vertical-align:top}.admin__data-grid-action-bookmarks .action-delete:hover,.admin__data-grid-action-bookmarks .action-edit:hover,.admin__data-grid-action-bookmarks .action-submit:hover{background-color:transparent;border:none;box-shadow:none}.admin__data-grid-action-bookmarks .action-delete:before,.admin__data-grid-action-bookmarks .action-edit:before,.admin__data-grid-action-bookmarks .action-submit:before{font-size:1.7rem}.admin__data-grid-action-bookmarks .action-delete>span,.admin__data-grid-action-bookmarks .action-edit>span,.admin__data-grid-action-bookmarks .action-submit>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.admin__data-grid-action-bookmarks .action-delete,.admin__data-grid-action-bookmarks .action-edit{padding:.6rem 1.4rem}.admin__data-grid-action-bookmarks .action-delete:active,.admin__data-grid-action-bookmarks .action-edit:active{-webkit-transform:scale(0.9);-ms-transform:scale(0.9);transform:scale(0.9)}.admin__data-grid-action-bookmarks .action-submit{padding:.6rem 1rem .6rem .8rem}.admin__data-grid-action-bookmarks .action-submit:active{position:relative;right:-1px}.admin__data-grid-action-bookmarks .action-submit:before{content:'\e625'}.admin__data-grid-action-bookmarks .action-delete:before{content:'\e630'}.admin__data-grid-action-bookmarks .action-edit{padding-top:.8rem}.admin__data-grid-action-bookmarks .action-edit:before{content:'\e631'}.admin__data-grid-action-columns._active{opacity:.98;z-index:290}.admin__data-grid-action-columns .admin__action-dropdown:before{content:'\e610';font-size:1.8rem;margin-right:.7rem;vertical-align:top}.admin__data-grid-action-columns-menu{color:#303030;font-size:1.3rem;overflow:hidden;padding:2.2rem 3.5rem 1rem;z-index:1}.admin__data-grid-action-columns-menu._overflow .admin__action-dropdown-menu-header{border-bottom:1px solid #d1d1d1}.admin__data-grid-action-columns-menu._overflow .admin__action-dropdown-menu-content{width:49.2rem}.admin__data-grid-action-columns-menu._overflow .admin__action-dropdown-menu-footer{border-top:1px solid #d1d1d1;padding-top:2.5rem}.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content{max-height:22.85rem;overflow-y:auto;padding-top:1.5rem;position:relative;width:47.4rem}.admin__data-grid-action-columns-menu .admin__field-option{float:left;height:1.9rem;margin-bottom:1.5rem;padding:0 1rem 0 0;width:15.8rem}.admin__data-grid-action-columns-menu .admin__field-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-header{padding-bottom:1.5rem}.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-footer{padding:1rem 0 2rem}.admin__data-grid-action-columns-menu .admin__action-dropdown-footer-main-actions{margin-left:25%;text-align:right}.admin__data-grid-action-columns-menu .admin__action-dropdown-footer-secondary-actions{float:left;margin-left:-1em}.admin__data-grid-action-export._active{opacity:.98;z-index:290}.admin__data-grid-action-export .admin__action-dropdown:before{content:'\e635';font-size:1.7rem;left:.3rem;margin-right:.7rem;vertical-align:top}.admin__data-grid-action-export-menu{padding-left:2rem;padding-right:2rem;padding-top:1rem}.admin__data-grid-action-export-menu .admin__action-dropdown-footer-main-actions{padding-bottom:2rem;padding-top:2.5rem;white-space:nowrap}.sticky-header{background-color:#f8f8f8;border-bottom:1px solid #e3e3e3;box-shadow:0 5px 5px 0 rgba(0,0,0,.25);left:8.8rem;margin-top:-1px;padding:.5rem 3rem 0;position:fixed;right:0;top:77px;z-index:398}.sticky-header .admin__data-grid-wrap{margin-bottom:0;overflow-x:visible;padding-bottom:0}.sticky-header .admin__data-grid-header-row{position:relative;text-align:right}.sticky-header .admin__data-grid-header-row:last-child{margin:0}.sticky-header .admin__data-grid-actions-wrap,.sticky-header .admin__data-grid-filters-wrap,.sticky-header .admin__data-grid-pager-wrap,.sticky-header .data-grid-filters-actions-wrap,.sticky-header .data-grid-search-control-wrap{display:inline-block;float:none;vertical-align:top}.sticky-header .action-select-wrap{float:left;margin-right:1.5rem;width:16.66666667%}.sticky-header .admin__control-support-text{float:left}.sticky-header .data-grid-search-control-wrap{margin:-.5rem 0 0 1.1rem;width:auto}.sticky-header .data-grid-search-control-wrap .data-grid-search-label{box-sizing:border-box;cursor:pointer;display:block;min-width:3.8rem;padding:1.2rem .6rem 1.7rem;position:relative;text-align:center}.sticky-header .data-grid-search-control-wrap .data-grid-search-label:before{color:#333;content:'\e60c';font-size:2rem;transition:color .1s linear}.sticky-header .data-grid-search-control-wrap .data-grid-search-label:hover:before{color:#000}.sticky-header .data-grid-search-control-wrap .data-grid-search-label span{display:none}.sticky-header .data-grid-filters-actions-wrap{margin:-.5rem 0 0 1.1rem;padding-left:0;position:relative}.sticky-header .data-grid-filters-actions-wrap .action-default{background-color:transparent;border:1px solid transparent;box-sizing:border-box;min-width:3.8rem;padding:1.2rem .6rem 1.7rem;text-align:center;transition:all .15s ease}.sticky-header .data-grid-filters-actions-wrap .action-default span{display:none}.sticky-header .data-grid-filters-actions-wrap .action-default:before{margin:0}.sticky-header .data-grid-filters-actions-wrap .action-default._active{background-color:#fff;border-color:#adadad #adadad #fff;box-shadow:1px 1px 5px rgba(0,0,0,.5);z-index:210}.sticky-header .data-grid-filters-actions-wrap .action-default._active:after{background-color:#fff;content:'';height:6px;left:-2px;position:absolute;right:-6px;top:100%}.sticky-header .data-grid-filters-action-wrap{padding:0}.sticky-header .admin__data-grid-filters-wrap{background-color:#fff;border:1px solid #adadad;box-shadow:0 5px 5px 0 rgba(0,0,0,.25);left:0;padding-left:3.5rem;padding-right:3.5rem;position:absolute;top:100%;width:100%;z-index:209}.sticky-header .admin__data-grid-filters-current+.admin__data-grid-filters-wrap._show{margin-top:-6px}.sticky-header .filters-active{background-color:#e04f00;border-radius:10px;color:#fff;display:block;font-size:1.4rem;font-weight:700;padding:.1rem .7rem;position:absolute;right:-7px;top:0;z-index:211}.sticky-header .filters-active:empty{padding-bottom:0;padding-top:0}.sticky-header .admin__data-grid-actions-wrap{margin:-.5rem 0 0 1.1rem;padding-right:.3rem}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown{background-color:transparent;box-sizing:border-box;min-width:3.8rem;padding-left:.6rem;padding-right:.6rem;text-align:center}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown .admin__action-dropdown-text{display:inline-block;max-width:0;min-width:0;overflow:hidden}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown:before{margin:0}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown-wrap{margin-right:1.1rem}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown-wrap:after,.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown:after{display:none}.sticky-header .admin__data-grid-actions-wrap ._active .admin__action-dropdown{background-color:#fff}.sticky-header .admin__data-grid-action-bookmarks .admin__action-dropdown:before{position:relative;top:-3px}.sticky-header .admin__data-grid-filters-current{border-bottom:0;border-top:0;margin-bottom:0;padding-bottom:0;padding-top:0}.sticky-header .admin__data-grid-pager .admin__control-text,.sticky-header .admin__data-grid-pager-wrap .admin__control-support-text,.sticky-header .data-grid-search-control-wrap .action-submit,.sticky-header .data-grid-search-control-wrap .data-grid-search-control{display:none}.sticky-header .action-next{margin:0}.sticky-header .data-grid{margin-bottom:-1px}.data-grid-cap-left,.data-grid-cap-right{background-color:#f8f8f8;bottom:-2px;position:absolute;top:6rem;width:3rem;z-index:201}.data-grid-cap-left{left:0}.admin__data-grid-header{font-size:1.4rem}.admin__data-grid-header-row+.admin__data-grid-header-row{margin-top:1.1rem}.admin__data-grid-header-row:last-child{margin-bottom:0}.admin__data-grid-header-row .action-select-wrap{display:block}.admin__data-grid-header-row .action-select{width:100%}.admin__data-grid-actions-wrap{float:right;margin-left:1.1rem;margin-top:-.5rem;text-align:right}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap{position:relative;text-align:left}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active+.admin__action-dropdown-wrap:after,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active:after,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._hide+.admin__action-dropdown-wrap:after,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap:first-child:after{display:none}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active .admin__action-dropdown,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active .admin__action-dropdown-menu{border-color:#adadad}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap:after{border-left:1px solid #ccc;content:'';height:3.2rem;left:0;position:absolute;top:.5rem;z-index:3}.admin__data-grid-actions-wrap .admin__action-dropdown{padding-bottom:1.7rem;padding-top:1.2rem}.admin__data-grid-actions-wrap .admin__action-dropdown:after{margin-top:-.4rem}.admin__data-grid-outer-wrap{min-height:8rem;position:relative}.admin__data-grid-wrap{margin-bottom:2rem;max-width:100%;overflow-x:auto;padding-bottom:1rem;padding-top:2rem}.admin__data-grid-loading-mask{background:rgba(255,255,255,.5);bottom:0;left:0;position:absolute;right:0;top:0;z-index:399}.admin__data-grid-loading-mask .spinner{font-size:4rem;left:50%;margin-left:-2rem;margin-top:-2rem;position:absolute;top:50%}.ie9 .admin__data-grid-loading-mask .spinner{background:url(../images/loader-2.gif) 50% 50% no-repeat;bottom:0;height:149px;left:0;margin:auto;position:absolute;right:0;top:0;width:218px}.data-grid-cell-content{display:inline-block;overflow:hidden;width:100%}body._in-resize{cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body._in-resize *,body._in-resize .data-grid-th,body._in-resize .data-grid-th._draggable,body._in-resize .data-grid-th._sortable{cursor:col-resize!important}._layout-fixed{table-layout:fixed}.data-grid{border:none;font-size:1.3rem;margin-bottom:0;width:100%}.data-grid:not(._dragging-copy) ._odd-row td._dragging{background-color:#d0d0d0}.data-grid:not(._dragging-copy) ._dragging{background-color:#d9d9d9;color:rgba(48,48,48,.95)}.data-grid:not(._dragging-copy) ._dragging a{color:rgba(0,139,219,.95)}.data-grid:not(._dragging-copy) ._dragging a:hover{color:rgba(15,167,255,.95)}.data-grid._dragged{outline:#007bdb solid 1px}.data-grid thead{background-color:transparent}.data-grid tfoot th{padding:1rem}.data-grid tr._odd-row td{background-color:#f5f5f5}.data-grid tr._odd-row td._update-status-active{background:#89e1ff}.data-grid tr._odd-row td._update-status-upcoming{background:#b7ee63}.data-grid tr:hover td._update-status-active,.data-grid tr:hover td._update-status-upcoming{background-color:#e5f7fe}.data-grid tr.data-grid-tr-no-data td{font-size:1.6rem;padding:3rem;text-align:center}.data-grid tr.data-grid-tr-no-data:hover td{background-color:#fff;cursor:default}.data-grid tr:active td{background-color:#e0f6fe}.data-grid tr:hover td{background-color:#e5f7fe}.data-grid tr._dragged td{background:#d0d0d0}.data-grid tr._dragover-top td{box-shadow:inset 0 3px 0 0 #008bdb}.data-grid tr._dragover-bottom td{box-shadow:inset 0 -3px 0 0 #008bdb}.data-grid tr:not(.data-grid-editable-row):last-child td{border-bottom:.1rem solid #d6d6d6}.data-grid tr ._clickable,.data-grid tr._clickable{cursor:pointer}.data-grid tr._disabled{pointer-events:none}.data-grid td,.data-grid th{font-size:1.3rem;line-height:1.36;transition:background-color .1s linear;vertical-align:top}.data-grid td._resizing,.data-grid th._resizing{border-left:1px solid #007bdb;border-right:1px solid #007bdb}.data-grid td._hidden,.data-grid th._hidden{display:none}.data-grid td._fit,.data-grid th._fit{width:1%}.data-grid td{background-color:#fff;border-left:.1rem dashed #d6d6d6;border-right:.1rem dashed #d6d6d6;color:#303030;padding:1rem}.data-grid td:first-child{border-left-style:solid}.data-grid td:last-child{border-right-style:solid}.data-grid td .action-select-wrap{position:static}.data-grid td .action-select{color:#008bdb;text-decoration:none;background-color:transparent;border:none;font-size:1.3rem;padding:0 3rem 0 0;position:relative}.data-grid td .action-select:hover{color:#0fa7ff;text-decoration:underline}.data-grid td .action-select:hover:after{border-color:#0fa7ff transparent transparent}.data-grid td .action-select:after{border-color:#008bdb transparent transparent;margin:.6rem 0 0 .7rem;right:auto;top:auto}.data-grid td .action-select:before{display:none}.data-grid td .abs-action-menu .action-submenu,.data-grid td .abs-action-menu .action-submenu .action-submenu,.data-grid td .action-menu,.data-grid td .action-menu .action-submenu,.data-grid td .actions-split .action-menu .action-submenu,.data-grid td .actions-split .action-menu .action-submenu .action-submenu,.data-grid td .actions-split .dropdown-menu .action-submenu,.data-grid td .actions-split .dropdown-menu .action-submenu .action-submenu{left:auto;min-width:10rem;right:0;text-align:left;top:auto;z-index:1}.data-grid td._update-status-active{background:#bceeff}.data-grid td._update-status-upcoming{background:#ccf391}.data-grid th{background-color:#514943;border:.1rem solid #8a837f;border-left-color:transparent;color:#fff;font-weight:600;padding:0;text-align:left}.data-grid th:first-child{border-left-color:#8a837f}.data-grid th._dragover-left{box-shadow:inset 3px 0 0 0 #fff;z-index:2}.data-grid th._dragover-right{box-shadow:inset -3px 0 0 0 #fff}.data-grid .shadow-div{cursor:col-resize;height:100%;margin-right:-5px;position:absolute;right:0;top:0;width:10px}.data-grid .data-grid-th{background-clip:padding-box;color:#fff;padding:1rem;position:relative;vertical-align:middle}.data-grid .data-grid-th._resize-visible .shadow-div{cursor:auto;display:none}.data-grid .data-grid-th._draggable{cursor:-webkit-grab;cursor:grab}.data-grid .data-grid-th._sortable{cursor:pointer;transition:background-color .1s linear;z-index:1}.data-grid .data-grid-th._sortable:focus,.data-grid .data-grid-th._sortable:hover{background-color:#5f564f}.data-grid .data-grid-th._sortable:active{padding-bottom:.9rem;padding-top:1.1rem}.data-grid .data-grid-th.required>span:after{color:#f38a5e;content:'*';margin-left:.3rem}.data-grid .data-grid-checkbox-cell{overflow:hidden;padding:0;vertical-align:top;width:5.2rem}.data-grid .data-grid-checkbox-cell:hover{cursor:default}.data-grid .data-grid-thumbnail-cell{text-align:center;width:7rem}.data-grid .data-grid-thumbnail-cell img{border:1px solid #d6d6d6;width:5rem}.data-grid .data-grid-multicheck-cell{padding:1rem 1rem .9rem;text-align:center;vertical-align:middle}.data-grid .data-grid-onoff-cell{text-align:center;width:12rem}.data-grid .data-grid-actions-cell{padding-left:2rem;padding-right:2rem;text-align:center;width:1%}.data-grid._hidden{display:none}.data-grid._dragging-copy{box-shadow:1px 1px 5px rgba(0,0,0,.5);left:0;opacity:.95;position:fixed;top:0;z-index:1000}.data-grid._dragging-copy .data-grid-th{border:1px solid #007bdb;border-bottom:none}.data-grid._dragging-copy .data-grid-th,.data-grid._dragging-copy .data-grid-th._sortable{cursor:-webkit-grabbing;cursor:grabbing}.data-grid._dragging-copy tr:last-child td{border-bottom:1px solid #007bdb}.data-grid._dragging-copy td{border-left:1px solid #007bdb;border-right:1px solid #007bdb}.data-grid._dragging-copy._in-edit .data-grid-editable-row.data-grid-bulk-edit-panel td,.data-grid._dragging-copy._in-edit .data-grid-editable-row.data-grid-bulk-edit-panel td:before,.data-grid._dragging-copy._in-edit .data-grid-editable-row.data-grid-bulk-edit-panel:hover td{background-color:rgba(255,251,230,.95)}.data-grid._dragging-copy._in-edit .data-grid-editable-row td,.data-grid._dragging-copy._in-edit .data-grid-editable-row:hover td{background-color:rgba(255,255,255,.95)}.data-grid._dragging-copy._in-edit .data-grid-editable-row td:after,.data-grid._dragging-copy._in-edit .data-grid-editable-row td:before{left:0;right:0}.data-grid._dragging-copy._in-edit .data-grid-editable-row td:before{background-color:rgba(255,255,255,.95)}.data-grid._dragging-copy._in-edit .data-grid-editable-row td:only-child{border-left:1px solid #007bdb;border-right:1px solid #007bdb;left:0}.data-grid._dragging-copy._in-edit .data-grid-editable-row .admin__control-select,.data-grid._dragging-copy._in-edit .data-grid-editable-row .admin__control-text{opacity:.5}.data-grid .data-grid-controls-row td{padding-top:1.6rem}.data-grid .data-grid-controls-row td.data-grid-checkbox-cell{padding-top:.6rem}.data-grid .data-grid-controls-row td [class*=admin__control-],.data-grid .data-grid-controls-row td button{margin-top:-1.7rem}.data-grid._in-edit tr:hover td{background-color:#e6e6e6}.data-grid._in-edit ._odd-row.data-grid-editable-row td,.data-grid._in-edit ._odd-row.data-grid-editable-row:hover td{background-color:#fff}.data-grid._in-edit ._odd-row td,.data-grid._in-edit ._odd-row:hover td{background-color:#dcdcdc}.data-grid._in-edit .data-grid-editable-row-actions td,.data-grid._in-edit .data-grid-editable-row-actions:hover td{background-color:#fff}.data-grid._in-edit td{background-color:#e6e6e6;pointer-events:none}.data-grid._in-edit .data-grid-checkbox-cell{pointer-events:auto}.data-grid._in-edit .data-grid-editable-row{border:.1rem solid #adadad;border-bottom-color:#c2c2c2}.data-grid._in-edit .data-grid-editable-row:hover td{background-color:#fff}.data-grid._in-edit .data-grid-editable-row td{background-color:#fff;border-bottom-color:#fff;border-left-style:hidden;border-right-style:hidden;border-top-color:#fff;pointer-events:auto;vertical-align:middle}.data-grid._in-edit .data-grid-editable-row td:first-child{border-left-color:#adadad;border-left-style:solid}.data-grid._in-edit .data-grid-editable-row td:first-child:after,.data-grid._in-edit .data-grid-editable-row td:first-child:before{left:0}.data-grid._in-edit .data-grid-editable-row td:last-child{border-right-color:#adadad;border-right-style:solid;left:-.1rem}.data-grid._in-edit .data-grid-editable-row td:last-child:after,.data-grid._in-edit .data-grid-editable-row td:last-child:before{right:0}.data-grid._in-edit .data-grid-editable-row .admin__control-select,.data-grid._in-edit .data-grid-editable-row .admin__control-text{width:100%}.data-grid._in-edit .data-grid-bulk-edit-panel td{vertical-align:bottom}.data-grid .data-grid-editable-row td{border-left-color:#fff;border-left-style:solid;position:relative;z-index:1}.data-grid .data-grid-editable-row td:after{bottom:0;box-shadow:0 5px 5px rgba(0,0,0,.25);content:'';height:.9rem;left:0;margin-top:-1rem;position:absolute;right:0}.data-grid .data-grid-editable-row td:before{background-color:#fff;bottom:0;content:'';height:1rem;left:-10px;position:absolute;right:-10px;z-index:1}.data-grid .data-grid-editable-row.data-grid-editable-row-actions td,.data-grid .data-grid-editable-row.data-grid-editable-row-actions:hover td{background-color:#fff}.data-grid .data-grid-editable-row.data-grid-editable-row-actions td:first-child{border-left-color:#fff;border-right-color:#fff}.data-grid .data-grid-editable-row.data-grid-editable-row-actions td:last-child{left:0}.data-grid .data-grid-editable-row.data-grid-bulk-edit-panel td,.data-grid .data-grid-editable-row.data-grid-bulk-edit-panel td:before,.data-grid .data-grid-editable-row.data-grid-bulk-edit-panel:hover td{background-color:#fffbe6}.data-grid .data-grid-editable-row-actions{left:50%;margin-left:-12.5rem;margin-top:-2px;position:absolute;text-align:center}.data-grid .data-grid-editable-row-actions td{width:25rem}.data-grid .data-grid-editable-row-actions [class*=action-]{min-width:9rem}.data-grid .data-grid-draggable-row-cell{width:1%}.data-grid .data-grid-draggable-row-cell .draggable-handle{padding:0}.data-grid-th._sortable._ascend,.data-grid-th._sortable._descend{padding-right:2.7rem}.data-grid-th._sortable._ascend:before,.data-grid-th._sortable._descend:before{margin-top:-1em;position:absolute;right:1rem;top:50%}.data-grid-th._sortable._ascend:before{content:'\2193'}.data-grid-th._sortable._descend:before{content:'\2191'}.data-grid-checkbox-cell-inner{display:block;padding:1.1rem 1.8rem .9rem;position:relative;text-align:right}.data-grid-checkbox-cell-inner:hover{cursor:pointer}.data-grid-checkbox-cell-inner:before{bottom:0;content:'';height:500%;left:0;position:absolute;right:0;top:0}.data-grid-state-cell-inner{display:block;padding:1.1rem 1.8rem .9rem;text-align:center}.data-grid-state-cell-inner>span{display:inline-block;font-style:italic;padding:.6rem 0}.data-grid-row-parent._active>td .data-grid-checkbox-cell-inner:before{content:'\e62b'}.data-grid-row-parent>td .data-grid-checkbox-cell-inner{padding-left:3.7rem;position:relative}.data-grid-row-parent>td .data-grid-checkbox-cell-inner:before{content:'\e628';font-size:1rem;font-weight:700;left:1.35rem;position:absolute;top:1.6rem}.data-grid-th._col-xs{width:1%}.data-grid-info-panel{box-shadow:0 0 5px rgba(0,0,0,.5);margin:2rem .1rem -2rem}.data-grid-info-panel .messages{overflow:hidden}.data-grid-info-panel .messages .message{margin:1rem}.data-grid-info-panel .messages .message:last-child{margin-bottom:1rem}.data-grid-info-panel-actions{padding:1rem;text-align:right}.data-grid-editable-row .admin__field-control{position:relative}.data-grid-editable-row .admin__field-control._error:after{border-color:transparent #ee7d7d transparent transparent;border-style:solid;border-width:0 12px 12px 0;content:'';position:absolute;right:0;top:0}.data-grid-editable-row .admin__field-control._error .admin__control-text{border-color:#ee7d7d}.data-grid-editable-row .admin__field-control._focus:after{display:none}.data-grid-editable-row .admin__field-error{bottom:100%;box-shadow:1px 1px 5px rgba(0,0,0,.5);left:0;margin:0 auto 1.5rem;max-width:32rem;position:absolute;right:0}.data-grid-editable-row .admin__field-error:after,.data-grid-editable-row .admin__field-error:before{border-style:solid;content:'';left:50%;position:absolute;top:100%}.data-grid-editable-row .admin__field-error:after{border-color:#fffbbb transparent transparent;border-width:10px 10px 0;margin-left:-10px;z-index:1}.data-grid-editable-row .admin__field-error:before{border-color:#ee7d7d transparent transparent;border-width:11px 12px 0;margin-left:-12px}.data-grid-bulk-edit-panel .admin__field-label-vertical{display:block;font-size:1.2rem;margin-bottom:.5rem;text-align:left}.data-grid-row-changed{cursor:default;display:block;opacity:.5;position:relative;width:100%;z-index:1}.data-grid-row-changed:after{content:'\e631';display:inline-block}.data-grid-row-changed .data-grid-row-changed-tooltip{background:#f1f1f1;border:1px solid #f1f1f1;border-radius:1px;bottom:100%;box-shadow:0 3px 9px 0 rgba(0,0,0,.3);display:none;font-weight:400;line-height:1.36;margin-bottom:1.5rem;padding:1rem;position:absolute;right:-1rem;text-transform:none;width:27rem;word-break:normal;z-index:2}.data-grid-row-changed._changed{opacity:1;z-index:3}.data-grid-row-changed._changed:hover .data-grid-row-changed-tooltip{display:block}.data-grid-row-changed._changed:hover:before{background:#f1f1f1;border:1px solid #f1f1f1;bottom:100%;box-shadow:4px 4px 3px -1px rgba(0,0,0,.15);content:'';display:block;height:1.6rem;left:50%;margin:0 0 .7rem -.8rem;position:absolute;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);width:1.6rem;z-index:3}.ie9 .data-grid-row-changed._changed:hover:before{display:none}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child:before,.admin__control-file-label:before,.admin__control-multiselect,.admin__control-select,.admin__control-text,.admin__control-textarea,.selectmenu{-webkit-appearance:none;background-color:#fff;border:1px solid #adadad;border-radius:1px;box-shadow:none;color:#303030;font-size:1.4rem;font-weight:400;height:auto;line-height:1.36;padding:.6rem 1rem;transition:border-color .1s linear;vertical-align:baseline;width:auto}.admin__control-addon [class*=admin__control-][class]:hover~[class*=admin__addon-]:last-child:before,.admin__control-multiselect:hover,.admin__control-select:hover,.admin__control-text:hover,.admin__control-textarea:hover,.selectmenu:hover,.selectmenu:hover .selectmenu-toggle:before{border-color:#878787}.admin__control-addon [class*=admin__control-][class]:focus~[class*=admin__addon-]:last-child:before,.admin__control-file:active+.admin__control-file-label:before,.admin__control-file:focus+.admin__control-file-label:before,.admin__control-multiselect:focus,.admin__control-select:focus,.admin__control-text:focus,.admin__control-textarea:focus,.selectmenu._focus,.selectmenu._focus .selectmenu-toggle:before{border-color:#007bdb;box-shadow:none;outline:0}.admin__control-addon [class*=admin__control-][class][disabled]~[class*=admin__addon-]:last-child:before,.admin__control-file[disabled]+.admin__control-file-label:before,.admin__control-multiselect[disabled],.admin__control-select[disabled],.admin__control-text[disabled],.admin__control-textarea[disabled]{background-color:#e9e9e9;border-color:#adadad;color:#303030;cursor:not-allowed;opacity:.5}.admin__field-row[class]>.admin__field-control,.admin__fieldset>.admin__field.admin__field-wide[class]>.admin__field-control{clear:left;float:none;text-align:left;width:auto}.admin__field-row[class]:not(.admin__field-option)>.admin__field-label,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)>.admin__field-label{display:block;line-height:1.4rem;margin-bottom:.86rem;margin-top:-.14rem;text-align:left;width:auto}.admin__field-row[class]:not(.admin__field-option)>.admin__field-label:before,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)>.admin__field-label:before{display:none}.admin__field-row[class]:not(.admin__field-option)._required>.admin__field-label span,.admin__field-row[class]:not(.admin__field-option).required>.admin__field-label span,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)._required>.admin__field-label span,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option).required>.admin__field-label span{padding-left:1.5rem}.admin__field-row[class]:not(.admin__field-option)._required>.admin__field-label span:after,.admin__field-row[class]:not(.admin__field-option).required>.admin__field-label span:after,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)._required>.admin__field-label span:after,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option).required>.admin__field-label span:after{left:0;margin-left:30px}.admin__legend{font-size:1.8rem;font-weight:600;margin-bottom:3rem}.admin__control-checkbox,.admin__control-radio{cursor:pointer;opacity:.01;overflow:hidden;position:absolute;vertical-align:top}.admin__control-checkbox:after,.admin__control-radio:after{display:none}.admin__control-checkbox+label,.admin__control-radio+label{cursor:pointer;display:inline-block}.admin__control-checkbox+label:before,.admin__control-radio+label:before{background-color:#fff;border:1px solid #adadad;color:transparent;float:left;height:1.6rem;text-align:center;vertical-align:top;width:1.6rem}.admin__control-checkbox+.admin__field-label,.admin__control-radio+.admin__field-label{padding-left:2.6rem}.admin__control-checkbox+.admin__field-label:before,.admin__control-radio+.admin__field-label:before{margin:1px 1rem 0 -2.6rem}.admin__control-checkbox:checked+label:before,.admin__control-radio:checked+label:before{color:#514943}.admin__control-checkbox.disabled+label,.admin__control-checkbox[disabled]+label,.admin__control-radio.disabled+label,.admin__control-radio[disabled]+label{color:#303030;cursor:default;opacity:.5}.admin__control-checkbox.disabled+label:before,.admin__control-checkbox[disabled]+label:before,.admin__control-radio.disabled+label:before,.admin__control-radio[disabled]+label:before{background-color:#e9e9e9;border-color:#adadad;cursor:default}._keyfocus .admin__control-checkbox:not(.disabled):focus+label:before,._keyfocus .admin__control-checkbox:not([disabled]):focus+label:before,._keyfocus .admin__control-radio:not(.disabled):focus+label:before,._keyfocus .admin__control-radio:not([disabled]):focus+label:before{border-color:#007bdb}.admin__control-checkbox:not(.disabled):hover+label:before,.admin__control-checkbox:not([disabled]):hover+label:before,.admin__control-radio:not(.disabled):hover+label:before,.admin__control-radio:not([disabled]):hover+label:before{border-color:#878787}.admin__control-radio+label:before{border-radius:1.6rem;content:'';transition:border-color .1s linear,color .1s ease-in}.admin__control-radio.admin__control-radio+label:before{line-height:140%}.admin__control-radio:checked+label{position:relative}.admin__control-radio:checked+label:after{background-color:#514943;border-radius:50%;content:'';height:10px;left:3px;position:absolute;top:4px;width:10px}.admin__control-radio:checked:not(.disabled):hover,.admin__control-radio:checked:not(.disabled):hover+label,.admin__control-radio:checked:not([disabled]):hover,.admin__control-radio:checked:not([disabled]):hover+label{cursor:default}.admin__control-radio:checked:not(.disabled):hover+label:before,.admin__control-radio:checked:not([disabled]):hover+label:before{border-color:#adadad}.admin__control-checkbox+label:before{border-radius:1px;content:'';font-size:0;transition:font-size .1s ease-out,color .1s ease-out,border-color .1s linear}.admin__control-checkbox:checked+label:before{content:'\e62d';font-size:1.1rem;line-height:125%}.admin__control-checkbox:not(:checked)._indeterminate+label:before,.admin__control-checkbox:not(:checked):indeterminate+label:before{color:#514943;content:'-';font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700}input[type=checkbox].admin__control-checkbox,input[type=radio].admin__control-checkbox{margin:0;position:absolute}.admin__control-text{min-width:4rem}.admin__control-select{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;background-image:url(../images/arrows-bg.svg),linear-gradient(#e3e3e3,#e3e3e3),linear-gradient(#adadad,#adadad);background-position:calc(100% - 12px) -34px,100%,calc(100% - 3.2rem) 0;background-size:auto,3.2rem 100%,1px 100%;background-repeat:no-repeat;max-width:100%;min-width:8.5rem;padding-bottom:.5rem;padding-right:4.4rem;padding-top:.5rem;transition:border-color .1s linear}.admin__control-select:hover{border-color:#878787;cursor:pointer}.admin__control-select:focus{background-image:url(../images/arrows-bg.svg),linear-gradient(#e3e3e3,#e3e3e3),linear-gradient(#007bdb,#007bdb);background-position:calc(100% - 12px) 13px,100%,calc(100% - 3.2rem) 0;border-color:#007bdb}.admin__control-select::-ms-expand{display:none}.ie9 .admin__control-select{background-image:none;padding-right:1rem}option:empty{display:none}.admin__control-multiselect{height:auto;max-width:100%;min-width:15rem;overflow:auto;padding:0;resize:both}.admin__control-multiselect optgroup,.admin__control-multiselect option{padding:.5rem 1rem}.admin__control-file-wrapper{display:inline-block;padding:.5rem 1rem;position:relative;z-index:1}.admin__control-file-label:before{content:'';left:0;position:absolute;top:0;width:100%;z-index:0}.admin__control-file{background:0 0;border:0;padding-top:.7rem;position:relative;width:auto;z-index:1}.admin__control-support-text{border:1px solid transparent;display:inline-block;font-size:1.4rem;line-height:1.36;padding-bottom:.6rem;padding-top:.6rem}.admin__control-support-text+[class*=admin__control-],[class*=admin__control-]+.admin__control-support-text{margin-left:.7rem}.admin__control-service{float:left;margin:.8rem 0 0 3rem}.admin__control-textarea{height:8.48rem;line-height:1.18;padding-top:.8rem;resize:vertical}.admin__control-addon{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;display:inline-flex;-webkit-flex-flow:row nowrap;-ms-flex-flow:row nowrap;flex-flow:row nowrap;position:relative;width:100%;z-index:1}.admin__control-addon>[class*=admin__addon-],.admin__control-addon>[class*=admin__control-]{-webkit-flex-basis:auto;-ms-flex-preferred-size:auto;flex-basis:auto;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;position:relative;z-index:1}.admin__control-addon .admin__control-select{width:auto}.admin__control-addon .admin__control-text{margin:.1rem;padding:.5rem .9rem;width:100%}.admin__control-addon [class*=admin__control-][class]{appearence:none;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-order:1;-webkit-order:1;order:1;-webkit-flex-shrink:1;-ms-flex-negative:1;flex-shrink:1;background-color:transparent;border-color:transparent;box-shadow:none;vertical-align:top}.admin__control-addon [class*=admin__control-][class]+[class*=admin__control-]{border-left-color:#adadad}.admin__control-addon [class*=admin__control-][class] :focus{box-shadow:0}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child{padding-left:1rem;position:static!important;z-index:0}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child>*{position:relative;vertical-align:top;z-index:1}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child:empty{padding:0}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child:before{bottom:0;box-sizing:border-box;content:'';left:0;position:absolute;top:0;width:100%;z-index:-1}.admin__addon-prefix,.admin__addon-suffix{border:0;box-sizing:border-box;color:#858585;display:inline-block;font-size:1.4rem;font-weight:400;height:3.2rem;line-height:3.2rem;padding:0}.admin__addon-suffix{-ms-flex-order:3;-webkit-order:3;order:3}.admin__addon-suffix:last-child{padding-right:1rem}.admin__addon-prefix{-ms-flex-order:0;-webkit-order:0;order:0}.ie9 .admin__control-addon:after{clear:both;content:'';display:block;height:0;overflow:hidden}.ie9 .admin__addon{min-width:0;overflow:hidden;text-align:right;white-space:nowrap;width:auto}.ie9 .admin__addon [class*=admin__control-]{display:inline}.ie9 .admin__addon-prefix{float:left}.ie9 .admin__addon-suffix{float:right}.admin__control-collapsible{width:100%}.admin__control-collapsible ._dragged .admin__collapsible-block-wrapper .admin__collapsible-title{background:#d0d0d0}.admin__control-collapsible ._dragover-bottom .admin__collapsible-block-wrapper:before,.admin__control-collapsible ._dragover-top .admin__collapsible-block-wrapper:before{background:#008bdb;content:'';display:block;height:3px;left:0;position:absolute;right:0}.admin__control-collapsible ._dragover-top .admin__collapsible-block-wrapper:before{top:-3px}.admin__control-collapsible ._dragover-bottom .admin__collapsible-block-wrapper:before{bottom:-3px}.admin__control-collapsible .admin__collapsible-block-wrapper.fieldset-wrapper{border:0;margin:0;position:relative}.admin__control-collapsible .admin__collapsible-block-wrapper.fieldset-wrapper .fieldset-wrapper-title{background:#f8f8f8;border:2px solid #ccc}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .admin__collapsible-title{font-size:1.4rem;font-weight:400;line-height:1;padding:1.6rem 4rem 1.6rem 3.8rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .admin__collapsible-title:before{left:1rem;right:auto;top:1.4rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete{background-color:transparent;border-color:transparent;box-shadow:none;padding:0;position:absolute;right:1rem;top:1.4rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:hover{background-color:transparent;border-color:transparent;box-shadow:none}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:before{content:'\e630';font-size:2rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete>span{display:none}.admin__control-collapsible .admin__collapsible-content{background-color:#fff;margin-bottom:1rem}.admin__control-collapsible .admin__collapsible-content>.fieldset-wrapper{border:1px solid #ccc;margin-top:-1px;padding:1rem}.admin__control-collapsible .admin__collapsible-content .admin__fieldset{padding:0}.admin__control-collapsible .admin__collapsible-content .admin__field:last-child{margin-bottom:0}.admin__control-table-wrapper{max-width:100%;overflow-x:auto;overflow-y:hidden}.admin__control-table{width:100%}.admin__control-table thead{background-color:transparent}.admin__control-table tbody td{vertical-align:top}.admin__control-table tfoot th{padding-bottom:1.3rem}.admin__control-table tfoot th.validation{padding-bottom:0;padding-top:0}.admin__control-table tr:last-child td{border-bottom:none}.admin__control-table tr._dragover-top td{box-shadow:inset 0 3px 0 0 #008bdb}.admin__control-table tr._dragover-bottom td{box-shadow:inset 0 -3px 0 0 #008bdb}.admin__control-table tr._dragged td,.admin__control-table tr._dragged th{background:#d0d0d0}.admin__control-table td,.admin__control-table th{background-color:#efefef;border:0;border-bottom:1px solid #fff;padding:1.3rem 1rem 1.3rem 0;text-align:left;vertical-align:top}.admin__control-table td:first-child,.admin__control-table th:first-child{padding-left:1rem}.admin__control-table td>.admin__control-select,.admin__control-table td>.admin__control-text,.admin__control-table th>.admin__control-select,.admin__control-table th>.admin__control-text{width:100%}.admin__control-table td._hidden,.admin__control-table th._hidden{display:none}.admin__control-table td._fit,.admin__control-table th._fit{width:1px}.admin__control-table th{color:#303030;font-size:1.4rem;font-weight:600;vertical-align:bottom}.admin__control-table th._required span:after{color:#eb5202;content:'*'}.admin__control-table .control-table-actions-th{white-space:nowrap}.admin__control-table .control-table-actions-cell{padding-top:1.8rem;text-align:center;width:1%}.admin__control-table .control-table-options-th{text-align:center;width:10rem}.admin__control-table .control-table-options-cell{text-align:center}.admin__control-table .control-table-text{line-height:3.2rem}.admin__control-table .col-draggable{padding-top:2.2rem;width:1%}.admin__control-table .action-delete{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}.admin__control-table .action-delete:hover{background-color:transparent;border-color:transparent;box-shadow:none}.admin__control-table .action-delete:before{content:'\e630';font-size:2rem}.admin__control-table .action-delete>span{display:none}.admin__control-table .draggable-handle{padding:0}.admin__control-table._dragged{outline:#007bdb solid 1px}.admin__control-table-action{background-color:#efefef;border-top:1px solid #fff;padding:1.3rem 1rem}.admin__dynamic-rows._dragged{position:absolute;z-index:999}.admin__dynamic-rows.admin__control-table .admin__control-fields>.admin__field{border:0;padding:0}.admin__dynamic-rows td>.admin__field{border:0;margin:0;padding:0}.admin__control-table-pagination{padding-bottom:1rem}.admin__control-table-pagination .admin__data-grid-pager{float:right}.admin__field-tooltip{display:inline-block;margin-top:.5rem;max-width:45px;overflow:visible;vertical-align:top;width:0}.admin__field-tooltip:hover{position:relative;z-index:500}.admin__field-option .admin__field-tooltip{margin-top:.5rem}.admin__field-tooltip .admin__field-tooltip-action{margin-left:2rem;position:relative;z-index:2;display:inline-block;text-decoration:none}.admin__field-tooltip .admin__field-tooltip-action:before{-webkit-font-smoothing:antialiased;font-size:2.2rem;line-height:1;color:#514943;content:'\e633';font-family:Icons;vertical-align:middle;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.admin__field-tooltip .admin__control-text:focus+.admin__field-tooltip-content,.admin__field-tooltip:hover .admin__field-tooltip-content{display:block}.admin__field-tooltip .admin__field-tooltip-content{bottom:3.8rem;display:none;right:-2.3rem}.admin__field-tooltip .admin__field-tooltip-content:after,.admin__field-tooltip .admin__field-tooltip-content:before{border:1.6rem solid transparent;height:0;width:0;border-top-color:#afadac;content:'';display:block;position:absolute;right:2rem;top:100%;z-index:3}.admin__field-tooltip .admin__field-tooltip-content:after{border-top-color:#fffbbb;margin-top:-1px;z-index:4}.abs-admin__field-tooltip-content,.admin__field-tooltip .admin__field-tooltip-content{box-shadow:0 2px 8px 0 rgba(0,0,0,.3);background:#fffbbb;border:1px solid #afadac;border-radius:1px;padding:1.5rem 2.5rem;position:absolute;width:32rem;z-index:1}.admin__field-fallback-reset{font-size:1.25rem;white-space:nowrap;width:30px}.admin__field-fallback-reset>span{margin-left:.5rem;position:relative}.admin__field-fallback-reset:active{-webkit-transform:scale(0.98);-ms-transform:scale(0.98);transform:scale(0.98)}.admin__field-fallback-reset:before{transition:color .1s linear;content:'\e642';font-size:1.3rem;margin-left:.5rem}.admin__field-fallback-reset:hover{cursor:pointer;text-decoration:none}.admin__field-fallback-reset:focus{background:0 0}.abs-field-size-x-small,.abs-field-sizes.admin__field-x-small>.admin__field-control,.admin__field.admin__field-x-small>.admin__field-control,.admin__fieldset>.admin__field.admin__field-x-small>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-x-small>.admin__field-control{width:8rem}.abs-field-size-small,.abs-field-sizes.admin__field-small>.admin__field-control,.admin__control-grouped-date>.admin__field-date.admin__field>.admin__field-control,.admin__field.admin__field-small>.admin__field-control,.admin__fieldset>.admin__field.admin__field-small>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-small>.admin__field-control{width:15rem}.abs-field-size-medium,.abs-field-sizes.admin__field-medium>.admin__field-control,.admin__field.admin__field-medium>.admin__field-control,.admin__fieldset>.admin__field.admin__field-medium>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-medium>.admin__field-control{width:34rem}.abs-field-size-large,.abs-field-sizes.admin__field-large>.admin__field-control,.admin__field.admin__field-large>.admin__field-control,.admin__fieldset>.admin__field.admin__field-large>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-large>.admin__field-control{width:64rem}.abs-field-no-label,.admin__field-group-additional,.admin__field-no-label,.admin__fieldset>.admin__field.admin__field-no-label>.admin__field-control{margin-left:calc((100%) * .25 + 30px)}.admin__fieldset{border:0;margin:0;min-width:0;padding:0}.admin__fieldset .fieldset-wrapper.admin__fieldset-section>.fieldset-wrapper-title{padding-left:1rem}.admin__fieldset .fieldset-wrapper.admin__fieldset-section>.fieldset-wrapper-title strong{font-size:1.7rem;font-weight:600}.admin__fieldset .fieldset-wrapper.admin__fieldset-section .admin__fieldset-wrapper-content>.admin__fieldset{padding-top:1rem}.admin__fieldset .fieldset-wrapper.admin__fieldset-section:last-child .admin__fieldset-wrapper-content>.admin__fieldset{padding-bottom:0}.admin__fieldset>.admin__field{border:0;margin:0 0 0 -30px;padding:0}.admin__fieldset>.admin__field:after{clear:both;content:'';display:table}.admin__fieldset>.admin__field>.admin__field-control{width:calc((100%) * .5 - 30px);float:left;margin-left:30px}.admin__fieldset>.admin__field>.admin__field-label{width:calc((100%) * .25 - 30px);float:left;margin-left:30px}.admin__fieldset>.admin__field.admin__field-no-label>.admin__field-label{display:none}.admin__fieldset>.admin__field+.admin__field._empty._no-header{margin-top:-3rem}.admin__fieldset-product-websites{position:relative;z-index:300}.admin__fieldset-note{margin-bottom:2rem}.admin__form-field{border:0;margin:0;padding:0}.admin__field-control .admin__control-text,.admin__field-control .admin__control-textarea,.admin__form-field-control .admin__control-text,.admin__form-field-control .admin__control-textarea{width:100%}.admin__field-label{color:#303030;cursor:pointer;margin:0;text-align:right}.admin__field-label+br{display:none}.admin__field:not(.admin__field-option)>.admin__field-label{font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:600;line-height:3.2rem;padding:0;white-space:nowrap;word-wrap:break-word}.admin__field:not(.admin__field-option)>.admin__field-label:before{opacity:0;visibility:hidden;content:'.';margin-left:-7px;overflow:hidden}.admin__field:not(.admin__field-option)>.admin__field-label span{display:inline-block;line-height:1.2;vertical-align:middle;white-space:normal}.admin__field:not(.admin__field-option)>.admin__field-label span[data-config-scope]{position:relative}._required>.admin__field-label span:after,.required>.admin__field-label span:after{color:#eb5202;content:'*';display:inline-block;font-size:1.6rem;font-weight:500;line-height:1;margin-left:10px;margin-top:.2rem;position:absolute;z-index:1}._disabled>.admin__field-label{color:#999}.admin__field{margin-bottom:0}.admin__field+.admin__field{margin-top:1.5rem}.admin__field:not(.admin__field-option)~.admin__field-option{margin-top:.5rem}.admin__field.admin__field-option~.admin__field-option{margin-top:.9rem}.admin__field~.admin__field-option:last-child{margin-bottom:.8rem}.admin__fieldset>.admin__field{margin-bottom:3rem;position:relative}.admin__field[data-config-scope]:before{color:gray;content:attr(data-config-scope);display:inline-block;font-size:1.2rem;left:calc((100%) * .75 - 30px);line-height:3.2rem;margin-left:60px;position:absolute;width:calc((100%) * .25 - 30px)}.admin__field-control .admin__field[data-config-scope]:nth-child(n+2):before{content:''}.admin__field._error .admin__field-control [class*=admin__addon-]:before,.admin__field._error .admin__field-control [class*=admin__control-] [class*=admin__addon-]:before,.admin__field._error .admin__field-control>[class*=admin__control-]{border-color:#e22626}.admin__field._disabled,.admin__field._disabled:hover{box-shadow:inherit;cursor:inherit;opacity:1;outline:inherit}.admin__field._hidden{display:none}.admin__field-control+.admin__field-control{margin-top:1.5rem}.admin__field-control._with-tooltip>.admin__control-addon,.admin__field-control._with-tooltip>.admin__control-select,.admin__field-control._with-tooltip>.admin__control-text,.admin__field-control._with-tooltip>.admin__control-textarea,.admin__field-control._with-tooltip>.admin__field-option{max-width:calc(100% - 45px - 4px)}.admin__field-control._with-tooltip .admin__field-tooltip{width:auto}.admin__field-control._with-tooltip .admin__field-option{display:inline-block}.admin__field-control._with-reset>.admin__control-addon,.admin__field-control._with-reset>.admin__control-text,.admin__field-control._with-reset>.admin__control-textarea{width:calc(100% - 30px - .5rem - 4px)}.admin__field-control._with-reset .admin__field-fallback-reset{margin-left:.5rem;margin-top:1rem;vertical-align:top}.admin__field-control._with-reset._with-tooltip>.admin__control-addon,.admin__field-control._with-reset._with-tooltip>.admin__control-text,.admin__field-control._with-reset._with-tooltip>.admin__control-textarea{width:calc(100% - 30px - .5rem - 45px - 8px)}.admin__fieldset>.admin__field-collapsible{margin-bottom:0}.admin__fieldset>.admin__field-collapsible .admin__field-control{border-top:1px solid #ccc;display:block;font-size:1.7rem;font-weight:700;padding:1.7rem 0;width:calc(97%)}.admin__fieldset>.admin__field-collapsible .admin__field-option{padding-top:0}.admin__field-collapsible+div{margin-top:2.5rem}.admin__field-collapsible .admin__control-radio+label:before{height:1.8rem;width:1.8rem}.admin__field-collapsible .admin__control-radio:checked+label:after{left:4px;top:5px}.admin__field-error{background:#fffbbb;border:1px solid #ee7d7d;box-sizing:border-box;color:#555;display:block;font-size:1.2rem;font-weight:400;line-height:1.2;margin:.2rem 0 0;padding:.8rem 1rem .9rem}.admin__field-note{color:#303030;font-size:1.2rem;margin:10px 0 0;padding:0}.admin__additional-info{padding-top:1rem}.admin__field-option{padding-top:.8rem}.admin__field-option .admin__field-label{text-align:left}.admin__field-control>.admin__field-option:nth-child(1):nth-last-child(2),.admin__field-control>.admin__field-option:nth-child(2):nth-last-child(1){display:inline-block}.admin__field-control>.admin__field-option:nth-child(1):nth-last-child(2)+.admin__field-option,.admin__field-control>.admin__field-option:nth-child(2):nth-last-child(1)+.admin__field-option{display:inline-block;margin-left:41px;margin-top:0}.admin__field-control>.admin__field-option:nth-child(1):nth-last-child(2)+.admin__field-option:before,.admin__field-control>.admin__field-option:nth-child(2):nth-last-child(1)+.admin__field-option:before{background:#cacaca;content:'';display:inline-block;height:20px;margin-left:-20px;position:absolute;width:1px}.admin__field-value{padding-top:.8rem}.admin__field-service{padding-top:1rem}.admin__control-fields>.admin__field:first-child,[class*=admin__control-grouped]>.admin__field:first-child{position:static}.admin__control-fields>.admin__field:first-child>.admin__field-label,[class*=admin__control-grouped]>.admin__field:first-child>.admin__field-label{width:calc((100%) * .25 - 30px);float:left;margin-left:30px;cursor:pointer;left:0;opacity:0;position:absolute;top:0}.admin__control-fields .admin__field-label~.admin__field-control{width:100%}.admin__control-fields .admin__field-option{padding-top:0}[class*=admin__control-grouped]{box-sizing:border-box;display:table;width:100%}[class*=admin__control-grouped]>.admin__field{display:table-cell;vertical-align:top}[class*=admin__control-grouped]>.admin__field>.admin__field-control{float:none;width:100%}[class*=admin__control-grouped]>.admin__field.admin__field-default,[class*=admin__control-grouped]>.admin__field.admin__field-large,[class*=admin__control-grouped]>.admin__field.admin__field-medium,[class*=admin__control-grouped]>.admin__field.admin__field-small,[class*=admin__control-grouped]>.admin__field.admin__field-x-small{width:1px}[class*=admin__control-grouped]>.admin__field.admin__field-default+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-large+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-medium+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-small+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-x-small+.admin__field:last-child{width:auto}[class*=admin__control-grouped]>.admin__field:nth-child(n+2){padding-left:20px}.admin__control-group-equal{table-layout:fixed}.admin__control-group-equal>.admin__field{width:50%}.admin__field-control-group{margin-top:.8rem}.admin__field-control-group>.admin__field{padding:0}.admin__control-grouped-date>.admin__field-date{white-space:nowrap;width:1px}.admin__control-grouped-date>.admin__field-date.admin__field>.admin__field-control{float:left;position:relative}.admin__control-grouped-date>.admin__field-date+.admin__field:last-child{width:auto}.admin__control-grouped-date>.admin__field-date+.admin__field-date>.admin__field-label{float:left;padding-right:20px}.admin__control-grouped-date .ui-datepicker-trigger{left:100%;top:0}.admin__field-group-columns.admin__field-control.admin__control-grouped{width:calc((100%) * 1 - 30px);float:left;margin-left:30px}.admin__field-group-columns>.admin__field:first-child>.admin__field-label{float:none;margin:0;opacity:1;position:static;text-align:left}.admin__field-group-columns .admin__control-select{width:100%}.admin__field-group-additional{clear:both}.admin__field-group-additional .action-advanced{margin-top:1rem}.admin__field-group-additional .action-secondary{width:100%}.admin__field-group-show-label{white-space:nowrap}.admin__field-group-show-label>.admin__field-control,.admin__field-group-show-label>.admin__field-label{display:inline-block;vertical-align:top}.admin__field-group-show-label>.admin__field-label{margin-right:20px}.admin__field-complex{margin:1rem 0 3rem;padding-left:1rem}.admin__field:not(._hidden)+.admin__field-complex{margin-top:3rem}.admin__field-complex .admin__field-complex-title{clear:both;color:#303030;font-size:1.7rem;font-weight:600;letter-spacing:.025em;margin-bottom:1rem}.admin__field-complex .admin__field-complex-elements{float:right;max-width:40%}.admin__field-complex .admin__field-complex-elements button{margin-left:1rem}.admin__field-complex .admin__field-complex-content{max-width:60%;overflow:hidden}.admin__field-complex+.admin__field._empty._no-header{margin-top:-3rem}.admin__legend{float:left;position:static;width:100%}.admin__legend+br{clear:left;display:block;height:0;overflow:hidden}.message{margin-bottom:3rem}.message-icon-top:before{margin-top:0;top:1.8rem}.nav{background-color:#f8f8f8;border-bottom:1px solid #e3e3e3;border-top:1px solid #e3e3e3;display:none;margin-bottom:3rem;padding:2.2rem 1.5rem 0 0}.nav .btn-group,.nav-bar-outer-actions{float:right;margin-bottom:1.7rem}.nav .btn-group .btn-wrap,.nav-bar-outer-actions .btn-wrap{float:right;margin-left:.5rem;margin-right:.5rem}.nav .btn-group .btn-wrap .btn,.nav-bar-outer-actions .btn-wrap .btn{padding-left:.5rem;padding-right:.5rem}.nav-bar-outer-actions{margin-top:-10.6rem;padding-right:1.5rem}.btn-wrap-try-again{width:9.5rem}.btn-wrap-next,.btn-wrap-prev{width:8.5rem}.nav-bar{counter-reset:i;float:left;margin:0 1rem 1.7rem 0;padding:0;position:relative;white-space:nowrap}.nav-bar:before{background-color:#d4d4d4;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#d1d1d1 0,#d4d4d4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d1d1d1', endColorstr='#d4d4d4', GradientType=0);border-bottom:1px solid #d9d9d9;border-top:1px solid #bfbfbf;content:'';height:1rem;left:5.15rem;position:absolute;right:5.15rem;top:.7rem}.nav-bar>li{display:inline-block;font-size:0;position:relative;vertical-align:top;width:10.3rem}.nav-bar>li:first-child:after{display:none}.nav-bar>li:after{background-color:#514943;content:'';height:.5rem;left:calc(-50% + .25rem);position:absolute;right:calc(50% + .7rem);top:.9rem}.nav-bar>li.disabled:before,.nav-bar>li.ui-state-disabled:before{bottom:0;content:'';left:0;position:absolute;right:0;top:0;z-index:1}.nav-bar>li.active~li:after,.nav-bar>li.ui-state-active~li:after{display:none}.nav-bar>li.active~li a:after,.nav-bar>li.ui-state-active~li a:after{background-color:transparent;border-color:transparent;color:#a6a6a6}.nav-bar>li.active a,.nav-bar>li.ui-state-active a{color:#000}.nav-bar>li.active a:hover,.nav-bar>li.ui-state-active a:hover{cursor:default}.nav-bar>li.active a:after,.nav-bar>li.ui-state-active a:after{background-color:#fff;content:''}.nav-bar a{color:#514943;display:block;font-size:1.2rem;font-weight:600;line-height:1.2;overflow:hidden;padding:3rem .5em 0;position:relative;text-align:center;text-overflow:ellipsis}.nav-bar a:hover{text-decoration:none}.nav-bar a:after{background-color:#514943;border:.4rem solid #514943;border-radius:100%;color:#fff;content:counter(i);counter-increment:i;height:1.5rem;left:50%;line-height:.6;margin-left:-.8rem;position:absolute;right:auto;text-align:center;top:.4rem;width:1.5rem}.nav-bar a:before{background-color:#d6d6d6;border:1px solid transparent;border-bottom-color:#d9d9d9;border-radius:100%;border-top-color:#bfbfbf;content:'';height:2.3rem;left:50%;line-height:1;margin-left:-1.2rem;position:absolute;top:0;width:2.3rem}.tooltip{display:block;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.19rem;font-weight:400;line-height:1.4;opacity:0;position:absolute;visibility:visible;z-index:10}.tooltip.in{opacity:.9}.tooltip.top{margin-top:-4px;padding:8px 0}.tooltip.right{margin-left:4px;padding:0 8px}.tooltip.bottom{margin-top:4px;padding:8px 0}.tooltip.left{margin-left:-4px;padding:0 8px}.tooltip p:last-child{margin-bottom:0}.tooltip-inner{background-color:#fff;border:1px solid #adadad;border-radius:0;box-shadow:1px 1px 1px #ccc;color:#41362f;max-width:31rem;padding:.5em 1em;text-decoration:none}.tooltip-arrow,.tooltip-arrow:after{border:solid transparent;height:0;position:absolute;width:0}.tooltip-arrow:after{content:'';position:absolute}.tooltip.top .tooltip-arrow,.tooltip.top .tooltip-arrow:after{border-top-color:#949494;border-width:8px 8px 0;bottom:0;left:50%;margin-left:-8px}.tooltip.top-left .tooltip-arrow,.tooltip.top-left .tooltip-arrow:after{border-top-color:#949494;border-width:8px 8px 0;bottom:0;margin-bottom:-8px;right:8px}.tooltip.top-right .tooltip-arrow,.tooltip.top-right .tooltip-arrow:after{border-top-color:#949494;border-width:8px 8px 0;bottom:0;left:8px;margin-bottom:-8px}.tooltip.right .tooltip-arrow,.tooltip.right .tooltip-arrow:after{border-right-color:#949494;border-width:8px 8px 8px 0;left:1px;margin-top:-8px;top:50%}.tooltip.right .tooltip-arrow:after{border-right-color:#fff;border-width:6px 7px 6px 0;margin-left:0;margin-top:-6px}.tooltip.left .tooltip-arrow,.tooltip.left .tooltip-arrow:after{border-left-color:#949494;border-width:8px 0 8px 8px;margin-top:-8px;right:0;top:50%}.tooltip.bottom .tooltip-arrow,.tooltip.bottom .tooltip-arrow:after{border-bottom-color:#949494;border-width:0 8px 8px;left:50%;margin-left:-8px;top:0}.tooltip.bottom-left .tooltip-arrow,.tooltip.bottom-left .tooltip-arrow:after{border-bottom-color:#949494;border-width:0 8px 8px;margin-top:-8px;right:8px;top:0}.tooltip.bottom-right .tooltip-arrow,.tooltip.bottom-right .tooltip-arrow:after{border-bottom-color:#949494;border-width:0 8px 8px;left:8px;margin-top:-8px;top:0}.password-strength{display:block;margin:0 -.3rem 1em;white-space:nowrap}.password-strength.password-strength-too-short .password-strength-item:first-child,.password-strength.password-strength-weak .password-strength-item:first-child,.password-strength.password-strength-weak .password-strength-item:first-child+.password-strength-item{background-color:#e22626}.password-strength.password-strength-fair .password-strength-item:first-child,.password-strength.password-strength-fair .password-strength-item:first-child+.password-strength-item,.password-strength.password-strength-fair .password-strength-item:first-child+.password-strength-item+.password-strength-item{background-color:#ef672f}.password-strength.password-strength-good .password-strength-item:first-child,.password-strength.password-strength-good .password-strength-item:first-child+.password-strength-item,.password-strength.password-strength-good .password-strength-item:first-child+.password-strength-item+.password-strength-item,.password-strength.password-strength-good .password-strength-item:first-child+.password-strength-item+.password-strength-item+.password-strength-item,.password-strength.password-strength-strong .password-strength-item{background-color:#79a22e}.password-strength .password-strength-item{background-color:#ccc;display:inline-block;font-size:0;height:1.4rem;margin-right:.3rem;width:calc(20% - .6rem)}@-webkit-keyframes progress-bar-stripes{from{background-position:4rem 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:4rem 0}to{background-position:0 0}}.progress{background-color:#fafafa;border:1px solid #ccc;clear:left;height:3rem;margin-bottom:3rem;overflow:hidden}.progress-bar{background-color:#79a22e;color:#fff;float:left;font-size:1.19rem;height:100%;line-height:3rem;text-align:center;transition:width .6s ease;width:0}.progress-bar.active{-webkit-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-text-description{margin-bottom:1.6rem}.progress-bar-text-progress{text-align:right}.page-columns .page-inner-sidebar{margin:0 0 3rem}.page-header{margin-bottom:2.7rem;padding-bottom:2.9rem;position:relative}.page-header:before{border-bottom:1px solid #e3e3e3;bottom:0;content:'';display:block;height:1px;left:3rem;position:absolute;right:3rem}.container .page-header:before{content:normal}.page-header .message{margin-bottom:1.8rem}.page-header .message+.message{margin-top:-1.5rem}.page-header .admin__action-dropdown,.page-header .search-global-input{transition:none}.container .page-header{margin-bottom:0}.page-title-wrapper{margin-top:1.1rem}.container .page-title-wrapper{background:url(../../pub/images/logo.svg) no-repeat;min-height:41px;padding:4px 0 0 45px}.admin__menu .level-0:first-child>a{margin-top:1.6rem}.admin__menu .level-0:first-child>a:after{top:-1.6rem}.admin__menu .level-0:first-child._active>a:after{display:block}.admin__menu .level-0>a{padding-bottom:1.3rem;padding-top:1.3rem}.admin__menu .level-0>a:before{margin-bottom:.7rem}.admin__menu .item-home>a:before{content:'\e611';font-size:2.3rem;padding-top:-.1rem}.admin__menu .item-component>a:before{content:'\e612'}.admin__menu .item-upgrade>a:before{content:'\e614'}.admin__menu .item-system-config>a:before{content:'\e610'}.admin__menu .item-tools>a:before{content:'\e613'}.modal-sub-title{font-size:1.7rem;font-weight:600}.modal-connect-signin .modal-inner-wrap{max-width:80rem}@-webkit-keyframes ngdialog-fadeout{0%{opacity:1}100%{opacity:0}}@keyframes ngdialog-fadeout{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes ngdialog-fadein{0%{opacity:0}100%{opacity:1}}@keyframes ngdialog-fadein{0%{opacity:0}100%{opacity:1}}.ngdialog{-webkit-overflow-scrolling:touch;bottom:0;box-sizing:border-box;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:999}.ngdialog *,.ngdialog:after,.ngdialog:before{box-sizing:inherit}.ngdialog.ngdialog-disabled-animation *{-webkit-animation:none!important;animation:none!important}.ngdialog.ngdialog-closing .ngdialog-content,.ngdialog.ngdialog-closing .ngdialog-overlay{-webkit-backface-visibility:hidden;-webkit-animation:ngdialog-fadeout .5s;animation:ngdialog-fadeout .5s}.ngdialog-overlay{-webkit-backface-visibility:hidden;-webkit-animation:ngdialog-fadein .5s;animation:ngdialog-fadein .5s;background:rgba(0,0,0,.4);bottom:0;left:0;position:fixed;right:0;top:0}.ngdialog-content{-webkit-backface-visibility:hidden;-webkit-animation:ngdialog-fadein .5s;animation:ngdialog-fadein .5s}body.ngdialog-open{overflow:hidden}.component-indicator{border-radius:50%;cursor:help;display:inline-block;height:20px;text-align:center;width:20px}.component-indicator::after,.component-indicator::before{background:#fff;display:block;opacity:0;position:absolute;transition:opacity .2s linear .1s;visibility:hidden}.component-indicator::before{border:1px solid #adadad;border-radius:1px;box-shadow:0 0 2px rgba(0,0,0,.4);content:attr(data-label);font-size:1.2rem;margin:34px 0 0 -10px;min-width:50px;padding:4px 5px}.component-indicator::after{border-color:#999;border-style:solid;border-width:1px 0 0 1px;box-shadow:-1px -1px 1px rgba(0,0,0,.1);content:'';height:10px;margin:9px 0 0 5px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);width:10px}.component-indicator:hover::after,.component-indicator:hover::before{opacity:1;transition:opacity .2s linear;visibility:visible}.component-indicator span{display:block;height:20px;overflow:hidden;width:20px}.component-indicator span:before{content:'';display:block;font-family:Icons;font-size:20px;height:100%;line-height:20px;width:100%}.component-indicator._on{background:#79a22e}.component-indicator._off{background:#e22626}.component-indicator._off span:before{background:#fff;height:4px;margin:8px auto 20px;width:12px}.component-indicator._info{background:0 0}.component-indicator._info span{width:21px}.component-indicator._info span:before{color:#008bdb;content:'\e61a';font-family:Icons;font-size:21px}.app-updater .nav{display:block;margin-bottom:3.1rem;margin-top:-2.8rem}.app-updater .nav-bar-outer-actions{margin-top:1rem;padding-right:0}.app-updater .nav-bar-outer-actions .btn-wrap-cancel{margin-right:2.6rem}.main{padding-bottom:2rem;padding-top:3rem}.menu-wrapper .logo-static{pointer-events:none}.header{display:none}.header .logo{float:left;height:4.1rem;width:3.5rem}.header-title{font-size:2.8rem;letter-spacing:.02em;line-height:1.4;margin:2.5rem 0 3.5rem 5rem}.page-title{margin-bottom:1rem}.page-sub-title{font-size:2rem}.accent-box{margin-bottom:2rem}.accent-box .btn-prime{margin-top:1.5rem}.spinner.side{float:left;font-size:2.4rem;margin-left:2rem;margin-top:-5px}.page-landing{margin:7.6% auto 0;max-width:44rem;text-align:center}.page-landing .logo{height:5.6rem;margin-bottom:2rem;width:19.2rem}.page-landing .text-version{margin-bottom:3rem}.page-landing .text-welcome{margin-bottom:6.5rem}.page-landing .text-terms{margin-bottom:2.5rem;text-align:center}.page-landing .btn-submit,.page-license .license-text{margin-bottom:2rem}.page-license .page-license-footer{text-align:right}.readiness-check-item{margin-bottom:4rem;min-height:2.5rem}.readiness-check-item .spinner{float:left;font-size:2.5rem;margin:-.4rem 0 0 1.7rem}.readiness-check-title{font-size:1.4rem;font-weight:700;margin-bottom:.1rem;margin-left:5.7rem}.readiness-check-content{margin-left:5.7rem;margin-right:22rem;position:relative}.readiness-check-content .readiness-check-title{margin-left:0}.readiness-check-content .list{margin-top:-.3rem}.readiness-check-side{left:100%;padding-left:2.4rem;position:absolute;top:0;width:22rem}.readiness-check-side .side-title{margin-bottom:0}.readiness-check-icon{float:left;margin-left:1.7rem;margin-top:.3rem}.page-web-configuration .form-el-insider-wrap{width:auto}.page-web-configuration .form-el-insider{width:15.4rem}.page-web-configuration .form-el-insider-input .form-el-input{width:16.5rem}.customize-your-store .advanced-modules-count,.customize-your-store .advanced-modules-select{padding-left:1.5rem}.customize-your-store .customize-your-store-advanced{min-width:0}.customize-your-store .message-error:before{margin-top:0;top:1.8rem}.customize-your-store .message-error a{color:#333;text-decoration:underline}.customize-your-store .message-error .form-label:before{background:#fff}.customize-your-store .customize-database-clean p{margin-top:2.5rem}.content-install{margin-bottom:2rem}.console{border:1px solid #ccc;font-family:'Courier New',Courier,monospace;font-weight:300;height:20rem;margin:1rem 0 2rem;overflow-y:auto;padding:1.5rem 2rem 2rem;resize:vertical}.console .text-danger{color:#e22626}.console .text-success{color:#090}.console .hidden{display:none}.content-success .btn-prime{margin-top:1.5rem}.jumbo-title{font-size:3.6rem}.jumbo-title .jumbo-icon{font-size:3.8rem;margin-right:.25em;position:relative;top:.15em}.install-database-clean{margin-top:4rem}.install-database-clean .btn{margin-right:1rem}.page-sub-title{margin-bottom:2.1rem;margin-top:3rem}.multiselect-custom{max-width:71.1rem}.content-install{margin-top:3.7rem}.home-page-inner-wrap{margin:0 auto;max-width:91rem}.setup-home-title{margin-bottom:3.9rem;padding-top:1.8rem;text-align:center}.setup-home-item{background-color:#fafafa;border:1px solid #ccc;color:#333;display:block;margin-bottom:2rem;margin-left:1.3rem;margin-right:1.3rem;min-height:30rem;padding:2rem;text-align:center}.setup-home-item:hover{border-color:#8c8c8c;color:#333;text-decoration:none;transition:border-color .1s linear}.setup-home-item:active{-webkit-transform:scale(0.99);-ms-transform:scale(0.99);transform:scale(0.99)}.setup-home-item:before{display:block;font-size:7rem;margin-bottom:3.3rem;margin-top:4rem}.setup-home-item-component:before{content:'\e612'}.setup-home-item-upgrade:before{content:'\e614'}.setup-home-item-configuration:before{content:'\e610'}.setup-home-item-title{display:block;font-size:1.8rem;letter-spacing:.025em;margin-bottom:1rem}.setup-home-item-description{display:block}.componenet-manager-wrap{border:1px solid #bbb;margin:0 0 4rem}.componenet-manager-wrap .componenet-manager-account{font-size:1.4rem;float:right;padding:.6rem 0 0}.componenet-manager-wrap .componenet-manager-account .sign-in-out{margin-left:2rem}.component-manager-title{background-color:#f8f8f8;border-bottom:1px solid #e3e3e3;color:#41362f;font-size:2rem;line-height:1.2;padding:2rem}.component-manager-content{padding:2.5rem 2rem 2rem}.componenet-manager-items{list-style:none;margin:0;text-align:center}.componenet-manager-items .btn{border:1px solid #adadad;display:block;margin:1rem auto 0}.componenet-manager-items .item-title{margin:0 0 1.5rem}.componenet-manager-items .item-number{font-size:6rem;line-height:.8;margin:0 0 1.5rem}.componenet-manager-items .item-date{margin:0 0 3.7rem}.componenet-manager-items .item-install{margin:0 0 2rem}.componenet-manager-items .item-install .btn{line-height:1.36;margin:0;padding:0;color:#008bdb;text-decoration:none;background:0 0;border:0;display:inline;font-size:1.4rem;font-weight:400}.componenet-manager-items .item-install .btn:visited{color:#008bdb;text-decoration:none}.componenet-manager-items .item-install .btn:hover{text-decoration:underline}.componenet-manager-items .item-install .btn:active{color:#ff5501;text-decoration:underline}.componenet-manager-items .item-install .btn:hover{color:#0fa7ff}.componenet-manager-items .item-install .btn:active,.componenet-manager-items .item-install .btn:focus,.componenet-manager-items .item-install .btn:hover{background:0 0;border:0}.componenet-manager-items .item-install .btn.disabled,.componenet-manager-items .item-install .btn[disabled],fieldset[disabled] .componenet-manager-items .item-install .btn{color:#008bdb;opacity:.5;cursor:default;pointer-events:none;text-decoration:underline}.componenet-manager-items .item-install .btn.disabled{text-decoration:none}.sync-login-wrap{padding:0 10% 4rem}.sync-login-wrap .legend{font-size:2.6rem;color:#eb5202;float:left;font-weight:300;line-height:1.2;margin:-1rem 0 2.5rem;position:static;width:100%}.sync-login-wrap .legend._hidden{display:none}.sync-login-wrap .login-header{font-size:3.4rem;font-weight:300;margin:0 0 2rem}.sync-login-wrap .login-header span{display:inline-block;padding:.9rem 0 0;vertical-align:top}.sync-login-wrap h4{font-size:1.4rem;margin:0 0 2rem}.sync-login-wrap .sync-login-steps{margin:0 0 2rem 1.5rem}.sync-login-wrap .sync-login-steps li{padding:0 0 0 1rem}.sync-login-wrap .form-row .form-label{display:inline-block}.sync-login-wrap .form-row .form-label.required{padding-left:1.5rem}.sync-login-wrap .form-row .form-label.required:after{left:0;position:absolute;right:auto}.sync-login-wrap .form-row{max-width:28rem}.sync-login-wrap .form-actions{display:table;margin-top:-1.3rem}.sync-login-wrap .form-actions .links{display:table-header-group}.sync-login-wrap .form-actions .actions{padding:3rem 0 0}@media all and (max-width:1047px){.admin__menu .submenu li{min-width:19.8rem}.nav{padding-bottom:5.38rem;padding-left:1.5rem;text-align:center}.nav-bar{display:inline-block;float:none;margin-right:0;vertical-align:top}.nav .btn-group,.nav-bar-outer-actions{display:inline-block;float:none;margin-top:-8.48rem;text-align:center;vertical-align:top;width:100%}.nav-bar-outer-actions{padding-right:0}.nav-bar-outer-actions .outer-actions-inner-wrap{display:inline-block}.app-updater .nav{padding-bottom:1.7rem}.app-updater .nav-bar-outer-actions{margin-top:2rem}}@media all and (min-width:768px){.page-layout-admin-2columns-left .page-columns{margin-left:-30px}.page-layout-admin-2columns-left .page-columns:after{clear:both;content:'';display:table}.page-layout-admin-2columns-left .page-columns .main-col{width:calc((100%) * .75 - 30px);float:right}.page-layout-admin-2columns-left .page-columns .side-col{width:calc((100%) * .25 - 30px);float:left;margin-left:30px}.col-m-1,.col-m-10,.col-m-11,.col-m-12,.col-m-2,.col-m-3,.col-m-4,.col-m-5,.col-m-6,.col-m-7,.col-m-8,.col-m-9{float:left}.col-m-12{width:100%}.col-m-11{width:91.66666667%}.col-m-10{width:83.33333333%}.col-m-9{width:75%}.col-m-8{width:66.66666667%}.col-m-7{width:58.33333333%}.col-m-6{width:50%}.col-m-5{width:41.66666667%}.col-m-4{width:33.33333333%}.col-m-3{width:25%}.col-m-2{width:16.66666667%}.col-m-1{width:8.33333333%}.col-m-pull-12{right:100%}.col-m-pull-11{right:91.66666667%}.col-m-pull-10{right:83.33333333%}.col-m-pull-9{right:75%}.col-m-pull-8{right:66.66666667%}.col-m-pull-7{right:58.33333333%}.col-m-pull-6{right:50%}.col-m-pull-5{right:41.66666667%}.col-m-pull-4{right:33.33333333%}.col-m-pull-3{right:25%}.col-m-pull-2{right:16.66666667%}.col-m-pull-1{right:8.33333333%}.col-m-pull-0{right:auto}.col-m-push-12{left:100%}.col-m-push-11{left:91.66666667%}.col-m-push-10{left:83.33333333%}.col-m-push-9{left:75%}.col-m-push-8{left:66.66666667%}.col-m-push-7{left:58.33333333%}.col-m-push-6{left:50%}.col-m-push-5{left:41.66666667%}.col-m-push-4{left:33.33333333%}.col-m-push-3{left:25%}.col-m-push-2{left:16.66666667%}.col-m-push-1{left:8.33333333%}.col-m-push-0{left:auto}.col-m-offset-12{margin-left:100%}.col-m-offset-11{margin-left:91.66666667%}.col-m-offset-10{margin-left:83.33333333%}.col-m-offset-9{margin-left:75%}.col-m-offset-8{margin-left:66.66666667%}.col-m-offset-7{margin-left:58.33333333%}.col-m-offset-6{margin-left:50%}.col-m-offset-5{margin-left:41.66666667%}.col-m-offset-4{margin-left:33.33333333%}.col-m-offset-3{margin-left:25%}.col-m-offset-2{margin-left:16.66666667%}.col-m-offset-1{margin-left:8.33333333%}.col-m-offset-0{margin-left:0}.page-columns{margin-left:-30px}.page-columns:after{clear:both;content:'';display:table}.page-columns .page-inner-content{width:calc((100%) * .75 - 30px);float:right}.page-columns .page-inner-sidebar{width:calc((100%) * .25 - 30px);float:left;margin-left:30px}}@media all and (min-width:1048px){.col-l-1,.col-l-10,.col-l-11,.col-l-12,.col-l-2,.col-l-3,.col-l-4,.col-l-5,.col-l-6,.col-l-7,.col-l-8,.col-l-9{float:left}.col-l-12{width:100%}.col-l-11{width:91.66666667%}.col-l-10{width:83.33333333%}.col-l-9{width:75%}.col-l-8{width:66.66666667%}.col-l-7{width:58.33333333%}.col-l-6{width:50%}.col-l-5{width:41.66666667%}.col-l-4{width:33.33333333%}.col-l-3{width:25%}.col-l-2{width:16.66666667%}.col-l-1{width:8.33333333%}.col-l-pull-12{right:100%}.col-l-pull-11{right:91.66666667%}.col-l-pull-10{right:83.33333333%}.col-l-pull-9{right:75%}.col-l-pull-8{right:66.66666667%}.col-l-pull-7{right:58.33333333%}.col-l-pull-6{right:50%}.col-l-pull-5{right:41.66666667%}.col-l-pull-4{right:33.33333333%}.col-l-pull-3{right:25%}.col-l-pull-2{right:16.66666667%}.col-l-pull-1{right:8.33333333%}.col-l-pull-0{right:auto}.col-l-push-12{left:100%}.col-l-push-11{left:91.66666667%}.col-l-push-10{left:83.33333333%}.col-l-push-9{left:75%}.col-l-push-8{left:66.66666667%}.col-l-push-7{left:58.33333333%}.col-l-push-6{left:50%}.col-l-push-5{left:41.66666667%}.col-l-push-4{left:33.33333333%}.col-l-push-3{left:25%}.col-l-push-2{left:16.66666667%}.col-l-push-1{left:8.33333333%}.col-l-push-0{left:auto}.col-l-offset-12{margin-left:100%}.col-l-offset-11{margin-left:91.66666667%}.col-l-offset-10{margin-left:83.33333333%}.col-l-offset-9{margin-left:75%}.col-l-offset-8{margin-left:66.66666667%}.col-l-offset-7{margin-left:58.33333333%}.col-l-offset-6{margin-left:50%}.col-l-offset-5{margin-left:41.66666667%}.col-l-offset-4{margin-left:33.33333333%}.col-l-offset-3{margin-left:25%}.col-l-offset-2{margin-left:16.66666667%}.col-l-offset-1{margin-left:8.33333333%}.col-l-offset-0{margin-left:0}}@media all and (min-width:1440px){.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{float:left}.col-xl-12{width:100%}.col-xl-11{width:91.66666667%}.col-xl-10{width:83.33333333%}.col-xl-9{width:75%}.col-xl-8{width:66.66666667%}.col-xl-7{width:58.33333333%}.col-xl-6{width:50%}.col-xl-5{width:41.66666667%}.col-xl-4{width:33.33333333%}.col-xl-3{width:25%}.col-xl-2{width:16.66666667%}.col-xl-1{width:8.33333333%}.col-xl-pull-12{right:100%}.col-xl-pull-11{right:91.66666667%}.col-xl-pull-10{right:83.33333333%}.col-xl-pull-9{right:75%}.col-xl-pull-8{right:66.66666667%}.col-xl-pull-7{right:58.33333333%}.col-xl-pull-6{right:50%}.col-xl-pull-5{right:41.66666667%}.col-xl-pull-4{right:33.33333333%}.col-xl-pull-3{right:25%}.col-xl-pull-2{right:16.66666667%}.col-xl-pull-1{right:8.33333333%}.col-xl-pull-0{right:auto}.col-xl-push-12{left:100%}.col-xl-push-11{left:91.66666667%}.col-xl-push-10{left:83.33333333%}.col-xl-push-9{left:75%}.col-xl-push-8{left:66.66666667%}.col-xl-push-7{left:58.33333333%}.col-xl-push-6{left:50%}.col-xl-push-5{left:41.66666667%}.col-xl-push-4{left:33.33333333%}.col-xl-push-3{left:25%}.col-xl-push-2{left:16.66666667%}.col-xl-push-1{left:8.33333333%}.col-xl-push-0{left:auto}.col-xl-offset-12{margin-left:100%}.col-xl-offset-11{margin-left:91.66666667%}.col-xl-offset-10{margin-left:83.33333333%}.col-xl-offset-9{margin-left:75%}.col-xl-offset-8{margin-left:66.66666667%}.col-xl-offset-7{margin-left:58.33333333%}.col-xl-offset-6{margin-left:50%}.col-xl-offset-5{margin-left:41.66666667%}.col-xl-offset-4{margin-left:33.33333333%}.col-xl-offset-3{margin-left:25%}.col-xl-offset-2{margin-left:16.66666667%}.col-xl-offset-1{margin-left:8.33333333%}.col-xl-offset-0{margin-left:0}}@media all and (max-width:767px){.abs-clearer-mobile:after,.nav-bar:after{clear:both;content:'';display:table}.list-definition>dt{float:none}.list-definition>dd{margin-left:0}.form-row .form-label{text-align:left}.form-row .form-label.required:after{position:static}.nav{padding-bottom:0;padding-left:0;padding-right:0}.nav-bar-outer-actions{margin-top:0}.nav-bar{display:block;margin-bottom:0;margin-left:auto;margin-right:auto;width:30.9rem}.nav-bar:before{display:none}.nav-bar>li{float:left;min-height:9rem}.nav-bar>li:after{display:none}.nav-bar>li:nth-child(4n){clear:both}.nav-bar a{line-height:1.4}.tooltip{display:none!important}.readiness-check-content{margin-right:2rem}.readiness-check-side{padding:2rem 0;position:static}.form-el-insider,.form-el-insider-wrap,.page-web-configuration .form-el-insider-input,.page-web-configuration .form-el-insider-input .form-el-input{display:block;width:100%}}@media all and (max-width:479px){.nav-bar{width:23.175rem}.nav-bar>li{width:7.725rem}.nav .btn-group .btn-wrap-try-again,.nav-bar-outer-actions .btn-wrap-try-again{clear:both;display:block;float:none;margin-left:auto;margin-right:auto;margin-top:1rem;padding-top:1rem}} \ No newline at end of file +.abs-action-delete,.abs-icon,.action-close:before,.action-next:before,.action-previous:before,.admin-user .admin__action-dropdown:before,.admin__action-multiselect-dropdown:before,.admin__action-multiselect-search-label:before,.admin__control-checkbox+label:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:before,.admin__control-table .action-delete:before,.admin__current-filters-list .action-remove:before,.admin__data-grid-action-bookmarks .action-delete:before,.admin__data-grid-action-bookmarks .action-edit:before,.admin__data-grid-action-bookmarks .action-submit:before,.admin__data-grid-action-bookmarks .admin__action-dropdown:before,.admin__data-grid-action-columns .admin__action-dropdown:before,.admin__data-grid-action-export .admin__action-dropdown:before,.admin__field-fallback-reset:before,.admin__menu .level-0>a:before,.admin__page-nav-item-message .admin__page-nav-item-message-icon,.admin__page-nav-title._collapsible:after,.data-grid-filters-action-wrap .action-default:before,.data-grid-row-changed:after,.data-grid-row-parent>td .data-grid-checkbox-cell-inner:before,.data-grid-search-control-wrap .action-submit:before,.icon-failed:before,.icon-success:before,.notifications-action:before,.notifications-close:before,.page-actions .page-actions-buttons>button.action-back:before,.page-actions .page-actions-buttons>button.back:before,.page-actions>button.action-back:before,.page-actions>button.back:before,.page-title-jumbo-success:before,.search-global-label:before,.selectmenu .action-delete:before,.selectmenu .action-edit:before,.selectmenu .action-save:before,.setup-home-item:before,.sticky-header .data-grid-search-control-wrap .data-grid-search-label:before,.store-switcher .dropdown-menu .dropdown-toolbar a:before,.tooltip .help a:before,.tooltip .help span:before{-webkit-font-smoothing:antialiased;font-family:Icons;font-style:normal;font-weight:400;line-height:1;speak:none}.validation-symbol:after{color:#e22626;content:'*';font-weight:400;margin-left:3px}.abs-modal-overlay,.modals-overlay{background:rgba(0,0,0,.35);bottom:0;left:0;position:fixed;right:0;top:0}.abs-action-delete>span,.abs-visually-hidden,.action-multicheck-wrap .action-multicheck-toggle>span,.admin__actions-switch-checkbox,.admin__control-fields .admin__field:nth-child(n+2):not(.admin__field-option):not(.admin__field-group-show-label)>.admin__field-label,.admin__field-tooltip .admin__field-tooltip-action span,.customize-your-store .customize-your-store-default .legend,.form-el-checkbox,.form-el-radio,.selectmenu .action-delete>span,.selectmenu .action-edit>span,.selectmenu .action-save>span,.selectmenu-toggle span,.tooltip .help a span,.tooltip .help span span,[class*=admin__control-grouped]>.admin__field:nth-child(n+2):not(.admin__field-option):not(.admin__field-group-show-label):not(.admin__field-date)>.admin__field-label{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.abs-visually-hidden-reset,.admin__field-group-columns>.admin__field:nth-child(n+2):not(.admin__field-option):not(.admin__field-group-show-label):not(.admin__field-date)>.admin__field-label[class]{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.abs-clearfix:after,.abs-clearfix:before,.action-multicheck-wrap:after,.action-multicheck-wrap:before,.actions-split:after,.actions-split:before,.admin__control-table-pagination:after,.admin__control-table-pagination:before,.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content:after,.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content:before,.admin__data-grid-filters-footer:after,.admin__data-grid-filters-footer:before,.admin__data-grid-filters:after,.admin__data-grid-filters:before,.admin__data-grid-header-row:after,.admin__data-grid-header-row:before,.admin__field-complex:after,.admin__field-complex:before,.modal-slide .magento-message .insert-title-inner:after,.modal-slide .magento-message .insert-title-inner:before,.modal-slide .main-col .insert-title-inner:after,.modal-slide .main-col .insert-title-inner:before,.page-actions._fixed:after,.page-actions._fixed:before,.page-content:after,.page-content:before,.page-header-actions:after,.page-header-actions:before,.page-main-actions:not(._hidden):after,.page-main-actions:not(._hidden):before{content:'';display:table}.abs-clearfix:after,.action-multicheck-wrap:after,.actions-split:after,.admin__control-table-pagination:after,.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content:after,.admin__data-grid-filters-footer:after,.admin__data-grid-filters:after,.admin__data-grid-header-row:after,.admin__field-complex:after,.modal-slide .magento-message .insert-title-inner:after,.modal-slide .main-col .insert-title-inner:after,.page-actions._fixed:after,.page-content:after,.page-header-actions:after,.page-main-actions:not(._hidden):after{clear:both}.abs-list-reset-styles{margin:0;padding:0;list-style:none}.abs-draggable-handle,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .draggable-handle,.admin__control-table .draggable-handle,.data-grid .data-grid-draggable-row-cell .draggable-handle{cursor:-webkit-grab;cursor:move;font-size:0;margin-top:-4px;padding:0 1rem 0 0;vertical-align:middle;display:inline-block;text-decoration:none}.abs-draggable-handle:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .draggable-handle:before,.admin__control-table .draggable-handle:before,.data-grid .data-grid-draggable-row-cell .draggable-handle:before{-webkit-font-smoothing:antialiased;font-size:1.8rem;line-height:inherit;color:#9e9e9e;content:'\e617';font-family:Icons;vertical-align:middle;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.abs-draggable-handle:hover:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .draggable-handle:hover:before,.admin__control-table .draggable-handle:hover:before,.data-grid .data-grid-draggable-row-cell .draggable-handle:hover:before{color:#858585}.abs-config-scope-label,.admin__field:not(.admin__field-option)>.admin__field-label span[data-config-scope]:before{bottom:-1.3rem;color:gray;content:attr(data-config-scope);font-size:1.1rem;font-weight:400;min-width:15rem;position:absolute;right:0;text-transform:lowercase}.abs-word-wrap,.admin__field:not(.admin__field-option)>.admin__field-label{overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-word;-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;box-sizing:border-box}*,:after,:before{box-sizing:inherit}:focus{box-shadow:none;outline:0}._keyfocus :focus{box-shadow:0 0 0 1px #008bdb}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}mark{background:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}embed,img,object,video{max-width:100%}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/light/opensans-300.eot);src:url(../fonts/opensans/light/opensans-300.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/light/opensans-300.woff2) format('woff2'),url(../fonts/opensans/light/opensans-300.woff) format('woff'),url(../fonts/opensans/light/opensans-300.ttf) format('truetype'),url('../fonts/opensans/light/opensans-300.svg#Open Sans') format('svg');font-weight:300;font-style:normal}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/regular/opensans-400.eot);src:url(../fonts/opensans/regular/opensans-400.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/regular/opensans-400.woff2) format('woff2'),url(../fonts/opensans/regular/opensans-400.woff) format('woff'),url(../fonts/opensans/regular/opensans-400.ttf) format('truetype'),url('../fonts/opensans/regular/opensans-400.svg#Open Sans') format('svg');font-weight:400;font-style:normal}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/semibold/opensans-600.eot);src:url(../fonts/opensans/semibold/opensans-600.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/semibold/opensans-600.woff2) format('woff2'),url(../fonts/opensans/semibold/opensans-600.woff) format('woff'),url(../fonts/opensans/semibold/opensans-600.ttf) format('truetype'),url('../fonts/opensans/semibold/opensans-600.svg#Open Sans') format('svg');font-weight:600;font-style:normal}@font-face{font-family:'Open Sans';src:url(../fonts/opensans/bold/opensans-700.eot);src:url(../fonts/opensans/bold/opensans-700.eot?#iefix) format('embedded-opentype'),url(../fonts/opensans/bold/opensans-700.woff2) format('woff2'),url(../fonts/opensans/bold/opensans-700.woff) format('woff'),url(../fonts/opensans/bold/opensans-700.ttf) format('truetype'),url('../fonts/opensans/bold/opensans-700.svg#Open Sans') format('svg');font-weight:700;font-style:normal}html{font-size:62.5%}body{color:#333;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.36;font-size:1.4rem}h1{margin:0 0 2rem;color:#41362f;font-weight:400;line-height:1.2;font-size:2.8rem}h2{margin:0 0 2rem;color:#41362f;font-weight:400;line-height:1.2;font-size:2rem}h3{margin:0 0 2rem;color:#41362f;font-weight:600;line-height:1.2;font-size:1.7rem}h4,h5,h6{font-weight:600;margin-top:0}p{margin:0 0 1em}small{font-size:1.2rem}a{color:#008bdb;text-decoration:none}a:hover{color:#0fa7ff;text-decoration:underline}dl,ol,ul{padding-left:0}nav ol,nav ul{list-style:none;margin:0;padding:0}html{height:100%}body{background-color:#fff;min-height:100%;min-width:102.4rem}.page-wrapper{background-color:#fff;display:inline-block;margin-left:-4px;vertical-align:top;width:calc(100% - 8.8rem)}.page-content{padding-bottom:3rem;padding-left:3rem;padding-right:3rem}.notices-wrapper{margin:0 3rem}.notices-wrapper .messages{margin-bottom:0}.row{margin-left:0;margin-right:0}.row:after{clear:both;content:'';display:table}.col-l-1,.col-l-10,.col-l-11,.col-l-12,.col-l-2,.col-l-3,.col-l-4,.col-l-5,.col-l-6,.col-l-7,.col-l-8,.col-l-9,.col-m-1,.col-m-10,.col-m-11,.col-m-12,.col-m-2,.col-m-3,.col-m-4,.col-m-5,.col-m-6,.col-m-7,.col-m-8,.col-m-9,.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{min-height:1px;padding-left:0;padding-right:0;position:relative}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}.row-gutter{margin-left:-1.5rem;margin-right:-1.5rem}.row-gutter>[class*=col-]{padding-left:1.5rem;padding-right:1.5rem}.abs-clearer:after,.extension-manager-content:after,.extension-manager-title:after,.form-row:after,.header:after,.nav:after,body:after{clear:both;content:'';display:table}.ng-cloak{display:none!important}.hide.hide{display:none}.show.show{display:block}.text-center{text-align:center}.text-right{text-align:right}@font-face{font-family:Icons;src:url(../fonts/icons/icons.eot);src:url(../fonts/icons/icons.eot?#iefix) format('embedded-opentype'),url(../fonts/icons/icons.woff2) format('woff2'),url(../fonts/icons/icons.woff) format('woff'),url(../fonts/icons/icons.ttf) format('truetype'),url(../fonts/icons/icons.svg#Icons) format('svg');font-weight:400;font-style:normal}[class*=icon-]{display:inline-block;line-height:1}.icon-failed:before,.icon-success:before,[class*=icon-]:after{font-family:Icons}.icon-success{color:#79a22e}.icon-success:before{content:'\e62d'}.icon-failed{color:#e22626}.icon-failed:before{content:'\e632'}.icon-success-thick:after{content:'\e62d'}.icon-collapse:after{content:'\e615'}.icon-failed-thick:after{content:'\e632'}.icon-expand:after{content:'\e616'}.icon-warning:after{content:'\e623'}.icon-failed-round,.icon-success-round{border-radius:100%;color:#fff;font-size:2.5rem;height:1em;position:relative;text-align:center;width:1em}.icon-failed-round:after,.icon-success-round:after{bottom:0;font-size:.5em;left:0;position:absolute;right:0;top:.45em}.icon-success-round{background-color:#79a22e}.icon-success-round:after{content:'\e62d'}.icon-failed-round{background-color:#e22626}.icon-failed-round:after{content:'\e632'}dl,ol,ul{margin-top:0}.list{padding-left:0}.list>li{display:block;margin-bottom:.75em;position:relative}.list>li>.icon-failed,.list>li>.icon-success{font-size:1.6em;left:-.1em;position:absolute;top:0}.list>li>.icon-success{color:#79a22e}.list>li>.icon-failed{color:#e22626}.list-item-failed,.list-item-icon,.list-item-success,.list-item-warning{padding-left:3.5rem}.list-item-failed:before,.list-item-success:before,.list-item-warning:before{left:-.1em;position:absolute}.list-item-success:before{color:#79a22e}.list-item-failed:before{color:#e22626}.list-item-warning:before{color:#ef672f}.list-definition{margin:0 0 3rem;padding:0}.list-definition>dt{clear:left;float:left}.list-definition>dd{margin-bottom:1em;margin-left:20rem}.btn-wrap{margin:0 auto}.btn-wrap .btn{width:100%}.btn{background:#e3e3e3;border:none;color:#514943;display:inline-block;font-size:1.6rem;font-weight:600;padding:.45em .9em;text-align:center}.btn:hover{background-color:#dbdbdb;color:#514943;text-decoration:none}.btn:active{background-color:#d6d6d6}.btn.disabled,.btn[disabled]{cursor:default;opacity:.5;pointer-events:none}.ie9 .btn.disabled,.ie9 .btn[disabled]{background-color:#f0f0f0;opacity:1;text-shadow:none}.btn-large{padding:.75em 1.25em}.btn-medium{font-size:1.4rem;padding:.5em 1.5em .6em}.btn-link{background-color:transparent;border:none;color:#008bdb;font-family:1.6rem;font-size:1.5rem}.btn-link:active,.btn-link:focus,.btn-link:hover{background-color:transparent;color:#0fa7ff}.btn-prime{background-color:#eb5202;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.btn-prime:focus,.btn-prime:hover{background-color:#f65405;background-repeat:repeat-x;background-image:linear-gradient(to right,#e04f00 0,#f65405 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#e04f00', endColorstr='#f65405', GradientType=1);color:#fff}.btn-prime:active{background-color:#e04f00;background-repeat:repeat-x;background-image:linear-gradient(to right,#f65405 0,#e04f00 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#f65405', endColorstr='#e04f00', GradientType=1);color:#fff}.ie9 .btn-prime.disabled,.ie9 .btn-prime[disabled]{background-color:#fd6e23}.ie9 .btn-prime.disabled:active,.ie9 .btn-prime.disabled:hover,.ie9 .btn-prime[disabled]:active,.ie9 .btn-prime[disabled]:hover{background-color:#fd6e23;-webkit-filter:none;filter:none}.btn-secondary{background-color:#514943;color:#fff}.btn-secondary:hover{background-color:#5f564f;color:#fff}.btn-secondary:active,.btn-secondary:focus{background-color:#574e48;color:#fff}.ie9 .btn-secondary.disabled,.ie9 .btn-secondary[disabled]{background-color:#514943}.ie9 .btn-secondary.disabled:active,.ie9 .btn-secondary[disabled]:active{background-color:#514943;-webkit-filter:none;filter:none}[class*=btn-wrap-triangle]{overflow:hidden;position:relative}[class*=btn-wrap-triangle] .btn:after{border-style:solid;content:'';height:0;position:absolute;top:0;width:0}.btn-wrap-triangle-right{display:inline-block;padding-right:1.74rem;position:relative}.btn-wrap-triangle-right .btn{text-indent:.92rem}.btn-wrap-triangle-right .btn:after{border-color:transparent transparent transparent #e3e3e3;border-width:1.84rem 0 1.84rem 1.84rem;left:100%;margin-left:-1.74rem}.btn-wrap-triangle-right .btn:focus:after,.btn-wrap-triangle-right .btn:hover:after{border-left-color:#dbdbdb}.btn-wrap-triangle-right .btn:active:after{border-left-color:#d6d6d6}.btn-wrap-triangle-right .btn:not(.disabled):active,.btn-wrap-triangle-right .btn:not([disabled]):active{left:1px}.ie9 .btn-wrap-triangle-right .btn.disabled:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:after{border-color:transparent transparent transparent #f0f0f0}.ie9 .btn-wrap-triangle-right .btn.disabled:active:after,.ie9 .btn-wrap-triangle-right .btn.disabled:focus:after,.ie9 .btn-wrap-triangle-right .btn.disabled:hover:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:active:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:focus:after,.ie9 .btn-wrap-triangle-right .btn[disabled]:hover:after{border-left-color:#f0f0f0}.btn-wrap-triangle-right .btn-prime:after{border-color:transparent transparent transparent #eb5202}.btn-wrap-triangle-right .btn-prime:focus:after,.btn-wrap-triangle-right .btn-prime:hover:after{border-left-color:#f65405}.btn-wrap-triangle-right .btn-prime:active:after{border-left-color:#e04f00}.btn-wrap-triangle-right .btn-prime:not(.disabled):active,.btn-wrap-triangle-right .btn-prime:not([disabled]):active{left:1px}.ie9 .btn-wrap-triangle-right .btn-prime.disabled:after,.ie9 .btn-wrap-triangle-right .btn-prime[disabled]:after{border-color:transparent transparent transparent #fd6e23}.ie9 .btn-wrap-triangle-right .btn-prime.disabled:active:after,.ie9 .btn-wrap-triangle-right .btn-prime.disabled:hover:after,.ie9 .btn-wrap-triangle-right .btn-prime[disabled]:active:after,.ie9 .btn-wrap-triangle-right .btn-prime[disabled]:hover:after{border-left-color:#fd6e23}.btn-wrap-triangle-left{display:inline-block;padding-left:1.74rem}.btn-wrap-triangle-left .btn{text-indent:-.92rem}.btn-wrap-triangle-left .btn:after{border-color:transparent #e3e3e3 transparent transparent;border-width:1.84rem 1.84rem 1.84rem 0;margin-right:-1.74rem;right:100%}.btn-wrap-triangle-left .btn:focus:after,.btn-wrap-triangle-left .btn:hover:after{border-right-color:#dbdbdb}.btn-wrap-triangle-left .btn:active:after{border-right-color:#d6d6d6}.btn-wrap-triangle-left .btn:not(.disabled):active,.btn-wrap-triangle-left .btn:not([disabled]):active{right:1px}.ie9 .btn-wrap-triangle-left .btn.disabled:after,.ie9 .btn-wrap-triangle-left .btn[disabled]:after{border-color:transparent #f0f0f0 transparent transparent}.ie9 .btn-wrap-triangle-left .btn.disabled:active:after,.ie9 .btn-wrap-triangle-left .btn.disabled:hover:after,.ie9 .btn-wrap-triangle-left .btn[disabled]:active:after,.ie9 .btn-wrap-triangle-left .btn[disabled]:hover:after{border-right-color:#f0f0f0}.btn-wrap-triangle-left .btn-prime:after{border-color:transparent #eb5202 transparent transparent}.btn-wrap-triangle-left .btn-prime:focus:after,.btn-wrap-triangle-left .btn-prime:hover:after{border-right-color:#e04f00}.btn-wrap-triangle-left .btn-prime:active:after{border-right-color:#f65405}.btn-wrap-triangle-left .btn-prime:not(.disabled):active,.btn-wrap-triangle-left .btn-prime:not([disabled]):active{right:1px}.ie9 .btn-wrap-triangle-left .btn-prime.disabled:after,.ie9 .btn-wrap-triangle-left .btn-prime[disabled]:after{border-color:transparent #fd6e23 transparent transparent}.ie9 .btn-wrap-triangle-left .btn-prime.disabled:active:after,.ie9 .btn-wrap-triangle-left .btn-prime.disabled:hover:after,.ie9 .btn-wrap-triangle-left .btn-prime[disabled]:active:after,.ie9 .btn-wrap-triangle-left .btn-prime[disabled]:hover:after{border-right-color:#fd6e23}.btn-expand{background-color:transparent;border:none;color:#303030;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700;padding:0;position:relative}.btn-expand.expanded:after{border-color:transparent transparent #303030;border-width:0 .285em .36em}.btn-expand.expanded:hover:after{border-color:transparent transparent #3d3d3d}.btn-expand:hover{background-color:transparent;border:none;color:#3d3d3d}.btn-expand:hover:after{border-color:#3d3d3d transparent transparent}.btn-expand:after{border-color:#303030 transparent transparent;border-style:solid;border-width:.36em .285em 0;content:'';height:0;left:100%;margin-left:.5em;margin-top:-.18em;position:absolute;top:50%;width:0}[class*=col-] .form-el-input,[class*=col-] .form-el-select{width:100%}.form-fieldset{border:none;margin:0 0 1em;padding:0}.form-row{margin-bottom:2.2rem}.form-row .form-row{margin-bottom:.4rem}.form-row .form-label{display:block;font-weight:600;padding:.6rem 2.1em 0 0;text-align:right}.form-row .form-label.required{position:relative}.form-row .form-label.required:after{color:#eb5202;content:'*';font-size:1.15em;position:absolute;right:.7em;top:.5em}.form-row .form-el-checkbox+.form-label:before,.form-row .form-el-radio+.form-label:before{top:.7rem}.form-row .form-el-checkbox+.form-label:after,.form-row .form-el-radio+.form-label:after{top:1.1rem}.form-row.form-row-text{padding-top:.6rem}.form-row.form-row-text .action-sign-out{font-size:1.2rem;margin-left:1rem}.form-note{font-size:1.2rem;font-weight:600;margin-top:1rem}.form-el-dummy{display:none}.fieldset{border:0;margin:0;min-width:0;padding:0}input:not([disabled]):focus,textarea:not([disabled]):focus{box-shadow:none}.form-el-input{border:1px solid #adadad;color:#303030;padding:.35em .55em .5em}.form-el-input:hover{border-color:#949494}.form-el-input:focus{border-color:#008bdb}.form-el-input:required{box-shadow:none}.form-label{margin-bottom:.5em}[class*=form-label][for]{cursor:pointer}.form-el-insider-wrap{display:table;width:100%}.form-el-insider-input{display:table-cell;width:100%}.form-el-insider{border-radius:2px;display:table-cell;padding:.43em .55em .5em 0;vertical-align:top}.form-legend,.form-legend-expand,.form-legend-light{display:block;margin:0}.form-legend,.form-legend-expand{font-size:1.25em;font-weight:600;margin-bottom:2.5em;padding-top:1.5em}.form-legend{border-top:1px solid #ccc;width:100%}.form-legend-light{font-size:1em;margin-bottom:1.5em}.form-legend-expand{cursor:pointer;transition:opacity .2s linear}.form-legend-expand:hover{opacity:.85}.form-legend-expand.expanded:after{content:'\e615'}.form-legend-expand:after{content:'\e616';font-family:Icons;font-size:1.15em;font-weight:400;margin-left:.5em;vertical-align:sub}.form-el-checkbox.disabled+.form-label,.form-el-checkbox.disabled+.form-label:before,.form-el-checkbox[disabled]+.form-label,.form-el-checkbox[disabled]+.form-label:before,.form-el-radio.disabled+.form-label,.form-el-radio.disabled+.form-label:before,.form-el-radio[disabled]+.form-label,.form-el-radio[disabled]+.form-label:before{cursor:default;opacity:.5;pointer-events:none}.form-el-checkbox:not(.disabled)+.form-label:hover:before,.form-el-checkbox:not([disabled])+.form-label:hover:before,.form-el-radio:not(.disabled)+.form-label:hover:before,.form-el-radio:not([disabled])+.form-label:hover:before{border-color:#514943}.form-el-checkbox+.form-label,.form-el-radio+.form-label{font-weight:400;padding-left:2em;padding-right:0;position:relative;text-align:left;transition:border-color .1s linear}.form-el-checkbox+.form-label:before,.form-el-radio+.form-label:before{border:1px solid;content:'';left:0;position:absolute;top:.1rem;transition:border-color .1s linear}.form-el-checkbox+.form-label:before{background-color:#fff;border-color:#adadad;border-radius:2px;font-size:1.2rem;height:1.6rem;line-height:1.2;width:1.6rem}.form-el-checkbox:checked+.form-label::before{content:'\e62d';font-family:Icons}.form-el-radio+.form-label:before{background-color:#fff;border:1px solid #adadad;border-radius:100%;height:1.8rem;width:1.8rem}.form-el-radio+.form-label:after{background:0 0;border:.5rem solid transparent;border-radius:100%;content:'';height:0;left:.4rem;position:absolute;top:.5rem;transition:background .3s linear;width:0}.form-el-radio:checked+.form-label{cursor:default}.form-el-radio:checked+.form-label:after{border-color:#514943}.form-select-label{border:1px solid #adadad;color:#303030;cursor:pointer;display:block;overflow:hidden;position:relative;z-index:0}.form-select-label:hover,.form-select-label:hover:after{border-color:#949494}.form-select-label:active,.form-select-label:active:after,.form-select-label:focus,.form-select-label:focus:after{border-color:#008bdb}.form-select-label:after{background:#e3e3e3;border-left:1px solid #adadad;bottom:0;content:'';position:absolute;right:0;top:0;width:2.36em;z-index:-2}.ie9 .form-select-label:after{display:none}.form-select-label:before{border-color:#303030 transparent transparent;border-style:solid;border-width:5px 4px 0;content:'';height:0;margin-right:-4px;margin-top:-2.5px;position:absolute;right:1.18em;top:50%;width:0;z-index:-1}.ie9 .form-select-label:before{display:none}.form-select-label .form-el-select{background:0 0;border:none;border-radius:0;content:'';display:block;margin:0;padding:.35em calc(2.36em + 10%) .5em .55em;width:110%}.ie9 .form-select-label .form-el-select{padding-right:.55em;width:100%}.form-select-label .form-el-select::-ms-expand{display:none}.form-el-select{background:#fff;border:1px solid #adadad;border-radius:2px;color:#303030;display:block;padding:.35em .55em}.multiselect-custom{border:1px solid #adadad;height:45.2rem;margin:0 0 1.5rem;overflow:auto;position:relative}.multiselect-custom ul{margin:0;padding:0;list-style:none;min-width:29rem}.multiselect-custom .item{padding:1rem 1.4rem}.multiselect-custom .selected{background-color:#e0f6fe}.multiselect-custom .form-label{margin-bottom:0}[class*=form-el-].invalid{border-color:#e22626}[class*=form-el-].invalid+.error-container{display:block}.error-container{background-color:#fffbbb;border:1px solid #ee7d7d;color:#514943;display:none;font-size:1.19rem;margin-top:.2rem;padding:.8rem 1rem .9rem}.check-result-message{margin-left:.5em;min-height:3.68rem;-ms-align-items:center;-ms-flex-align:center;align-items:center;display:-ms-flexbox;display:flex}.check-result-text{margin-left:.5em}body:not([class]){min-width:0}.container{display:block;margin:0 auto 4rem;max-width:100rem;padding:0}.abs-action-delete,.action-close:before,.action-next:before,.action-previous:before,.admin-user .admin__action-dropdown:before,.admin__action-multiselect-dropdown:before,.admin__action-multiselect-search-label:before,.admin__control-checkbox+label:before,.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:before,.admin__control-table .action-delete:before,.admin__current-filters-list .action-remove:before,.admin__data-grid-action-bookmarks .action-delete:before,.admin__data-grid-action-bookmarks .action-edit:before,.admin__data-grid-action-bookmarks .action-submit:before,.admin__data-grid-action-bookmarks .admin__action-dropdown:before,.admin__data-grid-action-columns .admin__action-dropdown:before,.admin__data-grid-action-export .admin__action-dropdown:before,.admin__field-fallback-reset:before,.admin__menu .level-0>a:before,.admin__page-nav-item-message .admin__page-nav-item-message-icon,.admin__page-nav-title._collapsible:after,.data-grid-filters-action-wrap .action-default:before,.data-grid-row-changed:after,.data-grid-row-parent>td .data-grid-checkbox-cell-inner:before,.data-grid-search-control-wrap .action-submit:before,.icon-failed:before,.icon-success:before,.notifications-action:before,.notifications-close:before,.page-actions .page-actions-buttons>button.action-back:before,.page-actions .page-actions-buttons>button.back:before,.page-actions>button.action-back:before,.page-actions>button.back:before,.page-title-jumbo-success:before,.search-global-label:before,.selectmenu .action-delete:before,.selectmenu .action-edit:before,.selectmenu .action-save:before,.setup-home-item:before,.sticky-header .data-grid-search-control-wrap .data-grid-search-label:before,.store-switcher .dropdown-menu .dropdown-toolbar a:before,.tooltip .help a:before,.tooltip .help span:before{-webkit-font-smoothing:antialiased;font-family:Icons;font-style:normal;font-weight:400;line-height:1;speak:none}.text-stretch{margin-bottom:1.5em}.page-title-jumbo{font-size:4rem;font-weight:300;letter-spacing:-.05em;margin-bottom:2.9rem}.page-title-jumbo-success:before{color:#79a22e;content:'\e62d';font-size:3.9rem;margin-left:-.3rem;margin-right:2.4rem}.list{margin-bottom:3rem}.list-dot .list-item{display:list-item;list-style-position:inside;margin-bottom:1.2rem}.list-title{color:#333;font-size:1.4rem;font-weight:700;letter-spacing:.025em;margin-bottom:1.2rem}.list-item-failed:before,.list-item-success:before,.list-item-warning:before{font-family:Icons;font-size:1.6rem;top:0}.list-item-success:before{content:'\e62d';font-size:1.6rem}.list-item-failed:before{content:'\e632';font-size:1.4rem;left:.1rem;top:.2rem}.list-item-warning:before{content:'\e623';font-size:1.3rem;left:.2rem}.form-wrap{margin-bottom:3.6rem;padding-top:2.1rem}.form-el-label-horizontal{display:inline-block;font-size:1.3rem;font-weight:600;letter-spacing:.025em;margin-bottom:.4rem;margin-left:.4rem}.app-updater{min-width:768px}body._has-modal{height:100%;overflow:hidden;width:100%}.modals-overlay{z-index:899}.modal-popup,.modal-slide{bottom:0;min-width:0;position:fixed;right:0;top:0;visibility:hidden}.modal-popup._show,.modal-slide._show{visibility:visible}.modal-popup._show .modal-inner-wrap,.modal-slide._show .modal-inner-wrap{-ms-transform:translate(0,0);transform:translate(0,0)}.modal-popup .modal-inner-wrap,.modal-slide .modal-inner-wrap{background-color:#fff;box-shadow:0 0 12px 2px rgba(0,0,0,.35);opacity:1;pointer-events:auto}.modal-slide{left:14.8rem;z-index:900}.modal-slide._show .modal-inner-wrap{-ms-transform:translateX(0);transform:translateX(0)}.modal-slide .modal-inner-wrap{height:100%;overflow-y:auto;position:static;-ms-transform:translateX(100%);transform:translateX(100%);transition-duration:.3s;transition-property:transform,visibility;transition-timing-function:ease-in-out;width:auto}.modal-slide._inner-scroll .modal-inner-wrap{overflow-y:visible;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column}.modal-slide._inner-scroll .modal-footer,.modal-slide._inner-scroll .modal-header{-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.modal-slide._inner-scroll .modal-content{overflow-y:auto}.modal-slide._inner-scroll .modal-footer{margin-top:auto}.modal-slide .modal-content,.modal-slide .modal-footer,.modal-slide .modal-header{padding:0 2.6rem 2.6rem}.modal-slide .modal-header{padding-bottom:2.1rem;padding-top:2.1rem}.modal-popup{z-index:900;left:0;overflow-y:auto}.modal-popup._show .modal-inner-wrap{-ms-transform:translateY(0);transform:translateY(0)}.modal-popup .modal-inner-wrap{margin:5rem auto;width:75%;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;box-sizing:border-box;height:auto;left:0;position:absolute;right:0;-ms-transform:translateY(-200%);transform:translateY(-200%);transition-duration:.2s;transition-property:transform,visibility;transition-timing-function:ease}.modal-popup._inner-scroll{overflow-y:visible}.ie10 .modal-popup._inner-scroll,.ie9 .modal-popup._inner-scroll{overflow-y:auto}.modal-popup._inner-scroll .modal-inner-wrap{max-height:90%}.ie10 .modal-popup._inner-scroll .modal-inner-wrap,.ie9 .modal-popup._inner-scroll .modal-inner-wrap{max-height:none}.modal-popup._inner-scroll .modal-content{overflow-y:auto}.modal-popup .modal-content,.modal-popup .modal-footer,.modal-popup .modal-header{padding-left:3rem;padding-right:3rem}.modal-popup .modal-footer,.modal-popup .modal-header{-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0}.modal-popup .modal-header{padding-bottom:1.2rem;padding-top:3rem}.modal-popup .modal-footer{margin-top:auto;padding-bottom:3rem}.modal-popup .modal-footer-actions{text-align:right}.admin__action-dropdown-wrap{display:inline-block;position:relative}.admin__action-dropdown-wrap .admin__action-dropdown-text:after{left:-6px;right:0}.admin__action-dropdown-wrap .admin__action-dropdown-menu{left:auto;right:0}.admin__action-dropdown-wrap._active .admin__action-dropdown,.admin__action-dropdown-wrap.active .admin__action-dropdown{border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.admin__action-dropdown-wrap._active .admin__action-dropdown-text:after,.admin__action-dropdown-wrap.active .admin__action-dropdown-text:after{background-color:#fff;content:'';height:6px;position:absolute;top:100%}.admin__action-dropdown-wrap._active .admin__action-dropdown-menu,.admin__action-dropdown-wrap.active .admin__action-dropdown-menu{display:block}.admin__action-dropdown-wrap._disabled .admin__action-dropdown{cursor:default}.admin__action-dropdown-wrap._disabled:hover .admin__action-dropdown{color:#333}.admin__action-dropdown{background-color:#fff;border:1px solid transparent;border-bottom:none;border-radius:0;box-shadow:none;color:#333;display:inline-block;font-size:1.3rem;font-weight:400;letter-spacing:-.025em;padding:.7rem 3.3rem .8rem 1.5rem;position:relative;vertical-align:baseline;z-index:2}.admin__action-dropdown._active:after,.admin__action-dropdown.active:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin__action-dropdown:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;top:50%;transition:all .2s linear;width:0}._active .admin__action-dropdown:after,.active .admin__action-dropdown:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin__action-dropdown:hover:after{border-color:#000 transparent transparent}.admin__action-dropdown:focus,.admin__action-dropdown:hover{background-color:#fff;color:#000;text-decoration:none}.admin__action-dropdown:after{right:1.5rem}.admin__action-dropdown:before{margin-right:1rem}.admin__action-dropdown-menu{background-color:#fff;border:1px solid #007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5);display:none;line-height:1.36;margin-top:-1px;min-width:120%;padding:.5rem 1rem;position:absolute;top:100%;transition:all .15s ease;z-index:1}.admin__action-dropdown-menu>li{display:block}.admin__action-dropdown-menu>li>a{color:#333;display:block;text-decoration:none;padding:.6rem .5rem}.selectmenu{display:inline-block;position:relative;text-align:left;z-index:1}.selectmenu._active{border-color:#007bdb;z-index:500}.selectmenu .action-delete,.selectmenu .action-edit,.selectmenu .action-save{background-color:transparent;border-color:transparent;box-shadow:none;padding:0 1rem}.selectmenu .action-delete:hover,.selectmenu .action-edit:hover,.selectmenu .action-save:hover{background-color:transparent;border-color:transparent;box-shadow:none}.selectmenu .action-delete:before,.selectmenu .action-edit:before,.selectmenu .action-save:before{content:'\e630'}.selectmenu .action-delete,.selectmenu .action-edit{border:0 solid #fff;border-left-width:1px;bottom:0;position:absolute;right:0;top:0;z-index:1}.selectmenu .action-delete:hover,.selectmenu .action-edit:hover{border:0 solid #fff;border-left-width:1px}.selectmenu .action-save:before{content:'\e625'}.selectmenu .action-edit:before{content:'\e631'}.selectmenu-value{display:inline-block}.selectmenu-value input[type=text]{-moz-appearance:none;-webkit-appearance:none;appearance:none;border:0;display:inline;margin:0;width:6rem}body._keyfocus .selectmenu-value input[type=text]:focus{box-shadow:none}.selectmenu-toggle{padding-right:3rem;background:0 0;border-width:0;bottom:0;float:right;position:absolute;right:0;top:0;width:0}.selectmenu-toggle._active:after,.selectmenu-toggle.active:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.selectmenu-toggle:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.1rem;top:50%;transition:all .2s linear;width:0}._active .selectmenu-toggle:after,.active .selectmenu-toggle:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.selectmenu-toggle:hover:after{border-color:#000 transparent transparent}.selectmenu-toggle:active,.selectmenu-toggle:focus,.selectmenu-toggle:hover{background:0 0}.selectmenu._active .selectmenu-toggle:before{border-color:#007bdb}body._keyfocus .selectmenu-toggle:focus{box-shadow:none}.selectmenu-toggle:before{background:#e3e3e3;border-left:1px solid #adadad;bottom:0;content:'';display:block;position:absolute;right:0;top:0;width:3.2rem}.selectmenu-items{background:#fff;border:1px solid #007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5);display:none;float:left;left:-1px;margin-top:3px;max-width:20rem;min-width:calc(100% + 2px);position:absolute;top:100%}.selectmenu-items._active{display:block}.selectmenu-items ul{float:left;list-style-type:none;margin:0;min-width:100%;padding:0}.selectmenu-items li{-webkit-flex-direction:row;display:flex;-ms-flex-direction:row;flex-direction:row;transition:background .2s linear}.selectmenu-items li:hover{background:#e3e3e3}.selectmenu-items li:last-child .selectmenu-item-action,.selectmenu-items li:last-child .selectmenu-item-action:visited{color:#008bdb;text-decoration:none}.selectmenu-items li:last-child .selectmenu-item-action:hover{color:#0fa7ff;text-decoration:underline}.selectmenu-items li:last-child .selectmenu-item-action:active{color:#ff5501;text-decoration:underline}.selectmenu-item{position:relative;width:100%;z-index:1}li._edit>.selectmenu-item{display:none}.selectmenu-item-edit{display:none;padding:.3rem 4rem .3rem .4rem;position:relative;white-space:nowrap;z-index:1}li:last-child .selectmenu-item-edit{padding-right:.4rem}.selectmenu-item-edit .admin__control-text{margin:0;width:5.4rem}li._edit .selectmenu-item-edit{display:block}.selectmenu-item-action{-moz-appearance:none;-webkit-appearance:none;appearance:none;background:0 0;border:0;color:#333;display:block;font-size:1.4rem;font-weight:400;min-width:100%;padding:1rem 6rem 1rem 1.5rem;text-align:left;transition:background .2s linear;width:5rem}.selectmenu-item-action:focus,.selectmenu-item-action:hover{background:#e3e3e3}.abs-actions-split-xl .action-default,.page-actions .actions-split .action-default{margin-right:4rem}.abs-actions-split-xl .action-toggle,.page-actions .actions-split .action-toggle{padding-right:4rem}.abs-actions-split-xl .action-toggle:after,.page-actions .actions-split .action-toggle:after{border-width:.9rem .6rem 0;margin-top:-.3rem;right:1.4rem}.actions-split{position:relative;z-index:400}.actions-split._active,.actions-split.active,.actions-split:hover{box-shadow:0 0 0 1px #007bdb}.actions-split._active .action-toggle.action-primary,.actions-split._active .action-toggle.primary,.actions-split.active .action-toggle.action-primary,.actions-split.active .action-toggle.primary{background-color:#ba4000;border-color:#ba4000}.actions-split._active .dropdown-menu,.actions-split.active .dropdown-menu{opacity:1;visibility:visible;display:block}.actions-split .action-default,.actions-split .action-toggle{float:left;margin:0}.actions-split .action-default._active,.actions-split .action-default.active,.actions-split .action-default:hover,.actions-split .action-toggle._active,.actions-split .action-toggle.active,.actions-split .action-toggle:hover{box-shadow:none}.actions-split .action-default{margin-right:3.2rem;min-width:9.3rem}.actions-split .action-toggle{padding-right:3.2rem;border-left-color:rgba(0,0,0,.2);bottom:0;padding-left:0;position:absolute;right:0;top:0}.actions-split .action-toggle._active:after,.actions-split .action-toggle.active:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.actions-split .action-toggle:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.2rem;top:50%;transition:all .2s linear;width:0}._active .actions-split .action-toggle:after,.active .actions-split .action-toggle:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.actions-split .action-toggle:hover:after{border-color:#000 transparent transparent}.actions-split .action-toggle.action-primary:after,.actions-split .action-toggle.action-secondary:after,.actions-split .action-toggle.primary:after,.actions-split .action-toggle.secondary:after{border-color:#fff transparent transparent}.actions-split .action-toggle>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.action-select-wrap{display:inline-block;position:relative}.action-select-wrap .action-select{padding-right:3.2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:#fff;font-weight:400;text-align:left}.action-select-wrap .action-select._active:after,.action-select-wrap .action-select.active:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-select-wrap .action-select:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.2rem;top:50%;transition:all .2s linear;width:0}._active .action-select-wrap .action-select:after,.active .action-select-wrap .action-select:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-select-wrap .action-select:hover:after{border-color:#000 transparent transparent}.action-select-wrap .action-select:hover,.action-select-wrap .action-select:hover:before{border-color:#878787}.action-select-wrap .action-select:before{background-color:#e3e3e3;border:1px solid #adadad;bottom:0;content:'';position:absolute;right:0;top:0;width:3.2rem}.action-select-wrap .action-select._active{border-color:#007bdb}.action-select-wrap .action-select._active:before{border-color:#007bdb #007bdb #007bdb #adadad}.action-select-wrap .action-select[disabled]{color:#333}.action-select-wrap .action-select[disabled]:after{border-color:#333 transparent transparent}.action-select-wrap._active{z-index:500}.action-select-wrap._active .action-select,.action-select-wrap._active .action-select:before{border-color:#007bdb}.action-select-wrap._active .action-select:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-select-wrap .abs-action-menu .action-submenu,.action-select-wrap .abs-action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu,.action-select-wrap .action-menu .action-submenu,.action-select-wrap .actions-split .action-menu .action-submenu,.action-select-wrap .actions-split .action-menu .action-submenu .action-submenu,.action-select-wrap .actions-split .dropdown-menu .action-submenu,.action-select-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{max-height:45rem;overflow-y:auto}.action-select-wrap .abs-action-menu .action-submenu ._disabled:hover,.action-select-wrap .abs-action-menu .action-submenu .action-submenu ._disabled:hover,.action-select-wrap .action-menu ._disabled:hover,.action-select-wrap .action-menu .action-submenu ._disabled:hover,.action-select-wrap .actions-split .action-menu .action-submenu ._disabled:hover,.action-select-wrap .actions-split .action-menu .action-submenu .action-submenu ._disabled:hover,.action-select-wrap .actions-split .dropdown-menu .action-submenu ._disabled:hover,.action-select-wrap .actions-split .dropdown-menu .action-submenu .action-submenu ._disabled:hover{background:#fff}.action-select-wrap .abs-action-menu .action-submenu ._disabled .action-menu-item,.action-select-wrap .abs-action-menu .action-submenu .action-submenu ._disabled .action-menu-item,.action-select-wrap .action-menu ._disabled .action-menu-item,.action-select-wrap .action-menu .action-submenu ._disabled .action-menu-item,.action-select-wrap .actions-split .action-menu .action-submenu ._disabled .action-menu-item,.action-select-wrap .actions-split .action-menu .action-submenu .action-submenu ._disabled .action-menu-item,.action-select-wrap .actions-split .dropdown-menu .action-submenu ._disabled .action-menu-item,.action-select-wrap .actions-split .dropdown-menu .action-submenu .action-submenu ._disabled .action-menu-item{cursor:default;opacity:.5}.action-select-wrap .action-menu-items{left:0;position:absolute;right:0;top:100%}.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu,.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.action-menu,.action-select-wrap .action-menu-items>.action-menu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu .action-submenu{min-width:100%;position:static}.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.abs-action-menu .action-submenu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.action-menu .action-submenu,.action-select-wrap .action-menu-items>.action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .action-menu .action-submenu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu .action-submenu,.action-select-wrap .action-menu-items>.actions-split .dropdown-menu .action-submenu .action-submenu .action-submenu{position:absolute}.action-multicheck-wrap{display:inline-block;height:1.6rem;padding-top:1px;position:relative;width:3.1rem;z-index:200}.action-multicheck-wrap:hover .action-multicheck-toggle,.action-multicheck-wrap:hover .admin__control-checkbox+label:before{border-color:#878787}.action-multicheck-wrap._active .action-multicheck-toggle,.action-multicheck-wrap._active .admin__control-checkbox+label:before{border-color:#007bdb}.action-multicheck-wrap._active .abs-action-menu .action-submenu,.action-multicheck-wrap._active .abs-action-menu .action-submenu .action-submenu,.action-multicheck-wrap._active .action-menu,.action-multicheck-wrap._active .action-menu .action-submenu,.action-multicheck-wrap._active .actions-split .action-menu .action-submenu,.action-multicheck-wrap._active .actions-split .action-menu .action-submenu .action-submenu,.action-multicheck-wrap._active .actions-split .dropdown-menu .action-submenu,.action-multicheck-wrap._active .actions-split .dropdown-menu .action-submenu .action-submenu{opacity:1;visibility:visible;display:block}.action-multicheck-wrap._disabled .admin__control-checkbox+label:before{background-color:#fff}.action-multicheck-wrap._disabled .action-multicheck-toggle,.action-multicheck-wrap._disabled .admin__control-checkbox+label:before{border-color:#adadad;opacity:1}.action-multicheck-wrap .action-multicheck-toggle,.action-multicheck-wrap .admin__control-checkbox,.action-multicheck-wrap .admin__control-checkbox+label{float:left}.action-multicheck-wrap .action-multicheck-toggle{border-radius:0 1px 1px 0;height:1.6rem;margin-left:-1px;padding:0;position:relative;transition:border-color .1s linear;width:1.6rem}.action-multicheck-wrap .action-multicheck-toggle._active:after,.action-multicheck-wrap .action-multicheck-toggle.active:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-multicheck-wrap .action-multicheck-toggle:after{border-color:#000 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;top:50%;transition:all .2s linear;width:0}._active .action-multicheck-wrap .action-multicheck-toggle:after,.active .action-multicheck-wrap .action-multicheck-toggle:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.action-multicheck-wrap .action-multicheck-toggle:hover:after{border-color:#000 transparent transparent}.action-multicheck-wrap .action-multicheck-toggle:focus{border-color:#007bdb}.action-multicheck-wrap .action-multicheck-toggle:after{right:.3rem}.action-multicheck-wrap .abs-action-menu .action-submenu,.action-multicheck-wrap .abs-action-menu .action-submenu .action-submenu,.action-multicheck-wrap .action-menu,.action-multicheck-wrap .action-menu .action-submenu,.action-multicheck-wrap .actions-split .action-menu .action-submenu,.action-multicheck-wrap .actions-split .action-menu .action-submenu .action-submenu,.action-multicheck-wrap .actions-split .dropdown-menu .action-submenu,.action-multicheck-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{left:-1.1rem;margin-top:1px;right:auto;text-align:left}.action-multicheck-wrap .action-menu-item{white-space:nowrap}.admin__action-multiselect-wrap{display:block;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.admin__action-multiselect-wrap.action-select-wrap:focus{box-shadow:none}.admin__action-multiselect-wrap.action-select-wrap .abs-action-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .abs-action-menu .action-submenu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .action-menu,.admin__action-multiselect-wrap.action-select-wrap .action-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .action-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .action-menu .action-submenu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .dropdown-menu .action-submenu,.admin__action-multiselect-wrap.action-select-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{max-height:none;overflow-y:inherit}.admin__action-multiselect-wrap .action-menu-item{transition:background-color .1s linear}.admin__action-multiselect-wrap .action-menu-item._selected{background-color:#e0f6fe}.admin__action-multiselect-wrap .action-menu-item._hover{background-color:#e3e3e3}.admin__action-multiselect-wrap .action-menu-item._unclickable{cursor:default}.admin__action-multiselect-wrap .admin__action-multiselect{border:1px solid #adadad;cursor:pointer;display:block;min-height:3.2rem;padding-right:3.6rem;white-space:normal}.admin__action-multiselect-wrap .admin__action-multiselect:after{bottom:1.25rem;top:auto}.admin__action-multiselect-wrap .admin__action-multiselect:before{height:3.3rem;top:auto}.admin__control-table-wrapper .admin__action-multiselect-wrap{position:static}.admin__control-table-wrapper .admin__action-multiselect-wrap .admin__action-multiselect{position:relative}.admin__control-table-wrapper .admin__action-multiselect-wrap .admin__action-multiselect:before{right:-1px;top:-1px}.admin__control-table-wrapper .admin__action-multiselect-wrap .abs-action-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .abs-action-menu .action-submenu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .action-menu,.admin__control-table-wrapper .admin__action-multiselect-wrap .action-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .action-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .action-menu .action-submenu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .dropdown-menu .action-submenu,.admin__control-table-wrapper .admin__action-multiselect-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{left:auto;min-width:34rem;right:auto;top:auto;z-index:1}.admin__action-multiselect-wrap .admin__action-multiselect-item-path{color:#a79d95;font-size:1.2rem;font-weight:400;padding-left:1rem}.admin__action-multiselect-actions-wrap{border-top:1px solid #e3e3e3;margin:0 1rem;padding:1rem 0;text-align:center}.admin__action-multiselect-actions-wrap .action-default{font-size:1.3rem;min-width:13rem}.admin__action-multiselect-text{padding:.6rem 1rem}.abs-action-menu .action-submenu,.abs-action-menu .action-submenu .action-submenu,.action-menu,.action-menu .action-submenu,.actions-split .action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu,.actions-split .dropdown-menu .action-submenu .action-submenu{text-align:left}.admin__action-multiselect-label{cursor:pointer;position:relative;z-index:1}.admin__action-multiselect-label:before{margin-right:.5rem}._unclickable .admin__action-multiselect-label{cursor:default;font-weight:700}.admin__action-multiselect-search-wrap{border-bottom:1px solid #e3e3e3;margin:0 1rem;padding:1rem 0;position:relative}.admin__action-multiselect-search{padding-right:3rem;width:100%}.admin__action-multiselect-search-label{display:block;font-size:1.5rem;height:1em;overflow:hidden;position:absolute;right:2.2rem;top:1.7rem;width:1em}.admin__action-multiselect-search-label:before{content:'\e60c'}.admin__action-multiselect-search-count{color:#a79d95;margin-top:1rem}.admin__action-multiselect-menu-inner{margin-bottom:0;max-height:46rem;overflow-y:auto}.admin__action-multiselect-menu-inner .admin__action-multiselect-menu-inner{list-style:none;max-height:none;overflow:hidden;padding-left:2.2rem}.admin__action-multiselect-menu-inner ._hidden{display:none}.admin__action-multiselect-crumb{background-color:#f5f5f5;border:1px solid #a79d95;border-radius:1px;display:inline-block;font-size:1.2rem;margin:.3rem -4px .3rem .3rem;padding:.3rem 2.4rem .4rem 1rem;position:relative;transition:border-color .1s linear}.admin__action-multiselect-crumb:hover{border-color:#908379}.admin__action-multiselect-crumb .action-close{bottom:0;font-size:.5em;position:absolute;right:0;top:0;width:2rem}.admin__action-multiselect-crumb .action-close:hover{color:#000}.admin__action-multiselect-crumb .action-close:active,.admin__action-multiselect-crumb .action-close:focus{background-color:transparent}.admin__action-multiselect-crumb .action-close:active{-ms-transform:scale(0.9);transform:scale(0.9)}.admin__action-multiselect-tree .abs-action-menu .action-submenu,.admin__action-multiselect-tree .abs-action-menu .action-submenu .action-submenu,.admin__action-multiselect-tree .action-menu,.admin__action-multiselect-tree .action-menu .action-submenu,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu .action-submenu,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu .action-submenu{min-width:34.7rem}.admin__action-multiselect-tree .abs-action-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .abs-action-menu .action-submenu .action-submenu .action-menu-item,.admin__action-multiselect-tree .action-menu .action-menu-item,.admin__action-multiselect-tree .action-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .action-menu .action-submenu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu .action-menu-item,.admin__action-multiselect-tree .actions-split .dropdown-menu .action-submenu .action-submenu .action-menu-item{margin-top:.1rem}.admin__action-multiselect-tree .action-menu-item{margin-left:4.2rem;position:relative}.admin__action-multiselect-tree .action-menu-item._expended:before{border-left:1px dashed #a79d95;bottom:0;content:'';left:-1rem;position:absolute;top:1rem;width:1px}.admin__action-multiselect-tree .action-menu-item._expended .admin__action-multiselect-dropdown:before{content:'\e615'}.admin__action-multiselect-tree .action-menu-item._with-checkbox .admin__action-multiselect-label{padding-left:2.6rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner{position:relative}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner .admin__action-multiselect-menu-inner{padding-left:3.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner .admin__action-multiselect-menu-inner:before{left:4.3rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item{position:relative}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:last-child:before{height:2.1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:after,.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:before{content:'';left:0;position:absolute}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:after{border-top:1px dashed #a79d95;height:1px;top:2.1rem;width:5.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item:before{border-left:1px dashed #a79d95;height:100%;top:0;width:1px}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._parent:after{width:4.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root{margin-left:-1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:after{left:3.2rem;width:2.2rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:before{left:3.2rem;top:1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root._parent:after{display:none}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:first-child:before{top:2.1rem}.admin__action-multiselect-tree .admin__action-multiselect-menu-inner-item._root:last-child:before{height:1rem}.admin__action-multiselect-tree .admin__action-multiselect-label{line-height:2.2rem;vertical-align:middle;word-break:break-all}.admin__action-multiselect-tree .admin__action-multiselect-label:before{left:0;position:absolute;top:.4rem}.admin__action-multiselect-dropdown{border-radius:50%;height:2.2rem;left:-2.2rem;position:absolute;top:1rem;width:2.2rem;z-index:1}.admin__action-multiselect-dropdown:before{background:#fff;color:#a79d95;content:'\e616';font-size:2.2rem}.admin__actions-switch{display:inline-block;position:relative;vertical-align:middle}.admin__field-control .admin__actions-switch{line-height:3.2rem}.admin__actions-switch+.admin__field-service{min-width:34rem}._disabled .admin__actions-switch-checkbox+.admin__actions-switch-label,.admin__actions-switch-checkbox.disabled+.admin__actions-switch-label{cursor:not-allowed;opacity:.5;pointer-events:none}.admin__actions-switch-checkbox:checked+.admin__actions-switch-label:before{left:15px}.admin__actions-switch-checkbox:checked+.admin__actions-switch-label:after{background:#79a22e}.admin__actions-switch-checkbox:checked+.admin__actions-switch-label .admin__actions-switch-text:before{content:attr(data-text-on)}.admin__actions-switch-checkbox:focus+.admin__actions-switch-label:after,.admin__actions-switch-checkbox:focus+.admin__actions-switch-label:before{border-color:#007bdb}._error .admin__actions-switch-checkbox+.admin__actions-switch-label:after,._error .admin__actions-switch-checkbox+.admin__actions-switch-label:before{border-color:#e22626}.admin__actions-switch-label{cursor:pointer;display:inline-block;height:22px;line-height:22px;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;vertical-align:middle}.admin__actions-switch-label:after,.admin__actions-switch-label:before{left:0;position:absolute;right:auto;top:0}.admin__actions-switch-label:before{background:#fff;border:1px solid #aaa6a0;border-radius:100%;content:'';display:block;height:22px;transition:left .2s ease-in 0s;width:22px;z-index:1}.admin__actions-switch-label:after{background:#e3e3e3;border:1px solid #aaa6a0;border-radius:12px;content:'';display:block;height:22px;transition:background .2s ease-in 0s;vertical-align:middle;width:37px;z-index:0}.admin__actions-switch-text:before{content:attr(data-text-off);padding-left:47px;white-space:nowrap}.abs-action-delete,.abs-action-reset,.action-close,.admin__field-fallback-reset,.notifications-close,.search-global-field._active .search-global-action{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:0}.abs-action-delete:hover,.abs-action-reset:hover,.action-close:hover,.admin__field-fallback-reset:hover,.notifications-close:hover,.search-global-field._active .search-global-action:hover{background-color:transparent;border:none;box-shadow:none}.abs-action-default,.abs-action-pattern,.abs-action-primary,.abs-action-quaternary,.abs-action-secondary,.abs-action-tertiary,.action-default,.action-primary,.action-quaternary,.action-secondary,.action-tertiary,.modal-popup .modal-footer .action-primary,.modal-popup .modal-footer .action-secondary,.page-actions .page-actions-buttons>button,.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.action-secondary,.page-actions .page-actions-buttons>button.primary,.page-actions>button,.page-actions>button.action-primary,.page-actions>button.action-secondary,.page-actions>button.primary,button,button.primary,button.secondary,button.tertiary{border:1px solid;border-radius:0;display:inline-block;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:600;line-height:1.36;padding:.6rem 1em;text-align:center;vertical-align:baseline}.abs-action-default.disabled,.abs-action-default[disabled],.abs-action-pattern.disabled,.abs-action-pattern[disabled],.abs-action-primary.disabled,.abs-action-primary[disabled],.abs-action-quaternary.disabled,.abs-action-quaternary[disabled],.abs-action-secondary.disabled,.abs-action-secondary[disabled],.abs-action-tertiary.disabled,.abs-action-tertiary[disabled],.action-default.disabled,.action-default[disabled],.action-primary.disabled,.action-primary[disabled],.action-quaternary.disabled,.action-quaternary[disabled],.action-secondary.disabled,.action-secondary[disabled],.action-tertiary.disabled,.action-tertiary[disabled],.modal-popup .modal-footer .action-primary.disabled,.modal-popup .modal-footer .action-primary[disabled],.modal-popup .modal-footer .action-secondary.disabled,.modal-popup .modal-footer .action-secondary[disabled],.page-actions .page-actions-buttons>button.action-primary.disabled,.page-actions .page-actions-buttons>button.action-primary[disabled],.page-actions .page-actions-buttons>button.action-secondary.disabled,.page-actions .page-actions-buttons>button.action-secondary[disabled],.page-actions .page-actions-buttons>button.disabled,.page-actions .page-actions-buttons>button.primary.disabled,.page-actions .page-actions-buttons>button.primary[disabled],.page-actions .page-actions-buttons>button[disabled],.page-actions>button.action-primary.disabled,.page-actions>button.action-primary[disabled],.page-actions>button.action-secondary.disabled,.page-actions>button.action-secondary[disabled],.page-actions>button.disabled,.page-actions>button.primary.disabled,.page-actions>button.primary[disabled],.page-actions>button[disabled],button.disabled,button.primary.disabled,button.primary[disabled],button.secondary.disabled,button.secondary[disabled],button.tertiary.disabled,button.tertiary[disabled],button[disabled]{cursor:default;opacity:.5;pointer-events:none}.abs-action-l,.modal-popup .modal-footer .action-primary,.modal-popup .modal-footer .action-secondary,.page-actions .page-actions-buttons>button,.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.action-secondary,.page-actions .page-actions-buttons>button.primary,.page-actions button,.page-actions>button.action-primary,.page-actions>button.action-secondary,.page-actions>button.primary{font-size:1.6rem;letter-spacing:.025em;padding-bottom:.6875em;padding-top:.6875em}.abs-action-delete{display:inline-block;font-size:1.6rem;margin-left:1.2rem;padding-top:.7rem;text-decoration:none;vertical-align:middle}.abs-action-delete:after{color:#666;content:'\e630'}.abs-action-delete:hover:after{color:#35302c}.abs-action-button-as-link,.action-advanced,.data-grid .action-delete{line-height:1.36;padding:0;color:#008bdb;text-decoration:none;background:0 0;border:0;display:inline;font-weight:400;border-radius:0}.abs-action-button-as-link:visited,.action-advanced:visited,.data-grid .action-delete:visited{color:#008bdb;text-decoration:none}.abs-action-button-as-link:hover,.action-advanced:hover,.data-grid .action-delete:hover{text-decoration:underline}.abs-action-button-as-link:active,.action-advanced:active,.data-grid .action-delete:active{color:#ff5501;text-decoration:underline}.abs-action-button-as-link:hover,.action-advanced:hover,.data-grid .action-delete:hover{color:#0fa7ff}.abs-action-button-as-link:active,.abs-action-button-as-link:focus,.abs-action-button-as-link:hover,.action-advanced:active,.action-advanced:focus,.action-advanced:hover,.data-grid .action-delete:active,.data-grid .action-delete:focus,.data-grid .action-delete:hover{background:0 0;border:0}.abs-action-button-as-link.disabled,.abs-action-button-as-link[disabled],.action-advanced.disabled,.action-advanced[disabled],.data-grid .action-delete.disabled,.data-grid .action-delete[disabled],fieldset[disabled] .abs-action-button-as-link,fieldset[disabled] .action-advanced,fieldset[disabled] .data-grid .action-delete{color:#008bdb;opacity:.5;cursor:default;pointer-events:none;text-decoration:underline}.abs-action-button-as-link:active,.abs-action-button-as-link:not(:focus),.action-advanced:active,.action-advanced:not(:focus),.data-grid .action-delete:active,.data-grid .action-delete:not(:focus){box-shadow:none}.abs-action-button-as-link:focus,.action-advanced:focus,.data-grid .action-delete:focus{color:#0fa7ff}.abs-action-default,button{background:#e3e3e3;border-color:#adadad;color:#514943}.abs-action-default:active,.abs-action-default:focus,.abs-action-default:hover,button:active,button:focus,button:hover{background-color:#dbdbdb;color:#514943;text-decoration:none}.abs-action-primary,.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.primary,.page-actions>button.action-primary,.page-actions>button.primary,button.primary{background-color:#eb5202;border-color:#eb5202;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.abs-action-primary:active,.abs-action-primary:focus,.abs-action-primary:hover,.page-actions .page-actions-buttons>button.action-primary:active,.page-actions .page-actions-buttons>button.action-primary:focus,.page-actions .page-actions-buttons>button.action-primary:hover,.page-actions .page-actions-buttons>button.primary:active,.page-actions .page-actions-buttons>button.primary:focus,.page-actions .page-actions-buttons>button.primary:hover,.page-actions>button.action-primary:active,.page-actions>button.action-primary:focus,.page-actions>button.action-primary:hover,.page-actions>button.primary:active,.page-actions>button.primary:focus,.page-actions>button.primary:hover,button.primary:active,button.primary:focus,button.primary:hover{background-color:#ba4000;border-color:#b84002;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.abs-action-primary.disabled,.abs-action-primary[disabled],.page-actions .page-actions-buttons>button.action-primary.disabled,.page-actions .page-actions-buttons>button.action-primary[disabled],.page-actions .page-actions-buttons>button.primary.disabled,.page-actions .page-actions-buttons>button.primary[disabled],.page-actions>button.action-primary.disabled,.page-actions>button.action-primary[disabled],.page-actions>button.primary.disabled,.page-actions>button.primary[disabled],button.primary.disabled,button.primary[disabled]{cursor:default;opacity:.5;pointer-events:none}.abs-action-secondary,.modal-popup .modal-footer .action-primary,.page-actions .page-actions-buttons>button.action-secondary,.page-actions>button.action-secondary,button.secondary{background-color:#514943;border-color:#514943;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.abs-action-secondary:active,.abs-action-secondary:focus,.abs-action-secondary:hover,.modal-popup .modal-footer .action-primary:active,.modal-popup .modal-footer .action-primary:focus,.modal-popup .modal-footer .action-primary:hover,.page-actions .page-actions-buttons>button.action-secondary:active,.page-actions .page-actions-buttons>button.action-secondary:focus,.page-actions .page-actions-buttons>button.action-secondary:hover,.page-actions>button.action-secondary:active,.page-actions>button.action-secondary:focus,.page-actions>button.action-secondary:hover,button.secondary:active,button.secondary:focus,button.secondary:hover{background-color:#35302c;border-color:#35302c;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.abs-action-secondary:active,.modal-popup .modal-footer .action-primary:active,.page-actions .page-actions-buttons>button.action-secondary:active,.page-actions>button.action-secondary:active,button.secondary:active{background-color:#35302c}.abs-action-tertiary,.modal-popup .modal-footer .action-secondary,button.tertiary{background-color:transparent;border-color:transparent;text-shadow:none;color:#008bdb}.abs-action-tertiary:active,.abs-action-tertiary:focus,.abs-action-tertiary:hover,.modal-popup .modal-footer .action-secondary:active,.modal-popup .modal-footer .action-secondary:focus,.modal-popup .modal-footer .action-secondary:hover,button.tertiary:active,button.tertiary:focus,button.tertiary:hover{background-color:transparent;border-color:transparent;box-shadow:none;color:#0fa7ff;text-decoration:underline}.abs-action-quaternary,.page-actions .page-actions-buttons>button,.page-actions>button{background-color:transparent;border-color:transparent;text-shadow:none;color:#333}.abs-action-quaternary:active,.abs-action-quaternary:focus,.abs-action-quaternary:hover,.page-actions .page-actions-buttons>button:active,.page-actions .page-actions-buttons>button:focus,.page-actions .page-actions-buttons>button:hover,.page-actions>button:active,.page-actions>button:focus,.page-actions>button:hover{background-color:transparent;border-color:transparent;box-shadow:none;color:#1a1a1a}.abs-action-menu,.actions-split .abs-action-menu .action-submenu,.actions-split .abs-action-menu .action-submenu .action-submenu,.actions-split .action-menu,.actions-split .action-menu .action-submenu,.actions-split .actions-split .dropdown-menu .action-submenu,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu,.actions-split .dropdown-menu{text-align:left;background-color:#fff;border:1px solid #007bdb;border-radius:1px;box-shadow:1px 1px 5px rgba(0,0,0,.5);color:#333;display:none;font-weight:400;left:0;list-style:none;margin:2px 0 0;min-width:0;padding:0;position:absolute;right:0;top:100%}.abs-action-menu._active,.actions-split .abs-action-menu .action-submenu .action-submenu._active,.actions-split .abs-action-menu .action-submenu._active,.actions-split .action-menu .action-submenu._active,.actions-split .action-menu._active,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu._active,.actions-split .actions-split .dropdown-menu .action-submenu._active,.actions-split .dropdown-menu._active{display:block}.abs-action-menu>li,.actions-split .abs-action-menu .action-submenu .action-submenu>li,.actions-split .abs-action-menu .action-submenu>li,.actions-split .action-menu .action-submenu>li,.actions-split .action-menu>li,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li,.actions-split .actions-split .dropdown-menu .action-submenu>li,.actions-split .dropdown-menu>li{border:none;display:block;padding:0;transition:background-color .1s linear}.abs-action-menu>li>a:hover,.actions-split .abs-action-menu .action-submenu .action-submenu>li>a:hover,.actions-split .abs-action-menu .action-submenu>li>a:hover,.actions-split .action-menu .action-submenu>li>a:hover,.actions-split .action-menu>li>a:hover,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li>a:hover,.actions-split .actions-split .dropdown-menu .action-submenu>li>a:hover,.actions-split .dropdown-menu>li>a:hover{text-decoration:none}.abs-action-menu>li._visible,.abs-action-menu>li:hover,.actions-split .abs-action-menu .action-submenu .action-submenu>li._visible,.actions-split .abs-action-menu .action-submenu .action-submenu>li:hover,.actions-split .abs-action-menu .action-submenu>li._visible,.actions-split .abs-action-menu .action-submenu>li:hover,.actions-split .action-menu .action-submenu>li._visible,.actions-split .action-menu .action-submenu>li:hover,.actions-split .action-menu>li._visible,.actions-split .action-menu>li:hover,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li._visible,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li:hover,.actions-split .actions-split .dropdown-menu .action-submenu>li._visible,.actions-split .actions-split .dropdown-menu .action-submenu>li:hover,.actions-split .dropdown-menu>li._visible,.actions-split .dropdown-menu>li:hover{background-color:#e3e3e3}.abs-action-menu>li:active,.actions-split .abs-action-menu .action-submenu .action-submenu>li:active,.actions-split .abs-action-menu .action-submenu>li:active,.actions-split .action-menu .action-submenu>li:active,.actions-split .action-menu>li:active,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li:active,.actions-split .actions-split .dropdown-menu .action-submenu>li:active,.actions-split .dropdown-menu>li:active{background-color:#cacaca}.abs-action-menu>li._parent,.actions-split .abs-action-menu .action-submenu .action-submenu>li._parent,.actions-split .abs-action-menu .action-submenu>li._parent,.actions-split .action-menu .action-submenu>li._parent,.actions-split .action-menu>li._parent,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li._parent,.actions-split .actions-split .dropdown-menu .action-submenu>li._parent,.actions-split .dropdown-menu>li._parent{-webkit-flex-direction:row;display:flex;-ms-flex-direction:row;flex-direction:row}.abs-action-menu>li._parent>.action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .abs-action-menu .action-submenu>li._parent>.action-menu-item,.actions-split .action-menu .action-submenu>li._parent>.action-menu-item,.actions-split .action-menu>li._parent>.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu>li._parent>.action-menu-item,.actions-split .dropdown-menu>li._parent>.action-menu-item{min-width:100%}.abs-action-menu .action-menu-item,.abs-action-menu .item,.actions-split .abs-action-menu .action-submenu .action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu .action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu .item,.actions-split .abs-action-menu .action-submenu .item,.actions-split .action-menu .action-menu-item,.actions-split .action-menu .action-submenu .action-menu-item,.actions-split .action-menu .action-submenu .item,.actions-split .action-menu .item,.actions-split .actions-split .dropdown-menu .action-submenu .action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu .action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu .item,.actions-split .actions-split .dropdown-menu .action-submenu .item,.actions-split .dropdown-menu .action-menu-item,.actions-split .dropdown-menu .item{cursor:pointer;display:block;padding:.6875em 1em}.abs-action-menu .action-submenu,.actions-split .action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu{bottom:auto;left:auto;margin-left:0;margin-top:-1px;position:absolute;right:auto;top:auto}.ie9 .abs-action-menu .action-submenu,.ie9 .actions-split .abs-action-menu .action-submenu .action-submenu,.ie9 .actions-split .abs-action-menu .action-submenu .action-submenu .action-submenu,.ie9 .actions-split .action-menu .action-submenu,.ie9 .actions-split .action-menu .action-submenu .action-submenu,.ie9 .actions-split .actions-split .dropdown-menu .action-submenu .action-submenu,.ie9 .actions-split .actions-split .dropdown-menu .action-submenu .action-submenu .action-submenu,.ie9 .actions-split .dropdown-menu .action-submenu{margin-left:99%;margin-top:-3.5rem}.abs-action-menu a.action-menu-item,.actions-split .abs-action-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .abs-action-menu .action-submenu a.action-menu-item,.actions-split .action-menu .action-submenu a.action-menu-item,.actions-split .action-menu a.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .actions-split .dropdown-menu .action-submenu a.action-menu-item,.actions-split .dropdown-menu a.action-menu-item{color:#333}.abs-action-menu a.action-menu-item:focus,.actions-split .abs-action-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .abs-action-menu .action-submenu a.action-menu-item:focus,.actions-split .action-menu .action-submenu a.action-menu-item:focus,.actions-split .action-menu a.action-menu-item:focus,.actions-split .actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .actions-split .dropdown-menu .action-submenu a.action-menu-item:focus,.actions-split .dropdown-menu a.action-menu-item:focus{background-color:#e3e3e3;box-shadow:none}.abs-action-wrap-triangle{position:relative}.abs-action-wrap-triangle .action-default{width:100%}.abs-action-wrap-triangle .action-default:after,.abs-action-wrap-triangle .action-default:before{border-style:solid;content:'';height:0;position:absolute;top:0;width:0}.abs-action-wrap-triangle .action-default:active,.abs-action-wrap-triangle .action-default:focus,.abs-action-wrap-triangle .action-default:hover{box-shadow:none}._keyfocus .abs-action-wrap-triangle .action-default:focus{box-shadow:0 0 0 1px #007bdb}.ie10 .abs-action-wrap-triangle .action-default.disabled,.ie10 .abs-action-wrap-triangle .action-default[disabled],.ie9 .abs-action-wrap-triangle .action-default.disabled,.ie9 .abs-action-wrap-triangle .action-default[disabled]{background-color:#fcfcfc;opacity:1;text-shadow:none}.abs-action-wrap-triangle-right{display:inline-block;padding-right:1.6rem;position:relative}.abs-action-wrap-triangle-right .action-default:after,.abs-action-wrap-triangle-right .action-default:before{border-color:transparent transparent transparent #e3e3e3;border-width:1.7rem 0 1.6rem 1.7rem;left:100%;margin-left:-1.7rem}.abs-action-wrap-triangle-right .action-default:before{border-left-color:#949494;right:-1px}.abs-action-wrap-triangle-right .action-default:active:after,.abs-action-wrap-triangle-right .action-default:focus:after,.abs-action-wrap-triangle-right .action-default:hover:after{border-left-color:#dbdbdb}.ie10 .abs-action-wrap-triangle-right .action-default.disabled:after,.ie10 .abs-action-wrap-triangle-right .action-default[disabled]:after,.ie9 .abs-action-wrap-triangle-right .action-default.disabled:after,.ie9 .abs-action-wrap-triangle-right .action-default[disabled]:after{border-color:transparent transparent transparent #fcfcfc}.abs-action-wrap-triangle-right .action-primary:after{border-color:transparent transparent transparent #eb5202}.abs-action-wrap-triangle-right .action-primary:active:after,.abs-action-wrap-triangle-right .action-primary:focus:after,.abs-action-wrap-triangle-right .action-primary:hover:after{border-left-color:#ba4000}.abs-action-wrap-triangle-left{display:inline-block;padding-left:1.6rem}.abs-action-wrap-triangle-left .action-default{text-indent:-.85rem}.abs-action-wrap-triangle-left .action-default:after,.abs-action-wrap-triangle-left .action-default:before{border-color:transparent #e3e3e3 transparent transparent;border-width:1.7rem 1.7rem 1.6rem 0;margin-right:-1.7rem;right:100%}.abs-action-wrap-triangle-left .action-default:before{border-right-color:#949494;left:-1px}.abs-action-wrap-triangle-left .action-default:active:after,.abs-action-wrap-triangle-left .action-default:focus:after,.abs-action-wrap-triangle-left .action-default:hover:after{border-right-color:#dbdbdb}.ie10 .abs-action-wrap-triangle-left .action-default.disabled:after,.ie10 .abs-action-wrap-triangle-left .action-default[disabled]:after,.ie9 .abs-action-wrap-triangle-left .action-default.disabled:after,.ie9 .abs-action-wrap-triangle-left .action-default[disabled]:after{border-color:transparent #fcfcfc transparent transparent}.abs-action-wrap-triangle-left .action-primary:after{border-color:transparent #eb5202 transparent transparent}.abs-action-wrap-triangle-left .action-primary:active:after,.abs-action-wrap-triangle-left .action-primary:focus:after,.abs-action-wrap-triangle-left .action-primary:hover:after{border-right-color:#ba4000}.action-default,button{background:#e3e3e3;border-color:#adadad;color:#514943}.action-default:active,.action-default:focus,.action-default:hover,button:active,button:focus,button:hover{background-color:#dbdbdb;color:#514943;text-decoration:none}.action-primary{background-color:#eb5202;border-color:#eb5202;color:#fff;text-shadow:1px 1px 0 rgba(0,0,0,.25)}.action-primary:active,.action-primary:focus,.action-primary:hover{background-color:#ba4000;border-color:#b84002;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.action-primary.disabled,.action-primary[disabled]{cursor:default;opacity:.5;pointer-events:none}.action-secondary{background-color:#514943;border-color:#514943;color:#fff;text-shadow:1px 1px 1px rgba(0,0,0,.3)}.action-secondary:active,.action-secondary:focus,.action-secondary:hover{background-color:#35302c;border-color:#35302c;box-shadow:0 0 0 1px #007bdb;color:#fff;text-decoration:none}.action-secondary:active{background-color:#35302c}.action-quaternary,.action-tertiary{background-color:transparent;border-color:transparent;text-shadow:none}.action-quaternary:active,.action-quaternary:focus,.action-quaternary:hover,.action-tertiary:active,.action-tertiary:focus,.action-tertiary:hover{background-color:transparent;border-color:transparent;box-shadow:none}.action-tertiary{color:#008bdb}.action-tertiary:active,.action-tertiary:focus,.action-tertiary:hover{color:#0fa7ff;text-decoration:underline}.action-quaternary{color:#333}.action-quaternary:active,.action-quaternary:focus,.action-quaternary:hover{color:#1a1a1a}.action-close>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.action-close:active{-ms-transform:scale(0.9);transform:scale(0.9)}.action-close:before{content:'\e62f';transition:color .1s linear}.action-close:hover{cursor:pointer;text-decoration:none}.abs-action-menu .action-submenu,.abs-action-menu .action-submenu .action-submenu,.action-menu,.action-menu .action-submenu,.actions-split .action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu,.actions-split .dropdown-menu .action-submenu .action-submenu{background-color:#fff;border:1px solid #007bdb;border-radius:1px;box-shadow:1px 1px 5px rgba(0,0,0,.5);color:#333;display:none;font-weight:400;left:0;list-style:none;margin:2px 0 0;min-width:0;padding:0;position:absolute;right:0;top:100%}.abs-action-menu .action-submenu .action-submenu._active,.abs-action-menu .action-submenu._active,.action-menu .action-submenu._active,.action-menu._active,.actions-split .action-menu .action-submenu .action-submenu._active,.actions-split .action-menu .action-submenu._active,.actions-split .dropdown-menu .action-submenu .action-submenu._active,.actions-split .dropdown-menu .action-submenu._active{display:block}.abs-action-menu .action-submenu .action-submenu>li,.abs-action-menu .action-submenu>li,.action-menu .action-submenu>li,.action-menu>li,.actions-split .action-menu .action-submenu .action-submenu>li,.actions-split .action-menu .action-submenu>li,.actions-split .dropdown-menu .action-submenu .action-submenu>li,.actions-split .dropdown-menu .action-submenu>li{border:none;display:block;padding:0;transition:background-color .1s linear}.abs-action-menu .action-submenu .action-submenu>li>a:hover,.abs-action-menu .action-submenu>li>a:hover,.action-menu .action-submenu>li>a:hover,.action-menu>li>a:hover,.actions-split .action-menu .action-submenu .action-submenu>li>a:hover,.actions-split .action-menu .action-submenu>li>a:hover,.actions-split .dropdown-menu .action-submenu .action-submenu>li>a:hover,.actions-split .dropdown-menu .action-submenu>li>a:hover{text-decoration:none}.abs-action-menu .action-submenu .action-submenu>li._visible,.abs-action-menu .action-submenu .action-submenu>li:hover,.abs-action-menu .action-submenu>li._visible,.abs-action-menu .action-submenu>li:hover,.action-menu .action-submenu>li._visible,.action-menu .action-submenu>li:hover,.action-menu>li._visible,.action-menu>li:hover,.actions-split .action-menu .action-submenu .action-submenu>li._visible,.actions-split .action-menu .action-submenu .action-submenu>li:hover,.actions-split .action-menu .action-submenu>li._visible,.actions-split .action-menu .action-submenu>li:hover,.actions-split .dropdown-menu .action-submenu .action-submenu>li._visible,.actions-split .dropdown-menu .action-submenu .action-submenu>li:hover,.actions-split .dropdown-menu .action-submenu>li._visible,.actions-split .dropdown-menu .action-submenu>li:hover{background-color:#e3e3e3}.abs-action-menu .action-submenu .action-submenu>li:active,.abs-action-menu .action-submenu>li:active,.action-menu .action-submenu>li:active,.action-menu>li:active,.actions-split .action-menu .action-submenu .action-submenu>li:active,.actions-split .action-menu .action-submenu>li:active,.actions-split .dropdown-menu .action-submenu .action-submenu>li:active,.actions-split .dropdown-menu .action-submenu>li:active{background-color:#cacaca}.abs-action-menu .action-submenu .action-submenu>li._parent,.abs-action-menu .action-submenu>li._parent,.action-menu .action-submenu>li._parent,.action-menu>li._parent,.actions-split .action-menu .action-submenu .action-submenu>li._parent,.actions-split .action-menu .action-submenu>li._parent,.actions-split .dropdown-menu .action-submenu .action-submenu>li._parent,.actions-split .dropdown-menu .action-submenu>li._parent{-webkit-flex-direction:row;display:flex;-ms-flex-direction:row;flex-direction:row}.abs-action-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.abs-action-menu .action-submenu>li._parent>.action-menu-item,.action-menu .action-submenu>li._parent>.action-menu-item,.action-menu>li._parent>.action-menu-item,.actions-split .action-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .action-menu .action-submenu>li._parent>.action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu>li._parent>.action-menu-item,.actions-split .dropdown-menu .action-submenu>li._parent>.action-menu-item{min-width:100%}.abs-action-menu .action-submenu .action-menu-item,.abs-action-menu .action-submenu .action-submenu .action-menu-item,.abs-action-menu .action-submenu .action-submenu .item,.abs-action-menu .action-submenu .item,.action-menu .action-menu-item,.action-menu .action-submenu .action-menu-item,.action-menu .action-submenu .item,.action-menu .item,.actions-split .action-menu .action-submenu .action-menu-item,.actions-split .action-menu .action-submenu .action-submenu .action-menu-item,.actions-split .action-menu .action-submenu .action-submenu .item,.actions-split .action-menu .action-submenu .item,.actions-split .dropdown-menu .action-submenu .action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu .action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu .item,.actions-split .dropdown-menu .action-submenu .item{cursor:pointer;display:block;padding:.6875em 1em}.abs-action-menu .action-submenu .action-submenu,.action-menu .action-submenu,.actions-split .action-menu .action-submenu .action-submenu,.actions-split .dropdown-menu .action-submenu .action-submenu{bottom:auto;left:auto;margin-left:0;margin-top:-1px;position:absolute;right:auto;top:auto}.ie9 .abs-action-menu .action-submenu .action-submenu,.ie9 .abs-action-menu .action-submenu .action-submenu .action-submenu,.ie9 .action-menu .action-submenu,.ie9 .action-menu .action-submenu .action-submenu,.ie9 .actions-split .action-menu .action-submenu .action-submenu,.ie9 .actions-split .action-menu .action-submenu .action-submenu .action-submenu,.ie9 .actions-split .dropdown-menu .action-submenu .action-submenu,.ie9 .actions-split .dropdown-menu .action-submenu .action-submenu .action-submenu{margin-left:99%;margin-top:-3.5rem}.abs-action-menu .action-submenu .action-submenu a.action-menu-item,.abs-action-menu .action-submenu a.action-menu-item,.action-menu .action-submenu a.action-menu-item,.action-menu a.action-menu-item,.actions-split .action-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .action-menu .action-submenu a.action-menu-item,.actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item,.actions-split .dropdown-menu .action-submenu a.action-menu-item{color:#333}.abs-action-menu .action-submenu .action-submenu a.action-menu-item:focus,.abs-action-menu .action-submenu a.action-menu-item:focus,.action-menu .action-submenu a.action-menu-item:focus,.action-menu a.action-menu-item:focus,.actions-split .action-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .action-menu .action-submenu a.action-menu-item:focus,.actions-split .dropdown-menu .action-submenu .action-submenu a.action-menu-item:focus,.actions-split .dropdown-menu .action-submenu a.action-menu-item:focus{background-color:#e3e3e3;box-shadow:none}.messages .message:last-child{margin:0 0 2rem}.message{background:#fffbbb;border:none;border-radius:0;color:#333;font-size:1.4rem;margin:0 0 1px;padding:1.8rem 4rem 1.8rem 5.5rem;position:relative;text-shadow:none}.message:before{background:0 0;border:0;color:#007bdb;content:'\e61a';font-family:Icons;font-size:1.9rem;font-style:normal;font-weight:400;height:auto;left:1.9rem;line-height:inherit;margin-top:-1.3rem;position:absolute;speak:none;text-shadow:none;top:50%;width:auto}.message-notice:before{color:#007bdb;content:'\e61a'}.message-warning:before{color:#eb5202;content:'\e623'}.message-error{background:#fcc}.message-error:before{color:#e22626;content:'\e632';font-size:1.5rem;left:2.2rem;margin-top:-1rem}.message-success:before{color:#79a22e;content:'\e62d'}.message-spinner:before{display:none}.message-spinner .spinner{font-size:2.5rem;left:1.5rem;position:absolute;top:1.5rem}.message-in-rating-edit{margin-left:1.8rem;margin-right:1.8rem}.modal-popup .action-close,.modal-slide .action-close{color:#736963;position:absolute;right:0;top:0;z-index:1}.modal-popup .action-close:active,.modal-slide .action-close:active{-ms-transform:none;transform:none}.modal-popup .action-close:active:before,.modal-slide .action-close:active:before{font-size:1.8rem}.modal-popup .action-close:hover:before,.modal-slide .action-close:hover:before{color:#58504b}.modal-popup .action-close:before,.modal-slide .action-close:before{font-size:2rem}.modal-popup .action-close:focus,.modal-slide .action-close:focus{background-color:transparent}.modal-popup.prompt .prompt-message{padding:2rem 0}.modal-popup.prompt .prompt-message input{width:100%}.modal-popup.confirm .modal-inner-wrap .message,.modal-popup.prompt .modal-inner-wrap .message{background:#fff}.modal-popup.modal-system-messages .modal-inner-wrap{background:#fffbbb}.modal-popup._image-box .modal-inner-wrap{margin:5rem auto;max-width:78rem;position:static}.modal-popup._image-box .thumbnail-preview{padding-bottom:3rem;text-align:center}.modal-popup._image-box .thumbnail-preview .thumbnail-preview-image-block{border:1px solid #ccc;margin:0 auto 2rem;max-width:58rem;padding:2rem}.modal-popup._image-box .thumbnail-preview .thumbnail-preview-image{max-height:54rem}.modal-popup .modal-title{font-size:2.4rem;margin-right:6.4rem}.modal-popup .modal-footer{padding-top:2.6rem;text-align:right}.modal-popup .action-close{padding:3rem}.modal-popup .action-close:active,.modal-popup .action-close:focus{background:0 0;padding-right:3.1rem;padding-top:3.1rem}.modal-slide .modal-content-new-attribute{-webkit-overflow-scrolling:touch;overflow:auto;padding-bottom:0}.modal-slide .modal-content-new-attribute iframe{margin-bottom:-2.5rem}.modal-slide .modal-title{font-size:2.1rem;margin-right:5.7rem}.modal-slide .action-close{padding:2.1rem 2.6rem}.modal-slide .action-close:active{padding-right:2.7rem;padding-top:2.2rem}.modal-slide .page-main-actions{margin-bottom:.6rem;margin-top:2.1rem}.modal-slide .magento-message{padding:0 3rem 3rem;position:relative}.modal-slide .magento-message .insert-title-inner,.modal-slide .main-col .insert-title-inner{border-bottom:1px solid #adadad;margin:0 0 2rem;padding-bottom:.5rem}.modal-slide .magento-message .insert-actions,.modal-slide .main-col .insert-actions{float:right}.modal-slide .magento-message .title,.modal-slide .main-col .title{font-size:1.6rem;padding-top:.5rem}.modal-slide .main-col,.modal-slide .side-col{float:left;padding-bottom:0}.modal-slide .main-col:after,.modal-slide .side-col:after{display:none}.modal-slide .side-col{width:20%}.modal-slide .main-col{padding-right:0;width:80%}.modal-slide .content-footer .form-buttons{float:right}.modal-title{font-weight:400;margin-bottom:0;min-height:1em}.modal-title span{font-size:1.4rem;font-style:italic;margin-left:1rem}.spinner{display:inline-block;font-size:4rem;height:1em;margin-right:1.5rem;position:relative;width:1em}.spinner>span:nth-child(1){animation-delay:.27s;-ms-transform:rotate(-315deg);transform:rotate(-315deg)}.spinner>span:nth-child(2){animation-delay:.36s;-ms-transform:rotate(-270deg);transform:rotate(-270deg)}.spinner>span:nth-child(3){animation-delay:.45s;-ms-transform:rotate(-225deg);transform:rotate(-225deg)}.spinner>span:nth-child(4){animation-delay:.54s;-ms-transform:rotate(-180deg);transform:rotate(-180deg)}.spinner>span:nth-child(5){animation-delay:.63s;-ms-transform:rotate(-135deg);transform:rotate(-135deg)}.spinner>span:nth-child(6){animation-delay:.72s;-ms-transform:rotate(-90deg);transform:rotate(-90deg)}.spinner>span:nth-child(7){animation-delay:.81s;-ms-transform:rotate(-45deg);transform:rotate(-45deg)}.spinner>span:nth-child(8){animation-delay:.9;-ms-transform:rotate(0deg);transform:rotate(0deg)}@keyframes fade{0%{background-color:#514943}100%{background-color:#fff}}.spinner>span{-ms-transform:scale(0.4);transform:scale(0.4);animation-name:fade;animation-duration:.72s;animation-iteration-count:infinite;animation-direction:linear;background-color:#fff;border-radius:6px;clip:rect(0 .28571429em .1em 0);height:.1em;margin-top:.5em;position:absolute;width:1em}.ie9 .spinner{background:url(../images/ajax-loader.gif) center no-repeat}.ie9 .spinner>span{display:none}.popup-loading{background:rgba(255,255,255,.8);border-color:#ef672f;color:#ef672f;font-size:14px;font-weight:700;left:50%;margin-left:-100px;padding:100px 0 10px;position:fixed;text-align:center;top:40%;width:200px;z-index:1003}.popup-loading:after{background-image:url(../images/loader-1.gif);content:'';height:64px;left:50%;margin:-32px 0 0 -32px;position:absolute;top:40%;width:64px;z-index:2}.loading-mask,.loading-old{background:rgba(255,255,255,.4);bottom:0;left:0;position:fixed;right:0;top:0;z-index:2003}.loading-mask img,.loading-old img{display:none}.loading-mask p,.loading-old p{margin-top:118px}.loading-mask .loader,.loading-old .loader{background:url(../images/loader-1.gif) 50% 30% no-repeat #f7f3eb;border-radius:5px;bottom:0;color:#575757;font-size:14px;font-weight:700;height:160px;left:0;margin:auto;opacity:.95;position:absolute;right:0;text-align:center;top:0;width:160px}.admin-user{float:right;line-height:1.36;margin-left:.3rem;z-index:490}.admin-user._active .admin__action-dropdown,.admin-user.active .admin__action-dropdown{border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.admin-user .admin__action-dropdown{height:3.3rem;padding:.7rem 2.8rem .4rem 4rem}.admin-user .admin__action-dropdown._active:after,.admin-user .admin__action-dropdown.active:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin-user .admin__action-dropdown:after{border-color:#777 transparent transparent;border-style:solid;border-width:.5rem .4rem 0;content:'';height:0;margin-top:-.2rem;position:absolute;right:1.3rem;top:50%;transition:all .2s linear;width:0}._active .admin-user .admin__action-dropdown:after,.active .admin-user .admin__action-dropdown:after{-ms-transform:rotate(180deg);transform:rotate(180deg)}.admin-user .admin__action-dropdown:hover:after{border-color:#000 transparent transparent}.admin-user .admin__action-dropdown:before{color:#777;content:'\e600';font-size:2rem;left:1.1rem;margin-top:-1.1rem;position:absolute;top:50%}.admin-user .admin__action-dropdown:hover:before{color:#333}.admin-user .admin__action-dropdown-menu{min-width:20rem;padding-left:1rem;padding-right:1rem}.admin-user .admin__action-dropdown-menu>li>a{padding-left:.5em;padding-right:1.8rem;transition:background-color .1s linear;white-space:nowrap}.admin-user .admin__action-dropdown-menu>li>a:hover{background-color:#e0f6fe;color:#333}.admin-user .admin__action-dropdown-menu>li>a:active{background-color:#c7effd;bottom:-1px;position:relative}.admin-user .admin__action-dropdown-menu .admin-user-name{text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:20rem;overflow:hidden;vertical-align:top}.admin-user-account-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:11.2rem}.search-global{float:right;margin-right:-.3rem;position:relative;z-index:480}.search-global-field{min-width:5rem}.search-global-field._active .search-global-input{background-color:#fff;border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5);padding-right:4rem;width:25rem}.search-global-field._active .search-global-action{display:block;height:3.3rem;position:absolute;right:0;text-indent:-100%;top:0;width:5rem;z-index:3}.search-global-field .autocomplete-results{height:3.3rem;position:absolute;right:0;top:0;width:25rem}.search-global-field .search-global-menu{border:1px solid #007bdb;border-top-color:transparent;box-shadow:1px 1px 5px rgba(0,0,0,.5);left:0;margin-top:-2px;padding:0;position:absolute;right:0;top:100%;z-index:2}.search-global-field .search-global-menu:after{background-color:#fff;content:'';height:5px;left:0;position:absolute;right:0;top:-5px}.search-global-field .search-global-menu>li{background-color:#fff;border-top:1px solid #ddd;display:block;font-size:1.2rem;padding:.75rem 1.4rem .55rem}.search-global-field .search-global-menu>li._active{background-color:#e0f6fe}.search-global-field .search-global-menu .title{display:block;font-size:1.4rem}.search-global-field .search-global-menu .type{color:#1a1a1a;display:block}.search-global-label{cursor:pointer;height:3.3rem;padding:.75rem 1.4rem .55rem;position:absolute;right:0;top:0;z-index:2}.search-global-label:active{-ms-transform:scale(0.9);transform:scale(0.9)}.search-global-label:hover:before{color:#000}.search-global-label:before{color:#777;content:'\e60c';font-size:2rem}.search-global-input{background-color:transparent;border:1px solid transparent;font-size:1.4rem;height:3.3rem;padding:.75rem 1.4rem .55rem;position:absolute;right:0;top:0;transition:all .1s linear,width .3s linear;width:5rem;z-index:1}.search-global-action{display:none}.notifications-wrapper{float:right;line-height:1;position:relative}.notifications-wrapper.active{z-index:500}.notifications-wrapper.active .notifications-action{border-color:#007bdb;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.notifications-wrapper.active .notifications-action:after{background-color:#fff;border:none;content:'';display:block;height:6px;left:-6px;margin-top:0;position:absolute;right:0;top:100%;width:auto}.notifications-wrapper .admin__action-dropdown-menu{padding:1rem 0 0;width:32rem}.notifications-action{color:#777;height:3.3rem;padding:.75rem 2rem .65rem}.notifications-action:after{display:none}.notifications-action:before{content:'\e607';font-size:1.9rem;margin-right:0}.notifications-action:active:before{position:relative;top:1px}.notifications-action .notifications-counter{background-color:#e22626;border-radius:1em;color:#fff;display:inline-block;font-size:1.1rem;font-weight:700;left:50%;margin-left:.3em;margin-top:-1.1em;padding:.3em .5em;position:absolute;top:50%}.notifications-entry{line-height:1.36;padding:.6rem 2rem .8rem;position:relative;transition:background-color .1s linear}.notifications-entry:hover{background-color:#e0f6fe}.notifications-entry.notifications-entry-last{margin:0 2rem;padding:.3rem 0 1.3rem;text-align:center}.notifications-entry.notifications-entry-last:hover{background-color:transparent}.notifications-entry+.notifications-entry-last{border-top:1px solid #ddd;padding-bottom:.6rem}.notifications-entry ._cutted{cursor:pointer}.notifications-entry ._cutted .notifications-entry-description-start:after{content:'...'}.notifications-entry-title{color:#ef672f;display:block;font-size:1.1rem;font-weight:700;margin-bottom:.7rem;margin-right:1em}.notifications-entry-description{color:#333;font-size:1.1rem;margin-bottom:.8rem}.notifications-entry-description-end{display:none}.notifications-entry-description-end._show{display:inline}.notifications-entry-time{color:#777;font-size:1.1rem}.notifications-close{line-height:1;padding:1rem;position:absolute;right:0;top:.6rem}.notifications-close:before{color:#ccc;content:'\e620';transition:color .1s linear}.notifications-close:hover:before{color:#b3b3b3}.notifications-close:active{-ms-transform:scale(0.95);transform:scale(0.95)}.page-header-actions{padding-top:1.1rem}.page-header-hgroup{padding-right:1.5rem}.page-title{color:#333;font-size:2.8rem}.page-header{padding:1.5rem 3rem}.menu-wrapper{display:inline-block;position:relative;width:8.8rem;z-index:700}.menu-wrapper:before{background-color:#373330;bottom:0;content:'';left:0;position:fixed;top:0;width:8.8rem;z-index:699}.menu-wrapper._fixed{left:0;position:fixed;top:0}.menu-wrapper._fixed~.page-wrapper{margin-left:8.8rem}.menu-wrapper .logo{display:block;height:8.8rem;padding:2.4rem 0 2.2rem;position:relative;text-align:center;z-index:700}._keyfocus .menu-wrapper .logo:focus{background-color:#4a4542;box-shadow:none}._keyfocus .menu-wrapper .logo:focus+.admin__menu .level-0:first-child>a{background-color:#373330}._keyfocus .menu-wrapper .logo:focus+.admin__menu .level-0:first-child>a:after{display:none}.menu-wrapper .logo:hover .logo-img{-webkit-filter:brightness(1.1);filter:brightness(1.1)}.menu-wrapper .logo:active .logo-img{-ms-transform:scale(0.95);transform:scale(0.95)}.menu-wrapper .logo .logo-img{height:4.2rem;transition:-webkit-filter .2s linear,filter .2s linear,transform .1s linear;width:3.5rem}.abs-menu-separator,.admin__menu .item-partners>a:after,.admin__menu .level-0:first-child>a:after{background-color:#736963;content:'';display:block;height:1px;left:0;margin-left:16%;position:absolute;top:0;width:68%}.admin__menu li{display:block}.admin__menu .level-0:first-child>a{position:relative}.admin__menu .level-0._active>a,.admin__menu .level-0:hover>a{color:#f7f3eb}.admin__menu .level-0._active>a{background-color:#524d49}.admin__menu .level-0:hover>a{background-color:#4a4542}.admin__menu .level-0>a{color:#aaa6a0;display:block;font-size:1rem;letter-spacing:.025em;min-height:6.2rem;padding:1.2rem .5rem .5rem;position:relative;text-align:center;text-decoration:none;text-transform:uppercase;transition:background-color .1s linear;word-wrap:break-word;z-index:700}.admin__menu .level-0>a:focus{box-shadow:none}.admin__menu .level-0>a:before{content:'\e63a';display:block;font-size:2.2rem;height:2.2rem}.admin__menu .level-0>.submenu{background-color:#4a4542;box-shadow:0 0 3px #000;left:100%;min-height:calc(8.8rem + 2rem + 100%);padding:2rem 0 0;position:absolute;top:0;-ms-transform:translateX(-100%);transform:translateX(-100%);transition-duration:.3s;transition-property:transform,visibility;transition-timing-function:ease-in-out;visibility:hidden;z-index:697}.ie10 .admin__menu .level-0>.submenu,.ie11 .admin__menu .level-0>.submenu{height:100%}.admin__menu .level-0._show>.submenu{-ms-transform:translateX(0);transform:translateX(0);visibility:visible;z-index:698}.admin__menu .level-1{margin-left:1.5rem;margin-right:1.5rem}.admin__menu [class*=level-]:not(.level-0) a{display:block;padding:1.25rem 1.5rem}.admin__menu [class*=level-]:not(.level-0) a:hover{background-color:#403934}.admin__menu [class*=level-]:not(.level-0) a:active{background-color:#322c29;padding-bottom:1.15rem;padding-top:1.35rem}.admin__menu .submenu li{min-width:23.8rem}.admin__menu .submenu a{color:#fcfcfc;transition:background-color .1s linear}.admin__menu .submenu a:focus,.admin__menu .submenu a:hover{box-shadow:none;text-decoration:none}._keyfocus .admin__menu .submenu a:focus{background-color:#403934}._keyfocus .admin__menu .submenu a:active{background-color:#322c29}.admin__menu .submenu .parent{margin-bottom:4.5rem}.admin__menu .submenu .parent .submenu-group-title,.admin__menu .submenu .parent>a{color:#a79d95;display:block;font-size:1.6rem;font-weight:600;margin-bottom:.7rem;padding:1.25rem 1.5rem;pointer-events:none}.admin__menu .submenu .column{display:table-cell}.admin__menu .submenu-title{color:#fff;display:block;font-size:2.2rem;font-weight:600;margin-bottom:4.2rem;margin-left:3rem;margin-right:5.8rem}.admin__menu .submenu-sub-title{color:#fff;display:block;font-size:1.2rem;margin:-3.8rem 5.8rem 3.8rem 3rem}.admin__menu .action-close{padding:2.4rem 2.8rem;position:absolute;right:0;top:0}.admin__menu .action-close:before{color:#a79d95;font-size:1.7rem}.admin__menu .action-close:hover:before{color:#fff}.admin__menu .item-dashboard>a:before{content:'\e604';font-size:1.8rem;padding-top:.4rem}.admin__menu .item-sales>a:before{content:'\e60b'}.admin__menu .item-catalog>a:before{content:'\e608'}.admin__menu .item-customer>a:before{content:'\e603';font-size:2.6rem;position:relative;top:-.4rem}.admin__menu .item-marketing>a:before{content:'\e609';font-size:2rem;padding-top:.2rem}.admin__menu .item-content>a:before{content:'\e602';font-size:2.4rem;position:relative;top:-.2rem}.admin__menu .item-report>a:before{content:'\e60a'}.admin__menu .item-stores>a:before{content:'\e60d';font-size:1.9rem;padding-top:.3rem}.admin__menu .item-system>a:before{content:'\e610'}.admin__menu .item-partners._active>a:after,.admin__menu .item-system._current+.item-partners>a:after{display:none}.admin__menu .item-partners>a{padding-bottom:1rem}.admin__menu .item-partners>a:before{content:'\e612'}.admin__menu-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:697}.store-switcher{color:#333;float:left;font-size:1.3rem;margin-top:.7rem}.store-switcher .admin__action-dropdown{background-color:#f8f8f8;margin-left:.5em}.store-switcher .dropdown{display:inline-block;position:relative}.store-switcher .dropdown:after,.store-switcher .dropdown:before{content:'';display:table}.store-switcher .dropdown:after{clear:both}.store-switcher .dropdown .action.toggle{cursor:pointer;display:inline-block;text-decoration:none}.store-switcher .dropdown .action.toggle:after{-webkit-font-smoothing:antialiased;font-size:22px;line-height:2;color:#333;content:'\e607';font-family:icons-blank-theme;margin:0;vertical-align:top;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.store-switcher .dropdown .action.toggle:active:after,.store-switcher .dropdown .action.toggle:hover:after{color:#333}.store-switcher .dropdown .action.toggle.active{display:inline-block;text-decoration:none}.store-switcher .dropdown .action.toggle.active:after{-webkit-font-smoothing:antialiased;font-size:22px;line-height:2;color:#333;content:'\e618';font-family:icons-blank-theme;margin:0;vertical-align:top;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.store-switcher .dropdown .action.toggle.active:active:after,.store-switcher .dropdown .action.toggle.active:hover:after{color:#333}.store-switcher .dropdown .dropdown-menu{margin:4px 0 0;padding:0;list-style:none;background:#fff;border:1px solid #aaa6a0;min-width:19.5rem;z-index:100;box-sizing:border-box;display:none;position:absolute;top:100%;box-shadow:1px 1px 5px rgba(0,0,0,.5)}.store-switcher .dropdown .dropdown-menu li{margin:0;padding:0}.store-switcher .dropdown .dropdown-menu li:hover{background:0 0;cursor:pointer}.store-switcher .dropdown.active{overflow:visible}.store-switcher .dropdown.active .dropdown-menu{display:block}.store-switcher .dropdown-menu{left:0;margin-top:.5em;max-height:250px;overflow-y:auto;padding-top:.25em}.store-switcher .dropdown-menu li{border:0;cursor:default}.store-switcher .dropdown-menu li:hover{cursor:default}.store-switcher .dropdown-menu li a,.store-switcher .dropdown-menu li span{color:#333;display:block;padding:.5rem 1.3rem}.store-switcher .dropdown-menu li a{text-decoration:none}.store-switcher .dropdown-menu li a:hover{background:#e9e9e9}.store-switcher .dropdown-menu li span{color:#adadad;cursor:default}.store-switcher .dropdown-menu li.current span{background:#eee;color:#333}.store-switcher .dropdown-menu .store-switcher-store a,.store-switcher .dropdown-menu .store-switcher-store span{padding-left:2.6rem}.store-switcher .dropdown-menu .store-switcher-store-view a,.store-switcher .dropdown-menu .store-switcher-store-view span{padding-left:3.9rem}.store-switcher .dropdown-menu .dropdown-toolbar{border-top:1px solid #ebebeb;margin-top:1rem}.store-switcher .dropdown-menu .dropdown-toolbar a:before{content:'\e610';margin-right:.25em;position:relative;top:1px}.store-switcher-label{font-weight:700}.store-switcher-alt{display:inline-block;position:relative}.store-switcher-alt.active .dropdown-menu{display:block}.store-switcher-alt .dropdown-menu{margin-top:2px;white-space:nowrap}.store-switcher-alt .dropdown-menu ul{list-style:none;margin:0;padding:0}.store-switcher-alt strong{color:#a79d95;display:block;font-size:14px;font-weight:500;line-height:1.333;padding:5px 10px}.store-switcher-alt .store-selected{color:#676056;cursor:pointer;font-size:12px;font-weight:400;line-height:1.333}.store-switcher-alt .store-selected:after{-webkit-font-smoothing:antialiased;color:#afadac;content:'\e02c';font-style:normal;font-weight:400;margin:0 0 0 3px;speak:none;vertical-align:text-top}.store-switcher-alt .store-switcher-store,.store-switcher-alt .store-switcher-website{padding:0}.store-switcher-alt .store-switcher-store:hover,.store-switcher-alt .store-switcher-website:hover{background:0 0}.store-switcher-alt .manage-stores,.store-switcher-alt .store-switcher-all,.store-switcher-alt .store-switcher-store-view{padding:0}.store-switcher-alt .manage-stores>a,.store-switcher-alt .store-switcher-all>a{color:#676056;display:block;font-size:12px;padding:8px 15px;text-decoration:none}.store-switcher-website{margin:5px 0 0}.store-switcher-website>strong{padding-left:13px}.store-switcher-store{margin:1px 0 0}.store-switcher-store>strong{padding-left:20px}.store-switcher-store>ul{margin-top:1px}.store-switcher-store-view:first-child{border-top:1px solid #e5e5e5}.store-switcher-store-view>a{color:#333;display:block;font-size:13px;padding:5px 15px 5px 24px;text-decoration:none}.store-view:not(.store-switcher){float:left}.store-view .store-switcher-label{display:inline-block;margin-top:1rem}.tooltip{margin-left:.5em}.tooltip .help a,.tooltip .help span{cursor:pointer;display:inline-block;height:22px;position:relative;vertical-align:middle;width:22px;z-index:2}.tooltip .help a:before,.tooltip .help span:before{color:#333;content:'\e633';font-size:1.7rem}.tooltip .help a:hover{text-decoration:none}.tooltip .tooltip-content{background:#000;border-radius:3px;color:#fff;display:none;margin-left:-19px;margin-top:10px;max-width:200px;padding:4px 8px;position:absolute;text-shadow:none;z-index:20}.tooltip .tooltip-content:before{border-bottom:5px solid #000;border-left:5px solid transparent;border-right:5px solid transparent;content:'';height:0;left:20px;opacity:.8;position:absolute;top:-5px;width:0}.tooltip .tooltip-content.loading{position:absolute}.tooltip .tooltip-content.loading:before{border-bottom-color:rgba(0,0,0,.3)}.tooltip:hover>.tooltip-content{display:block}.page-actions._fixed,.page-main-actions:not(._hidden){background:#f8f8f8;border-bottom:1px solid #e3e3e3;border-top:1px solid #e3e3e3;padding:1.5rem}.page-main-actions{margin:0 0 3rem}.page-main-actions._hidden .store-switcher{display:none}.page-main-actions._hidden .page-actions-placeholder{min-height:50px}.page-actions{float:right}.page-main-actions .page-actions._fixed{left:8.8rem;position:fixed;right:0;top:0;z-index:501}.page-main-actions .page-actions._fixed .page-actions-inner:before{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333;content:attr(data-title);float:left;font-size:2.8rem;margin-top:.3rem;max-width:50%}.page-actions .page-actions-buttons>button,.page-actions>button{float:right;margin-left:1.3rem}.page-actions .page-actions-buttons>button.action-back,.page-actions .page-actions-buttons>button.back,.page-actions>button.action-back,.page-actions>button.back{float:left;-ms-flex-order:-1;order:-1}.page-actions .page-actions-buttons>button.action-back:before,.page-actions .page-actions-buttons>button.back:before,.page-actions>button.action-back:before,.page-actions>button.back:before{content:'\e626';margin-right:.5em;position:relative;top:1px}.page-actions .page-actions-buttons>button.action-primary,.page-actions .page-actions-buttons>button.primary,.page-actions>button.action-primary,.page-actions>button.primary{-ms-flex-order:2;order:2}.page-actions .page-actions-buttons>button.save:not(.primary),.page-actions>button.save:not(.primary){-ms-flex-order:1;order:1}.page-actions .page-actions-buttons>button.delete,.page-actions>button.delete{-ms-flex-order:-1;order:-1}.page-actions .actions-split{float:right;margin-left:1.3rem;-ms-flex-order:2;order:2}.page-actions .actions-split .dropdown-menu .item{display:block}.page-actions-buttons{float:right;-ms-flex-pack:end;justify-content:flex-end;display:-ms-flexbox;display:flex}.customer-index-edit .page-actions-buttons{background-color:transparent}.admin__page-nav{background:#f1f1f1;border:1px solid #e3e3e3}.admin__page-nav._collapsed:first-child{border-bottom:none}.admin__page-nav._collapsed._show{border-bottom:1px solid #e3e3e3}.admin__page-nav._collapsed._show ._collapsible{background:#f1f1f1}.admin__page-nav._collapsed._show ._collapsible:after{content:'\e62b'}.admin__page-nav._collapsed._show ._collapsible+.admin__page-nav-items{display:block}.admin__page-nav._collapsed._hide .admin__page-nav-title-messages,.admin__page-nav._collapsed._hide .admin__page-nav-title-messages ._active{display:inline-block}.admin__page-nav+._collapsed{border-bottom:none;border-top:none}.admin__page-nav-title{border-bottom:1px solid #e3e3e3;color:#303030;display:block;font-size:1.4rem;line-height:1.2;margin:0 0 -1px;padding:1.8rem 1.5rem;position:relative;text-transform:uppercase}.admin__page-nav-title._collapsible{background:#fff;cursor:pointer;margin:0;padding-right:3.5rem;transition:border-color .1s ease-out,background-color .1s ease-out}.admin__page-nav-title._collapsible+.admin__page-nav-items{display:none;margin-top:-1px}.admin__page-nav-title._collapsible:after{content:'\e628';font-size:1.3rem;font-weight:700;position:absolute;right:1.8rem;top:2rem}.admin__page-nav-title._collapsible:hover{background:#f1f1f1}.admin__page-nav-title._collapsible:last-child{margin:0 0 -1px}.admin__page-nav-title strong{font-weight:700}.admin__page-nav-title .admin__page-nav-title-messages{display:none}.admin__page-nav-items{list-style-type:none;margin:0;padding:1rem 0 1.3rem}.admin__page-nav-item{border-left:3px solid transparent;margin-left:.7rem;padding:0;position:relative;transition:border-color .1s ease-out,background-color .1s ease-out}.admin__page-nav-item:hover{border-color:#e4e4e4}.admin__page-nav-item:hover .admin__page-nav-link{background:#e4e4e4;color:#303030;text-decoration:none}.admin__page-nav-item._active,.admin__page-nav-item.ui-state-active{border-color:#eb5202}.admin__page-nav-item._active .admin__page-nav-link,.admin__page-nav-item.ui-state-active .admin__page-nav-link{background:#fff;border-color:#e3e3e3;border-right:1px solid #fff;color:#303030;margin-right:-1px;font-weight:600}.admin__page-nav-item._loading:before,.admin__page-nav-item.ui-tabs-loading:before{display:none}.admin__page-nav-item._loading .admin__page-nav-item-message-loader,.admin__page-nav-item.ui-tabs-loading .admin__page-nav-item-message-loader{display:inline-block}.admin__page-nav-link{border:1px solid transparent;border-width:1px 0;color:#303030;display:block;font-weight:500;line-height:1.2;margin:0 0 -1px;padding:2rem 4rem 2rem 1rem;transition:border-color .1s ease-out,background-color .1s ease-out;word-wrap:break-word}.admin__page-nav-item-messages{display:inline-block}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip{background:#f1f1f1;border:1px solid #f1f1f1;border-radius:1px;bottom:3.7rem;box-shadow:0 3px 9px 0 rgba(0,0,0,.3);display:none;font-size:1.4rem;font-weight:400;left:-1rem;line-height:1.36;padding:1.5rem;position:absolute;text-transform:none;width:27rem;word-break:normal;z-index:2}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:after,.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:before{border:15px solid transparent;height:0;width:0;border-top-color:#f1f1f1;content:'';display:block;left:2rem;position:absolute;top:100%;z-index:3}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:after{border-top-color:#f1f1f1;margin-top:-1px;z-index:4}.admin__page-nav-item-messages .admin__page-nav-item-message-tooltip:before{border-top-color:#bfbfbf;margin-top:1px}.admin__page-nav-item-message-loader{display:none;margin-top:-1rem;position:absolute;right:0;top:50%}.admin__page-nav-item-message-loader .spinner{font-size:2rem;margin-right:1.5rem}._loading>.admin__page-nav-item-messages .admin__page-nav-item-message-loader{display:inline-block}.admin__page-nav-item-message{position:relative}.admin__page-nav-item-message:hover{z-index:500}.admin__page-nav-item-message:hover .admin__page-nav-item-message-tooltip{display:block}.admin__page-nav-item-message._changed,.admin__page-nav-item-message._error{display:none}.admin__page-nav-item-message .admin__page-nav-item-message-icon{display:inline-block;font-size:1.4rem;padding-left:.8em;vertical-align:baseline}.admin__page-nav-item-message .admin__page-nav-item-message-icon:after{color:#666;content:'\e631'}._changed:not(._error)>.admin__page-nav-item-messages ._changed{display:inline-block}._error .admin__page-nav-item-message-icon:after{color:#eb5202;content:'\e623'}._error>.admin__page-nav-item-messages ._error{display:inline-block}._error>.admin__page-nav-item-messages ._error .spinner{font-size:2rem;margin-right:1.5rem}._error .admin__page-nav-item-message-tooltip{background:#f1f1f1;border:1px solid #f1f1f1;border-radius:1px;bottom:3.7rem;box-shadow:0 3px 9px 0 rgba(0,0,0,.3);display:none;font-weight:400;left:-1rem;line-height:1.36;padding:2rem;position:absolute;text-transform:none;width:27rem;word-break:normal;z-index:2}._error .admin__page-nav-item-message-tooltip:after,._error .admin__page-nav-item-message-tooltip:before{border:15px solid transparent;height:0;width:0;border-top-color:#f1f1f1;content:'';display:block;left:2rem;position:absolute;top:100%;z-index:3}._error .admin__page-nav-item-message-tooltip:after{border-top-color:#f1f1f1;margin-top:-1px;z-index:4}._error .admin__page-nav-item-message-tooltip:before{border-top-color:#bfbfbf}.admin__data-grid-wrap-static .data-grid{box-sizing:border-box}.admin__data-grid-wrap-static .data-grid thead{color:#333}.admin__data-grid-wrap-static .data-grid tr:nth-child(even) td{background-color:#f5f5f5}.admin__data-grid-wrap-static .data-grid tr:nth-child(even) td._dragging{background-color:rgba(245,245,245,.95)}.admin__data-grid-wrap-static .data-grid ul{margin-left:1rem;padding-left:1rem}.admin__data-grid-wrap-static .admin__data-grid-loading-mask{background:rgba(255,255,255,.5);bottom:0;left:0;position:absolute;right:0;top:0;z-index:399}.admin__data-grid-wrap-static .admin__data-grid-loading-mask .grid-loader{background:url(../images/loader-2.gif) 50% 50% no-repeat;bottom:0;height:149px;left:0;margin:auto;position:absolute;right:0;top:0;width:218px}.data-grid-filters-actions-wrap{float:right}.data-grid-search-control-wrap{float:left;max-width:45.5rem;position:relative;width:35%}.data-grid-search-control-wrap :-ms-input-placeholder{font-style:italic}.data-grid-search-control-wrap ::-webkit-input-placeholder{font-style:italic}.data-grid-search-control-wrap ::-moz-placeholder{font-style:italic}.data-grid-search-control-wrap .action-submit{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:.6rem 2rem .2rem;position:absolute;right:0;top:1px}.data-grid-search-control-wrap .action-submit:hover{background-color:transparent;border:none;box-shadow:none}.data-grid-search-control-wrap .action-submit:active{-ms-transform:scale(0.9);transform:scale(0.9)}.data-grid-search-control-wrap .action-submit:hover:before{color:#1a1a1a}._keyfocus .data-grid-search-control-wrap .action-submit:focus{box-shadow:0 0 0 1px #008bdb}.data-grid-search-control-wrap .action-submit:before{content:'\e60c';font-size:2rem;transition:color .1s linear}.data-grid-search-control-wrap .action-submit>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.data-grid-search-control-wrap .abs-action-menu .action-submenu,.data-grid-search-control-wrap .abs-action-menu .action-submenu .action-submenu,.data-grid-search-control-wrap .action-menu,.data-grid-search-control-wrap .action-menu .action-submenu,.data-grid-search-control-wrap .actions-split .action-menu .action-submenu,.data-grid-search-control-wrap .actions-split .action-menu .action-submenu .action-submenu,.data-grid-search-control-wrap .actions-split .dropdown-menu .action-submenu,.data-grid-search-control-wrap .actions-split .dropdown-menu .action-submenu .action-submenu{max-height:19.25rem;overflow-y:auto;z-index:398}.data-grid-search-control-wrap .action-menu-item._selected{background-color:#e0f6fe}.data-grid-search-control-wrap .data-grid-search-label{display:none}.data-grid-search-control{padding-right:6rem;width:100%}.data-grid-filters-action-wrap{float:left;padding-left:2rem}.data-grid-filters-action-wrap .action-default{font-size:1.3rem;margin-bottom:1rem;padding-left:1.7rem;padding-right:2.1rem;padding-top:.7rem}.data-grid-filters-action-wrap .action-default._active{background-color:#fff;border-bottom-color:#fff;border-right-color:#ccc;font-weight:600;margin:-.1rem 0 0;padding-bottom:1.6rem;padding-top:.8rem;position:relative;z-index:281}.data-grid-filters-action-wrap .action-default._active:after{background-color:#eb5202;bottom:100%;content:'';height:3px;left:-1px;position:absolute;right:-1px}.data-grid-filters-action-wrap .action-default:before{color:#333;content:'\e605';font-size:1.8rem;margin-right:.4rem;position:relative;top:-1px;vertical-align:top}.data-grid-filters-action-wrap .filters-active{display:none}.admin__action-grid-select .admin__control-select{margin:-.5rem .5rem 0 0;padding-bottom:.6rem;padding-top:.6rem}.admin__data-grid-filters-wrap{opacity:0;visibility:hidden;clear:both;font-size:1.3rem;transition:opacity .3s ease}.admin__data-grid-filters-wrap._show{opacity:1;visibility:visible;border-bottom:1px solid #ccc;border-top:1px solid #ccc;margin-bottom:.7rem;padding:3.6rem 0 3rem;position:relative;top:-1px;z-index:280}.admin__data-grid-filters-wrap._show .admin__data-grid-filters,.admin__data-grid-filters-wrap._show .admin__data-grid-filters-footer{display:block}.admin__data-grid-filters-wrap .admin__form-field-label,.admin__data-grid-filters-wrap .admin__form-field-legend{display:block;font-weight:700;margin:0 0 .3rem;text-align:left}.admin__data-grid-filters-wrap .admin__form-field{display:inline-block;margin-bottom:2em;margin-left:0;padding-left:2rem;padding-right:2rem;vertical-align:top;width:calc(100% / 4 - 4px)}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field{display:block;float:none;margin-bottom:1.5rem;padding-left:0;padding-right:0;width:auto}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field:last-child{margin-bottom:0}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field .admin__form-field-label{border:1px solid transparent;float:left;font-weight:400;line-height:1.36;margin-bottom:0;padding-bottom:.6rem;padding-right:1em;padding-top:.6rem;width:25%}.admin__data-grid-filters-wrap .admin__form-field .admin__form-field .admin__form-field-control{margin-left:25%}.admin__data-grid-filters-wrap .admin__action-multiselect,.admin__data-grid-filters-wrap .admin__control-select,.admin__data-grid-filters-wrap .admin__control-text,.admin__data-grid-filters-wrap .admin__form-field-label{font-size:1.3rem}.admin__data-grid-filters-wrap .admin__control-select{height:3.2rem;padding-top:.5rem}.admin__data-grid-filters-wrap .admin__action-multiselect:before{height:3.2rem;width:3.2rem}.admin__data-grid-filters-wrap .admin__control-select,.admin__data-grid-filters-wrap .admin__control-text._has-datepicker{width:100%}.admin__data-grid-filters{display:none;margin-left:-2rem;margin-right:-2rem}.admin__filters-legend{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.admin__data-grid-filters-footer{display:none;font-size:1.4rem}.admin__data-grid-filters-footer .admin__footer-main-actions{margin-left:25%;text-align:right}.admin__data-grid-filters-footer .admin__footer-secondary-actions{float:left;width:50%}.admin__data-grid-filters-current{border-bottom:.1rem solid #ccc;border-top:.1rem solid #ccc;display:none;font-size:1.3rem;margin-bottom:.9rem;padding-bottom:.8rem;padding-top:1.1rem;width:100%}.admin__data-grid-filters-current._show{display:table;position:relative;top:-1px;z-index:3}.admin__data-grid-filters-current._show+.admin__data-grid-filters-wrap._show{margin-top:-1rem}.admin__current-filters-actions-wrap,.admin__current-filters-list-wrap,.admin__current-filters-title-wrap{display:table-cell;vertical-align:top}.admin__current-filters-title{margin-right:1em;white-space:nowrap}.admin__current-filters-list-wrap{width:100%}.admin__current-filters-list{margin-bottom:0}.admin__current-filters-list>li{display:inline-block;font-weight:600;margin:0 1rem .5rem;padding-right:2.6rem;position:relative}.admin__current-filters-list .action-remove{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:0;line-height:1;position:absolute;right:0;top:1px}.admin__current-filters-list .action-remove:hover{background-color:transparent;border:none;box-shadow:none}.admin__current-filters-list .action-remove:hover:before{color:#949494}.admin__current-filters-list .action-remove:active{-ms-transform:scale(0.9);transform:scale(0.9)}.admin__current-filters-list .action-remove:before{color:#adadad;content:'\e620';font-size:1.6rem;transition:color .1s linear}.admin__current-filters-list .action-remove>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.admin__current-filters-actions-wrap .action-clear{border:none;padding-bottom:0;padding-top:0;white-space:nowrap}.admin__data-grid-pager-wrap{float:right;text-align:right}.admin__data-grid-pager{display:inline-block;margin-left:3rem}.admin__data-grid-pager .admin__control-text::-webkit-inner-spin-button,.admin__data-grid-pager .admin__control-text::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.admin__data-grid-pager .admin__control-text{-moz-appearance:textfield;text-align:center;width:4.4rem}.action-next,.action-previous{width:4.4rem}.action-next:before,.action-previous:before{font-weight:700}.action-next>span,.action-previous>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.action-previous{margin-right:2.5rem;text-indent:-.25em}.action-previous:before{content:'\e629'}.action-next{margin-left:1.5rem;text-indent:.1em}.action-next:before{content:'\e62a'}.admin__data-grid-action-bookmarks{opacity:.98}.admin__data-grid-action-bookmarks .admin__action-dropdown-text:after{left:0;right:-6px}.admin__data-grid-action-bookmarks._active{z-index:290}.admin__data-grid-action-bookmarks .admin__action-dropdown .admin__action-dropdown-text{display:inline-block;max-width:15rem;min-width:4.9rem;vertical-align:top;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin__data-grid-action-bookmarks .admin__action-dropdown:before{content:'\e60f'}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu{font-size:1.3rem;left:0;padding:1rem 0;right:auto}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu>li{padding:0 5rem 0 0;position:relative;white-space:nowrap}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu>li:not(.action-dropdown-menu-action){transition:background-color .1s linear}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu>li:not(.action-dropdown-menu-action):hover{background-color:#e3e3e3}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item{max-width:23rem;min-width:18rem;white-space:normal;word-break:break-all}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-edit{display:none;padding-bottom:1rem;padding-left:1rem;padding-top:1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-edit .action-dropdown-menu-item-actions{padding-bottom:1rem;padding-top:1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action{padding-left:1rem;padding-top:1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action+.action-dropdown-menu-item-last{padding-top:.5rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action>a{color:#008bdb;text-decoration:none;display:inline-block;padding-left:1.1rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-action>a:hover{color:#0fa7ff;text-decoration:underline}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-last{padding-bottom:0}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu ._edit .action-dropdown-menu-item{display:none}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu ._edit .action-dropdown-menu-item-edit{display:block}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu ._active .action-dropdown-menu-link{font-weight:600}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .admin__control-text{font-size:1.3rem;min-width:15rem;width:calc(100% - 4rem)}.ie9 .admin__data-grid-action-bookmarks .admin__action-dropdown-menu .admin__control-text{width:15rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-item-actions{border-left:1px solid #fff;bottom:0;position:absolute;right:0;top:0;width:5rem}.admin__data-grid-action-bookmarks .admin__action-dropdown-menu .action-dropdown-menu-link{color:#333;display:block;text-decoration:none;padding:1rem 1rem 1rem 2.1rem}.admin__data-grid-action-bookmarks .action-delete,.admin__data-grid-action-bookmarks .action-edit,.admin__data-grid-action-bookmarks .action-submit{background-color:transparent;border:none;border-radius:0;box-shadow:none;margin:0;vertical-align:top}.admin__data-grid-action-bookmarks .action-delete:hover,.admin__data-grid-action-bookmarks .action-edit:hover,.admin__data-grid-action-bookmarks .action-submit:hover{background-color:transparent;border:none;box-shadow:none}.admin__data-grid-action-bookmarks .action-delete:before,.admin__data-grid-action-bookmarks .action-edit:before,.admin__data-grid-action-bookmarks .action-submit:before{font-size:1.7rem}.admin__data-grid-action-bookmarks .action-delete>span,.admin__data-grid-action-bookmarks .action-edit>span,.admin__data-grid-action-bookmarks .action-submit>span{clip:rect(0,0,0,0);overflow:hidden;position:absolute}.admin__data-grid-action-bookmarks .action-delete,.admin__data-grid-action-bookmarks .action-edit{padding:.6rem 1.4rem}.admin__data-grid-action-bookmarks .action-delete:active,.admin__data-grid-action-bookmarks .action-edit:active{-ms-transform:scale(0.9);transform:scale(0.9)}.admin__data-grid-action-bookmarks .action-submit{padding:.6rem 1rem .6rem .8rem}.admin__data-grid-action-bookmarks .action-submit:active{position:relative;right:-1px}.admin__data-grid-action-bookmarks .action-submit:before{content:'\e625'}.admin__data-grid-action-bookmarks .action-delete:before{content:'\e630'}.admin__data-grid-action-bookmarks .action-edit{padding-top:.8rem}.admin__data-grid-action-bookmarks .action-edit:before{content:'\e631'}.admin__data-grid-action-columns._active{opacity:.98;z-index:290}.admin__data-grid-action-columns .admin__action-dropdown:before{content:'\e610';font-size:1.8rem;margin-right:.7rem;vertical-align:top}.admin__data-grid-action-columns-menu{color:#303030;font-size:1.3rem;overflow:hidden;padding:2.2rem 3.5rem 1rem;z-index:1}.admin__data-grid-action-columns-menu._overflow .admin__action-dropdown-menu-header{border-bottom:1px solid #d1d1d1}.admin__data-grid-action-columns-menu._overflow .admin__action-dropdown-menu-content{width:49.2rem}.admin__data-grid-action-columns-menu._overflow .admin__action-dropdown-menu-footer{border-top:1px solid #d1d1d1;padding-top:2.5rem}.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-content{max-height:22.85rem;overflow-y:auto;padding-top:1.5rem;position:relative;width:47.4rem}.admin__data-grid-action-columns-menu .admin__field-option{float:left;height:1.9rem;margin-bottom:1.5rem;padding:0 1rem 0 0;width:15.8rem}.admin__data-grid-action-columns-menu .admin__field-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-header{padding-bottom:1.5rem}.admin__data-grid-action-columns-menu .admin__action-dropdown-menu-footer{padding:1rem 0 2rem}.admin__data-grid-action-columns-menu .admin__action-dropdown-footer-main-actions{margin-left:25%;text-align:right}.admin__data-grid-action-columns-menu .admin__action-dropdown-footer-secondary-actions{float:left;margin-left:-1em}.admin__data-grid-action-export._active{opacity:.98;z-index:290}.admin__data-grid-action-export .admin__action-dropdown:before{content:'\e635';font-size:1.7rem;left:.3rem;margin-right:.7rem;vertical-align:top}.admin__data-grid-action-export-menu{padding-left:2rem;padding-right:2rem;padding-top:1rem}.admin__data-grid-action-export-menu .admin__action-dropdown-footer-main-actions{padding-bottom:2rem;padding-top:2.5rem;white-space:nowrap}.sticky-header{background-color:#f8f8f8;border-bottom:1px solid #e3e3e3;box-shadow:0 5px 5px 0 rgba(0,0,0,.25);left:8.8rem;margin-top:-1px;padding:.5rem 3rem 0;position:fixed;right:0;top:77px;z-index:398}.sticky-header .admin__data-grid-wrap{margin-bottom:0;overflow-x:visible;padding-bottom:0}.sticky-header .admin__data-grid-header-row{position:relative;text-align:right}.sticky-header .admin__data-grid-header-row:last-child{margin:0}.sticky-header .admin__data-grid-actions-wrap,.sticky-header .admin__data-grid-filters-wrap,.sticky-header .admin__data-grid-pager-wrap,.sticky-header .data-grid-filters-actions-wrap,.sticky-header .data-grid-search-control-wrap{display:inline-block;float:none;vertical-align:top}.sticky-header .action-select-wrap{float:left;margin-right:1.5rem;width:16.66666667%}.sticky-header .admin__control-support-text{float:left}.sticky-header .data-grid-search-control-wrap{margin:-.5rem 0 0 1.1rem;width:auto}.sticky-header .data-grid-search-control-wrap .data-grid-search-label{box-sizing:border-box;cursor:pointer;display:block;min-width:3.8rem;padding:1.2rem .6rem 1.7rem;position:relative;text-align:center}.sticky-header .data-grid-search-control-wrap .data-grid-search-label:before{color:#333;content:'\e60c';font-size:2rem;transition:color .1s linear}.sticky-header .data-grid-search-control-wrap .data-grid-search-label:hover:before{color:#000}.sticky-header .data-grid-search-control-wrap .data-grid-search-label span{display:none}.sticky-header .data-grid-filters-actions-wrap{margin:-.5rem 0 0 1.1rem;padding-left:0;position:relative}.sticky-header .data-grid-filters-actions-wrap .action-default{background-color:transparent;border:1px solid transparent;box-sizing:border-box;min-width:3.8rem;padding:1.2rem .6rem 1.7rem;text-align:center;transition:all .15s ease}.sticky-header .data-grid-filters-actions-wrap .action-default span{display:none}.sticky-header .data-grid-filters-actions-wrap .action-default:before{margin:0}.sticky-header .data-grid-filters-actions-wrap .action-default._active{background-color:#fff;border-color:#adadad #adadad #fff;box-shadow:1px 1px 5px rgba(0,0,0,.5);z-index:210}.sticky-header .data-grid-filters-actions-wrap .action-default._active:after{background-color:#fff;content:'';height:6px;left:-2px;position:absolute;right:-6px;top:100%}.sticky-header .data-grid-filters-action-wrap{padding:0}.sticky-header .admin__data-grid-filters-wrap{background-color:#fff;border:1px solid #adadad;box-shadow:0 5px 5px 0 rgba(0,0,0,.25);left:0;padding-left:3.5rem;padding-right:3.5rem;position:absolute;top:100%;width:100%;z-index:209}.sticky-header .admin__data-grid-filters-current+.admin__data-grid-filters-wrap._show{margin-top:-6px}.sticky-header .filters-active{background-color:#e04f00;border-radius:10px;color:#fff;display:block;font-size:1.4rem;font-weight:700;padding:.1rem .7rem;position:absolute;right:-7px;top:0;z-index:211}.sticky-header .filters-active:empty{padding-bottom:0;padding-top:0}.sticky-header .admin__data-grid-actions-wrap{margin:-.5rem 0 0 1.1rem;padding-right:.3rem}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown{background-color:transparent;box-sizing:border-box;min-width:3.8rem;padding-left:.6rem;padding-right:.6rem;text-align:center}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown .admin__action-dropdown-text{display:inline-block;max-width:0;min-width:0;overflow:hidden}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown:before{margin:0}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown-wrap{margin-right:1.1rem}.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown-wrap:after,.sticky-header .admin__data-grid-actions-wrap .admin__action-dropdown:after{display:none}.sticky-header .admin__data-grid-actions-wrap ._active .admin__action-dropdown{background-color:#fff}.sticky-header .admin__data-grid-action-bookmarks .admin__action-dropdown:before{position:relative;top:-3px}.sticky-header .admin__data-grid-filters-current{border-bottom:0;border-top:0;margin-bottom:0;padding-bottom:0;padding-top:0}.sticky-header .admin__data-grid-pager .admin__control-text,.sticky-header .admin__data-grid-pager-wrap .admin__control-support-text,.sticky-header .data-grid-search-control-wrap .action-submit,.sticky-header .data-grid-search-control-wrap .data-grid-search-control{display:none}.sticky-header .action-next{margin:0}.sticky-header .data-grid{margin-bottom:-1px}.data-grid-cap-left,.data-grid-cap-right{background-color:#f8f8f8;bottom:-2px;position:absolute;top:6rem;width:3rem;z-index:201}.data-grid-cap-left{left:0}.admin__data-grid-header{font-size:1.4rem}.admin__data-grid-header-row+.admin__data-grid-header-row{margin-top:1.1rem}.admin__data-grid-header-row:last-child{margin-bottom:0}.admin__data-grid-header-row .action-select-wrap{display:block}.admin__data-grid-header-row .action-select{width:100%}.admin__data-grid-actions-wrap{float:right;margin-left:1.1rem;margin-top:-.5rem;text-align:right}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap{position:relative;text-align:left;vertical-align:middle}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active+.admin__action-dropdown-wrap:after,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active:after,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._hide+.admin__action-dropdown-wrap:after,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap:first-child:after{display:none}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active .admin__action-dropdown,.admin__data-grid-actions-wrap .admin__action-dropdown-wrap._active .admin__action-dropdown-menu{border-color:#adadad}.admin__data-grid-actions-wrap .admin__action-dropdown-wrap:after{border-left:1px solid #ccc;content:'';height:3.2rem;left:0;position:absolute;top:.5rem;z-index:3}.admin__data-grid-actions-wrap .admin__action-dropdown{padding-bottom:1.7rem;padding-top:1.2rem}.admin__data-grid-actions-wrap .admin__action-dropdown:after{margin-top:-.4rem}.admin__data-grid-outer-wrap{min-height:8rem;position:relative}.admin__data-grid-wrap{margin-bottom:2rem;max-width:100%;overflow-x:auto;padding-bottom:1rem;padding-top:2rem}.admin__data-grid-loading-mask{background:rgba(255,255,255,.5);bottom:0;left:0;position:absolute;right:0;top:0;z-index:399}.admin__data-grid-loading-mask .spinner{font-size:4rem;left:50%;margin-left:-2rem;margin-top:-2rem;position:absolute;top:50%}.ie9 .admin__data-grid-loading-mask .spinner{background:url(../images/loader-2.gif) 50% 50% no-repeat;bottom:0;height:149px;left:0;margin:auto;position:absolute;right:0;top:0;width:218px}.data-grid-cell-content{display:inline-block;overflow:hidden;width:100%}body._in-resize{cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}body._in-resize *,body._in-resize .data-grid-th,body._in-resize .data-grid-th._draggable,body._in-resize .data-grid-th._sortable{cursor:col-resize!important}._layout-fixed{table-layout:fixed}.data-grid{border:none;font-size:1.3rem;margin-bottom:0;width:100%}.data-grid:not(._dragging-copy) ._odd-row td._dragging{background-color:#d0d0d0}.data-grid:not(._dragging-copy) ._dragging{background-color:#d9d9d9;color:rgba(48,48,48,.95)}.data-grid:not(._dragging-copy) ._dragging a{color:rgba(0,139,219,.95)}.data-grid:not(._dragging-copy) ._dragging a:hover{color:rgba(15,167,255,.95)}.data-grid._dragged{outline:#007bdb solid 1px}.data-grid thead{background-color:transparent}.data-grid tfoot th{padding:1rem}.data-grid tr._odd-row td{background-color:#f5f5f5}.data-grid tr._odd-row td._update-status-active{background:#89e1ff}.data-grid tr._odd-row td._update-status-upcoming{background:#b7ee63}.data-grid tr:hover td._update-status-active,.data-grid tr:hover td._update-status-upcoming{background-color:#e5f7fe}.data-grid tr.data-grid-tr-no-data td{font-size:1.6rem;padding:3rem;text-align:center}.data-grid tr.data-grid-tr-no-data:hover td{background-color:#fff;cursor:default}.data-grid tr:active td{background-color:#e0f6fe}.data-grid tr:hover td{background-color:#e5f7fe}.data-grid tr._dragged td{background:#d0d0d0}.data-grid tr._dragover-top td{box-shadow:inset 0 3px 0 0 #008bdb}.data-grid tr._dragover-bottom td{box-shadow:inset 0 -3px 0 0 #008bdb}.data-grid tr:not(.data-grid-editable-row):last-child td{border-bottom:.1rem solid #d6d6d6}.data-grid tr ._clickable,.data-grid tr._clickable{cursor:pointer}.data-grid tr._disabled{pointer-events:none}.data-grid td,.data-grid th{font-size:1.3rem;line-height:1.36;transition:background-color .1s linear;vertical-align:top}.data-grid td._resizing,.data-grid th._resizing{border-left:1px solid #007bdb;border-right:1px solid #007bdb}.data-grid td._hidden,.data-grid th._hidden{display:none}.data-grid td._fit,.data-grid th._fit{width:1%}.data-grid td{background-color:#fff;border-left:.1rem dashed #d6d6d6;border-right:.1rem dashed #d6d6d6;color:#303030;padding:1rem}.data-grid td:first-child{border-left-style:solid}.data-grid td:last-child{border-right-style:solid}.data-grid td .action-select-wrap{position:static}.data-grid td .action-select{color:#008bdb;text-decoration:none;background-color:transparent;border:none;font-size:1.3rem;padding:0 3rem 0 0;position:relative}.data-grid td .action-select:hover{color:#0fa7ff;text-decoration:underline}.data-grid td .action-select:hover:after{border-color:#0fa7ff transparent transparent}.data-grid td .action-select:after{border-color:#008bdb transparent transparent;margin:.6rem 0 0 .7rem;right:auto;top:auto}.data-grid td .action-select:before{display:none}.data-grid td .abs-action-menu .action-submenu,.data-grid td .abs-action-menu .action-submenu .action-submenu,.data-grid td .action-menu,.data-grid td .action-menu .action-submenu,.data-grid td .actions-split .action-menu .action-submenu,.data-grid td .actions-split .action-menu .action-submenu .action-submenu,.data-grid td .actions-split .dropdown-menu .action-submenu,.data-grid td .actions-split .dropdown-menu .action-submenu .action-submenu{left:auto;min-width:10rem;right:0;text-align:left;top:auto;z-index:1}.data-grid td._update-status-active{background:#bceeff}.data-grid td._update-status-upcoming{background:#ccf391}.data-grid th{background-color:#514943;border:.1rem solid #8a837f;border-left-color:transparent;color:#fff;font-weight:600;padding:0;text-align:left}.data-grid th:first-child{border-left-color:#8a837f}.data-grid th._dragover-left{box-shadow:inset 3px 0 0 0 #fff;z-index:2}.data-grid th._dragover-right{box-shadow:inset -3px 0 0 0 #fff}.data-grid .shadow-div{cursor:col-resize;height:100%;margin-right:-5px;position:absolute;right:0;top:0;width:10px}.data-grid .data-grid-th{background-clip:padding-box;color:#fff;padding:1rem;position:relative;vertical-align:middle}.data-grid .data-grid-th._resize-visible .shadow-div{cursor:auto;display:none}.data-grid .data-grid-th._draggable{cursor:grab}.data-grid .data-grid-th._sortable{cursor:pointer;transition:background-color .1s linear;z-index:1}.data-grid .data-grid-th._sortable:focus,.data-grid .data-grid-th._sortable:hover{background-color:#5f564f}.data-grid .data-grid-th._sortable:active{padding-bottom:.9rem;padding-top:1.1rem}.data-grid .data-grid-th.required>span:after{color:#f38a5e;content:'*';margin-left:.3rem}.data-grid .data-grid-checkbox-cell{overflow:hidden;padding:0;vertical-align:top;width:5.2rem}.data-grid .data-grid-checkbox-cell:hover{cursor:default}.data-grid .data-grid-thumbnail-cell{text-align:center;width:7rem}.data-grid .data-grid-thumbnail-cell img{border:1px solid #d6d6d6;width:5rem}.data-grid .data-grid-multicheck-cell{padding:1rem 1rem .9rem;text-align:center;vertical-align:middle}.data-grid .data-grid-onoff-cell{text-align:center;width:12rem}.data-grid .data-grid-actions-cell{padding-left:2rem;padding-right:2rem;text-align:center;width:1%}.data-grid._hidden{display:none}.data-grid._dragging-copy{box-shadow:1px 1px 5px rgba(0,0,0,.5);left:0;opacity:.95;position:fixed;top:0;z-index:1000}.data-grid._dragging-copy .data-grid-th{border:1px solid #007bdb;border-bottom:none}.data-grid._dragging-copy .data-grid-th,.data-grid._dragging-copy .data-grid-th._sortable{cursor:grabbing}.data-grid._dragging-copy tr:last-child td{border-bottom:1px solid #007bdb}.data-grid._dragging-copy td{border-left:1px solid #007bdb;border-right:1px solid #007bdb}.data-grid._dragging-copy._in-edit .data-grid-editable-row.data-grid-bulk-edit-panel td,.data-grid._dragging-copy._in-edit .data-grid-editable-row.data-grid-bulk-edit-panel td:before,.data-grid._dragging-copy._in-edit .data-grid-editable-row.data-grid-bulk-edit-panel:hover td{background-color:rgba(255,251,230,.95)}.data-grid._dragging-copy._in-edit .data-grid-editable-row td,.data-grid._dragging-copy._in-edit .data-grid-editable-row:hover td{background-color:rgba(255,255,255,.95)}.data-grid._dragging-copy._in-edit .data-grid-editable-row td:after,.data-grid._dragging-copy._in-edit .data-grid-editable-row td:before{left:0;right:0}.data-grid._dragging-copy._in-edit .data-grid-editable-row td:before{background-color:rgba(255,255,255,.95)}.data-grid._dragging-copy._in-edit .data-grid-editable-row td:only-child{border-left:1px solid #007bdb;border-right:1px solid #007bdb;left:0}.data-grid._dragging-copy._in-edit .data-grid-editable-row .admin__control-select,.data-grid._dragging-copy._in-edit .data-grid-editable-row .admin__control-text{opacity:.5}.data-grid .data-grid-controls-row td{padding-top:1.6rem}.data-grid .data-grid-controls-row td.data-grid-checkbox-cell{padding-top:.6rem}.data-grid .data-grid-controls-row td [class*=admin__control-],.data-grid .data-grid-controls-row td button{margin-top:-1.7rem}.data-grid._in-edit tr:hover td{background-color:#e6e6e6}.data-grid._in-edit ._odd-row.data-grid-editable-row td,.data-grid._in-edit ._odd-row.data-grid-editable-row:hover td{background-color:#fff}.data-grid._in-edit ._odd-row td,.data-grid._in-edit ._odd-row:hover td{background-color:#dcdcdc}.data-grid._in-edit .data-grid-editable-row-actions td,.data-grid._in-edit .data-grid-editable-row-actions:hover td{background-color:#fff}.data-grid._in-edit td{background-color:#e6e6e6;pointer-events:none}.data-grid._in-edit .data-grid-checkbox-cell{pointer-events:auto}.data-grid._in-edit .data-grid-editable-row{border:.1rem solid #adadad;border-bottom-color:#c2c2c2}.data-grid._in-edit .data-grid-editable-row:hover td{background-color:#fff}.data-grid._in-edit .data-grid-editable-row td{background-color:#fff;border-bottom-color:#fff;border-left-style:hidden;border-right-style:hidden;border-top-color:#fff;pointer-events:auto;vertical-align:middle}.data-grid._in-edit .data-grid-editable-row td:first-child{border-left-color:#adadad;border-left-style:solid}.data-grid._in-edit .data-grid-editable-row td:first-child:after,.data-grid._in-edit .data-grid-editable-row td:first-child:before{left:0}.data-grid._in-edit .data-grid-editable-row td:last-child{border-right-color:#adadad;border-right-style:solid;left:-.1rem}.data-grid._in-edit .data-grid-editable-row td:last-child:after,.data-grid._in-edit .data-grid-editable-row td:last-child:before{right:0}.data-grid._in-edit .data-grid-editable-row .admin__control-select,.data-grid._in-edit .data-grid-editable-row .admin__control-text{width:100%}.data-grid._in-edit .data-grid-bulk-edit-panel td{vertical-align:bottom}.data-grid .data-grid-editable-row td{border-left-color:#fff;border-left-style:solid;position:relative;z-index:1}.data-grid .data-grid-editable-row td:after{bottom:0;box-shadow:0 5px 5px rgba(0,0,0,.25);content:'';height:.9rem;left:0;margin-top:-1rem;position:absolute;right:0}.data-grid .data-grid-editable-row td:before{background-color:#fff;bottom:0;content:'';height:1rem;left:-10px;position:absolute;right:-10px;z-index:1}.data-grid .data-grid-editable-row.data-grid-editable-row-actions td,.data-grid .data-grid-editable-row.data-grid-editable-row-actions:hover td{background-color:#fff}.data-grid .data-grid-editable-row.data-grid-editable-row-actions td:first-child{border-left-color:#fff;border-right-color:#fff}.data-grid .data-grid-editable-row.data-grid-editable-row-actions td:last-child{left:0}.data-grid .data-grid-editable-row.data-grid-bulk-edit-panel td,.data-grid .data-grid-editable-row.data-grid-bulk-edit-panel td:before,.data-grid .data-grid-editable-row.data-grid-bulk-edit-panel:hover td{background-color:#fffbe6}.data-grid .data-grid-editable-row-actions{left:50%;margin-left:-12.5rem;margin-top:-2px;position:absolute;text-align:center}.data-grid .data-grid-editable-row-actions td{width:25rem}.data-grid .data-grid-editable-row-actions [class*=action-]{min-width:9rem}.data-grid .data-grid-draggable-row-cell{width:1%}.data-grid .data-grid-draggable-row-cell .draggable-handle{padding:0}.data-grid-th._sortable._ascend,.data-grid-th._sortable._descend{padding-right:2.7rem}.data-grid-th._sortable._ascend:before,.data-grid-th._sortable._descend:before{margin-top:-1em;position:absolute;right:1rem;top:50%}.data-grid-th._sortable._ascend:before{content:'\2193'}.data-grid-th._sortable._descend:before{content:'\2191'}.data-grid-checkbox-cell-inner{display:block;padding:1.1rem 1.8rem .9rem;text-align:right}.data-grid-checkbox-cell-inner:hover{cursor:pointer}.data-grid-state-cell-inner{display:block;padding:1.1rem 1.8rem .9rem;text-align:center}.data-grid-state-cell-inner>span{display:inline-block;font-style:italic;padding:.6rem 0}.data-grid-row-parent._active>td .data-grid-checkbox-cell-inner:before{content:'\e62b'}.data-grid-row-parent>td .data-grid-checkbox-cell-inner{padding-left:3.7rem;position:relative}.data-grid-row-parent>td .data-grid-checkbox-cell-inner:before{content:'\e628';font-size:1rem;font-weight:700;left:1.35rem;position:absolute;top:1.6rem}.data-grid-th._col-xs{width:1%}.data-grid-info-panel{box-shadow:0 0 5px rgba(0,0,0,.5);margin:2rem .1rem -2rem}.data-grid-info-panel .messages{overflow:hidden}.data-grid-info-panel .messages .message{margin:1rem}.data-grid-info-panel .messages .message:last-child{margin-bottom:1rem}.data-grid-info-panel-actions{padding:1rem;text-align:right}.data-grid-editable-row .admin__field-control{position:relative}.data-grid-editable-row .admin__field-control._error:after{border-color:transparent #ee7d7d transparent transparent;border-style:solid;border-width:0 12px 12px 0;content:'';position:absolute;right:0;top:0}.data-grid-editable-row .admin__field-control._error .admin__control-text{border-color:#ee7d7d}.data-grid-editable-row .admin__field-control._focus:after{display:none}.data-grid-editable-row .admin__field-error{bottom:100%;box-shadow:1px 1px 5px rgba(0,0,0,.5);left:0;margin:0 auto 1.5rem;max-width:32rem;position:absolute;right:0}.data-grid-editable-row .admin__field-error:after,.data-grid-editable-row .admin__field-error:before{border-style:solid;content:'';left:50%;position:absolute;top:100%}.data-grid-editable-row .admin__field-error:after{border-color:#fffbbb transparent transparent;border-width:10px 10px 0;margin-left:-10px;z-index:1}.data-grid-editable-row .admin__field-error:before{border-color:#ee7d7d transparent transparent;border-width:11px 12px 0;margin-left:-12px}.data-grid-bulk-edit-panel .admin__field-label-vertical{display:block;font-size:1.2rem;margin-bottom:.5rem;text-align:left}.data-grid-row-changed{cursor:default;display:block;opacity:.5;position:relative;width:100%;z-index:1}.data-grid-row-changed:after{content:'\e631';display:inline-block}.data-grid-row-changed .data-grid-row-changed-tooltip{background:#f1f1f1;border:1px solid #f1f1f1;border-radius:1px;bottom:100%;box-shadow:0 3px 9px 0 rgba(0,0,0,.3);display:none;font-weight:400;line-height:1.36;margin-bottom:1.5rem;padding:1rem;position:absolute;right:-1rem;text-transform:none;width:27rem;word-break:normal;z-index:2}.data-grid-row-changed._changed{opacity:1;z-index:3}.data-grid-row-changed._changed:hover .data-grid-row-changed-tooltip{display:block}.data-grid-row-changed._changed:hover:before{background:#f1f1f1;border:1px solid #f1f1f1;bottom:100%;box-shadow:4px 4px 3px -1px rgba(0,0,0,.15);content:'';display:block;height:1.6rem;left:50%;margin:0 0 .7rem -.8rem;position:absolute;-ms-transform:rotate(45deg);transform:rotate(45deg);width:1.6rem;z-index:3}.ie9 .data-grid-row-changed._changed:hover:before{display:none}.admin__data-grid-outer-wrap .data-grid-checkbox-cell{overflow:hidden}.admin__data-grid-outer-wrap .data-grid-checkbox-cell-inner{position:relative}.admin__data-grid-outer-wrap .data-grid-checkbox-cell-inner:before{bottom:0;content:'';height:500%;left:0;position:absolute;right:0;top:0}.admin__data-grid-wrap-static .data-grid-checkbox-cell:hover{cursor:pointer}.admin__data-grid-wrap-static .data-grid-checkbox-cell-inner{margin:1.1rem 1.8rem .9rem;padding:0}.adminhtml-cms-hierarchy-index .admin__data-grid-wrap-static .data-grid-actions-cell:first-child{padding:0}.adminhtml-export-index .admin__data-grid-wrap-static .data-grid-checkbox-cell-inner{margin:0;padding:1.1rem 1.8rem 1.9rem}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child:before,.admin__control-file-label:before,.admin__control-multiselect,.admin__control-select,.admin__control-text,.admin__control-textarea,.selectmenu{-webkit-appearance:none;background-color:#fff;border:1px solid #adadad;border-radius:1px;box-shadow:none;color:#303030;font-size:1.4rem;font-weight:400;height:auto;line-height:1.36;padding:.6rem 1rem;transition:border-color .1s linear;vertical-align:baseline;width:auto}.admin__control-addon [class*=admin__control-][class]:hover~[class*=admin__addon-]:last-child:before,.admin__control-multiselect:hover,.admin__control-select:hover,.admin__control-text:hover,.admin__control-textarea:hover,.selectmenu:hover,.selectmenu:hover .selectmenu-toggle:before{border-color:#878787}.admin__control-addon [class*=admin__control-][class]:focus~[class*=admin__addon-]:last-child:before,.admin__control-file:active+.admin__control-file-label:before,.admin__control-file:focus+.admin__control-file-label:before,.admin__control-multiselect:focus,.admin__control-select:focus,.admin__control-text:focus,.admin__control-textarea:focus,.selectmenu._focus,.selectmenu._focus .selectmenu-toggle:before{border-color:#007bdb;box-shadow:none;outline:0}.admin__control-addon [class*=admin__control-][class][disabled]~[class*=admin__addon-]:last-child:before,.admin__control-file[disabled]+.admin__control-file-label:before,.admin__control-multiselect[disabled],.admin__control-select[disabled],.admin__control-text[disabled],.admin__control-textarea[disabled]{background-color:#e9e9e9;border-color:#adadad;color:#303030;cursor:not-allowed;opacity:.5}.admin__field-row[class]>.admin__field-control,.admin__fieldset>.admin__field.admin__field-wide[class]>.admin__field-control{clear:left;float:none;text-align:left;width:auto}.admin__field-row[class]:not(.admin__field-option)>.admin__field-label,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)>.admin__field-label{display:block;line-height:1.4rem;margin-bottom:.86rem;margin-top:-.14rem;text-align:left;width:auto}.admin__field-row[class]:not(.admin__field-option)>.admin__field-label:before,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)>.admin__field-label:before{display:none}.admin__field-row[class]:not(.admin__field-option)._required>.admin__field-label span,.admin__field-row[class]:not(.admin__field-option).required>.admin__field-label span,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)._required>.admin__field-label span,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option).required>.admin__field-label span{padding-left:1.5rem}.admin__field-row[class]:not(.admin__field-option)._required>.admin__field-label span:after,.admin__field-row[class]:not(.admin__field-option).required>.admin__field-label span:after,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option)._required>.admin__field-label span:after,.admin__fieldset>.admin__field.admin__field-wide[class]:not(.admin__field-option).required>.admin__field-label span:after{left:0;margin-left:30px}.admin__legend{font-size:1.8rem;font-weight:600;margin-bottom:3rem}.admin__control-checkbox,.admin__control-radio{cursor:pointer;opacity:.01;overflow:hidden;position:absolute;vertical-align:top}.admin__control-checkbox:after,.admin__control-radio:after{display:none}.admin__control-checkbox+label,.admin__control-radio+label{cursor:pointer;display:inline-block}.admin__control-checkbox+label:before,.admin__control-radio+label:before{background-color:#fff;border:1px solid #adadad;color:transparent;float:left;height:1.6rem;text-align:center;vertical-align:top;width:1.6rem}.admin__control-checkbox+.admin__field-label,.admin__control-radio+.admin__field-label{padding-left:2.6rem}.admin__control-checkbox+.admin__field-label:before,.admin__control-radio+.admin__field-label:before{margin:1px 1rem 0 -2.6rem}.admin__control-checkbox:checked+label:before,.admin__control-radio:checked+label:before{color:#514943}.admin__control-checkbox.disabled+label,.admin__control-checkbox[disabled]+label,.admin__control-radio.disabled+label,.admin__control-radio[disabled]+label{color:#303030;cursor:default;opacity:.5}.admin__control-checkbox.disabled+label:before,.admin__control-checkbox[disabled]+label:before,.admin__control-radio.disabled+label:before,.admin__control-radio[disabled]+label:before{background-color:#e9e9e9;border-color:#adadad;cursor:default}._keyfocus .admin__control-checkbox:not(.disabled):focus+label:before,._keyfocus .admin__control-checkbox:not([disabled]):focus+label:before,._keyfocus .admin__control-radio:not(.disabled):focus+label:before,._keyfocus .admin__control-radio:not([disabled]):focus+label:before{border-color:#007bdb}.admin__control-checkbox:not(.disabled):hover+label:before,.admin__control-checkbox:not([disabled]):hover+label:before,.admin__control-radio:not(.disabled):hover+label:before,.admin__control-radio:not([disabled]):hover+label:before{border-color:#878787}.admin__control-radio+label:before{border-radius:1.6rem;content:'';transition:border-color .1s linear,color .1s ease-in}.admin__control-radio.admin__control-radio+label:before{line-height:140%}.admin__control-radio:checked+label{position:relative}.admin__control-radio:checked+label:after{background-color:#514943;border-radius:50%;content:'';height:10px;left:3px;position:absolute;top:4px;width:10px}.admin__control-radio:checked:not(.disabled):hover,.admin__control-radio:checked:not(.disabled):hover+label,.admin__control-radio:checked:not([disabled]):hover,.admin__control-radio:checked:not([disabled]):hover+label{cursor:default}.admin__control-radio:checked:not(.disabled):hover+label:before,.admin__control-radio:checked:not([disabled]):hover+label:before{border-color:#adadad}.admin__control-checkbox+label:before{border-radius:1px;content:'';font-size:0;transition:font-size .1s ease-out,color .1s ease-out,border-color .1s linear}.admin__control-checkbox:checked+label:before{content:'\e62d';font-size:1.1rem;line-height:125%}.admin__control-checkbox:not(:checked)._indeterminate+label:before,.admin__control-checkbox:not(:checked):indeterminate+label:before{color:#514943;content:'-';font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:700}input[type=checkbox].admin__control-checkbox,input[type=radio].admin__control-checkbox{margin:0;position:absolute}.admin__control-text{min-width:4rem}.admin__control-select{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;background-image:url(../images/arrows-bg.svg),linear-gradient(#e3e3e3,#e3e3e3),linear-gradient(#adadad,#adadad);background-position:calc(100% - 12px) -34px,100%,calc(100% - 3.2rem) 0;background-size:auto,3.2rem 100%,1px 100%;background-repeat:no-repeat;max-width:100%;min-width:8.5rem;padding-bottom:.5rem;padding-right:4.4rem;padding-top:.5rem;transition:border-color .1s linear}.admin__control-select:hover{border-color:#878787;cursor:pointer}.admin__control-select:focus{background-image:url(../images/arrows-bg.svg),linear-gradient(#e3e3e3,#e3e3e3),linear-gradient(#007bdb,#007bdb);background-position:calc(100% - 12px) 13px,100%,calc(100% - 3.2rem) 0;border-color:#007bdb}.admin__control-select::-ms-expand{display:none}.ie9 .admin__control-select{background-image:none;padding-right:1rem}option:empty{display:none}.admin__control-multiselect{height:auto;max-width:100%;min-width:15rem;overflow:auto;padding:0;resize:both}.admin__control-multiselect optgroup,.admin__control-multiselect option{padding:.5rem 1rem}.admin__control-file-wrapper{display:inline-block;padding:.5rem 1rem;position:relative;z-index:1}.admin__control-file-label:before{content:'';left:0;position:absolute;top:0;width:100%;z-index:0}.admin__control-file{background:0 0;border:0;padding-top:.7rem;position:relative;width:auto;z-index:1}.admin__control-support-text{border:1px solid transparent;display:inline-block;font-size:1.4rem;line-height:1.36;padding-bottom:.6rem;padding-top:.6rem}.admin__control-support-text+[class*=admin__control-],[class*=admin__control-]+.admin__control-support-text{margin-left:.7rem}.admin__control-service{float:left;margin:.8rem 0 0 3rem}.admin__control-textarea{height:8.48rem;line-height:1.18;padding-top:.8rem;resize:vertical}.admin__control-addon{-ms-flex-direction:row;flex-direction:row;display:inline-flex;-ms-flex-flow:row nowrap;flex-flow:row nowrap;position:relative;width:100%;z-index:1}.admin__control-addon>[class*=admin__addon-],.admin__control-addon>[class*=admin__control-]{-ms-flex-preferred-size:auto;flex-basis:auto;-webkit-flex-grow:0;-ms-flex-positive:0;flex-grow:0;-ms-flex-negative:0;flex-shrink:0;position:relative;z-index:1}.admin__control-addon .admin__control-select{width:auto}.admin__control-addon .admin__control-text{margin:.1rem;padding:.5rem .9rem;width:100%}.admin__control-addon [class*=admin__control-][class]{appearence:none;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;-ms-flex-order:1;order:1;-ms-flex-negative:1;flex-shrink:1;background-color:transparent;border-color:transparent;box-shadow:none;vertical-align:top}.admin__control-addon [class*=admin__control-][class]+[class*=admin__control-]{border-left-color:#adadad}.admin__control-addon [class*=admin__control-][class] :focus{box-shadow:0}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child{padding-left:1rem;position:static!important;z-index:0}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child>*{position:relative;vertical-align:top;z-index:1}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child:empty{padding:0}.admin__control-addon [class*=admin__control-][class]~[class*=admin__addon-]:last-child:before{bottom:0;box-sizing:border-box;content:'';left:0;position:absolute;top:0;width:100%;z-index:-1}.admin__addon-prefix,.admin__addon-suffix{border:0;box-sizing:border-box;color:#858585;display:inline-block;font-size:1.4rem;font-weight:400;height:3.2rem;line-height:3.2rem;padding:0}.admin__addon-suffix{-ms-flex-order:3;order:3}.admin__addon-suffix:last-child{padding-right:1rem}.admin__addon-prefix{-ms-flex-order:0;order:0}.ie9 .admin__control-addon:after{clear:both;content:'';display:block;height:0;overflow:hidden}.ie9 .admin__addon{min-width:0;overflow:hidden;text-align:right;white-space:nowrap;width:auto}.ie9 .admin__addon [class*=admin__control-]{display:inline}.ie9 .admin__addon-prefix{float:left}.ie9 .admin__addon-suffix{float:right}.admin__control-collapsible{width:100%}.admin__control-collapsible ._dragged .admin__collapsible-block-wrapper .admin__collapsible-title{background:#d0d0d0}.admin__control-collapsible ._dragover-bottom .admin__collapsible-block-wrapper:before,.admin__control-collapsible ._dragover-top .admin__collapsible-block-wrapper:before{background:#008bdb;content:'';display:block;height:3px;left:0;position:absolute;right:0}.admin__control-collapsible ._dragover-top .admin__collapsible-block-wrapper:before{top:-3px}.admin__control-collapsible ._dragover-bottom .admin__collapsible-block-wrapper:before{bottom:-3px}.admin__control-collapsible .admin__collapsible-block-wrapper.fieldset-wrapper{border:0;margin:0;position:relative}.admin__control-collapsible .admin__collapsible-block-wrapper.fieldset-wrapper .fieldset-wrapper-title{background:#f8f8f8;border:2px solid #ccc}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .admin__collapsible-title{font-size:1.4rem;font-weight:400;line-height:1;padding:1.6rem 4rem 1.6rem 3.8rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .admin__collapsible-title:before{left:1rem;right:auto;top:1.4rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete{background-color:transparent;border-color:transparent;box-shadow:none;padding:0;position:absolute;right:1rem;top:1.4rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:hover{background-color:transparent;border-color:transparent;box-shadow:none}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete:before{content:'\e630';font-size:2rem}.admin__control-collapsible .admin__collapsible-block-wrapper .fieldset-wrapper-title .action-delete>span{display:none}.admin__control-collapsible .admin__collapsible-content{background-color:#fff;margin-bottom:1rem}.admin__control-collapsible .admin__collapsible-content>.fieldset-wrapper{border:1px solid #ccc;margin-top:-1px;padding:1rem}.admin__control-collapsible .admin__collapsible-content .admin__fieldset{padding:0}.admin__control-collapsible .admin__collapsible-content .admin__field:last-child{margin-bottom:0}.admin__control-table-wrapper{max-width:100%;overflow-x:auto;overflow-y:hidden}.admin__control-table{width:100%}.admin__control-table thead{background-color:transparent}.admin__control-table tbody td{vertical-align:top}.admin__control-table tfoot th{padding-bottom:1.3rem}.admin__control-table tfoot th.validation{padding-bottom:0;padding-top:0}.admin__control-table tfoot td{border-top:1px solid #fff}.admin__control-table tfoot .admin__control-table-pagination{float:right;padding-bottom:0}.admin__control-table tfoot .action-previous{margin-right:.5rem}.admin__control-table tfoot .action-next{margin-left:.9rem}.admin__control-table tr:last-child td{border-bottom:none}.admin__control-table tr._dragover-top td{box-shadow:inset 0 3px 0 0 #008bdb}.admin__control-table tr._dragover-bottom td{box-shadow:inset 0 -3px 0 0 #008bdb}.admin__control-table tr._dragged td,.admin__control-table tr._dragged th{background:#d0d0d0}.admin__control-table td,.admin__control-table th{background-color:#efefef;border:0;border-bottom:1px solid #fff;padding:1.3rem 1rem 1.3rem 0;text-align:left;vertical-align:top}.admin__control-table td:first-child,.admin__control-table th:first-child{padding-left:1rem}.admin__control-table td>.admin__control-select,.admin__control-table td>.admin__control-text,.admin__control-table th>.admin__control-select,.admin__control-table th>.admin__control-text{width:100%}.admin__control-table td._hidden,.admin__control-table th._hidden{display:none}.admin__control-table td._fit,.admin__control-table th._fit{width:1px}.admin__control-table th{color:#303030;font-size:1.4rem;font-weight:600;vertical-align:bottom}.admin__control-table th._required span:after{color:#eb5202;content:'*'}.admin__control-table .control-table-actions-th{white-space:nowrap}.admin__control-table .control-table-actions-cell{padding-top:1.8rem;text-align:center;width:1%}.admin__control-table .control-table-options-th{text-align:center;width:10rem}.admin__control-table .control-table-options-cell{text-align:center}.admin__control-table .control-table-text{line-height:3.2rem}.admin__control-table .col-draggable{padding-top:2.2rem;width:1%}.admin__control-table .action-delete{background-color:transparent;border-color:transparent;box-shadow:none;padding-left:0;padding-right:0}.admin__control-table .action-delete:hover{background-color:transparent;border-color:transparent;box-shadow:none}.admin__control-table .action-delete:before{content:'\e630';font-size:2rem}.admin__control-table .action-delete>span{display:none}.admin__control-table .draggable-handle{padding:0}.admin__control-table._dragged{outline:#007bdb solid 1px}.admin__control-table-action{background-color:#efefef;border-top:1px solid #fff;padding:1.3rem 1rem}.admin__dynamic-rows._dragged{opacity:.95;position:absolute;z-index:999}.admin__dynamic-rows.admin__control-table .admin__control-fields>.admin__field{border:0;padding:0}.admin__dynamic-rows td>.admin__field{border:0;margin:0;padding:0}.admin__control-table-pagination{padding-bottom:1rem}.admin__control-table-pagination .admin__data-grid-pager{float:right}.admin__field-tooltip{display:inline-block;margin-top:.5rem;max-width:45px;overflow:visible;vertical-align:top;width:0}.admin__field-tooltip:hover{position:relative;z-index:500}.admin__field-option .admin__field-tooltip{margin-top:.5rem}.admin__field-tooltip .admin__field-tooltip-action{margin-left:2rem;position:relative;z-index:2;display:inline-block;text-decoration:none}.admin__field-tooltip .admin__field-tooltip-action:before{-webkit-font-smoothing:antialiased;font-size:2.2rem;line-height:1;color:#514943;content:'\e633';font-family:Icons;vertical-align:middle;display:inline-block;font-weight:400;overflow:hidden;speak:none;text-align:center}.admin__field-tooltip .admin__control-text:focus+.admin__field-tooltip-content,.admin__field-tooltip:hover .admin__field-tooltip-content{display:block}.admin__field-tooltip .admin__field-tooltip-content{bottom:3.8rem;display:none;right:-2.3rem}.admin__field-tooltip .admin__field-tooltip-content:after,.admin__field-tooltip .admin__field-tooltip-content:before{border:1.6rem solid transparent;height:0;width:0;border-top-color:#afadac;content:'';display:block;position:absolute;right:2rem;top:100%;z-index:3}.admin__field-tooltip .admin__field-tooltip-content:after{border-top-color:#fffbbb;margin-top:-1px;z-index:4}.abs-admin__field-tooltip-content,.admin__field-tooltip .admin__field-tooltip-content{box-shadow:0 2px 8px 0 rgba(0,0,0,.3);background:#fffbbb;border:1px solid #afadac;border-radius:1px;padding:1.5rem 2.5rem;position:absolute;width:32rem;z-index:1}.admin__field-fallback-reset{font-size:1.25rem;white-space:nowrap;width:30px}.admin__field-fallback-reset>span{margin-left:.5rem;position:relative}.admin__field-fallback-reset:active{-ms-transform:scale(0.98);transform:scale(0.98)}.admin__field-fallback-reset:before{transition:color .1s linear;content:'\e642';font-size:1.3rem;margin-left:.5rem}.admin__field-fallback-reset:hover{cursor:pointer;text-decoration:none}.admin__field-fallback-reset:focus{background:0 0}.abs-field-size-x-small,.abs-field-sizes.admin__field-x-small>.admin__field-control,.admin__field.admin__field-x-small>.admin__field-control,.admin__fieldset>.admin__field.admin__field-x-small>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-x-small>.admin__field-control{width:8rem}.abs-field-size-small,.abs-field-sizes.admin__field-small>.admin__field-control,.admin__control-grouped-date>.admin__field-date.admin__field>.admin__field-control,.admin__field.admin__field-small>.admin__field-control,.admin__fieldset>.admin__field.admin__field-small>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-small>.admin__field-control{width:15rem}.abs-field-size-medium,.abs-field-sizes.admin__field-medium>.admin__field-control,.admin__field.admin__field-medium>.admin__field-control,.admin__fieldset>.admin__field.admin__field-medium>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-medium>.admin__field-control{width:34rem}.abs-field-size-large,.abs-field-sizes.admin__field-large>.admin__field-control,.admin__field.admin__field-large>.admin__field-control,.admin__fieldset>.admin__field.admin__field-large>.admin__field-control,[class*=admin__control-grouped]>.admin__field.admin__field-large>.admin__field-control{width:64rem}.abs-field-no-label,.admin__field-group-additional,.admin__field-no-label,.admin__fieldset>.admin__field.admin__field-no-label>.admin__field-control{margin-left:calc((100%) * .25 + 30px)}.admin__fieldset{border:0;margin:0;min-width:0;padding:0}.admin__fieldset .fieldset-wrapper.admin__fieldset-section>.fieldset-wrapper-title{padding-left:1rem}.admin__fieldset .fieldset-wrapper.admin__fieldset-section>.fieldset-wrapper-title strong{font-size:1.7rem;font-weight:600}.admin__fieldset .fieldset-wrapper.admin__fieldset-section .admin__fieldset-wrapper-content>.admin__fieldset{padding-top:1rem}.admin__fieldset .fieldset-wrapper.admin__fieldset-section:last-child .admin__fieldset-wrapper-content>.admin__fieldset{padding-bottom:0}.admin__fieldset>.admin__field{border:0;margin:0 0 0 -30px;padding:0}.admin__fieldset>.admin__field:after{clear:both;content:'';display:table}.admin__fieldset>.admin__field>.admin__field-control{width:calc((100%) * .5 - 30px);float:left;margin-left:30px}.admin__fieldset>.admin__field>.admin__field-label{width:calc((100%) * .25 - 30px);float:left;margin-left:30px}.admin__fieldset>.admin__field.admin__field-no-label>.admin__field-label{display:none}.admin__fieldset>.admin__field+.admin__field._empty._no-header{margin-top:-3rem}.admin__fieldset-product-websites{position:relative;z-index:300}.admin__fieldset-note{margin-bottom:2rem}.admin__form-field{border:0;margin:0;padding:0}.admin__field-control .admin__control-text,.admin__field-control .admin__control-textarea,.admin__form-field-control .admin__control-text,.admin__form-field-control .admin__control-textarea{width:100%}.admin__field-label{color:#303030;cursor:pointer;margin:0;text-align:right}.admin__field-label+br{display:none}.admin__field:not(.admin__field-option)>.admin__field-label{font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.4rem;font-weight:600;line-height:3.2rem;padding:0;white-space:nowrap}.admin__field:not(.admin__field-option)>.admin__field-label:before{opacity:0;visibility:hidden;content:'.';margin-left:-7px;overflow:hidden}.admin__field:not(.admin__field-option)>.admin__field-label span{display:inline-block;line-height:1.2;vertical-align:middle;white-space:normal}.admin__field:not(.admin__field-option)>.admin__field-label span[data-config-scope]{position:relative}._required>.admin__field-label>span:after,.required>.admin__field-label>span:after{color:#eb5202;content:'*';display:inline-block;font-size:1.6rem;font-weight:500;line-height:1;margin-left:10px;margin-top:.2rem;position:absolute;z-index:1}._disabled>.admin__field-label{color:#999;cursor:default}.admin__field{margin-bottom:0}.admin__field+.admin__field{margin-top:1.5rem}.admin__field:not(.admin__field-option)~.admin__field-option{margin-top:.5rem}.admin__field.admin__field-option~.admin__field-option{margin-top:.9rem}.admin__field~.admin__field-option:last-child{margin-bottom:.8rem}.admin__fieldset>.admin__field{margin-bottom:3rem;position:relative}.admin__field legend.admin__field-label{opacity:0}.admin__field[data-config-scope]:before{color:gray;content:attr(data-config-scope);display:inline-block;font-size:1.2rem;left:calc((100%) * .75 - 30px);line-height:3.2rem;margin-left:60px;position:absolute;width:calc((100%) * .25 - 30px)}.admin__field-control .admin__field[data-config-scope]:nth-child(n+2):before{content:''}.admin__field._error .admin__field-control [class*=admin__addon-]:before,.admin__field._error .admin__field-control [class*=admin__control-] [class*=admin__addon-]:before,.admin__field._error .admin__field-control>[class*=admin__control-]{border-color:#e22626}.admin__field._disabled,.admin__field._disabled:hover{box-shadow:inherit;cursor:inherit;opacity:1;outline:inherit}.admin__field._hidden{display:none}.admin__field-control+.admin__field-control{margin-top:1.5rem}.admin__field-control._with-tooltip>.admin__control-addon,.admin__field-control._with-tooltip>.admin__control-select,.admin__field-control._with-tooltip>.admin__control-text,.admin__field-control._with-tooltip>.admin__control-textarea,.admin__field-control._with-tooltip>.admin__field-option{max-width:calc(100% - 45px - 4px)}.admin__field-control._with-tooltip .admin__field-tooltip{width:auto}.admin__field-control._with-tooltip .admin__field-option{display:inline-block}.admin__field-control._with-reset>.admin__control-addon,.admin__field-control._with-reset>.admin__control-text,.admin__field-control._with-reset>.admin__control-textarea{width:calc(100% - 30px - .5rem - 4px)}.admin__field-control._with-reset .admin__field-fallback-reset{margin-left:.5rem;margin-top:1rem;vertical-align:top}.admin__field-control._with-reset._with-tooltip>.admin__control-addon,.admin__field-control._with-reset._with-tooltip>.admin__control-text,.admin__field-control._with-reset._with-tooltip>.admin__control-textarea{width:calc(100% - 30px - .5rem - 45px - 8px)}.admin__fieldset>.admin__field-collapsible{margin-bottom:0}.admin__fieldset>.admin__field-collapsible .admin__field-control{border-top:1px solid #ccc;display:block;font-size:1.7rem;font-weight:700;padding:1.7rem 0;width:calc(97%)}.admin__fieldset>.admin__field-collapsible .admin__field-option{padding-top:0}.admin__field-collapsible+div{margin-top:2.5rem}.admin__field-collapsible .admin__control-radio+label:before{height:1.8rem;width:1.8rem}.admin__field-collapsible .admin__control-radio:checked+label:after{left:4px;top:5px}.admin__field-error{background:#fffbbb;border:1px solid #ee7d7d;box-sizing:border-box;color:#555;display:block;font-size:1.2rem;font-weight:400;line-height:1.2;margin:.2rem 0 0;padding:.8rem 1rem .9rem}.admin__field-note{color:#303030;font-size:1.2rem;margin:10px 0 0;padding:0}.admin__additional-info{padding-top:1rem}.admin__field-option{padding-top:.8rem}.admin__field-option .admin__field-label{text-align:left}.admin__field-control>.admin__field-option:nth-child(1):nth-last-child(2),.admin__field-control>.admin__field-option:nth-child(2):nth-last-child(1){display:inline-block}.admin__field-control>.admin__field-option:nth-child(1):nth-last-child(2)+.admin__field-option,.admin__field-control>.admin__field-option:nth-child(2):nth-last-child(1)+.admin__field-option{display:inline-block;margin-left:41px;margin-top:0}.admin__field-control>.admin__field-option:nth-child(1):nth-last-child(2)+.admin__field-option:before,.admin__field-control>.admin__field-option:nth-child(2):nth-last-child(1)+.admin__field-option:before{background:#cacaca;content:'';display:inline-block;height:20px;margin-left:-20px;position:absolute;width:1px}.admin__field-value{padding-top:.8rem}.admin__field-service{padding-top:1rem}.admin__control-fields>.admin__field:first-child,[class*=admin__control-grouped]>.admin__field:first-child{position:static}.admin__control-fields>.admin__field:first-child>.admin__field-label,[class*=admin__control-grouped]>.admin__field:first-child>.admin__field-label{width:calc((100%) * .25 - 30px);float:left;margin-left:30px;background:#fff;cursor:pointer;left:0;position:absolute;top:0}.admin__control-fields>.admin__field:first-child>.admin__field-label span:before,[class*=admin__control-grouped]>.admin__field:first-child>.admin__field-label span:before{display:block}.admin__control-fields>.admin__field._disabled>.admin__field-label,[class*=admin__control-grouped]>.admin__field._disabled>.admin__field-label{cursor:default}.admin__control-fields>.admin__field>.admin__field-label span:before,[class*=admin__control-grouped]>.admin__field>.admin__field-label span:before{display:none}.admin__control-fields .admin__field-label~.admin__field-control{width:100%}.admin__control-fields .admin__field-option{padding-top:0}[class*=admin__control-grouped]{box-sizing:border-box;display:table;width:100%}[class*=admin__control-grouped]>.admin__field{display:table-cell;vertical-align:top}[class*=admin__control-grouped]>.admin__field>.admin__field-control{float:none;width:100%}[class*=admin__control-grouped]>.admin__field.admin__field-default,[class*=admin__control-grouped]>.admin__field.admin__field-large,[class*=admin__control-grouped]>.admin__field.admin__field-medium,[class*=admin__control-grouped]>.admin__field.admin__field-small,[class*=admin__control-grouped]>.admin__field.admin__field-x-small{width:1px}[class*=admin__control-grouped]>.admin__field.admin__field-default+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-large+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-medium+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-small+.admin__field:last-child,[class*=admin__control-grouped]>.admin__field.admin__field-x-small+.admin__field:last-child{width:auto}[class*=admin__control-grouped]>.admin__field:nth-child(n+2){padding-left:20px}.admin__control-group-equal{table-layout:fixed}.admin__control-group-equal>.admin__field{width:50%}.admin__field-control-group{margin-top:.8rem}.admin__field-control-group>.admin__field{padding:0}.admin__control-grouped-date>.admin__field-date{white-space:nowrap;width:1px}.admin__control-grouped-date>.admin__field-date.admin__field>.admin__field-control{float:left;position:relative}.admin__control-grouped-date>.admin__field-date+.admin__field:last-child{width:auto}.admin__control-grouped-date>.admin__field-date+.admin__field-date>.admin__field-label{float:left;padding-right:20px}.admin__control-grouped-date .ui-datepicker-trigger{left:100%;top:0}.admin__field-group-columns.admin__field-control.admin__control-grouped{width:calc((100%) * 1 - 30px);float:left;margin-left:30px}.admin__field-group-columns>.admin__field:first-child>.admin__field-label{float:none;margin:0;opacity:1;position:static;text-align:left}.admin__field-group-columns .admin__control-select{width:100%}.admin__field-group-additional{clear:both}.admin__field-group-additional .action-advanced{margin-top:1rem}.admin__field-group-additional .action-secondary{width:100%}.admin__field-group-show-label{white-space:nowrap}.admin__field-group-show-label>.admin__field-control,.admin__field-group-show-label>.admin__field-label{display:inline-block;vertical-align:top}.admin__field-group-show-label>.admin__field-label{margin-right:20px}.admin__field-complex{margin:1rem 0 3rem;padding-left:1rem}.admin__field:not(._hidden)+.admin__field-complex{margin-top:3rem}.admin__field-complex .admin__field-complex-title{clear:both;color:#303030;font-size:1.7rem;font-weight:600;letter-spacing:.025em;margin-bottom:1rem}.admin__field-complex .admin__field-complex-elements{float:right;max-width:40%}.admin__field-complex .admin__field-complex-elements button{margin-left:1rem}.admin__field-complex .admin__field-complex-content{max-width:60%;overflow:hidden}.admin__field-complex+.admin__field._empty._no-header{margin-top:-3rem}.admin__legend{float:left;position:static;width:100%}.admin__legend+br{clear:left;display:block;height:0;overflow:hidden}.message{margin-bottom:3rem}.message-icon-top:before{margin-top:0;top:1.8rem}.nav{background-color:#f8f8f8;border-bottom:1px solid #e3e3e3;border-top:1px solid #e3e3e3;display:none;margin-bottom:3rem;padding:2.2rem 1.5rem 0 0}.nav .btn-group,.nav-bar-outer-actions{float:right;margin-bottom:1.7rem}.nav .btn-group .btn-wrap,.nav-bar-outer-actions .btn-wrap{float:right;margin-left:.5rem;margin-right:.5rem}.nav .btn-group .btn-wrap .btn,.nav-bar-outer-actions .btn-wrap .btn{padding-left:.5rem;padding-right:.5rem}.nav-bar-outer-actions{margin-top:-10.6rem;padding-right:1.5rem}.btn-wrap-try-again{width:9.5rem}.btn-wrap-next,.btn-wrap-prev{width:8.5rem}.nav-bar{counter-reset:i;float:left;margin:0 1rem 1.7rem 0;padding:0;position:relative;white-space:nowrap}.nav-bar:before{background-color:#d4d4d4;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#d1d1d1 0,#d4d4d4 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d1d1d1', endColorstr='#d4d4d4', GradientType=0);border-bottom:1px solid #d9d9d9;border-top:1px solid #bfbfbf;content:'';height:1rem;left:5.15rem;position:absolute;right:5.15rem;top:.7rem}.nav-bar>li{display:inline-block;font-size:0;position:relative;vertical-align:top;width:10.3rem}.nav-bar>li:first-child:after{display:none}.nav-bar>li:after{background-color:#514943;content:'';height:.5rem;left:calc(-50% + .25rem);position:absolute;right:calc(50% + .7rem);top:.9rem}.nav-bar>li.disabled:before,.nav-bar>li.ui-state-disabled:before{bottom:0;content:'';left:0;position:absolute;right:0;top:0;z-index:1}.nav-bar>li.active~li:after,.nav-bar>li.ui-state-active~li:after{display:none}.nav-bar>li.active~li a:after,.nav-bar>li.ui-state-active~li a:after{background-color:transparent;border-color:transparent;color:#a6a6a6}.nav-bar>li.active a,.nav-bar>li.ui-state-active a{color:#000}.nav-bar>li.active a:hover,.nav-bar>li.ui-state-active a:hover{cursor:default}.nav-bar>li.active a:after,.nav-bar>li.ui-state-active a:after{background-color:#fff;content:''}.nav-bar a{color:#514943;display:block;font-size:1.2rem;font-weight:600;line-height:1.2;overflow:hidden;padding:3rem .5em 0;position:relative;text-align:center;text-overflow:ellipsis}.nav-bar a:hover{text-decoration:none}.nav-bar a:after{background-color:#514943;border:.4rem solid #514943;border-radius:100%;color:#fff;content:counter(i);counter-increment:i;height:1.5rem;left:50%;line-height:.6;margin-left:-.8rem;position:absolute;right:auto;text-align:center;top:.4rem;width:1.5rem}.nav-bar a:before{background-color:#d6d6d6;border:1px solid transparent;border-bottom-color:#d9d9d9;border-radius:100%;border-top-color:#bfbfbf;content:'';height:2.3rem;left:50%;line-height:1;margin-left:-1.2rem;position:absolute;top:0;width:2.3rem}.tooltip{display:block;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:1.19rem;font-weight:400;line-height:1.4;opacity:0;position:absolute;visibility:visible;z-index:10}.tooltip.in{opacity:.9}.tooltip.top{margin-top:-4px;padding:8px 0}.tooltip.right{margin-left:4px;padding:0 8px}.tooltip.bottom{margin-top:4px;padding:8px 0}.tooltip.left{margin-left:-4px;padding:0 8px}.tooltip p:last-child{margin-bottom:0}.tooltip-inner{background-color:#fff;border:1px solid #adadad;border-radius:0;box-shadow:1px 1px 1px #ccc;color:#41362f;max-width:31rem;padding:.5em 1em;text-decoration:none}.tooltip-arrow,.tooltip-arrow:after{border:solid transparent;height:0;position:absolute;width:0}.tooltip-arrow:after{content:'';position:absolute}.tooltip.top .tooltip-arrow,.tooltip.top .tooltip-arrow:after{border-top-color:#949494;border-width:8px 8px 0;bottom:0;left:50%;margin-left:-8px}.tooltip.top-left .tooltip-arrow,.tooltip.top-left .tooltip-arrow:after{border-top-color:#949494;border-width:8px 8px 0;bottom:0;margin-bottom:-8px;right:8px}.tooltip.top-right .tooltip-arrow,.tooltip.top-right .tooltip-arrow:after{border-top-color:#949494;border-width:8px 8px 0;bottom:0;left:8px;margin-bottom:-8px}.tooltip.right .tooltip-arrow,.tooltip.right .tooltip-arrow:after{border-right-color:#949494;border-width:8px 8px 8px 0;left:1px;margin-top:-8px;top:50%}.tooltip.right .tooltip-arrow:after{border-right-color:#fff;border-width:6px 7px 6px 0;margin-left:0;margin-top:-6px}.tooltip.left .tooltip-arrow,.tooltip.left .tooltip-arrow:after{border-left-color:#949494;border-width:8px 0 8px 8px;margin-top:-8px;right:0;top:50%}.tooltip.bottom .tooltip-arrow,.tooltip.bottom .tooltip-arrow:after{border-bottom-color:#949494;border-width:0 8px 8px;left:50%;margin-left:-8px;top:0}.tooltip.bottom-left .tooltip-arrow,.tooltip.bottom-left .tooltip-arrow:after{border-bottom-color:#949494;border-width:0 8px 8px;margin-top:-8px;right:8px;top:0}.tooltip.bottom-right .tooltip-arrow,.tooltip.bottom-right .tooltip-arrow:after{border-bottom-color:#949494;border-width:0 8px 8px;left:8px;margin-top:-8px;top:0}.password-strength{display:block;margin:0 -.3rem 1em;white-space:nowrap}.password-strength.password-strength-too-short .password-strength-item:first-child,.password-strength.password-strength-weak .password-strength-item:first-child,.password-strength.password-strength-weak .password-strength-item:first-child+.password-strength-item{background-color:#e22626}.password-strength.password-strength-fair .password-strength-item:first-child,.password-strength.password-strength-fair .password-strength-item:first-child+.password-strength-item,.password-strength.password-strength-fair .password-strength-item:first-child+.password-strength-item+.password-strength-item{background-color:#ef672f}.password-strength.password-strength-good .password-strength-item:first-child,.password-strength.password-strength-good .password-strength-item:first-child+.password-strength-item,.password-strength.password-strength-good .password-strength-item:first-child+.password-strength-item+.password-strength-item,.password-strength.password-strength-good .password-strength-item:first-child+.password-strength-item+.password-strength-item+.password-strength-item,.password-strength.password-strength-strong .password-strength-item{background-color:#79a22e}.password-strength .password-strength-item{background-color:#ccc;display:inline-block;font-size:0;height:1.4rem;margin-right:.3rem;width:calc(20% - .6rem)}@keyframes progress-bar-stripes{from{background-position:4rem 0}to{background-position:0 0}}.progress{background-color:#fafafa;border:1px solid #ccc;clear:left;height:3rem;margin-bottom:3rem;overflow:hidden}.progress-bar{background-color:#79a22e;color:#fff;float:left;font-size:1.19rem;height:100%;line-height:3rem;text-align:center;transition:width .6s ease;width:0}.progress-bar.active{animation:progress-bar-stripes 2s linear infinite}.progress-bar-text-description{margin-bottom:1.6rem}.progress-bar-text-progress{text-align:right}.page-columns .page-inner-sidebar{margin:0 0 3rem}.page-header{margin-bottom:2.7rem;padding-bottom:2rem;position:relative}.page-header:before{border-bottom:1px solid #e3e3e3;bottom:0;content:'';display:block;height:1px;left:3rem;position:absolute;right:3rem}.container .page-header:before{content:normal}.page-header .message{margin-bottom:1.8rem}.page-header .message+.message{margin-top:-1.5rem}.page-header .admin__action-dropdown,.page-header .search-global-input{transition:none}.container .page-header{margin-bottom:0}.page-title-wrapper{margin-top:1.1rem}.container .page-title-wrapper{background:url(../../pub/images/logo.svg) no-repeat;min-height:41px;padding:4px 0 0 45px}.admin__menu .level-0:first-child>a{margin-top:1.6rem}.admin__menu .level-0:first-child>a:after{top:-1.6rem}.admin__menu .level-0:first-child._active>a:after{display:block}.admin__menu .level-0>a{padding-bottom:1.3rem;padding-top:1.3rem}.admin__menu .level-0>a:before{margin-bottom:.7rem}.admin__menu .item-home>a:before{content:'\e611';font-size:2.3rem;padding-top:-.1rem}.admin__menu .item-extension>a:before{content:'\e612'}.admin__menu .item-component>a:before{content:'\e647'}.admin__menu .item-upgrade>a:before{content:'\e614'}.admin__menu .item-system-config>a:before{content:'\e610'}.admin__menu .item-tools>a:before{content:'\e613'}.modal-sub-title{font-size:1.7rem;font-weight:600}.modal-connect-signin .modal-inner-wrap{max-width:80rem}@keyframes ngdialog-fadeout{0%{opacity:1}100%{opacity:0}}@keyframes ngdialog-fadein{0%{opacity:0}100%{opacity:1}}.ngdialog{-webkit-overflow-scrolling:touch;bottom:0;box-sizing:border-box;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:999}.ngdialog *,.ngdialog:after,.ngdialog:before{box-sizing:inherit}.ngdialog.ngdialog-disabled-animation *{animation:none!important}.ngdialog.ngdialog-closing .ngdialog-content,.ngdialog.ngdialog-closing .ngdialog-overlay{-webkit-animation:ngdialog-fadeout .5s;-webkit-backface-visibility:hidden;animation:ngdialog-fadeout .5s}.ngdialog-overlay{-webkit-animation:ngdialog-fadein .5s;-webkit-backface-visibility:hidden;animation:ngdialog-fadein .5s;background:rgba(0,0,0,.4);bottom:0;left:0;position:fixed;right:0;top:0}.ngdialog-content{-webkit-animation:ngdialog-fadein .5s;-webkit-backface-visibility:hidden;animation:ngdialog-fadein .5s}body.ngdialog-open{overflow:hidden}.component-indicator{border-radius:50%;cursor:help;display:inline-block;height:16px;text-align:center;vertical-align:middle;width:16px}.component-indicator::after,.component-indicator::before{background:#fff;display:block;opacity:0;position:absolute;transition:opacity .2s linear .1s;visibility:hidden}.component-indicator::before{border:1px solid #adadad;border-radius:1px;box-shadow:0 0 2px rgba(0,0,0,.4);content:attr(data-label);font-size:1.2rem;margin:30px 0 0 -10px;min-width:50px;padding:4px 5px}.component-indicator::after{border-color:#999;border-style:solid;border-width:1px 0 0 1px;box-shadow:-1px -1px 1px rgba(0,0,0,.1);content:'';height:10px;margin:9px 0 0 5px;-ms-transform:rotate(45deg);transform:rotate(45deg);width:10px}.component-indicator:hover::after,.component-indicator:hover::before{opacity:1;transition:opacity .2s linear;visibility:visible}.component-indicator span{display:block;height:16px;overflow:hidden;width:16px}.component-indicator span:before{content:'';display:block;font-family:Icons;font-size:16px;height:100%;line-height:16px;width:100%}.component-indicator._on{background:#79a22e}.component-indicator._off{background:#e22626}.component-indicator._off span:before{background:#fff;height:4px;margin:8px auto 20px;width:12px}.component-indicator._info{background:0 0}.component-indicator._info span{width:21px}.component-indicator._info span:before{color:#008bdb;content:'\e648';font-family:Icons;font-size:16px}.col-manager-item-name .data-grid-data{padding-left:5px}.col-manager-item-name .ng-hide+.data-grid-data{padding-left:24px}.col-manager-item-name ._hide-dependencies,.col-manager-item-name ._show-dependencies{cursor:pointer;padding-left:24px;position:relative}.col-manager-item-name ._hide-dependencies:before,.col-manager-item-name ._show-dependencies:before{display:block;font-family:Icons;font-size:12px;left:0;position:absolute;top:1px}.col-manager-item-name ._show-dependencies:before{content:'\e62b'}.col-manager-item-name ._hide-dependencies:before{content:'\e628'}.col-manager-item-name ._no-dependencies{padding-left:24px}.product-modules-block{font-size:1.2rem;padding:15px 0 0}.col-manager-item-name .product-modules-block{padding-left:1rem}.product-modules-descriprion,.product-modules-title{font-weight:700;margin:0 0 7px}.product-modules-list{font-size:1.1rem;list-style:none;margin:0}.col-manager-item-name .product-modules-list{margin-left:15px}.col-manager-item-name .product-modules-list li{padding:0 0 0 15px;position:relative}.product-modules-list li{margin:0 0 .5rem}.product-modules-list .component-indicator{height:10px;left:0;position:absolute;top:3px;width:10px}.module-summary{white-space:nowrap}.module-summary-title{font-size:2.1rem;margin-right:1rem}.app-updater .nav{display:block;margin-bottom:3.1rem;margin-top:-2.8rem}.app-updater .nav-bar-outer-actions{margin-top:1rem;padding-right:0}.app-updater .nav-bar-outer-actions .btn-wrap-cancel{margin-right:2.6rem}.main{padding-bottom:2rem;padding-top:3rem}.menu-wrapper .logo-static{pointer-events:none}.header{display:none}.header .logo{float:left;height:4.1rem;width:3.5rem}.header-title{font-size:2.8rem;letter-spacing:.02em;line-height:1.4;margin:2.5rem 0 3.5rem 5rem}.page-title{margin-bottom:1rem}.page-sub-title{font-size:2rem}.accent-box{margin-bottom:2rem}.accent-box .btn-prime{margin-top:1.5rem}.spinner.side{float:left;font-size:2.4rem;margin-left:2rem;margin-top:-5px}.page-landing{margin:7.6% auto 0;max-width:44rem;text-align:center}.page-landing .logo{height:5.6rem;margin-bottom:2rem;width:19.2rem}.page-landing .text-version{margin-bottom:3rem}.page-landing .text-welcome{margin-bottom:6.5rem}.page-landing .text-terms{margin-bottom:2.5rem;text-align:center}.page-landing .btn-submit,.page-license .license-text{margin-bottom:2rem}.page-license .page-license-footer{text-align:right}.readiness-check-item{margin-bottom:4rem;min-height:2.5rem}.readiness-check-item .spinner{float:left;font-size:2.5rem;margin:-.4rem 0 0 1.7rem}.readiness-check-title{font-size:1.4rem;font-weight:700;margin-bottom:.1rem;margin-left:5.7rem}.readiness-check-content{margin-left:5.7rem;margin-right:22rem;position:relative}.readiness-check-content .readiness-check-title{margin-left:0}.readiness-check-content .list{margin-top:-.3rem}.readiness-check-side{left:100%;padding-left:2.4rem;position:absolute;top:0;width:22rem}.readiness-check-side .side-title{margin-bottom:0}.readiness-check-icon{float:left;margin-left:1.7rem;margin-top:.3rem}.page-web-configuration .form-el-insider-wrap{width:auto}.page-web-configuration .form-el-insider{width:15.4rem}.page-web-configuration .form-el-insider-input .form-el-input{width:16.5rem}.customize-your-store .advanced-modules-count,.customize-your-store .advanced-modules-select{padding-left:1.5rem}.customize-your-store .customize-your-store-advanced{min-width:0}.customize-your-store .message-error:before{margin-top:0;top:1.8rem}.customize-your-store .message-error a{color:#333;text-decoration:underline}.customize-your-store .message-error .form-label:before{background:#fff}.customize-your-store .customize-database-clean p{margin-top:2.5rem}.content-install{margin-bottom:2rem}.console{border:1px solid #ccc;font-family:'Courier New',Courier,monospace;font-weight:300;height:20rem;margin:1rem 0 2rem;overflow-y:auto;padding:1.5rem 2rem 2rem;resize:vertical}.console .text-danger{color:#e22626}.console .text-success{color:#090}.console .hidden{display:none}.content-success .btn-prime{margin-top:1.5rem}.jumbo-title{font-size:3.6rem}.jumbo-title .jumbo-icon{font-size:3.8rem;margin-right:.25em;position:relative;top:.15em}.install-database-clean{margin-top:4rem}.install-database-clean .btn{margin-right:1rem}.page-sub-title{margin-bottom:2.1rem;margin-top:3rem}.multiselect-custom{max-width:71.1rem}.content-install{margin-top:3.7rem}.home-page-inner-wrap{margin:0 auto;max-width:91rem}.setup-home-title{margin-bottom:3.9rem;padding-top:1.8rem;text-align:center}.setup-home-item{background-color:#fafafa;border:1px solid #ccc;color:#333;display:block;margin-bottom:2rem;margin-left:1.3rem;margin-right:1.3rem;min-height:30rem;padding:2rem;text-align:center}.setup-home-item:hover{border-color:#8c8c8c;color:#333;text-decoration:none;transition:border-color .1s linear}.setup-home-item:active{-ms-transform:scale(0.99);transform:scale(0.99)}.setup-home-item:before{display:block;font-size:7rem;margin-bottom:3.3rem;margin-top:4rem}.setup-home-item-component:before,.setup-home-item-extension:before{content:'\e612'}.setup-home-item-module:before{content:'\e647'}.setup-home-item-upgrade:before{content:'\e614'}.setup-home-item-configuration:before{content:'\e610'}.setup-home-item-title{display:block;font-size:1.8rem;letter-spacing:.025em;margin-bottom:1rem}.setup-home-item-description{display:block}.extension-manager-wrap{border:1px solid #bbb;margin:0 0 4rem}.extension-manager-account{font-size:2.1rem;display:inline-block;font-weight:400}.extension-manager-title{font-size:3.2rem;background-color:#f8f8f8;border-bottom:1px solid #e3e3e3;color:#41362f;font-weight:600;line-height:1.2;padding:2rem}.extension-manager-content{padding:2.5rem 2rem 2rem}.extension-manager-items{list-style:none;margin:0;text-align:center}.extension-manager-items .btn{border:1px solid #adadad;display:block;margin:1rem auto 0}.extension-manager-items .item-title{font-size:2.1rem;display:inline-block;text-align:left}.extension-manager-items .item-number{font-size:4.1rem;display:inline-block;line-height:.8;margin:0 5px 1.5rem 0;vertical-align:top}.extension-manager-items .item-date{font-size:2.6rem;margin-top:1px}.extension-manager-items .item-date-title{font-size:1.5rem}.extension-manager-items .item-install{margin:0 0 2rem}.sync-login-wrap{padding:0 10% 4rem}.sync-login-wrap .legend{font-size:2.6rem;color:#eb5202;float:left;font-weight:300;line-height:1.2;margin:-1rem 0 2.5rem;position:static;width:100%}.sync-login-wrap .legend._hidden{display:none}.sync-login-wrap .login-header{font-size:3.4rem;font-weight:300;margin:0 0 2rem}.sync-login-wrap .login-header span{display:inline-block;padding:.9rem 0 0;vertical-align:top}.sync-login-wrap h4{font-size:1.4rem;margin:0 0 2rem}.sync-login-wrap .sync-login-steps{margin:0 0 2rem 1.5rem}.sync-login-wrap .sync-login-steps li{padding:0 0 0 1rem}.sync-login-wrap .form-row .form-label{display:inline-block}.sync-login-wrap .form-row .form-label.required{padding-left:1.5rem}.sync-login-wrap .form-row .form-label.required:after{left:0;position:absolute;right:auto}.sync-login-wrap .form-row{max-width:28rem}.sync-login-wrap .form-actions{display:table;margin-top:-1.3rem}.sync-login-wrap .form-actions .links{display:table-header-group}.sync-login-wrap .form-actions .actions{padding:3rem 0 0}@media all and (max-width:1047px){.admin__menu .submenu li{min-width:19.8rem}.nav{padding-bottom:5.38rem;padding-left:1.5rem;text-align:center}.nav-bar{display:inline-block;float:none;margin-right:0;vertical-align:top}.nav .btn-group,.nav-bar-outer-actions{display:inline-block;float:none;margin-top:-8.48rem;text-align:center;vertical-align:top;width:100%}.nav-bar-outer-actions{padding-right:0}.nav-bar-outer-actions .outer-actions-inner-wrap{display:inline-block}.app-updater .nav{padding-bottom:1.7rem}.app-updater .nav-bar-outer-actions{margin-top:2rem}}@media all and (min-width:768px){.page-layout-admin-2columns-left .page-columns{margin-left:-30px}.page-layout-admin-2columns-left .page-columns:after{clear:both;content:'';display:table}.page-layout-admin-2columns-left .page-columns .main-col{width:calc((100%) * .75 - 30px);float:right}.page-layout-admin-2columns-left .page-columns .side-col{width:calc((100%) * .25 - 30px);float:left;margin-left:30px}.col-m-1,.col-m-10,.col-m-11,.col-m-12,.col-m-2,.col-m-3,.col-m-4,.col-m-5,.col-m-6,.col-m-7,.col-m-8,.col-m-9{float:left}.col-m-12{width:100%}.col-m-11{width:91.66666667%}.col-m-10{width:83.33333333%}.col-m-9{width:75%}.col-m-8{width:66.66666667%}.col-m-7{width:58.33333333%}.col-m-6{width:50%}.col-m-5{width:41.66666667%}.col-m-4{width:33.33333333%}.col-m-3{width:25%}.col-m-2{width:16.66666667%}.col-m-1{width:8.33333333%}.col-m-pull-12{right:100%}.col-m-pull-11{right:91.66666667%}.col-m-pull-10{right:83.33333333%}.col-m-pull-9{right:75%}.col-m-pull-8{right:66.66666667%}.col-m-pull-7{right:58.33333333%}.col-m-pull-6{right:50%}.col-m-pull-5{right:41.66666667%}.col-m-pull-4{right:33.33333333%}.col-m-pull-3{right:25%}.col-m-pull-2{right:16.66666667%}.col-m-pull-1{right:8.33333333%}.col-m-pull-0{right:auto}.col-m-push-12{left:100%}.col-m-push-11{left:91.66666667%}.col-m-push-10{left:83.33333333%}.col-m-push-9{left:75%}.col-m-push-8{left:66.66666667%}.col-m-push-7{left:58.33333333%}.col-m-push-6{left:50%}.col-m-push-5{left:41.66666667%}.col-m-push-4{left:33.33333333%}.col-m-push-3{left:25%}.col-m-push-2{left:16.66666667%}.col-m-push-1{left:8.33333333%}.col-m-push-0{left:auto}.col-m-offset-12{margin-left:100%}.col-m-offset-11{margin-left:91.66666667%}.col-m-offset-10{margin-left:83.33333333%}.col-m-offset-9{margin-left:75%}.col-m-offset-8{margin-left:66.66666667%}.col-m-offset-7{margin-left:58.33333333%}.col-m-offset-6{margin-left:50%}.col-m-offset-5{margin-left:41.66666667%}.col-m-offset-4{margin-left:33.33333333%}.col-m-offset-3{margin-left:25%}.col-m-offset-2{margin-left:16.66666667%}.col-m-offset-1{margin-left:8.33333333%}.col-m-offset-0{margin-left:0}.page-columns{margin-left:-30px}.page-columns:after{clear:both;content:'';display:table}.page-columns .page-inner-content{width:calc((100%) * .75 - 30px);float:right}.page-columns .page-inner-sidebar{width:calc((100%) * .25 - 30px);float:left;margin-left:30px}}@media all and (min-width:1048px){.col-l-1,.col-l-10,.col-l-11,.col-l-12,.col-l-2,.col-l-3,.col-l-4,.col-l-5,.col-l-6,.col-l-7,.col-l-8,.col-l-9{float:left}.col-l-12{width:100%}.col-l-11{width:91.66666667%}.col-l-10{width:83.33333333%}.col-l-9{width:75%}.col-l-8{width:66.66666667%}.col-l-7{width:58.33333333%}.col-l-6{width:50%}.col-l-5{width:41.66666667%}.col-l-4{width:33.33333333%}.col-l-3{width:25%}.col-l-2{width:16.66666667%}.col-l-1{width:8.33333333%}.col-l-pull-12{right:100%}.col-l-pull-11{right:91.66666667%}.col-l-pull-10{right:83.33333333%}.col-l-pull-9{right:75%}.col-l-pull-8{right:66.66666667%}.col-l-pull-7{right:58.33333333%}.col-l-pull-6{right:50%}.col-l-pull-5{right:41.66666667%}.col-l-pull-4{right:33.33333333%}.col-l-pull-3{right:25%}.col-l-pull-2{right:16.66666667%}.col-l-pull-1{right:8.33333333%}.col-l-pull-0{right:auto}.col-l-push-12{left:100%}.col-l-push-11{left:91.66666667%}.col-l-push-10{left:83.33333333%}.col-l-push-9{left:75%}.col-l-push-8{left:66.66666667%}.col-l-push-7{left:58.33333333%}.col-l-push-6{left:50%}.col-l-push-5{left:41.66666667%}.col-l-push-4{left:33.33333333%}.col-l-push-3{left:25%}.col-l-push-2{left:16.66666667%}.col-l-push-1{left:8.33333333%}.col-l-push-0{left:auto}.col-l-offset-12{margin-left:100%}.col-l-offset-11{margin-left:91.66666667%}.col-l-offset-10{margin-left:83.33333333%}.col-l-offset-9{margin-left:75%}.col-l-offset-8{margin-left:66.66666667%}.col-l-offset-7{margin-left:58.33333333%}.col-l-offset-6{margin-left:50%}.col-l-offset-5{margin-left:41.66666667%}.col-l-offset-4{margin-left:33.33333333%}.col-l-offset-3{margin-left:25%}.col-l-offset-2{margin-left:16.66666667%}.col-l-offset-1{margin-left:8.33333333%}.col-l-offset-0{margin-left:0}}@media all and (min-width:1440px){.col-xl-1,.col-xl-10,.col-xl-11,.col-xl-12,.col-xl-2,.col-xl-3,.col-xl-4,.col-xl-5,.col-xl-6,.col-xl-7,.col-xl-8,.col-xl-9{float:left}.col-xl-12{width:100%}.col-xl-11{width:91.66666667%}.col-xl-10{width:83.33333333%}.col-xl-9{width:75%}.col-xl-8{width:66.66666667%}.col-xl-7{width:58.33333333%}.col-xl-6{width:50%}.col-xl-5{width:41.66666667%}.col-xl-4{width:33.33333333%}.col-xl-3{width:25%}.col-xl-2{width:16.66666667%}.col-xl-1{width:8.33333333%}.col-xl-pull-12{right:100%}.col-xl-pull-11{right:91.66666667%}.col-xl-pull-10{right:83.33333333%}.col-xl-pull-9{right:75%}.col-xl-pull-8{right:66.66666667%}.col-xl-pull-7{right:58.33333333%}.col-xl-pull-6{right:50%}.col-xl-pull-5{right:41.66666667%}.col-xl-pull-4{right:33.33333333%}.col-xl-pull-3{right:25%}.col-xl-pull-2{right:16.66666667%}.col-xl-pull-1{right:8.33333333%}.col-xl-pull-0{right:auto}.col-xl-push-12{left:100%}.col-xl-push-11{left:91.66666667%}.col-xl-push-10{left:83.33333333%}.col-xl-push-9{left:75%}.col-xl-push-8{left:66.66666667%}.col-xl-push-7{left:58.33333333%}.col-xl-push-6{left:50%}.col-xl-push-5{left:41.66666667%}.col-xl-push-4{left:33.33333333%}.col-xl-push-3{left:25%}.col-xl-push-2{left:16.66666667%}.col-xl-push-1{left:8.33333333%}.col-xl-push-0{left:auto}.col-xl-offset-12{margin-left:100%}.col-xl-offset-11{margin-left:91.66666667%}.col-xl-offset-10{margin-left:83.33333333%}.col-xl-offset-9{margin-left:75%}.col-xl-offset-8{margin-left:66.66666667%}.col-xl-offset-7{margin-left:58.33333333%}.col-xl-offset-6{margin-left:50%}.col-xl-offset-5{margin-left:41.66666667%}.col-xl-offset-4{margin-left:33.33333333%}.col-xl-offset-3{margin-left:25%}.col-xl-offset-2{margin-left:16.66666667%}.col-xl-offset-1{margin-left:8.33333333%}.col-xl-offset-0{margin-left:0}}@media all and (max-width:767px){.abs-clearer-mobile:after,.nav-bar:after{clear:both;content:'';display:table}.list-definition>dt{float:none}.list-definition>dd{margin-left:0}.form-row .form-label{text-align:left}.form-row .form-label.required:after{position:static}.nav{padding-bottom:0;padding-left:0;padding-right:0}.nav-bar-outer-actions{margin-top:0}.nav-bar{display:block;margin-bottom:0;margin-left:auto;margin-right:auto;width:30.9rem}.nav-bar:before{display:none}.nav-bar>li{float:left;min-height:9rem}.nav-bar>li:after{display:none}.nav-bar>li:nth-child(4n){clear:both}.nav-bar a{line-height:1.4}.tooltip{display:none!important}.readiness-check-content{margin-right:2rem}.readiness-check-side{padding:2rem 0;position:static}.form-el-insider,.form-el-insider-wrap,.page-web-configuration .form-el-insider-input,.page-web-configuration .form-el-insider-input .form-el-input{display:block;width:100%}}@media all and (max-width:479px){.nav-bar{width:23.175rem}.nav-bar>li{width:7.725rem}.nav .btn-group .btn-wrap-try-again,.nav-bar-outer-actions .btn-wrap-try-again{clear:both;display:block;float:none;margin-left:auto;margin-right:auto;margin-top:1rem;padding-top:1rem}} \ No newline at end of file diff --git a/setup/src/Magento/Setup/Console/Command/MaintenanceDisableCommand.php b/setup/src/Magento/Setup/Console/Command/MaintenanceDisableCommand.php index 2f2d91dd0a575..1c8519daebafe 100644 --- a/setup/src/Magento/Setup/Console/Command/MaintenanceDisableCommand.php +++ b/setup/src/Magento/Setup/Console/Command/MaintenanceDisableCommand.php @@ -41,4 +41,14 @@ protected function getDisplayString() { return 'Disabled maintenance mode'; } + + /** + * Return if IP addresses effective for maintenance mode were set + * + * @return bool + */ + public function isSetAddressInfo() + { + return count($this->maintenanceMode->getAddressInfo()) > 0; + } } diff --git a/setup/src/Magento/Setup/Controller/ComponentGrid.php b/setup/src/Magento/Setup/Controller/ComponentGrid.php deleted file mode 100644 index 5b99f9dd40356..0000000000000 --- a/setup/src/Magento/Setup/Controller/ComponentGrid.php +++ /dev/null @@ -1,182 +0,0 @@ -composerInformation = $composerInformation; - $this->objectManagerProvider = $objectManagerProvider; - $this->packagesData = $packagesData; - $this->packagesAuth = $packagesAuth; - } - - /** - * Index page action - * - * @return \Zend\View\Model\ViewModel - */ - public function indexAction() - { - $view = new \Zend\View\Model\ViewModel(); - $view->setTerminal(true); - return $view; - } - - /** - * Get Components info action - * - * @return \Zend\View\Model\JsonModel - * @throws \RuntimeException - */ - public function componentsAction() - { - $objectManager = $this->objectManagerProvider->get(); - $enabledModuleList = $objectManager->get('Magento\Framework\Module\ModuleList'); - $this->fullModuleList = $objectManager->get('Magento\Framework\Module\FullModuleList'); - $this->packageInfo = $objectManager->get('Magento\Framework\Module\PackageInfoFactory')->create(); - - $lastSyncData = []; - $authDetails = $this->packagesAuth->getAuthJsonData(); - if ($authDetails) { - $lastSyncData = $this->packagesData->syncPackagesData(); - } - $components = $this->composerInformation->getInstalledMagentoPackages(); - $allModules = $this->getAllModules(); - $components = array_replace_recursive($components, $allModules); - foreach ($components as $component) { - $components[$component['name']]['update'] = false; - $components[$component['name']]['uninstall'] = false; - $components[$component['name']]['moduleName'] = $this->packageInfo->getModuleName($component['name']); - if ($this->composerInformation->isPackageInComposerJson($component['name'])) { - if ($component['type'] !== \Magento\Framework\Composer\ComposerInformation::METAPACKAGE_PACKAGE_TYPE) { - $components[$component['name']]['uninstall'] = true; - } - if (isset($lastSyncData['packages'][$component['name']]['latestVersion']) - && version_compare( - $lastSyncData['packages'][$component['name']]['latestVersion'], - $component['version'], - '>' - )) { - $components[$component['name']]['update'] = true; - } - } - if ($component['type'] === \Magento\Framework\Composer\ComposerInformation::MODULE_PACKAGE_TYPE) { - $components[$component['name']]['enable'] = - $enabledModuleList->has($components[$component['name']]['moduleName']); - $components[$component['name']]['disable'] = !$components[$component['name']]['enable']; - } else { - $components[$component['name']]['enable'] = false; - $components[$component['name']]['disable'] = false; - } - $componentNameParts = explode('/', $component['name']); - $components[$component['name']]['vendor'] = $componentNameParts[0]; - } - - return new \Zend\View\Model\JsonModel( - [ - 'success' => true, - 'components' => array_values($components), - 'total' => count($components), - 'lastSyncData' => $lastSyncData - ] - ); - } - - /** - * Sync action - * - * @return \Zend\View\Model\JsonModel - */ - public function syncAction() - { - $error = ''; - $lastSyncData = []; - try { - $lastSyncData = $this->packagesData->syncPackagesData(); - } catch (\Exception $e) { - $error = $e->getMessage(); - } - return new \Zend\View\Model\JsonModel( - [ - 'success' => true, - 'lastSyncData' => $lastSyncData, - 'error' => $error - ] - ); - } - - /** - * Get full list of modules as an associative array - * - * @return array - */ - private function getAllModules() - { - $modules = []; - $allModules = $this->fullModuleList->getNames(); - foreach ($allModules as $module) { - $moduleName = $this->packageInfo->getPackageName($module); - $modules[$moduleName]['name'] = $moduleName; - $modules[$moduleName]['type'] = \Magento\Framework\Composer\ComposerInformation::MODULE_PACKAGE_TYPE; - $modules[$moduleName]['version'] = $this->packageInfo->getVersion($module); - } - return $modules; - } -} diff --git a/setup/src/Magento/Setup/Controller/ExtensionGrid.php b/setup/src/Magento/Setup/Controller/ExtensionGrid.php new file mode 100644 index 0000000000000..65e3f0b51d087 --- /dev/null +++ b/setup/src/Magento/Setup/Controller/ExtensionGrid.php @@ -0,0 +1,118 @@ +packagesData = $packagesData; + $this->packagesAuth = $packagesAuth; + $this->gridExtension = $gridExtension; + } + + /** + * Index page action + * + * @return \Zend\View\Model\ViewModel + */ + public function indexAction() + { + $view = new ViewModel(); + $view->setTerminal(true); + return $view; + } + + /** + * Get extensions info action + * + * @return JsonModel + * @throws \RuntimeException + */ + public function extensionsAction() + { + $error = ''; + $lastSyncData = []; + $authDetails = $this->packagesAuth->getAuthJsonData(); + $extensions = []; + if ($authDetails) { + try { + $lastSyncData = $this->packagesData->syncPackagesData(); + $extensions = $this->gridExtension->getList(); + } catch (\Exception $e) { + $error = $e->getMessage(); + } + } + + return new JsonModel( + [ + 'success' => true, + 'extensions' => $extensions, + 'total' => count($extensions), + 'lastSyncData' => $lastSyncData, + 'error' => $error + ] + ); + } + + /** + * Sync action + * + * @return JsonModel + */ + public function syncAction() + { + $error = ''; + $lastSyncData = []; + try { + $authDataJson = $this->packagesAuth->getAuthJsonData(); + $this->packagesAuth->checkCredentials($authDataJson['username'], $authDataJson['password']); + $lastSyncData = $this->packagesData->syncPackagesData(); + } catch (\Exception $e) { + $error = $e->getMessage(); + } + return new JsonModel( + [ + 'success' => true, + 'lastSyncData' => $lastSyncData, + 'error' => $error + ] + ); + } +} diff --git a/setup/src/Magento/Setup/Controller/InstallExtensionGrid.php b/setup/src/Magento/Setup/Controller/InstallExtensionGrid.php index d9d61a09245ca..a3f5a9992a35f 100644 --- a/setup/src/Magento/Setup/Controller/InstallExtensionGrid.php +++ b/setup/src/Magento/Setup/Controller/InstallExtensionGrid.php @@ -10,6 +10,7 @@ use Zend\View\Model\JsonModel; use Zend\View\Model\ViewModel; use Magento\Setup\Model\PackagesData; +use \Magento\Setup\Model\Grid\TypeMapper; /** * Controller for extensions grid tasks @@ -21,12 +22,21 @@ class InstallExtensionGrid extends AbstractActionController */ private $packagesData; + /** + * @var TypeMapper + */ + private $typeMapper; + /** * @param PackagesData $packagesData + * @param TypeMapper $typeMapper */ - public function __construct(PackagesData $packagesData) - { + public function __construct( + PackagesData $packagesData, + TypeMapper $typeMapper + ) { $this->packagesData = $packagesData; + $this->typeMapper = $typeMapper; } /** @@ -50,6 +60,11 @@ public function extensionsAction() { $extensions = $this->packagesData->getPackagesForInstall(); $packages = isset($extensions['packages']) ? $extensions['packages'] : []; + array_walk($packages, function (&$package) { + $package['vendor'] = ucfirst($package['vendor']); + $package['type'] = $this->typeMapper->map($package['name'], $package['type']); + }); + return new JsonModel( [ 'success' => true, diff --git a/setup/src/Magento/Setup/Controller/LandingUpdater.php b/setup/src/Magento/Setup/Controller/LandingUpdater.php index 74e8446c78f83..7a3f1c04eb8ab 100644 --- a/setup/src/Magento/Setup/Controller/LandingUpdater.php +++ b/setup/src/Magento/Setup/Controller/LandingUpdater.php @@ -31,7 +31,7 @@ public function __construct(\Magento\Framework\App\ProductMetadata $productMetad */ public function indexAction() { - $welcomeMsg = "Welcome to Magento Component Manager.
" + $welcomeMsg = "Welcome to Magento Module Manager.
" . "Click 'Agree and Update Magento' or read "; $docRef = "http://devdocs.magento.com/guides/v1.0/install-gde/install/install-web.html"; $agreeButtonText = "Agree and Update Magento"; diff --git a/setup/src/Magento/Setup/Controller/ModuleGrid.php b/setup/src/Magento/Setup/Controller/ModuleGrid.php new file mode 100644 index 0000000000000..9ecf9cb95464c --- /dev/null +++ b/setup/src/Magento/Setup/Controller/ModuleGrid.php @@ -0,0 +1,62 @@ +gridModule = $gridModule; + } + + /** + * Index page action + * + * @return \Zend\View\Model\ViewModel + */ + public function indexAction() + { + $view = new \Zend\View\Model\ViewModel(); + $view->setTerminal(true); + return $view; + } + + /** + * Get Components info action + * + * @return \Zend\View\Model\JsonModel + * @throws \RuntimeException + */ + public function modulesAction() + { + $moduleList = $this->gridModule->getList(); + + return new \Zend\View\Model\JsonModel( + [ + 'success' => true, + 'modules' => $moduleList, + 'total' => count($moduleList), + ] + ); + } +} diff --git a/setup/src/Magento/Setup/Controller/UpdateExtensionGrid.php b/setup/src/Magento/Setup/Controller/UpdateExtensionGrid.php new file mode 100644 index 0000000000000..c021d4f18a802 --- /dev/null +++ b/setup/src/Magento/Setup/Controller/UpdateExtensionGrid.php @@ -0,0 +1,60 @@ +gridExtension = $gridExtension; + } + + /** + * Index page action + * + * @return ViewModel + */ + public function indexAction() + { + $view = new ViewModel(); + $view->setTerminal(true); + return $view; + } + + /** + * Get extensions action + * + * @return JsonModel + */ + public function extensionsAction() + { + $extensions = $this->gridExtension->getListForUpdate(); + + return new JsonModel( + [ + 'success' => true, + 'extensions' => array_values($extensions), + 'total' => count($extensions) + ] + ); + } +} diff --git a/setup/src/Magento/Setup/Model/Bootstrap.php b/setup/src/Magento/Setup/Model/Bootstrap.php new file mode 100644 index 0000000000000..295d1109e857a --- /dev/null +++ b/setup/src/Magento/Setup/Model/Bootstrap.php @@ -0,0 +1,27 @@ +params['components']) || !is_array($this->params['components'])) { $this->status->toggleUpdateError(true); - throw new \RunTimeException('Job parameter format is incorrect'); + throw new \RuntimeException('Job parameter format is incorrect'); } $components = $this->params['components']; foreach ($components as $component) { @@ -151,17 +141,17 @@ private function executeComponent(array $component) } if (!in_array($type, [ - self::COMPONENT_MODULE, - self::COMPONENT_THEME, - self::COMPONENT_LANGUAGE, - self::COMPONENT + ComposerInformation::MODULE_PACKAGE_TYPE, + ComposerInformation::THEME_PACKAGE_TYPE, + ComposerInformation::LANGUAGE_PACKAGE_TYPE, + ComposerInformation::COMPONENT_PACKAGE_TYPE ])) { $this->status->toggleUpdateError(true); throw new \RuntimeException('Unknown component type'); } switch ($type) { - case self::COMPONENT_MODULE: + case ComposerInformation::MODULE_PACKAGE_TYPE: $dataOption = isset($this->params[self::DATA_OPTION]) && $this->params[self::DATA_OPTION] === 'true'; $this->moduleUninstall->uninstall( $this->output, @@ -169,7 +159,7 @@ private function executeComponent(array $component) $dataOption ); break; - case self::COMPONENT_THEME: + case ComposerInformation::THEME_PACKAGE_TYPE: $this->themeUninstall->uninstall($this->output, $componentName); break; } diff --git a/setup/src/Magento/Setup/Model/Cron/JobFactory.php b/setup/src/Magento/Setup/Model/Cron/JobFactory.php index 1d49c415c0bc4..c3b0bfedc1240 100644 --- a/setup/src/Magento/Setup/Model/Cron/JobFactory.php +++ b/setup/src/Magento/Setup/Model/Cron/JobFactory.php @@ -5,7 +5,15 @@ */ namespace Magento\Setup\Model\Cron; +use Magento\Backend\Console\Command\CacheDisableCommand; +use Magento\Backend\Console\Command\CacheEnableCommand; +use Magento\Framework\ObjectManagerInterface; +use Magento\Setup\Console\Command\ModuleDisableCommand; +use Magento\Setup\Console\Command\ModuleEnableCommand; +use Magento\Setup\Console\Command\UpgradeCommand; use Zend\ServiceManager\ServiceLocatorInterface; +use Magento\Setup\Console\Command\MaintenanceDisableCommand; +use Magento\Setup\Console\Command\MaintenanceEnableCommand; /** * Factory class to create jobs @@ -25,6 +33,8 @@ class JobFactory const JOB_STATIC_REGENERATE = 'setup:static:regenerate'; const JOB_ENABLE_CACHE = 'setup:cache:enable'; const JOB_DISABLE_CACHE = 'setup:cache:disable'; + const JOB_MAINTENANCE_MODE_ENABLE = 'setup:maintenance:enable'; + const JOB_MAINTENANCE_MODE_DISABLE = 'setup:maintenance:disable'; /** * @var ServiceLocatorInterface @@ -48,6 +58,8 @@ public function __construct(ServiceLocatorInterface $serviceLocator) * @param array $params * @return AbstractJob * @throws \RuntimeException + * @SuppressWarnings(PHPMD.ExcessiveMethodLength) + * @SuppressWarnings(PHPMD.CyclomaticComplexity) */ public function create($name, array $params = []) { @@ -56,12 +68,12 @@ public function create($name, array $params = []) $logStream = fopen($cronStatus->getLogFilePath(), 'a+'); $streamOutput = new MultipleStreamOutput([$statusStream, $logStream]); $objectManagerProvider = $this->serviceLocator->get('Magento\Setup\Model\ObjectManagerProvider'); - /** @var \Magento\Framework\ObjectManagerInterface $objectManager */ + /** @var ObjectManagerInterface $objectManager */ $objectManager = $objectManagerProvider->get(); switch ($name) { case self::JOB_UPGRADE: return new JobUpgrade( - $this->serviceLocator->get('Magento\Setup\Console\Command\UpgradeCommand'), + $this->serviceLocator->get(UpgradeCommand::class), $objectManagerProvider, $streamOutput, $this->serviceLocator->get('Magento\Setup\Model\Cron\Queue'), @@ -114,7 +126,7 @@ public function create($name, array $params = []) break; case self::JOB_MODULE_ENABLE: return new JobModule( - $this->serviceLocator->get('Magento\Setup\Console\Command\ModuleEnableCommand'), + $this->serviceLocator->get(ModuleEnableCommand::class), $objectManagerProvider, $streamOutput, $cronStatus, @@ -124,7 +136,7 @@ public function create($name, array $params = []) break; case self::JOB_MODULE_DISABLE: return new JobModule( - $this->serviceLocator->get('Magento\Setup\Console\Command\ModuleDisableCommand'), + $this->serviceLocator->get(ModuleDisableCommand::class), $objectManagerProvider, $streamOutput, $cronStatus, @@ -133,12 +145,43 @@ public function create($name, array $params = []) ); break; case self::JOB_ENABLE_CACHE: - $cmd = $objectManager->get('Magento\Backend\Console\Command\CacheEnableCommand'); - return new JobSetCache($cmd, $objectManagerProvider, $streamOutput, $cronStatus, $name, $params); + return new JobSetCache( + $objectManager->get(CacheEnableCommand::class), + $objectManagerProvider, + $streamOutput, + $cronStatus, + $name, + $params + ); break; case self::JOB_DISABLE_CACHE: - $cmd = $objectManager->get('Magento\Backend\Console\Command\CacheDisableCommand'); - return new JobSetCache($cmd, $objectManagerProvider, $streamOutput, $cronStatus, $name); + return new JobSetCache( + $objectManager->get(CacheDisableCommand::class), + $objectManagerProvider, + $streamOutput, + $cronStatus, + $name + ); + break; + case self::JOB_MAINTENANCE_MODE_ENABLE: + return new JobSetMaintenanceMode( + $this->serviceLocator->get(MaintenanceEnableCommand::class), + $objectManagerProvider, + $streamOutput, + $cronStatus, + $name, + $params + ); + break; + case self::JOB_MAINTENANCE_MODE_DISABLE: + return new JobSetMaintenanceMode( + $this->serviceLocator->get(MaintenanceDisableCommand::class), + $objectManagerProvider, + $streamOutput, + $cronStatus, + $name, + $params + ); break; default: throw new \RuntimeException(sprintf('"%s" job is not supported.', $name)); diff --git a/setup/src/Magento/Setup/Model/Cron/JobModule.php b/setup/src/Magento/Setup/Model/Cron/JobModule.php index 9691979726a8d..63d64255f4151 100644 --- a/setup/src/Magento/Setup/Model/Cron/JobModule.php +++ b/setup/src/Magento/Setup/Model/Cron/JobModule.php @@ -39,8 +39,6 @@ public function __construct( $params = [] ) { $this->command = $command; - $this->output = $output; - $this->status = $status; parent::__construct($output, $status, $objectManagerProvider, $name, $params); // map name to command string diff --git a/setup/src/Magento/Setup/Model/Cron/JobSetCache.php b/setup/src/Magento/Setup/Model/Cron/JobSetCache.php index cc12b8dea1ef8..9d1b15e527727 100644 --- a/setup/src/Magento/Setup/Model/Cron/JobSetCache.php +++ b/setup/src/Magento/Setup/Model/Cron/JobSetCache.php @@ -44,13 +44,11 @@ public function __construct( $params = [] ) { $this->command = $command; - $this->output = $output; - $this->status = $status; parent::__construct($output, $status, $objectManagerProvider, $name, $params); } /** - * Execute set cache comand + * Execute set cache command * * @return void */ diff --git a/setup/src/Magento/Setup/Model/Cron/JobSetMaintenanceMode.php b/setup/src/Magento/Setup/Model/Cron/JobSetMaintenanceMode.php new file mode 100644 index 0000000000000..2be43e05e197b --- /dev/null +++ b/setup/src/Magento/Setup/Model/Cron/JobSetMaintenanceMode.php @@ -0,0 +1,90 @@ +command = $command; + parent::__construct($output, $status, $objectManagerProvider, $name, $params); + } + + /** + * Execute job + * + * @throws \RuntimeException + * @return void + */ + public function execute() + { + if ($this->command instanceof MaintenanceDisableCommand && $this->command->isSetAddressInfo()) { + // Maintenance mode should not be unset from updater application if it was set manually by the admin + throw new \RuntimeException( + $this->getExceptionMessage( + 'Magento maintenance mode was not disabled. It can be disabled from the Magento Backend.' + ) + ); + } + + try { + // Prepare the arguments to invoke Symfony run() + $arguments['command'] = $this->getCommand(); + $this->command->run(new ArrayInput($arguments), $this->output); + } catch (\Exception $e) { + $this->status->toggleUpdateError(true); + throw new \RuntimeException( + $this->getExceptionMessage($e->getMessage()) + ); + } + } + + /** + * Get exception message + * + * @param string $msg + * @return string + */ + private function getExceptionMessage($msg) + { + return sprintf('Could not complete %s successfully: %s', $this, $msg); + } + + /** + * Get the command to be run through bin/magento + * + * @return string + */ + private function getCommand() + { + return $this->getName() === 'setup:maintenance:enable' ? 'maintenance:enable' : 'maintenance:disable'; + } +} diff --git a/setup/src/Magento/Setup/Model/Cron/JobStaticRegenerate.php b/setup/src/Magento/Setup/Model/Cron/JobStaticRegenerate.php index 9db52bc54e071..19f45e4343f42 100644 --- a/setup/src/Magento/Setup/Model/Cron/JobStaticRegenerate.php +++ b/setup/src/Magento/Setup/Model/Cron/JobStaticRegenerate.php @@ -43,8 +43,6 @@ public function __construct( ) { $this->cleanupFiles = $objectManagerProvider->get()->get('Magento\Framework\App\State\CleanupFiles'); $this->cache = $objectManagerProvider->get()->get('Magento\Framework\App\Cache'); - $this->output = $output; - $this->status = $status; parent::__construct($output, $status, $objectManagerProvider, $name, $params); } diff --git a/setup/src/Magento/Setup/Model/Cron/JobUpgrade.php b/setup/src/Magento/Setup/Model/Cron/JobUpgrade.php index ef2e12606bd04..a962c2049f797 100644 --- a/setup/src/Magento/Setup/Model/Cron/JobUpgrade.php +++ b/setup/src/Magento/Setup/Model/Cron/JobUpgrade.php @@ -47,8 +47,6 @@ public function __construct( $params = [] ) { $this->command = $command; - $this->output = $output; - $this->status = $status; $this->queue = $queue; parent::__construct($output, $status, $objectManagerProvider, $name, $params); } @@ -65,8 +63,9 @@ public function execute() $this->queue->addJobs( [['name' => JobFactory::JOB_STATIC_REGENERATE, 'params' => []]] ); + $this->queue->addJobs( - [['name' => \Magento\Setup\Model\Updater::TASK_TYPE_MAINTENANCE_MODE, 'params' => ['enable' => false]]] + [['name' => \Magento\Setup\Model\Cron\JobFactory::JOB_MAINTENANCE_MODE_DISABLE, 'params' => []]] ); $this->params['command'] = 'setup:upgrade'; $this->command->run(new ArrayInput($this->params), $this->output); diff --git a/setup/src/Magento/Setup/Model/Grid/Extension.php b/setup/src/Magento/Setup/Model/Grid/Extension.php new file mode 100644 index 0000000000000..8ac59a5244d92 --- /dev/null +++ b/setup/src/Magento/Setup/Model/Grid/Extension.php @@ -0,0 +1,96 @@ +composerInformation = $composerInformation; + $this->packagesData = $packagesData; + $this->typeMapper = $typeMapper; + } + + /** + * Get formatted list of installed extensions + * + * @return array + */ + public function getList() + { + $extensions = $this->packagesData->getInstalledPackages(); + $packagesForUpdate = $this->packagesData->getPackagesForUpdate(); + + foreach ($extensions as &$extension) { + $extension['update'] = array_key_exists($extension['name'], $packagesForUpdate); + $extension['uninstall'] = true; + if ( + $extension['type'] === ComposerInformation::METAPACKAGE_PACKAGE_TYPE + || !$this->composerInformation->isPackageInComposerJson($extension['name']) + ) { + $extension['uninstall'] = false; + } + } + + return $this->formatExtensions($extensions); + } + + /** + * Get formatted list of extensions that have new version + * + * @return array + */ + public function getListForUpdate() + { + $extensions = $this->packagesData->getPackagesForUpdate(); + + return $this->formatExtensions($extensions); + } + + /** + * Format given array of extensions, add vendor and format extension type + * + * @param array $extensions + * @return array + */ + private function formatExtensions(array $extensions) + { + foreach ($extensions as &$extension) { + $extension['vendor'] = ucfirst(current(explode('/', $extension['name']))); + $extension['type'] = $this->typeMapper->map($extension['name'], $extension['type']); + } + return array_values($extensions); + } +} diff --git a/setup/src/Magento/Setup/Model/Grid/Module.php b/setup/src/Magento/Setup/Model/Grid/Module.php new file mode 100644 index 0000000000000..91536ce875f39 --- /dev/null +++ b/setup/src/Magento/Setup/Model/Grid/Module.php @@ -0,0 +1,160 @@ +composerInformation = $composerInformation; + $this->fullModuleList = $fullModuleList; + $this->moduleList = $moduleList; + $this->objectManagerProvider = $objectManagerProvider; + $this->typeMapper = $typeMapper; + $this->packagesData = $packagesData; + } + + /** + * Get list of installed modules (composer + direct installation) + * + * @return array + */ + public function getList() + { + $this->packageInfo = $this->objectManagerProvider->get() + ->get(PackageInfoFactory::class) + ->create(); + + $items = array_replace_recursive( + $this->composerInformation->getInstalledMagentoPackages(), + $this->getInstalledModules() + ); + + $items = array_filter($items, function ($item) { + return $item['type'] === ComposerInformation::MODULE_PACKAGE_TYPE; + }); + + array_walk($items, function (&$module, $name) { + $module['moduleName'] = $this->packageInfo->getModuleName($name); + $module['enable'] = $this->moduleList->has($module['moduleName']); + $module['vendor'] = ucfirst(current(explode('/', $name))); + $module['type'] = $this->typeMapper->map($name, $module['type']); + $module['requiredBy'] = $this->getModuleRequiredBy($name); + }); + + return array_values($items); + } + + /** + * Get all modules, extensions, metapackages a module required by + * + * @param string $name Module name + * @return array + */ + private function getModuleRequiredBy($name) + { + $result = []; + $modules = $this->packageInfo->getRequiredBy($name); + foreach ($modules as $moduleName) { + $packageName = $this->packageInfo->getPackageName($moduleName); + $result[] = [ + 'name' => $packageName, + 'moduleName' => $moduleName, + 'type' => $this->typeMapper->map($packageName, ComposerInformation::MODULE_PACKAGE_TYPE), + 'enable' => $this->moduleList->has($moduleName), + 'version' => $this->packageInfo->getVersion($moduleName) + ]; + } + + return $result; + } + + /** + * Get full list of installed modules + * + * @return array + */ + private function getInstalledModules() + { + $modules = []; + $allModules = $this->fullModuleList->getNames(); + foreach ($allModules as $module) { + $name = $this->packageInfo->getPackageName($module); + $modules[$name]['name'] = $name; + $modules[$name]['type'] = ComposerInformation::MODULE_PACKAGE_TYPE; + $modules[$name]['version'] = $this->packageInfo->getVersion($module); + } + + return $modules; + } +} diff --git a/setup/src/Magento/Setup/Model/Grid/TypeMapper.php b/setup/src/Magento/Setup/Model/Grid/TypeMapper.php new file mode 100644 index 0000000000000..962baa79f2435 --- /dev/null +++ b/setup/src/Magento/Setup/Model/Grid/TypeMapper.php @@ -0,0 +1,81 @@ + 'Theme', + ComposerInformation::LANGUAGE_PACKAGE_TYPE => 'Language', + ComposerInformation::MODULE_PACKAGE_TYPE => 'Module', + ComposerInformation::METAPACKAGE_PACKAGE_TYPE => 'Metapackage', + ComposerInformation::COMPONENT_PACKAGE_TYPE => 'Component', + ComposerInformation::LIBRARY_PACKAGE_TYPE => 'Library' + ]; + + /** + * TypeMapper constructor. + * @param ComposerInformation $composerInformation + */ + public function __construct( + ComposerInformation $composerInformation + ) { + $this->composerInformation = $composerInformation; + } + + /** + * Retrieve package type for a grid. + * + * @param string $packageName + * @param string $packageType + * @return string + */ + public function map($packageName, $packageType) + { + if (in_array($packageName, $this->getRootRequires()) + && $packageType == ComposerInformation::MODULE_PACKAGE_TYPE + ) { + return self::EXTENSION_PACKAGE_TYPE; + } + + return isset($this->packageTypesMap[$packageType]) ? + $this->packageTypesMap[$packageType] : self::UNDEFINED_PACKAGE_TYPE; + } + + /** + * @return array + */ + private function getRootRequires() + { + if ($this->rootRequires === null) { + $this->rootRequires = array_keys($this->composerInformation->getRootPackage()->getRequires()); + } + return $this->rootRequires; + } +} diff --git a/setup/src/Magento/Setup/Model/ObjectManagerProvider.php b/setup/src/Magento/Setup/Model/ObjectManagerProvider.php index c2c30dda09604..d6aa08a2b7f28 100644 --- a/setup/src/Magento/Setup/Model/ObjectManagerProvider.php +++ b/setup/src/Magento/Setup/Model/ObjectManagerProvider.php @@ -6,11 +6,11 @@ namespace Magento\Setup\Model; +use Symfony\Component\Console\Application; +use Magento\Framework\Console\CommandListInterface; use Magento\Framework\ObjectManagerInterface; use Zend\ServiceManager\ServiceLocatorInterface; use Magento\Setup\Mvc\Bootstrap\InitParamListener; -use Magento\Framework\App\Bootstrap; -use Magento\Framework\App\DeploymentConfig; /** * Object manager provider @@ -31,12 +31,21 @@ class ObjectManagerProvider */ private $objectManager; + /** + * @var Bootstrap + */ + private $bootstrap; + /** * @param ServiceLocatorInterface $serviceLocator + * @param Bootstrap $bootstrap */ - public function __construct(ServiceLocatorInterface $serviceLocator) - { + public function __construct( + ServiceLocatorInterface $serviceLocator, + Bootstrap $bootstrap + ) { $this->serviceLocator = $serviceLocator; + $this->bootstrap = $bootstrap; } /** @@ -49,12 +58,31 @@ public function get() { if (null === $this->objectManager) { $initParams = $this->serviceLocator->get(InitParamListener::BOOTSTRAP_PARAM); - $factory = Bootstrap::createObjectManagerFactory(BP, $initParams); + $factory = $this->getObjectManagerFactory($initParams); $this->objectManager = $factory->create($initParams); + if (PHP_SAPI == 'cli') { + $this->createCliCommands(); + } } return $this->objectManager; } + /** + * Creates cli commands and initialize them with application instance + * + * @return void + */ + private function createCliCommands() + { + /** @var CommandListInterface $commandList */ + $commandList = $this->objectManager->create(CommandListInterface::class); + foreach ($commandList->getCommands() as $command) { + $command->setApplication( + $this->serviceLocator->get(Application::class) + ); + } + } + /** * Causes object manager to be reinitialized the next time it is retrieved. * @@ -84,7 +112,7 @@ public function setObjectManager(ObjectManagerInterface $objectManager) */ public function getObjectManagerFactory($initParams = []) { - return Bootstrap::createObjectManagerFactory( + return $this->bootstrap->createObjectManagerFactory( BP, $initParams ); diff --git a/setup/src/Magento/Setup/Model/PackagesData.php b/setup/src/Magento/Setup/Model/PackagesData.php index 4d113728a8b7e..c4285c5b704ec 100644 --- a/setup/src/Magento/Setup/Model/PackagesData.php +++ b/setup/src/Magento/Setup/Model/PackagesData.php @@ -3,9 +3,10 @@ * Copyright © 2016 Magento. All rights reserved. * See COPYING.txt for license details. */ - namespace Magento\Setup\Model; +use Magento\Framework\Composer\ComposerInformation; + /** * Class PackagesData returns system packages and available for update versions */ @@ -21,7 +22,7 @@ class PackagesData /**#@-*/ /** - * @var \Magento\Framework\Composer\ComposerInformation + * @var ComposerInformation */ private $composerInformation; @@ -30,6 +31,11 @@ class PackagesData */ protected $urlPrefix = 'https://'; + /** + * @var array + */ + private $packagesJson; + /** * @var \Magento\Framework\Filesystem */ @@ -50,17 +56,22 @@ class PackagesData */ private $objectManagerProvider; + /** + * @var array + */ + private $metapackagesMap; + /** * PackagesData constructor. * - * @param \Magento\Framework\Composer\ComposerInformation $composerInformation, + * @param ComposerInformation $composerInformation, * @param \Magento\Setup\Model\DateTime\TimeZoneProvider $timeZoneProvider, * @param \Magento\Setup\Model\PackagesAuth $packagesAuth, * @param \Magento\Framework\Filesystem $filesystem, * @param \Magento\Setup\Model\ObjectManagerProvider $objectManagerProvider */ public function __construct( - \Magento\Framework\Composer\ComposerInformation $composerInformation, + ComposerInformation $composerInformation, \Magento\Setup\Model\DateTime\TimeZoneProvider $timeZoneProvider, \Magento\Setup\Model\PackagesAuth $packagesAuth, \Magento\Framework\Filesystem $filesystem, @@ -80,7 +91,9 @@ public function __construct( public function syncPackagesData() { try { - $lastSyncData = $this->syncPackagesForUpdate(); + $lastSyncData = []; + $lastSyncData['lastSyncDate'] = $this->getLastSyncDate(); + $lastSyncData['packages'] = $this->getPackagesForUpdate(); $packagesForInstall = $this->syncPackagesForInstall(); $lastSyncData = $this->formatLastSyncData($packagesForInstall, $lastSyncData); return $lastSyncData; @@ -138,38 +151,58 @@ private function formatSyncDate($syncDate) 'date' => $timezone->formatDateTime( new \DateTime('@'.$syncDate), \IntlDateFormatter::MEDIUM, - \IntlDateFormatter::NONE + \IntlDateFormatter::NONE, + null, + null, + 'd MMM Y' ), 'time' => $timezone->formatDateTime( new \DateTime('@'.$syncDate), \IntlDateFormatter::NONE, - \IntlDateFormatter::MEDIUM + \IntlDateFormatter::MEDIUM, + null, + null, + 'hh:mma' ), ]; } /** - * Sync packages that need updates + * Get list of manually installed package + * + * @return array + */ + public function getInstalledPackages() + { + return array_intersect_key( + $this->composerInformation->getInstalledMagentoPackages(), + $this->composerInformation->getRootPackage()->getRequires() + ); + } + + /** + * Get packages that need updates * * @return array */ - private function syncPackagesForUpdate() + public function getPackagesForUpdate() { - $availableVersions = []; - $packages = $this->composerInformation->getInstalledMagentoPackages(); + $packagesForUpdate = []; + $packages = $this->getInstalledPackages(); + foreach ($packages as $package) { $latestProductVersion = $this->getLatestNonDevVersion($package['name']); if ($latestProductVersion && version_compare($latestProductVersion, $package['version'], '>')) { - $packageName = $package['name']; - $availableVersions[$packageName] = [ - 'name' => $packageName, - 'latestVersion' => $latestProductVersion - ]; + $availableVersions = $this->getPackageAvailableVersions($package['name']); + $package['latestVersion'] = $latestProductVersion; + $package['versions'] = array_filter($availableVersions, function ($version) use ($package) { + return version_compare($version, $package['version'], '>'); + }); + $packagesForUpdate[$package['name']] = $package; } } - $lastSyncData['lastSyncDate'] = $this->getLastSyncDate(); - $lastSyncData['packages'] = $availableVersions; - return $lastSyncData; + + return $packagesForUpdate; } /** @@ -190,22 +223,32 @@ private function getLatestNonDevVersion($package) } /** - * Gets packages.json + * Gets array of packages from packages.json * - * @return string + * @return array * @throws \RuntimeException */ private function getPackagesJson() { + if ($this->packagesJson !== null) { + return $this->packagesJson; + } + try { - $packagesJson = ''; + $jsonData = ''; $directory = $this->filesystem->getDirectoryRead( \Magento\Framework\App\Filesystem\DirectoryList::COMPOSER_HOME ); if ($directory->isExist(PackagesAuth::PATH_TO_PACKAGES_FILE)) { - $packagesJson = $directory->readFile(PackagesAuth::PATH_TO_PACKAGES_FILE); + $jsonData = $directory->readFile(PackagesAuth::PATH_TO_PACKAGES_FILE); } - return $packagesJson; + $packagesData = json_decode($jsonData, true); + + $this->packagesJson = isset($packagesData['packages']) ? + $packagesData['packages'] : + []; + + return $this->packagesJson; } catch (\Exception $e) { throw new \RuntimeException('Error in reading packages.json'); } @@ -221,15 +264,10 @@ private function syncPackagesForInstall() { try { $packagesJson = $this->getPackagesJson(); - if ($packagesJson) { - $packagesJsonData = json_decode($packagesJson, true); - } else { - $packagesJsonData['packages'] = []; - } $packages = $this->composerInformation->getInstalledMagentoPackages(); $packageNames = array_column($packages, 'name'); $installPackages = []; - foreach ($packagesJsonData['packages'] as $packageName => $package) { + foreach ($packagesJson as $packageName => $package) { if (!empty($package) && isset($package) && is_array($package)) { $package = $this->unsetDevVersions($package); ksort($package); @@ -296,29 +334,18 @@ protected function unsetDevVersions($package) */ public function getPackagesForInstall() { - $actualInstallackages = []; - $installPackagesInfo = $this->syncPackagesForInstall(); + $actualInstallPackages = []; try { - $installPackages = $installPackagesInfo['packages']; - $availablePackageNames = array_column( - $this->composerInformation->getInstalledMagentoPackages(), - 'name' - ); + $installPackages = $this->syncPackagesForInstall()['packages']; $metaPackageByPackage = $this->getMetaPackageForPackage($installPackages); foreach ($installPackages as $package) { - if (!in_array($package['name'], $availablePackageNames) && - in_array($package['type'], $this->composerInformation->getPackagesTypes()) && - strpos($package['name'], 'magento/product-') === false && - strpos($package['name'], 'magento/project-') === false - ) { - $package['metapackage'] = - isset($metaPackageByPackage[$package['name']]) ? $metaPackageByPackage[$package['name']] : ''; - $actualInstallackages[$package['name']] = $package; - $actualInstallackages[$package['name']]['version'] = $package['versions'][0]; - } + $package['metapackage'] = + isset($metaPackageByPackage[$package['name']]) ? $metaPackageByPackage[$package['name']] : ''; + $actualInstallPackages[$package['name']] = $package; + $actualInstallPackages[$package['name']]['version'] = $package['versions'][0]; } - $installPackagesInfo['packages'] = $actualInstallackages; + $installPackagesInfo['packages'] = $actualInstallPackages; return $installPackagesInfo; } catch (\Exception $e) { throw new \RuntimeException('Error in getting new packages to install'); @@ -334,7 +361,7 @@ private function getMetaPackageForPackage($packages) { $result = []; foreach ($packages as $package) { - if ($package['type'] == \Magento\Framework\Composer\ComposerInformation::METAPACKAGE_PACKAGE_TYPE) { + if ($package['type'] == ComposerInformation::METAPACKAGE_PACKAGE_TYPE) { if (isset($package['require'])) { foreach ($package['require'] as $key => $requirePackage) { $result[$key] = $package['name']; @@ -347,6 +374,30 @@ private function getMetaPackageForPackage($packages) return $result; } + /** + * Get all metapackages + * + * @return array + */ + public function getMetaPackagesMap() + { + if ($this->metapackagesMap === null) { + $packages = $this->getPackagesJson(); + array_walk($packages, function ($packageVersions) { + $package = array_shift($packageVersions); + if ($package['type'] == ComposerInformation::METAPACKAGE_PACKAGE_TYPE + && isset($package['require']) + ) { + foreach (array_keys($package['require']) as $key) { + $this->metapackagesMap[$key] = $package['name']; + } + } + }); + } + + return $this->metapackagesMap; + } + /** * Retrieve all available versions for a package * @@ -363,15 +414,10 @@ private function getPackageAvailableVersions($package) count($magentoRepositories) === 1 && strpos($magentoRepositories[0], $this->packagesAuth->getCredentialBaseUrl()) ) { - $packagesJsonData = $this->getPackagesJson(); - if ($packagesJsonData) { - $packagesJsonData = json_decode($packagesJsonData, true); - } else { - $packagesJsonData['packages'] = []; - } + $packagesJson = $this->getPackagesJson(); - if (isset($packagesJsonData['packages'][$package])) { - $packageVersions = $packagesJsonData['packages'][$package]; + if (isset($packagesJson[$package])) { + $packageVersions = $packagesJson[$package]; uksort($packageVersions, 'version_compare'); $packageVersions = array_reverse($packageVersions); diff --git a/setup/src/Magento/Setup/Model/UpdaterTaskCreator.php b/setup/src/Magento/Setup/Model/UpdaterTaskCreator.php index c6975c847030b..e7dc80a90b2ed 100644 --- a/setup/src/Magento/Setup/Model/UpdaterTaskCreator.php +++ b/setup/src/Magento/Setup/Model/UpdaterTaskCreator.php @@ -108,8 +108,7 @@ public function createUpdaterTasks(array $postPayload) $errorMessage .= $this->updater->createUpdaterTask( [], - \Magento\Setup\Model\Updater::TASK_TYPE_MAINTENANCE_MODE, - ['enable' => true] + \Magento\Setup\Model\Cron\JobFactory::JOB_MAINTENANCE_MODE_ENABLE ); /** @@ -158,9 +157,9 @@ public function createUpdaterTasks(array $postPayload) if ($jobType == 'disable') { $errorMessage .= $this->updater->createUpdaterTask( [], - \Magento\Setup\Model\Updater::TASK_TYPE_MAINTENANCE_MODE, - ['enable' => false] + \Magento\Setup\Model\Cron\JobFactory::JOB_MAINTENANCE_MODE_DISABLE ); + } return $errorMessage; @@ -171,7 +170,7 @@ public function createUpdaterTasks(array $postPayload) * * @param string $jobType * @param array $postPayload - * @param array $addtionalOptions + * @param array $additionalOptions * @param string $cronTaskType * @return void */ diff --git a/setup/src/Magento/Setup/Test/Unit/Console/Command/MaintenanceDisableCommandTest.php b/setup/src/Magento/Setup/Test/Unit/Console/Command/MaintenanceDisableCommandTest.php index e7f9f7ddb2921..23afd12b9be62 100644 --- a/setup/src/Magento/Setup/Test/Unit/Console/Command/MaintenanceDisableCommandTest.php +++ b/setup/src/Magento/Setup/Test/Unit/Console/Command/MaintenanceDisableCommandTest.php @@ -83,4 +83,36 @@ public function executeDataProvider() ], ]; } + + /** + * @dataProvider isSetAddressInfoDataProvider + * @param array $ip + * @param bool $expected + */ + public function testIsSetAddressInfo($ip, $expected) + { + $this->maintenanceMode + ->expects($this->any()) + ->method('getAddressInfo') + ->willReturn($ip); + + $this->assertEquals($expected, $this->command->isSetAddressInfo()); + } + + /** + * return array + */ + public function isSetAddressInfoDataProvider() + { + return [ + [ + 'ip' => ['127.0.0.1', '127.0.0.2'], + 'expected' => true + ], + [ + 'ip' => [], + 'expected' => false + ], + ]; + } } diff --git a/setup/src/Magento/Setup/Test/Unit/Controller/ComponentGridTest.php b/setup/src/Magento/Setup/Test/Unit/Controller/ComponentGridTest.php deleted file mode 100644 index fc3aa5c3d56bc..0000000000000 --- a/setup/src/Magento/Setup/Test/Unit/Controller/ComponentGridTest.php +++ /dev/null @@ -1,229 +0,0 @@ -lastSyncData = [ - "lastSyncDate" => [ - 'date' => self::FORMATTED_DATE, - 'time' => self::FORMATTED_TIME, - ], - "packages" => [ - 'magento/sample-module-one' => [ - 'name' => 'magento/sample-module-one', - 'type' => 'magento2-module', - 'version' => '1.0.0' - ] - ], - 'countOfInstall' => 0, - 'countOfUpdate' => 1 - ]; - $this->componentData = [ - 'magento/sample-module-one' => [ - 'name' => 'magento/sample-module-one', - 'type' => 'magento2-module', - 'version' => '1.0.0' - ] - ]; - $allComponentData = [ - 'magento/sample-module-two' => [ - 'name' => 'magento/sample-module-two', - 'type' => 'magento2-module', - 'version' => '1.0.0' - ] - ]; - $allComponentData = array_merge($allComponentData, $this->componentData); - $this->composerInformationMock = $this->getMock( - 'Magento\Framework\Composer\ComposerInformation', - [], - [], - '', - false - ); - /** @var ObjectManagerProvider|\PHPUnit_Framework_MockObject_MockObject $objectManagerProvider */ - $this->objectManagerProvider = $this->getMock('Magento\Setup\Model\ObjectManagerProvider', [], [], '', false); - $this->packageInfoFactoryMock = $this - ->getMock('Magento\Framework\Module\PackageInfoFactory', [], [], '', false); - $this->enabledModuleListMock = $this->getMock('Magento\Framework\Module\ModuleList', [], [], '', false); - $this->enabledModuleListMock->expects($this->any())->method('has')->willReturn(true); - $this->fullModuleListMock = $this->getMock('Magento\Framework\Module\FullModuleList', [], [], '', false); - $this->fullModuleListMock->expects($this->any())->method('getNames')->willReturn($allComponentData); - - $this->packageInfo = $this->getMock('Magento\Framework\Module\PackageInfo', [], [], '', false); - $this->packagesData = $this->getMock('Magento\Setup\Model\PackagesData', [], [], '', false); - $this->packagesAuth = $this->getMock('Magento\Setup\Model\PackagesAuth', [], [], '', false); - - $this->controller = new ComponentGrid( - $this->composerInformationMock, - $this->objectManagerProvider, - $this->packagesData, - $this->packagesAuth - ); - } - - public function testIndexAction() - { - $viewModel = $this->controller->indexAction(); - $this->assertInstanceOf('Zend\View\Model\ViewModel', $viewModel); - $this->assertTrue($viewModel->terminate()); - } - - public function testComponentsAction() - { - $objectManager = $this->getMock('Magento\Framework\ObjectManagerInterface', [], [], '', false); - $this->objectManagerProvider->expects($this->once()) - ->method('get') - ->willReturn($objectManager); - $objectManager->expects($this->any()) - ->method('get') - ->willReturnMap([ - ['Magento\Framework\Module\PackageInfoFactory', $this->packageInfoFactoryMock], - ['Magento\Framework\Module\FullModuleList', $this->fullModuleListMock], - ['Magento\Framework\Module\ModuleList', $this->enabledModuleListMock], - ]); - $this->packageInfoFactoryMock->expects($this->once())->method('create')->willReturn($this->packageInfo); - $this->fullModuleListMock->expects($this->once()) - ->method('getNames') - ->willReturn(['magento/sample-module1']); - $this->packageInfo->expects($this->once()) - ->method('getModuleName') - ->willReturn('Sample_Module'); - $this->packageInfo->expects($this->exactly(2)) - ->method('getPackageName') - ->willReturn($this->componentData['magento/sample-module-one']['name']); - $this->packageInfo->expects($this->exactly(2)) - ->method('getVersion') - ->willReturn($this->componentData['magento/sample-module-one']['version']); - $this->enabledModuleListMock->expects($this->once()) - ->method('has') - ->willReturn(true); - $this->composerInformationMock->expects($this->once()) - ->method('getInstalledMagentoPackages') - ->willReturn($this->componentData); - $this->composerInformationMock->expects($this->once()) - ->method('isPackageInComposerJson') - ->willReturn(true); - $this->packagesAuth->expects($this->once())->method('getAuthJsonData')->willReturn([ - 'username' => 'someusername', 'password' => 'somepassword' - ]); - $this->packagesData->expects($this->once()) - ->method('syncPackagesData') - ->willReturn($this->lastSyncData); - $jsonModel = $this->controller->componentsAction(); - $this->assertInstanceOf('Zend\View\Model\JsonModel', $jsonModel); - $variables = $jsonModel->getVariables(); - $this->assertArrayHasKey('success', $variables); - $this->assertTrue($variables['success']); - $expected = [[ - 'name' => 'magento/sample-module-one', - 'type' => 'magento2-module', - 'version' => '1.0.0', - 'update' => false, - 'uninstall' => true, - 'vendor' => 'magento', - 'moduleName' => 'Sample_Module', - 'enable' => true, - 'disable' => false - ]]; - $this->assertEquals($expected, $variables['components']); - $this->assertArrayHasKey('total', $variables); - $this->assertEquals(1, $variables['total']); - $this->assertEquals($this->lastSyncData, $variables['lastSyncData']); - } - - public function testSyncAction() - { - $this->packagesData->expects($this->once()) - ->method('syncPackagesData') - ->willReturn($this->lastSyncData); - $jsonModel = $this->controller->syncAction(); - $this->assertInstanceOf('Zend\View\Model\JsonModel', $jsonModel); - $variables = $jsonModel->getVariables(); - $this->assertArrayHasKey('success', $variables); - $this->assertTrue($variables['success']); - $this->assertEquals($this->lastSyncData, $variables['lastSyncData']); - } -} diff --git a/setup/src/Magento/Setup/Test/Unit/Controller/ExtensionGridTest.php b/setup/src/Magento/Setup/Test/Unit/Controller/ExtensionGridTest.php new file mode 100644 index 0000000000000..e5f4baad975cf --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Controller/ExtensionGridTest.php @@ -0,0 +1,157 @@ +lastSyncData = [ + "lastSyncDate" => [ + 'date' => self::FORMATTED_DATE, + 'time' => self::FORMATTED_TIME, + ], + "packages" => [ + 'magento/sample-module-one' => [ + 'name' => 'magento/sample-module-one', + 'type' => 'magento2-module', + 'version' => '1.0.0' + ] + ], + 'countOfInstall' => 0, + 'countOfUpdate' => 1 + ]; + $this->extensionData = [ + [ + 'name' => 'magento/sample-module-one', + 'type' => 'magento2-module', + 'version' => '1.0.0', + 'update' => false, + 'uninstall' => true, + 'vendor' => 'magento', + ] + ]; + + $this->packagesDataMock = $this->getMock(PackagesData::class, [], [], '', false); + $this->packagesAuthMock = $this->getMock(PackagesAuth::class, [], [], '', false); + $this->gridExtensionMock = $this->getMock(Extension::class, [], [], '', false); + + $this->controller = new ExtensionGrid( + $this->packagesDataMock, + $this->packagesAuthMock, + $this->gridExtensionMock + ); + } + + public function testIndexAction() + { + $viewModel = $this->controller->indexAction(); + $this->assertInstanceOf('Zend\View\Model\ViewModel', $viewModel); + $this->assertTrue($viewModel->terminate()); + } + + public function testExtensionsAction() + { + $this->gridExtensionMock->expects($this->once()) + ->method('getList') + ->willReturn($this->extensionData); + $this->packagesDataMock->expects($this->once()) + ->method('syncPackagesData') + ->willReturn($this->lastSyncData); + $this->packagesAuthMock->expects($this->once()) + ->method('getAuthJsonData') + ->willReturn( + [ + 'username' => 'someusername', + 'password' => 'somepassword' + ] + ); + + $jsonModel = $this->controller->extensionsAction(); + $this->assertInstanceOf('Zend\View\Model\JsonModel', $jsonModel); + $variables = $jsonModel->getVariables(); + $this->assertArrayHasKey('success', $variables); + $this->assertTrue($variables['success']); + $this->assertEquals($this->extensionData, $variables['extensions']); + $this->assertArrayHasKey('total', $variables); + $this->assertEquals(1, $variables['total']); + $this->assertEquals($this->lastSyncData, $variables['lastSyncData']); + } + + public function testSyncAction() + { + $authDataJson = ['username' => 'admin', 'password' => '12345']; + + $this->packagesDataMock->expects($this->once()) + ->method('syncPackagesData') + ->willReturn($this->lastSyncData); + $this->packagesAuthMock->expects($this->once()) + ->method('getAuthJsonData') + ->willReturn($authDataJson); + $this->packagesAuthMock->expects($this->once()) + ->method('checkCredentials') + ->with( + $authDataJson['username'], + $authDataJson['password'] + ); + + $jsonModel = $this->controller->syncAction(); + $this->assertInstanceOf('Zend\View\Model\JsonModel', $jsonModel); + $variables = $jsonModel->getVariables(); + $this->assertArrayHasKey('success', $variables); + $this->assertTrue($variables['success']); + $this->assertEquals($this->lastSyncData, $variables['lastSyncData']); + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Controller/InstallExtensionGridTest.php b/setup/src/Magento/Setup/Test/Unit/Controller/InstallExtensionGridTest.php index b988ec81c9242..8c4647f5a1fff 100644 --- a/setup/src/Magento/Setup/Test/Unit/Controller/InstallExtensionGridTest.php +++ b/setup/src/Magento/Setup/Test/Unit/Controller/InstallExtensionGridTest.php @@ -6,7 +6,9 @@ namespace Magento\Setup\Test\Unit\Controller; -use \Magento\Setup\Controller\InstallExtensionGrid; +use Magento\Setup\Controller\InstallExtensionGrid; +use Magento\Setup\Model\Grid\TypeMapper; +use Magento\Setup\Model\PackagesData; class InstallExtensionGridTest extends \PHPUnit_Framework_TestCase { @@ -18,15 +20,28 @@ class InstallExtensionGridTest extends \PHPUnit_Framework_TestCase private $controller; /** - * @var \Magento\Setup\Model\PackagesData + * @var PackagesData|\PHPUnit_Framework_MockObject_MockObject */ private $packagesData; + /** + * @var TypeMapper|\PHPUnit_Framework_MockObject_MockObject + */ + private $typeMapperMock; + public function setUp() { - $this->packagesData = - $this->getMock('Magento\Setup\Model\PackagesData', ['getPackagesForInstall'], [], '', false); - $this->controller = new InstallExtensionGrid($this->packagesData); + $this->packagesData = $this->getMockBuilder(PackagesData::class) + ->disableOriginalConstructor() + ->getMock(); + $this->typeMapperMock = $this->getMockBuilder(TypeMapper::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->controller = new InstallExtensionGrid( + $this->packagesData, + $this->typeMapperMock + ); } /** @@ -35,7 +50,7 @@ public function setUp() public function testIndexAction() { $viewModel = $this->controller->indexAction(); - $this->assertInstanceOf('\Zend\View\Model\ViewModel', $viewModel); + static::assertInstanceOf(\Zend\View\Model\ViewModel::class, $viewModel); } /** @@ -45,17 +60,20 @@ public function testIndexAction() */ public function testExtensionsAction($extensions) { - $this->packagesData - ->expects($this->once()) + $this->packagesData->expects(static::once()) ->method('getPackagesForInstall') - ->will($this->returnValue($extensions)); + ->willReturn($extensions); + $this->typeMapperMock->expects(static::exactly(4)) + ->method('map') + ->willReturn($extensions); + $jsonModel = $this->controller->extensionsAction(); - $this->assertInstanceOf('\Zend\View\Model\JsonModel', $jsonModel); + static::assertInstanceOf('\Zend\View\Model\JsonModel', $jsonModel); $variables = $jsonModel->getVariables(); - $this->assertArrayHasKey('success', $variables); - $this->assertArrayHasKey('extensions', $variables); - $this->assertArrayHasKey('total', $variables); - $this->assertTrue($variables['success']); + static::assertArrayHasKey('success', $variables); + static::assertArrayHasKey('extensions', $variables); + static::assertArrayHasKey('total', $variables); + static::assertTrue($variables['success']); } /** @@ -63,25 +81,29 @@ public function testExtensionsAction($extensions) */ public function dataProviderForTestExtensionsAction() { - $extensions = [ + $extensions['packages'] = [ 'magento/testing-extension' => [ 'name' => 'magento/testing-extension', 'type' => 'module', + 'vendor' => 'magento', 'version' => '2.2.2', 'author' => 'magento'], 'magento/my-first-module' => [ 'name' => 'magento/my-first-module', 'type' => 'module', + 'vendor' => 'magento', 'version' => '2.0.0', 'author' => 'magento'], 'magento/last-extension' => [ 'name' => 'magento/last-extension', 'type' => 'module', + 'vendor' => 'magento', 'version' => '2.1.1', 'author' => 'magento'], 'magento/magento-second-module' => [ 'name' => 'magento/magento-second-module', 'type' => 'module', + 'vendor' => 'magento', 'version' => '2.0.0', 'author' => 'magento'] ]; diff --git a/setup/src/Magento/Setup/Test/Unit/Controller/ModuleGridTest.php b/setup/src/Magento/Setup/Test/Unit/Controller/ModuleGridTest.php new file mode 100644 index 0000000000000..178871df12fe1 --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Controller/ModuleGridTest.php @@ -0,0 +1,83 @@ +gridModuleMock = $this->getMockBuilder(Module::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->controller = new ModuleGrid( + $this->gridModuleMock + ); + } + + public function testIndexAction() + { + $viewModel = $this->controller->indexAction(); + $this->assertInstanceOf('Zend\View\Model\ViewModel', $viewModel); + $this->assertTrue($viewModel->terminate()); + } + + public function testModulesAction() + { + $moduleList = [ + [ + 'name' => 'magento/sample-module-one', + 'type' => 'Module', + 'version' => '1.0.0', + 'vendor' => 'magento', + 'moduleName' => 'Sample_Module_One', + 'enable' => true, + 'requiredBy' => [] + ], + [ + 'name' => 'magento/sample-module-two', + 'type' => 'Module', + 'version' => '1.0.0', + 'vendor' => 'magento', + 'moduleName' => 'Sample_Module_Two', + 'enable' => true, + 'requiredBy' => [] + ] + ]; + + $this->gridModuleMock->expects(static::once()) + ->method('getList') + ->willReturn($moduleList); + + $jsonModel = $this->controller->modulesAction(); + $this->assertInstanceOf('Zend\View\Model\JsonModel', $jsonModel); + $variables = $jsonModel->getVariables(); + $this->assertArrayHasKey('success', $variables); + $this->assertTrue($variables['success']); + $this->assertEquals($moduleList, $variables['modules']); + $this->assertArrayHasKey('total', $variables); + $this->assertEquals(2, $variables['total']); + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Controller/UpdateExtensionGridTest.php b/setup/src/Magento/Setup/Test/Unit/Controller/UpdateExtensionGridTest.php new file mode 100644 index 0000000000000..a76e9bca63c46 --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Controller/UpdateExtensionGridTest.php @@ -0,0 +1,75 @@ +gridExtensionMock = $this->getMock(Extension::class, [], [], '', false); + + $this->controller = new UpdateExtensionGrid( + $this->gridExtensionMock + ); + } + + public function testIndexAction() + { + $viewModel = $this->controller->indexAction(); + + $this->assertInstanceOf(ViewModel::class, $viewModel); + $this->assertTrue($viewModel->terminate()); + } + + public function testExtensionsAction() + { + $extensionData = [ + [ + 'name' => 'magento-package-1', + 'type' => 'magento2-module', + 'version' => '1.0.0', + 'latestVersion' => '2.0.5', + 'versions' => ['2.0.5', '2.0.4', '2.0.3'], + 'update' => true, + 'uninstall' => true + ] + ]; + $this->gridExtensionMock->expects($this->once()) + ->method('getListForUpdate') + ->willReturn($extensionData); + + $jsonModel = $this->controller->extensionsAction(); + $this->assertInstanceOf(JsonModel::class, $jsonModel); + $variables = $jsonModel->getVariables(); + + $this->assertArrayHasKey('success', $variables); + $this->assertTrue($variables['success']); + $this->assertEquals($extensionData, $variables['extensions']); + $this->assertArrayHasKey('total', $variables); + $this->assertEquals(1, $variables['total']); + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobComponentUninstallTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobComponentUninstallTest.php index e08760a140412..fed80bca8c2e5 100644 --- a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobComponentUninstallTest.php +++ b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobComponentUninstallTest.php @@ -8,6 +8,7 @@ use Magento\Framework\ObjectManagerInterface; use Magento\Setup\Model\Cron\ComponentUninstallerFactory; use Magento\Setup\Model\Cron\JobComponentUninstall; +use Magento\Framework\Composer\ComposerInformation; class JobComponentUninstallTest extends \PHPUnit_Framework_TestCase { @@ -147,7 +148,7 @@ public function testExecuteModule() $this->composerInformation->expects($this->once()) ->method('getInstalledMagentoPackages') - ->willReturn(['vendor/module-package' => ['type' => JobComponentUninstall::COMPONENT_MODULE]]); + ->willReturn(['vendor/module-package' => ['type' => ComposerInformation::MODULE_PACKAGE_TYPE]]); $this->job->execute(); } @@ -157,7 +158,7 @@ public function testExecuteLanguage() $this->setUpQuence(); $this->composerInformation->expects($this->once()) ->method('getInstalledMagentoPackages') - ->willReturn(['vendor/language-a' => ['type' => JobComponentUninstall::COMPONENT_LANGUAGE]]); + ->willReturn(['vendor/language-a' => ['type' => ComposerInformation::LANGUAGE_PACKAGE_TYPE]]); $this->moduleUninstallHelper->expects($this->never())->method($this->anything()); $this->themeUninstallHelper->expects($this->never())->method($this->anything()); @@ -189,7 +190,7 @@ public function testExecuteTheme() $this->setUpQuence(); $this->composerInformation->expects($this->once()) ->method('getInstalledMagentoPackages') - ->willReturn(['vendor/theme-a' => ['type' => JobComponentUninstall::COMPONENT_THEME]]); + ->willReturn(['vendor/theme-a' => ['type' => ComposerInformation::THEME_PACKAGE_TYPE]]); $this->themeUninstallHelper->expects($this->once()) ->method('uninstall') ->with($this->output, 'vendor/theme-a'); @@ -295,7 +296,7 @@ public function testExecuteUpdateFails() $this->updater->expects($this->once())->method('createUpdaterTask')->willReturn('error'); $this->composerInformation->expects($this->once()) ->method('getInstalledMagentoPackages') - ->willReturn(['vendor/language-a' => ['type' => JobComponentUninstall::COMPONENT_LANGUAGE]]); + ->willReturn(['vendor/language-a' => ['type' => ComposerInformation::LANGUAGE_PACKAGE_TYPE]]); $this->job = new JobComponentUninstall( $this->composerInformation, diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobFactoryTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobFactoryTest.php index 3dc1e97ac644d..63cf4795360e3 100644 --- a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobFactoryTest.php +++ b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobFactoryTest.php @@ -6,6 +6,10 @@ namespace Magento\Setup\Test\Unit\Model\Cron; use Magento\Setup\Model\Cron\JobFactory; +use Magento\Backend\Console\Command\CacheDisableCommand; +use Magento\Backend\Console\Command\CacheEnableCommand; +use Magento\Setup\Console\Command\MaintenanceDisableCommand; +use Magento\Setup\Console\Command\MaintenanceEnableCommand; class JobFactoryTest extends \PHPUnit_Framework_TestCase { @@ -39,6 +43,8 @@ public function setUp() $moduleRegistryUninstaller = $this->getMock('Magento\Setup\Model\ModuleRegistryUninstaller', [], [], '', false); $moduleEnabler = $this->getMock('Magento\Setup\Console\Command\ModuleEnableCommand', [], [], '', false); $moduleDisabler = $this->getMock('Magento\Setup\Console\Command\ModuleDisableCommand', [], [], '', false); + $maintenanceDisabler = $this->getMock(MaintenanceDisableCommand::class, [], [], '', false); + $maintenanceEnabler = $this->getMock(MaintenanceEnableCommand::class, [], [], '', false); $updater = $this->getMock('Magento\Setup\Model\Updater', [], [], '', false); $queue = $this->getMock('Magento\Setup\Model\Cron\Queue', [], [], '', false); @@ -52,6 +58,8 @@ public function setUp() ['Magento\Setup\Model\ModuleRegistryUninstaller', $moduleRegistryUninstaller], ['Magento\Setup\Console\Command\ModuleDisableCommand', $moduleDisabler], ['Magento\Setup\Console\Command\ModuleEnableCommand', $moduleEnabler], + [MaintenanceDisableCommand::class, $maintenanceDisabler], + [MaintenanceEnableCommand::class, $maintenanceEnabler], ['Magento\Setup\Model\Cron\Queue', $queue] ]; @@ -131,50 +139,17 @@ public function testCreateUnknownJob() $this->jobFactory->create('unknown', []); } - public function testModuleDisable() - { - $valueMap = [ - [ - 'Magento\Framework\Module\PackageInfoFactory', - $this->getMock('Magento\Framework\Module\PackageInfoFactory', [], [], '', false) - ], - ]; - $this->objectManager->expects($this->any()) - ->method('get') - ->will($this->returnValueMap($valueMap)); - - $this->assertInstanceOf( - 'Magento\Setup\Model\Cron\AbstractJob', - $this->jobFactory->create('setup:module:disable', []) - ); - } - - public function testModuleEnable() - { - $valueMap = [ - [ - 'Magento\Framework\Module\PackageInfoFactory', - $this->getMock('Magento\Framework\Module\PackageInfoFactory', [], [], '', false) - ], - ]; - $this->objectManager->expects($this->any()) - ->method('get') - ->will($this->returnValueMap($valueMap)); - - $this->assertInstanceOf( - 'Magento\Setup\Model\Cron\AbstractJob', - $this->jobFactory->create('setup:module:enable', []) - ); - } - public function testCacheEnable() { $valueMap = [ [ - 'Magento\Backend\Console\Command\CacheEnableCommand', - $this->getMock('Magento\Backend\Console\Command\CacheEnableCommand', [], [], '', false) + CacheEnableCommand::class, + $this->getMockBuilder(CacheEnableCommand::class) + ->disableOriginalConstructor() + ->getMock() ] ]; + $this->objectManager->expects($this->any()) ->method('get') ->will($this->returnValueMap($valueMap)); @@ -190,7 +165,9 @@ public function testCacheDisable() $valueMap = [ [ 'Magento\Backend\Console\Command\CacheDisableCommand', - $this->getMock('Magento\Backend\Console\Command\CacheDisableCommand', [], [], '', false) + $this->getMockBuilder(CacheDisableCommand::class) + ->disableOriginalConstructor() + ->getMock() ] ]; $this->objectManager->expects($this->any())->method('get')->will($this->returnValueMap($valueMap)); @@ -200,6 +177,22 @@ public function testCacheDisable() $this->jobFactory->create('setup:cache:disable', []) ); } + + public function testMaintenanceModeEnable() + { + $this->assertInstanceOf( + 'Magento\Setup\Model\Cron\JobSetMaintenanceMode', + $this->jobFactory->create(JobFactory::JOB_MAINTENANCE_MODE_ENABLE, []) + ); + } + + public function testMaintenanceModeDisable() + { + $this->assertInstanceOf( + 'Magento\Setup\Model\Cron\JobSetMaintenanceMode', + $this->jobFactory->create(JobFactory::JOB_MAINTENANCE_MODE_DISABLE, []) + ); + } } diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetCacheTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetCacheTest.php index af6836d72052b..260b4d08217fd 100644 --- a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetCacheTest.php +++ b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetCacheTest.php @@ -32,7 +32,7 @@ public function testSetCache($commandClass, $arrayInput, $jobName, $params) ]; $objectManager->expects($this->atLeastOnce())->method('get')->will($this->returnValueMap($valueMap)); $objectManagerProvider->expects($this->once())->method('get')->willReturn($objectManager); - + $output = $this->getMockForAbstractClass('Symfony\Component\Console\Output\OutputInterface', [], '', false); $status = $this->getMock('Magento\Setup\Model\Cron\Status', [], [], '', false); $command = $this->getMock($commandClass, [], [], '', false); diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetMaintenanceModeTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetMaintenanceModeTest.php new file mode 100644 index 0000000000000..450b9a44fcd81 --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Model/Cron/JobSetMaintenanceModeTest.php @@ -0,0 +1,106 @@ +objectManagerProviderMock = $this->getMock(ObjectManagerProvider::class, [], [], '', false); + $objectManager = $this->getMockForAbstractClass(ObjectManagerInterface::class, [], '', false); + $cleanupFiles = $this->getMock(CleanupFiles::class, [], [], '', false); + $cache = $this->getMock(Cache::class, [], [], '', false); + $valueMap = [ + [CleanupFiles::class, $cleanupFiles], + [Cache::class, $cache], + + ]; + $objectManager->expects($this->atLeastOnce())->method('get')->will($this->returnValueMap($valueMap)); + $this->objectManagerProviderMock->expects($this->once())->method('get')->willReturn($objectManager); + + $this->statusMock = $this->getMock(Status::class, [], [], '', false); + $this->outputMock = $this->getMock(OutputInterface::class); + } + + public function testExecuteMaintenanceModeDisable() + { + $command = $this->getMock(MaintenanceDisableCommand::class, [], [], '', false); + $command->expects($this->once())->method('run'); + + $jobMaintenanceDisable = new JobSetMaintenanceMode( + $command, + $this->objectManagerProviderMock, + $this->outputMock, + $this->statusMock, + 'setup:maintenance:disable' + ); + $jobMaintenanceDisable->execute(); + } + + /** + * Test MaintenanceModeDisable job execution when maintenance mode is set manually by admin + * + * @expectedException \RuntimeException + */ + public function testExecuteMaintenanceModeDisableExeption() + { + $command = $this->getMock(MaintenanceDisableCommand::class, [], [], '', false); + $command->expects($this->once())->method('isSetAddressInfo')->willReturn(true); + $command->expects($this->never())->method('run'); + + $jobMaintenanceDisable = new JobSetMaintenanceMode( + $command, + $this->objectManagerProviderMock, + $this->outputMock, + $this->statusMock, + 'setup:maintenance:disable' + ); + $jobMaintenanceDisable->execute(); + } + + public function testExecuteMaintenanceModeEnable() + { + $command = $this->getMock(MaintenanceEnableCommand::class, [], [], '', false); + $command->expects($this->once())->method('run'); + + $jobMaintenanceEnable = new JobSetMaintenanceMode( + $command, + $this->objectManagerProviderMock, + $this->outputMock, + $this->statusMock, + 'setup:maintenance:enable' + ); + $jobMaintenanceEnable->execute(); + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Grid/ExtensionTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Grid/ExtensionTest.php new file mode 100644 index 0000000000000..6e2963fd063d1 --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Model/Grid/ExtensionTest.php @@ -0,0 +1,114 @@ +composerInformationMock = $this->getMockBuilder(ComposerInformation::class) + ->disableOriginalConstructor() + ->getMock(); + $this->typeMapperMock = $this->getMockBuilder(TypeMapper::class) + ->disableOriginalConstructor() + ->getMock(); + $this->packagesDataMock = $this->getMockBuilder(PackagesData::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->model = new Extension( + $this->composerInformationMock, + $this->packagesDataMock, + $this->typeMapperMock + ); + } + + public function testGetList() + { + $this->composerInformationMock->expects($this->any()) + ->method('isPackageInComposerJson') + ->willReturn(true); + $this->typeMapperMock->expects($this->any()) + ->method('map') + ->willReturn('Extension'); + $this->packagesDataMock->expects($this->once()) + ->method('getInstalledPackages') + ->willReturn( + [ + 'magento/package-1' => [ + 'name' => 'magento/package-1', + 'type' => 'magento2-module', + 'version' => '1.0.0' + ], + 'magento/package-2' => [ + 'name' => 'magento/package-2', + 'type' => 'magento2-module', + 'version' => '1.0.1' + ], + ] + ); + $this->packagesDataMock->expects($this->once()) + ->method('getPackagesForUpdate') + ->willReturn( + [ + 'magento/package-1' => [] + ] + ); + + $expected = [ + [ + 'name' => 'magento/package-1', + 'type' => 'Extension', + 'version' => '1.0.0', + 'update' => true, + 'uninstall' => true, + 'vendor' => 'Magento', + ], + [ + 'name' => 'magento/package-2', + 'type' => 'Extension', + 'version' => '1.0.1', + 'update' => false, + 'uninstall' => true, + 'vendor' => 'Magento', + ], + ]; + + $this->assertEquals($expected, $this->model->getList()); + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Grid/ModuleTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Grid/ModuleTest.php new file mode 100644 index 0000000000000..4248ebd6f263a --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Model/Grid/ModuleTest.php @@ -0,0 +1,227 @@ +moduleData = [ + 'magento/sample-module-one' => [ + 'name' => 'magento/sample-module-one', + 'type' => 'magento2-module', + 'version' => '1.0.0' + ] + ]; + $this->allComponentData = [ + 'magento/sample-module-one' => [ + 'name' => 'magento/sample-module-one', + 'type' => 'magento2-module', + 'version' => '1.0.0' + ], + 'magento/sample-module-two' => [ + 'name' => 'magento/sample-module-two', + 'type' => 'magento2-module', + 'version' => '1.0.0' + ] + ]; + + $this->composerInformationMock = $this->getMockBuilder(ComposerInformation::class) + ->disableOriginalConstructor() + ->getMock(); + $this->objectManagerProvider = $this->getMockBuilder(ObjectManagerProvider::class) + ->disableOriginalConstructor() + ->getMock(); + $this->packageInfoFactoryMock = $this->getMockBuilder(PackageInfoFactory::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->moduleListMock = $this->getMockBuilder(ModuleList::class) + ->disableOriginalConstructor() + ->getMock(); + $this->moduleListMock->expects(static::any()) + ->method('has') + ->willReturn(true); + + $this->fullModuleListMock = $this->getMockBuilder(FullModuleList::class) + ->disableOriginalConstructor() + ->getMock(); + $this->fullModuleListMock->expects(static::any()) + ->method('getNames') + ->willReturn(array_keys($this->allComponentData)); + + $this->packageInfoMock = $this->getMockBuilder(PackageInfo::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->typeMapperMock = $this->getMockBuilder(TypeMapper::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->packagesDataMock = $this->getMockBuilder(PackagesData::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->model = new Module( + $this->composerInformationMock, + $this->fullModuleListMock, + $this->moduleListMock, + $this->objectManagerProvider, + $this->typeMapperMock, + $this->packagesDataMock + ); + } + + public function testGetList() + { + $objectManager = $this->getMock(ObjectManagerInterface::class); + $this->objectManagerProvider->expects($this->once()) + ->method('get') + ->willReturn($objectManager); + $objectManager->expects(static::once()) + ->method('get') + ->willReturnMap([ + [PackageInfoFactory::class, $this->packageInfoFactoryMock], + ]); + $this->packageInfoFactoryMock->expects(static::once()) + ->method('create') + ->willReturn($this->packageInfoMock); + + $this->packageInfoMock->expects(static::exactly(2)) + ->method('getModuleName') + ->willReturnMap([ + ['magento/sample-module-one', 'Sample_Module_One'], + ['magento/sample-module-two', 'Sample_Module_Two'], + ]); + + $this->typeMapperMock->expects(static::exactly(2)) + ->method('map') + ->willReturnMap([ + ['magento/sample-module-one', 'magento2-module', 'Module'], + ['magento/sample-module-two', 'magento2-module', 'Module'], + ]); + + $this->packageInfoMock->expects(static::exactly(2)) + ->method('getRequiredBy') + ->willReturn([]); + $this->packageInfoMock->expects(static::exactly(2)) + ->method('getPackageName') + ->willReturnMap([ + ['magento/sample-module-one', $this->allComponentData['magento/sample-module-one']['name']], + ['magento/sample-module-two', $this->allComponentData['magento/sample-module-two']['name']], + ]); + $this->packageInfoMock->expects(static::exactly(2)) + ->method('getVersion') + ->willReturnMap([ + ['magento/sample-module-one', $this->allComponentData['magento/sample-module-one']['version']], + ['magento/sample-module-two', $this->allComponentData['magento/sample-module-two']['version']], + ]); + $this->moduleListMock->expects(static::exactly(2)) + ->method('has') + ->willReturn(true); + $this->composerInformationMock->expects(static::once()) + ->method('getInstalledMagentoPackages') + ->willReturn($this->moduleData); + + $expected = [ + [ + 'name' => 'magento/sample-module-one', + 'type' => 'Module', + 'version' => '1.0.0', + 'vendor' => 'Magento', + 'moduleName' => 'Sample_Module_One', + 'enable' => true, + 'requiredBy' => [] + ], + [ + 'name' => 'magento/sample-module-two', + 'type' => 'Module', + 'version' => '1.0.0', + 'vendor' => 'Magento', + 'moduleName' => 'Sample_Module_Two', + 'enable' => true, + 'requiredBy' => [] + ] + ]; + + static::assertEquals($expected, $this->model->getList()); + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Model/Grid/TypeMapperTest.php b/setup/src/Magento/Setup/Test/Unit/Model/Grid/TypeMapperTest.php new file mode 100644 index 0000000000000..63bcb4f1de0df --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Model/Grid/TypeMapperTest.php @@ -0,0 +1,78 @@ +composerInformationMock = $this->getMockBuilder(ComposerInformation::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->typeMapperMock = $this->getMockBuilder(TypeMapper::class) + ->disableOriginalConstructor() + ->getMock(); + + $this->model = new TypeMapper( + $this->composerInformationMock + ); + } + + /** + * @param string $packageName + * @param string $packageType + * @param string $expected + * @dataProvider mapDataProvider + */ + public function testMap($packageName, $packageType, $expected) + { + $rootPackageMock = $this->getMock(RootPackageInterface::class); + $rootPackageMock->expects(static::once()) + ->method('getRequires') + ->willReturn( + ['magento/sample-module-one' => ''] + ); + + $this->composerInformationMock->expects(static::once()) + ->method('getRootPackage') + ->willReturn($rootPackageMock); + + static::assertEquals( + $expected, + $this->model->map($packageName, $packageType) + ); + } + + public function mapDataProvider() + { + return [ + ['magento/sample-module-one', ComposerInformation::MODULE_PACKAGE_TYPE, TypeMapper::EXTENSION_PACKAGE_TYPE], + ['magento/sample-module-two', ComposerInformation::MODULE_PACKAGE_TYPE, 'Module'], + ['magento/sample-module-two', 'undefined', TypeMapper::UNDEFINED_PACKAGE_TYPE] + ]; + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Model/ObjectManagerProviderTest.php b/setup/src/Magento/Setup/Test/Unit/Model/ObjectManagerProviderTest.php new file mode 100644 index 0000000000000..7e9ecb97072cc --- /dev/null +++ b/setup/src/Magento/Setup/Test/Unit/Model/ObjectManagerProviderTest.php @@ -0,0 +1,98 @@ +serviceLocatorMock = $this->getMock(ServiceLocatorInterface::class); + $this->bootstrapMock = $this->getMock(Bootstrap::class); + + $this->model = new ObjectManagerProvider($this->serviceLocatorMock, $this->bootstrapMock); + } + + public function testGet() + { + $initParams = ['param' => 'value']; + + $this->serviceLocatorMock + ->expects($this->atLeastOnce()) + ->method('get') + ->willReturnMap( + [ + [InitParamListener::BOOTSTRAP_PARAM, $initParams], + [ + Application::class, + $this->getMockBuilder(Application::class)->disableOriginalConstructor()->getMock(), + ], + ] + ); + + $objectManagerMock = $this->getMock(ObjectManagerInterface::class); + $objectManagerMock->expects($this->once()) + ->method('create') + ->with(CommandListInterface::class) + ->willReturn($this->getCommandListMock()); + + $objectManagerFactoryMock = $this->getMockBuilder(ObjectManagerFactory::class) + ->disableOriginalConstructor() + ->getMock(); + $objectManagerFactoryMock->expects($this->once()) + ->method('create') + ->with($initParams) + ->willReturn($objectManagerMock); + + $this->bootstrapMock + ->expects($this->once()) + ->method('createObjectManagerFactory') + ->willReturn($objectManagerFactoryMock); + + $this->assertInstanceOf(ObjectManagerInterface::class, $this->model->get()); + } + + private function getCommandListMock() + { + $commandMock = $this->getMockBuilder(Command::class)->disableOriginalConstructor()->getMock(); + $commandMock->expects($this->once())->method('setApplication'); + + $commandListMock = $this->getMock(CommandListInterface::class); + $commandListMock->expects($this->once()) + ->method('getCommands') + ->willReturn([$commandMock]); + + return $commandListMock; + } +} diff --git a/setup/src/Magento/Setup/Test/Unit/Model/PackagesDataTest.php b/setup/src/Magento/Setup/Test/Unit/Model/PackagesDataTest.php index 3c096fa1faf6f..db31378a61508 100644 --- a/setup/src/Magento/Setup/Test/Unit/Model/PackagesDataTest.php +++ b/setup/src/Magento/Setup/Test/Unit/Model/PackagesDataTest.php @@ -6,7 +6,10 @@ namespace Magento\Setup\Test\Unit\Model; -use \Magento\Setup\Model\PackagesData; +use Composer\Package\RootPackage; +use Magento\Framework\Composer\ComposerInformation; +use Magento\Setup\Model\PackagesData; +use PHPUnit_Framework_MockObject_MockObject as MockObject; /** * Tests Magento\Setup\Model\PackagesData @@ -18,18 +21,44 @@ class PackagesDataTest extends \PHPUnit_Framework_TestCase */ private $packagesData; + /** + * @var ComposerInformation|MockObject + */ + private $composerInformation; + public function setUp() { - $composerInformation = $this->getMock('\Magento\Framework\Composer\ComposerInformation', [], [], '', false); - $composerInformation->expects($this->any())->method('getInstalledMagentoPackages')->willReturn( + $this->composerInformation = $this->getMock(ComposerInformation::class, [], [], '', false); + $this->composerInformation->expects($this->any())->method('getInstalledMagentoPackages')->willReturn( [ - ['name' => 'magento/package-1', 'type' => 'magento2-module', 'version'=> '1.0.0'], - ['name' => 'magento/package-2', 'type' => 'magento2-module', 'version'=> '1.0.1'] + 'magento/package-1' => [ + 'name' => 'magento/package-1', + 'type' => 'magento2-module', + 'version'=> '1.0.0' + ], + 'magento/package-2' => [ + 'name' => 'magento/package-2', + 'type' => 'magento2-module', + 'version'=> '1.0.1' + ] ] ); - $composerInformation->expects($this->any())->method('getRootRepositories')->willReturn(['repo1', 'repo2']); - $composerInformation->expects($this->any())->method('getPackagesTypes')->willReturn(['magento2-module']); + $this->composerInformation->expects($this->any())->method('getRootRepositories') + ->willReturn(['repo1', 'repo2']); + $this->composerInformation->expects($this->any())->method('getPackagesTypes') + ->willReturn(['magento2-module']); + $rootPackage = $this->getMock(RootPackage::class, [], ['magento/project', '2.1.0', '2']); + $rootPackage->expects($this->any()) + ->method('getRequires') + ->willReturn([ + 'magento/package-1' => '1.0.0', + 'magento/package-2' => '1.0.1' + ]); + $this->composerInformation + ->expects($this->any()) + ->method('getRootPackage') + ->willReturn($rootPackage); $timeZoneProvider = $this->getMock('\Magento\Setup\Model\DateTime\TimeZoneProvider', [], [], '', false); $timeZone = $this->getMock('\Magento\Framework\Stdlib\DateTime\Timezone', [], [], '', false); $timeZoneProvider->expects($this->any())->method('get')->willReturn($timeZone); @@ -71,7 +100,8 @@ public function setUp() ->method('readFile') ->willReturn( '{"packages":{"magento\/package-1":{' - . '"1.0.0":{"name":"magento\/package-1","version":"1.0.0","vendor":"test","type":"magento2-module"},' + . '"1.0.0":{"name":"magento\/package-1","version":"1.0.0","vendor":"test","type":"metapackage",' + . '"require":{"magento\/package-3":"1.0.0"}},' . '"1.0.1":{"name":"magento\/package-1","version":"1.0.1","vendor":"test","type":"magento2-module"},' . '"1.0.2":{"name":"magento\/package-1","version":"1.0.2","vendor":"test","type":"magento2-module"}' . '}, "magento\/package-2":{' @@ -85,7 +115,7 @@ public function setUp() ); $this->packagesData = new PackagesData( - $composerInformation, + $this->composerInformation, $timeZoneProvider, $packagesAuth, $filesystem, @@ -105,6 +135,32 @@ public function testSyncPackagesData() $this->assertArrayHasKey('installPackages', $latestData); $this->assertSame(1, count($latestData['installPackages'])); $this->assertSame(1, $latestData['countOfInstall']); + } + + public function testGetPackagesForUpdate() + { + $packages = $this->packagesData->getPackagesForUpdate(); + $this->assertEquals(2, count($packages)); + $this->assertArrayHasKey('magento/package-1', $packages); + $this->assertArrayHasKey('magento/package-2', $packages); + $firstPackage = array_values($packages)[0]; + $this->assertArrayHasKey('latestVersion', $firstPackage); + $this->assertArrayHasKey('versions', $firstPackage); + } + + public function testGetInstalledPackages() + { + $installedPackages = $this->packagesData->getInstalledPackages(); + $this->assertEquals(2, count($installedPackages)); + $this->assertArrayHasKey('magento/package-1', $installedPackages); + $this->assertArrayHasKey('magento/package-2', $installedPackages); + } + public function testGetMetaPackagesMap() + { + static::assertEquals( + ['magento/package-3' => 'magento/package-1'], + $this->packagesData->getMetaPackagesMap() + ); } } diff --git a/setup/view/layout/layout.phtml b/setup/view/layout/layout.phtml index 2cc0e6ef3b6b4..f4f137c226301 100644 --- a/setup/view/layout/layout.phtml +++ b/setup/view/layout/layout.phtml @@ -28,7 +28,8 @@ ->appendFile($this->basePath() . '/pub/magento/setup/app.js') ->appendFile($this->basePath() . '/pub/magento/setup/main.js') ->appendFile($this->basePath() . '/pub/magento/setup/landing.js') - ->appendFile($this->basePath() . '/pub/magento/setup/component-grid.js') + ->appendFile($this->basePath() . '/pub/magento/setup/module-grid.js') + ->appendFile($this->basePath() . '/pub/magento/setup/extension-grid.js') ->appendFile($this->basePath() . '/pub/magento/setup/readiness-check.js') ->appendFile($this->basePath() . '/pub/magento/setup/add-database.js') ->appendFile($this->basePath() . '/pub/magento/setup/web-configuration.js') @@ -46,7 +47,8 @@ ->appendFile($this->basePath() . '/pub/magento/setup/auth-dialog.js') ->appendFile($this->basePath() . '/pub/magento/setup/system-config.js') ->appendFile($this->basePath() . '/pub/magento/setup/marketplace-credentials.js') - ->appendFile($this->basePath() . '/pub/magento/setup/install-extension-grid.js'); + ->appendFile($this->basePath() . '/pub/magento/setup/install-extension-grid.js') + ->appendFile($this->basePath() . '/pub/magento/setup/update-extension-grid.js'); ?> -

{{$state.current.header}}

-
-
- - {{ErrorMessage}} - -
-
-
- Magento Marketplace Account - -
-
-
    -
  • -
    New Updates
    -
    {{countOfUpdate}}
    -
  • -
  • -
    New Purchases
    -
    {{countOfInstall}}
    -
    - - -
    -
  • -
  • -
    Last Sync
    -
    - at {{lastSyncTime}} on {{lastSyncDate}} -
    - No sync history - -
  • -
-
-
- -
-
- Magento Marketplace Account - -
-
- Sign in to sync your Magento Marketplace purchases -
-
- -
-
-
-
- You have logged out -
-
-
-
-
- -
- -
-
-
-
-
-
- {{total}} records found -
-
-
- - -
- - - - -
-
-
-
-
- - - - - - - - - - - - - - - - - - - - - - - -
- - - Component Name - - Module Name - - Version - - Type - - Vendor - - Actions -
- {{getIndicatorInfo(component, 'label')}} - - - {{component.name}} - - {{component.moduleName}} - - {{component.version}} - - {{component.type.replace("magento2-", "")}} - - {{component.vendor}} - - - -
- - -
-
-
-
- -
- -
- -
diff --git a/setup/view/magento/setup/extension-grid.phtml b/setup/view/magento/setup/extension-grid.phtml new file mode 100644 index 0000000000000..1b181c5bc9bb3 --- /dev/null +++ b/setup/view/magento/setup/extension-grid.phtml @@ -0,0 +1,177 @@ + +

{{$state.current.header}}

+ +
+ + {{ErrorMessage}} + +
+
+
+ Magento Marketplace Account + +
+
+
    +
  • +
    {{countOfUpdate}}
    +
    Updates
    Available
    + +
  • +
  • +
    {{countOfInstall}}
    +
    Products
    Ready to Install
    +
    + +
    +
  • +
  • +
    Last Refresh at {{lastSyncTime}} on
    +
    + {{lastSyncDate}} +
    + No sync history + +
  • +
+
+
+ +
+
+
+
+ You have logged out +
+
+
+
+ +
+ +
+
+
+
+
+ Installed Products + {{total}} products +
+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + +
+ Product Name + + Type + + Version + + Vendor + + Actions +
+ {{getIndicatorInfo(extension, 'label')}} + + {{extension.name}} + + {{extension.type}} + + {{extension.version}} + + {{extension.vendor}} + +
+ + +
+
+
+
+ +
+ +
diff --git a/setup/view/magento/setup/home.phtml b/setup/view/magento/setup/home.phtml index 16496973603ac..f5783f07e0a4a 100644 --- a/setup/view/magento/setup/home.phtml +++ b/setup/view/magento/setup/home.phtml @@ -10,23 +10,29 @@ Welcome to the Magento Setup Tool. Please choose a task below.

-
-
- - Component Manager - I want to manage my packages and modules. +
+ -
+ + - diff --git a/setup/view/magento/setup/install-extension-grid.phtml b/setup/view/magento/setup/install-extension-grid.phtml index d26a05f72fa7c..04dc349937152 100644 --- a/setup/view/magento/setup/install-extension-grid.phtml +++ b/setup/view/magento/setup/install-extension-grid.phtml @@ -4,6 +4,7 @@ * See COPYING.txt for license details. */ ?> +< Back

{{$state.current.header}}

@@ -12,48 +13,17 @@
-
+
- {{total}} records found + {{total}} products
-
- - -
- - - - -
+
@@ -92,15 +62,7 @@ - Extension Name - - - Metapackage - - - Version + Product Name @@ -110,13 +72,19 @@ !reverse,'_descend' : predicate === 'vendor' && reverse}" class="data-grid-th _sortable _ascend"> Vendor + + Latest version + Action - +
diff --git a/setup/view/magento/setup/navigation/side-menu.phtml b/setup/view/magento/setup/navigation/side-menu.phtml index d93b1d369a784..13eb3d090ace9 100644 --- a/setup/view/magento/setup/navigation/side-menu.phtml +++ b/setup/view/magento/setup/navigation/side-menu.phtml @@ -33,10 +33,15 @@ Home -
  • - - Component Manager +
  • + + Extension Manager + +
  • +
  • + + Module Manager
  • diff --git a/setup/view/magento/setup/popupauth.phtml b/setup/view/magento/setup/popupauth.phtml index 50e68e10b6ff8..d731bd4679b68 100644 --- a/setup/view/magento/setup/popupauth.phtml +++ b/setup/view/magento/setup/popupauth.phtml @@ -5,103 +5,101 @@ */ ?> - +
  • + +
    diff --git a/setup/view/magento/setup/select-version.phtml b/setup/view/magento/setup/select-version.phtml index b3d9c9d207de5..874a8151a8a1b 100644 --- a/setup/view/magento/setup/select-version.phtml +++ b/setup/view/magento/setup/select-version.phtml @@ -157,7 +157,12 @@ > Previous page - + diff --git a/setup/view/magento/setup/system-config.phtml b/setup/view/magento/setup/system-config.phtml index 9c06d7e057d91..dd27106a43eb5 100644 --- a/setup/view/magento/setup/system-config.phtml +++ b/setup/view/magento/setup/system-config.phtml @@ -118,7 +118,8 @@
    -
    + +
    + diff --git a/setup/view/magento/setup/update-extension-grid.phtml b/setup/view/magento/setup/update-extension-grid.phtml new file mode 100644 index 0000000000000..2c8625a82ed74 --- /dev/null +++ b/setup/view/magento/setup/update-extension-grid.phtml @@ -0,0 +1,103 @@ + +< Back +

    {{$state.current.header}}

    +
    +
    + + {{errorMessage}} + +
    +
    +
    +
    +
    +
    +
    + {{total}} products +
    +
    +
    +
    +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + +
    + Product Name + + Type + + Vendor + + Version + + Update version + + Action +
    + {{extension.name}} + + {{extension.type}} + + {{extension.vendor}} + + {{extension.version}} + + + + + +
    + +
    +
    +
    +
    + +
    + +
    diff --git a/setup/view/magento/setup/updater-success.phtml b/setup/view/magento/setup/updater-success.phtml index 9ef73a41c9053..07855edcaafc7 100644 --- a/setup/view/magento/setup/updater-success.phtml +++ b/setup/view/magento/setup/updater-success.phtml @@ -11,7 +11,7 @@

    Your store is no longer in maintenance mode.

    -

    You {{successPageAction}}:

    +

    You {{successPageActionMessage}}:


    • {{package.name}}
    • @@ -26,4 +26,12 @@ ng-click="back()" type="button" >Back to Setup Tool -
    \ No newline at end of file +
    +
    + +