diff --git a/.github/workflows/electron.yml b/.github/workflows/electron.yml index 4c05941ec..ef40f6afd 100644 --- a/.github/workflows/electron.yml +++ b/.github/workflows/electron.yml @@ -19,7 +19,7 @@ jobs: uses: loopwerk/tag-changelog@v1 with: token: ${{ secrets.GH_PAT }} - exclude_types: other,chore + exclude_types: other,chore,build - name: Create release uses: actions/create-release@latest diff --git a/.gitignore b/.gitignore index 848dbd6f6..33a4adc09 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,6 @@ /public/uploads/* /public/.well-known /public/.user.ini -/resources/drawio/ /storage/*.key /vendor /build @@ -20,7 +19,6 @@ Homestead.yaml npm-debug.log yarn-error.log test.* -composer.lock package-lock.json laravels-timer-process.pid .DS_Store diff --git a/README.md b/README.md index fa574d57d..261482160 100644 --- a/README.md +++ b/README.md @@ -21,9 +21,9 @@ Group No.: `546574618` # 1、Clone the repository # Clone projects on github -git clone https://github.com/kuaifan/dootask.git +git clone --depth=1 https://github.com/kuaifan/dootask.git # Or you can use gitee -git clone https://gitee.com/aipaw/dootask.git +git clone --depth=1 https://gitee.com/aipaw/dootask.git # 2、Enter directory cd dootask diff --git a/README_CN.md b/README_CN.md index 8020c50dc..e166bccd3 100644 --- a/README_CN.md +++ b/README_CN.md @@ -21,9 +21,9 @@ # 1、克隆项目到您的本地或服务器 # 通过github克隆项目 -git clone https://github.com/kuaifan/dootask.git +git clone --depth=1 https://github.com/kuaifan/dootask.git # 或者你也可以使用gitee -git clone https://gitee.com/aipaw/dootask.git +git clone --depth=1 https://gitee.com/aipaw/dootask.git # 2、进入目录 cd dootask diff --git a/app/Models/ProjectTask.php b/app/Models/ProjectTask.php index 7c0003ff5..c8cc62daf 100644 --- a/app/Models/ProjectTask.php +++ b/app/Models/ProjectTask.php @@ -513,6 +513,10 @@ class ProjectTask extends AbstractModel $mainTask = $this->parent_id > 0 ? self::find($this->parent_id) : null; // 工作流 if (Arr::exists($data, 'flow_item_id')) { + $isProjectOwner = $this->useridInTheProject(User::userid()) === 2; + if (!$isProjectOwner && !$this->isOwner()) { + throw new ApiException('仅限项目或任务负责人修改任务状态'); + } if ($this->flow_item_id == $data['flow_item_id']) { throw new ApiException('任务状态未发生改变'); } @@ -533,8 +537,7 @@ class ProjectTask extends AbstractModel throw new ApiException("当前状态[{$currentFlowItem->name}]不可流转到[{$newFlowItem->name}]"); } if ($currentFlowItem->userlimit) { - if (!in_array(User::userid(), $currentFlowItem->userids) - && !ProjectUser::whereProjectId($this->project_id)->whereOwner(1)->exists()) { + if (!$isProjectOwner && !in_array(User::userid(), $currentFlowItem->userids)) { throw new ApiException("当前状态[{$currentFlowItem->name}]仅限状态负责人或项目负责人修改"); } } @@ -725,7 +728,7 @@ class ProjectTask extends AbstractModel } }); } - $newStringAt = $this->start_at ? ($oldAt[0]->toDateTimeString() . '~' . $oldAt[1]->toDateTimeString()) : ''; + $newStringAt = $this->start_at ? ($this->start_at->toDateTimeString() . '~' . $this->end_at->toDateTimeString()) : ''; $this->addLog("修改{任务}时间", [ 'change' => [$oldStringAt, $newStringAt] ]); @@ -891,6 +894,44 @@ class ProjectTask extends AbstractModel return $user->owner ? 2 : 1; } + /** + * 权限版本 + * @param int $level 1-负责人,2-协助人/负责人,3-创建人/协助人/负责人 + * @return bool + */ + public function permission($level = 1) + { + if ($level >= 3 && $this->isCreater()) { + return true; + } + if ($level >= 2 && $this->isAssister()) { + return true; + } + return $this->isOwner(); + } + + /** + * 判断是否创建者 + * @return bool + */ + public function isCreater() + { + return $this->userid == User::userid(); + } + + /** + * 判断是否协助人员 + * @return bool + */ + public function isAssister() + { + $row = $this; + while ($row->parent_id > 0) { + $row = self::find($row->parent_id); + } + return ProjectTaskUser::whereTaskId($row->id)->whereUserid(User::userid())->whereOwner(0)->exists(); + } + /** * 判断是否负责人(或者是主任务的负责人) * @return bool @@ -1134,11 +1175,11 @@ class ProjectTask extends AbstractModel * 获取任务(会员有任务权限 或 会员存在项目内) * @param int $task_id * @param bool $archived true:仅限未归档, false:仅限已归档, null:不限制 - * @param int|bool $mustOwner 0|false:不限制, 1|true:限制任务或项目负责人, 2:已有负责人才限制任务或项目负责人(子任务时如果是主任务负责人也可以),3:限制项目或任务负责人或任务参与者或者任务创建人 + * @param int|bool $permission 0|false:不限制, 1|true:限制项目负责人、任务负责人、协助人员及任务创建者, 2:已有负责人才限制true (子任务时如果是主任务负责人也可以) * @param array $with * @return self */ - public static function userTask($task_id, $archived = true, $mustOwner = 0, $with = []) + public static function userTask($task_id, $archived = true, $permission = 0, $with = []) { $task = self::with($with)->allData()->where("project_tasks.id", intval($task_id))->first(); // @@ -1164,14 +1205,11 @@ class ProjectTask extends AbstractModel } } // - if ($mustOwner === 2) { - $mustOwner = $task->hasOwner() ? 1 : 0; + if ($permission === 2) { + $permission = $task->hasOwner() ? 1 : 0; } - if (($mustOwner === 1 || $mustOwner === true) && !$task->isOwner() && !$project->owner) { - throw new ApiException('仅限项目或任务负责人操作'); - } - if ($mustOwner === 3 && !$task->isActor() && !$task->isOwner() && !$project->owner) { - throw new ApiException('仅限项目或任务负责人或任务参与者或者任务创建人操作'); + if (($permission === 1 || $permission === true) && !$project->owner && !$task->permission(3)) { + throw new ApiException('仅限项目负责人、任务负责人、协助人员或任务创建者操作'); } return $task; } diff --git a/cmd b/cmd index 37616b2f2..66e6a7b62 100755 --- a/cmd +++ b/cmd @@ -260,8 +260,12 @@ if [ $# -gt 0 ]; then exit 1 fi # 初始化文件 - rm -rf composer.lock - rm -rf package-lock.json + if [[ -n "$(arg_get relock)" ]]; then + rm -rf node_modules + rm -rf package-lock.json + rm -rf vendor + rm -rf composer.lock + fi mkdir -p "${cur_path}/docker/log/supervisor" mkdir -p "${cur_path}/docker/mysql/data" chmod -R 775 "${cur_path}/docker/log/supervisor" @@ -297,6 +301,7 @@ if [ $# -gt 0 ]; then # 设置初始化密码 res=`run_exec mariadb "sh /etc/mysql/repassword.sh"` docker-compose up -d + supervisorctl_restart php echo -e "${OK} ${GreenBG} 安装完成 ${Font}" echo -e "地址: http://${GreenBG}127.0.0.1:$(env_get APP_PORT)${Font}" echo -e "$res" diff --git a/composer.lock b/composer.lock new file mode 100644 index 000000000..9c0da4233 --- /dev/null +++ b/composer.lock @@ -0,0 +1,9554 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "82a2e2c4b376522e3a13c16949e1a5d3", + "packages": [ + { + "name": "brick/math", + "version": "0.9.3", + "source": { + "type": "git", + "url": "https://github.com/brick/math.git", + "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/brick/math/zipball/ca57d18f028f84f777b2168cd1911b0dee2343ae", + "reference": "ca57d18f028f84f777b2168cd1911b0dee2343ae", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.2", + "phpunit/phpunit": "^7.5.15 || ^8.5 || ^9.0", + "vimeo/psalm": "4.9.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Brick\\Math\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Arbitrary-precision arithmetic library", + "keywords": [ + "Arbitrary-precision", + "BigInteger", + "BigRational", + "arithmetic", + "bigdecimal", + "bignum", + "brick", + "math" + ], + "support": { + "issues": "https://github.com/brick/math/issues", + "source": "https://github.com/brick/math/tree/0.9.3" + }, + "funding": [ + { + "url": "https://github.com/BenMorel", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/brick/math", + "type": "tidelift" + } + ], + "time": "2021-08-15T20:50:18+00:00" + }, + { + "name": "dflydev/dot-access-data", + "version": "v3.0.1", + "source": { + "type": "git", + "url": "https://github.com/dflydev/dflydev-dot-access-data.git", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/0992cc19268b259a39e86f296da5f0677841f42c", + "reference": "0992cc19268b259a39e86f296da5f0677841f42c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.42", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.3", + "scrutinizer/ocular": "1.6.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^3.14" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Dflydev\\DotAccessData\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dragonfly Development Inc.", + "email": "info@dflydev.com", + "homepage": "http://dflydev.com" + }, + { + "name": "Beau Simensen", + "email": "beau@dflydev.com", + "homepage": "http://beausimensen.com" + }, + { + "name": "Carlos Frutos", + "email": "carlos@kiwing.it", + "homepage": "https://github.com/cfrutos" + }, + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com" + } + ], + "description": "Given a deep data structure, access data by dot notation.", + "homepage": "https://github.com/dflydev/dflydev-dot-access-data", + "keywords": [ + "access", + "data", + "dot", + "notation" + ], + "support": { + "issues": "https://github.com/dflydev/dflydev-dot-access-data/issues", + "source": "https://github.com/dflydev/dflydev-dot-access-data/tree/v3.0.1" + }, + "time": "2021-08-13T13:06:58+00:00" + }, + { + "name": "doctrine/inflector", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", + "reference": "8b7ff3e4b7de6b2c84da85637b59fd2880ecaa89", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^8.2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpstan/phpstan-strict-rules": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "vimeo/psalm": "^4.10" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Inflector\\": "lib/Doctrine/Inflector" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.0.4" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "type": "tidelift" + } + ], + "time": "2021-10-22T20:16:43+00:00" + }, + { + "name": "doctrine/lexer", + "version": "1.2.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "9c50f840f257bbb941e6f4a0e94ccf5db5c3f76c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/9c50f840f257bbb941e6f4a0e94ccf5db5c3f76c", + "reference": "9c50f840f257bbb941e6f4a0e94ccf5db5c3f76c", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9.0", + "phpstan/phpstan": "1.3", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5", + "vimeo/psalm": "^4.11" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "lib/Doctrine/Common/Lexer" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/1.2.2" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2022-01-12T08:27:12+00:00" + }, + { + "name": "dragonmantank/cron-expression", + "version": "v3.3.1", + "source": { + "type": "git", + "url": "https://github.com/dragonmantank/cron-expression.git", + "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/be85b3f05b46c39bbc0d95f6c071ddff669510fa", + "reference": "be85b3f05b46c39bbc0d95f6c071ddff669510fa", + "shasum": "" + }, + "require": { + "php": "^7.2|^8.0", + "webmozart/assert": "^1.0" + }, + "replace": { + "mtdowling/cron-expression": "^1.0" + }, + "require-dev": { + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^1.0", + "phpstan/phpstan-webmozart-assert": "^1.0", + "phpunit/phpunit": "^7.0|^8.0|^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Cron\\": "src/Cron/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Chris Tankersley", + "email": "chris@ctankersley.com", + "homepage": "https://github.com/dragonmantank" + } + ], + "description": "CRON for PHP: Calculate the next or previous run date and determine if a CRON expression is due", + "keywords": [ + "cron", + "schedule" + ], + "support": { + "issues": "https://github.com/dragonmantank/cron-expression/issues", + "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.1" + }, + "funding": [ + { + "url": "https://github.com/dragonmantank", + "type": "github" + } + ], + "time": "2022-01-18T15:43:28+00:00" + }, + { + "name": "egulias/email-validator", + "version": "2.1.25", + "source": { + "type": "git", + "url": "https://github.com/egulias/EmailValidator.git", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "reference": "0dbf5d78455d4d6a41d186da50adc1122ec066f4", + "shasum": "" + }, + "require": { + "doctrine/lexer": "^1.0.1", + "php": ">=5.5", + "symfony/polyfill-intl-idn": "^1.10" + }, + "require-dev": { + "dominicsayers/isemail": "^3.0.7", + "phpunit/phpunit": "^4.8.36|^7.5.15", + "satooshi/php-coveralls": "^1.0.1" + }, + "suggest": { + "ext-intl": "PHP Internationalization Libraries are required to use the SpoofChecking validation" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Egulias\\EmailValidator\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Eduardo Gulias Davis" + } + ], + "description": "A library for validating emails against several RFCs", + "homepage": "https://github.com/egulias/EmailValidator", + "keywords": [ + "email", + "emailvalidation", + "emailvalidator", + "validation", + "validator" + ], + "support": { + "issues": "https://github.com/egulias/EmailValidator/issues", + "source": "https://github.com/egulias/EmailValidator/tree/2.1.25" + }, + "funding": [ + { + "url": "https://github.com/egulias", + "type": "github" + } + ], + "time": "2020-12-29T14:50:06+00:00" + }, + { + "name": "ezyang/htmlpurifier", + "version": "v4.14.0", + "source": { + "type": "git", + "url": "https://github.com/ezyang/htmlpurifier.git", + "reference": "12ab42bd6e742c70c0a52f7b82477fcd44e64b75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ezyang/htmlpurifier/zipball/12ab42bd6e742c70c0a52f7b82477fcd44e64b75", + "reference": "12ab42bd6e742c70c0a52f7b82477fcd44e64b75", + "shasum": "" + }, + "require": { + "php": ">=5.2" + }, + "type": "library", + "autoload": { + "psr-0": { + "HTMLPurifier": "library/" + }, + "files": [ + "library/HTMLPurifier.composer.php" + ], + "exclude-from-classmap": [ + "/library/HTMLPurifier/Language/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "LGPL-2.1-or-later" + ], + "authors": [ + { + "name": "Edward Z. Yang", + "email": "admin@htmlpurifier.org", + "homepage": "http://ezyang.com" + } + ], + "description": "Standards compliant HTML filter written in PHP", + "homepage": "http://htmlpurifier.org/", + "keywords": [ + "html" + ], + "support": { + "issues": "https://github.com/ezyang/htmlpurifier/issues", + "source": "https://github.com/ezyang/htmlpurifier/tree/v4.14.0" + }, + "time": "2021-12-25T01:21:49+00:00" + }, + { + "name": "fideloper/proxy", + "version": "4.4.1", + "source": { + "type": "git", + "url": "https://github.com/fideloper/TrustedProxy.git", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "shasum": "" + }, + "require": { + "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0", + "php": ">=5.4.0" + }, + "require-dev": { + "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0", + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^6.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Fideloper\\Proxy\\TrustedProxyServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Fideloper\\Proxy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Chris Fidao", + "email": "fideloper@gmail.com" + } + ], + "description": "Set trusted proxies for Laravel", + "keywords": [ + "load balancing", + "proxy", + "trusted proxy" + ], + "support": { + "issues": "https://github.com/fideloper/TrustedProxy/issues", + "source": "https://github.com/fideloper/TrustedProxy/tree/4.4.1" + }, + "time": "2020-10-22T13:48:01+00:00" + }, + { + "name": "fruitcake/laravel-cors", + "version": "v2.1.0", + "source": { + "type": "git", + "url": "https://github.com/fruitcake/laravel-cors.git", + "reference": "361d71f00a0eea8b74da26ae75d0d207c53aa5b3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/361d71f00a0eea8b74da26ae75d0d207c53aa5b3", + "reference": "361d71f00a0eea8b74da26ae75d0d207c53aa5b3", + "shasum": "" + }, + "require": { + "fruitcake/php-cors": "^1", + "illuminate/contracts": "^6|^7|^8|^9", + "illuminate/support": "^6|^7|^8|^9", + "php": ">=7.2" + }, + "require-dev": { + "laravel/framework": "^6|^7.24|^8", + "orchestra/testbench-dusk": "^4|^5|^6|^7", + "phpunit/phpunit": "^6|^7|^8|^9", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1-dev" + }, + "laravel": { + "providers": [ + "Fruitcake\\Cors\\CorsServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Fruitcake\\Cors\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fruitcake", + "homepage": "https://fruitcake.nl" + }, + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Laravel application", + "keywords": [ + "api", + "cors", + "crossdomain", + "laravel" + ], + "support": { + "issues": "https://github.com/fruitcake/laravel-cors/issues", + "source": "https://github.com/fruitcake/laravel-cors/tree/v2.1.0" + }, + "funding": [ + { + "url": "https://fruitcake.nl", + "type": "custom" + }, + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2022-02-19T14:17:28+00:00" + }, + { + "name": "fruitcake/php-cors", + "version": "v1.2.0", + "source": { + "type": "git", + "url": "https://github.com/fruitcake/php-cors.git", + "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fruitcake/php-cors/zipball/58571acbaa5f9f462c9c77e911700ac66f446d4e", + "reference": "58571acbaa5f9f462c9c77e911700ac66f446d4e", + "shasum": "" + }, + "require": { + "php": "^7.4|^8.0", + "symfony/http-foundation": "^4.4|^5.4|^6" + }, + "require-dev": { + "phpstan/phpstan": "^1.4", + "phpunit/phpunit": "^9", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "Fruitcake\\Cors\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fruitcake", + "homepage": "https://fruitcake.nl" + }, + { + "name": "Barryvdh", + "email": "barryvdh@gmail.com" + } + ], + "description": "Cross-origin resource sharing library for the Symfony HttpFoundation", + "homepage": "https://github.com/fruitcake/php-cors", + "keywords": [ + "cors", + "laravel", + "symfony" + ], + "support": { + "issues": "https://github.com/fruitcake/php-cors/issues", + "source": "https://github.com/fruitcake/php-cors/tree/v1.2.0" + }, + "funding": [ + { + "url": "https://fruitcake.nl", + "type": "custom" + }, + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2022-02-20T15:07:15+00:00" + }, + { + "name": "graham-campbell/result-type", + "version": "v1.0.4", + "source": { + "type": "git", + "url": "https://github.com/GrahamCampbell/Result-Type.git", + "reference": "0690bde05318336c7221785f2a932467f98b64ca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/0690bde05318336c7221785f2a932467f98b64ca", + "reference": "0690bde05318336c7221785f2a932467f98b64ca", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "phpoption/phpoption": "^1.8" + }, + "require-dev": { + "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + }, + "type": "library", + "autoload": { + "psr-4": { + "GrahamCampbell\\ResultType\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "An Implementation Of The Result Type", + "keywords": [ + "Graham Campbell", + "GrahamCampbell", + "Result Type", + "Result-Type", + "result" + ], + "support": { + "issues": "https://github.com/GrahamCampbell/Result-Type/issues", + "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.0.4" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/graham-campbell/result-type", + "type": "tidelift" + } + ], + "time": "2021-11-21T21:41:47+00:00" + }, + { + "name": "guzzlehttp/guzzle", + "version": "7.4.1", + "source": { + "type": "git", + "url": "https://github.com/guzzle/guzzle.git", + "reference": "ee0a041b1760e6a53d2a39c8c34115adc2af2c79" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/guzzle/zipball/ee0a041b1760e6a53d2a39c8c34115adc2af2c79", + "reference": "ee0a041b1760e6a53d2a39c8c34115adc2af2c79", + "shasum": "" + }, + "require": { + "ext-json": "*", + "guzzlehttp/promises": "^1.5", + "guzzlehttp/psr7": "^1.8.3 || ^2.1", + "php": "^7.2.5 || ^8.0", + "psr/http-client": "^1.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "provide": { + "psr/http-client-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-curl": "*", + "php-http/client-integration-tests": "^3.0", + "phpunit/phpunit": "^8.5.5 || ^9.3.5", + "psr/log": "^1.1 || ^2.0 || ^3.0" + }, + "suggest": { + "ext-curl": "Required for CURL handler support", + "ext-intl": "Required for Internationalized Domain Name (IDN) support", + "psr/log": "Required for using the Log middleware" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "7.4-dev" + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Jeremy Lindblom", + "email": "jeremeamia@gmail.com", + "homepage": "https://github.com/jeremeamia" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle is a PHP HTTP client library", + "keywords": [ + "client", + "curl", + "framework", + "http", + "http client", + "psr-18", + "psr-7", + "rest", + "web service" + ], + "support": { + "issues": "https://github.com/guzzle/guzzle/issues", + "source": "https://github.com/guzzle/guzzle/tree/7.4.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/guzzle", + "type": "tidelift" + } + ], + "time": "2021-12-06T18:43:05+00:00" + }, + { + "name": "guzzlehttp/promises", + "version": "1.5.1", + "source": { + "type": "git", + "url": "https://github.com/guzzle/promises.git", + "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/promises/zipball/fe752aedc9fd8fcca3fe7ad05d419d32998a06da", + "reference": "fe752aedc9fd8fcca3fe7ad05d419d32998a06da", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "symfony/phpunit-bridge": "^4.4 || ^5.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.5-dev" + } + }, + "autoload": { + "files": [ + "src/functions_include.php" + ], + "psr-4": { + "GuzzleHttp\\Promise\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + } + ], + "description": "Guzzle promises library", + "keywords": [ + "promise" + ], + "support": { + "issues": "https://github.com/guzzle/promises/issues", + "source": "https://github.com/guzzle/promises/tree/1.5.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/promises", + "type": "tidelift" + } + ], + "time": "2021-10-22T20:56:57+00:00" + }, + { + "name": "guzzlehttp/psr7", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/guzzle/psr7.git", + "reference": "089edd38f5b8abba6cb01567c2a8aaa47cec4c72" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/guzzle/psr7/zipball/089edd38f5b8abba6cb01567c2a8aaa47cec4c72", + "reference": "089edd38f5b8abba6cb01567c2a8aaa47cec4c72", + "shasum": "" + }, + "require": { + "php": "^7.2.5 || ^8.0", + "psr/http-factory": "^1.0", + "psr/http-message": "^1.0", + "ralouphie/getallheaders": "^3.0" + }, + "provide": { + "psr/http-factory-implementation": "1.0", + "psr/http-message-implementation": "1.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "http-interop/http-factory-tests": "^0.9", + "phpunit/phpunit": "^8.5.8 || ^9.3.10" + }, + "suggest": { + "laminas/laminas-httphandlerrunner": "Emit PSR-7 responses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1-dev" + } + }, + "autoload": { + "psr-4": { + "GuzzleHttp\\Psr7\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Michael Dowling", + "email": "mtdowling@gmail.com", + "homepage": "https://github.com/mtdowling" + }, + { + "name": "George Mponos", + "email": "gmponos@gmail.com", + "homepage": "https://github.com/gmponos" + }, + { + "name": "Tobias Nyholm", + "email": "tobias.nyholm@gmail.com", + "homepage": "https://github.com/Nyholm" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://github.com/sagikazarmark" + }, + { + "name": "Tobias Schultze", + "email": "webmaster@tubo-world.de", + "homepage": "https://github.com/Tobion" + }, + { + "name": "Márk Sági-Kazár", + "email": "mark.sagikazar@gmail.com", + "homepage": "https://sagikazarmark.hu" + } + ], + "description": "PSR-7 message implementation that also provides common utility methods", + "keywords": [ + "http", + "message", + "psr-7", + "request", + "response", + "stream", + "uri", + "url" + ], + "support": { + "issues": "https://github.com/guzzle/psr7/issues", + "source": "https://github.com/guzzle/psr7/tree/2.1.0" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://github.com/Nyholm", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/guzzlehttp/psr7", + "type": "tidelift" + } + ], + "time": "2021-10-06T17:43:30+00:00" + }, + { + "name": "intervention/image", + "version": "2.7.1", + "source": { + "type": "git", + "url": "https://github.com/Intervention/image.git", + "reference": "744ebba495319501b873a4e48787759c72e3fb8c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Intervention/image/zipball/744ebba495319501b873a4e48787759c72e3fb8c", + "reference": "744ebba495319501b873a4e48787759c72e3fb8c", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "guzzlehttp/psr7": "~1.1 || ^2.0", + "php": ">=5.4.0" + }, + "require-dev": { + "mockery/mockery": "~0.9.2", + "phpunit/phpunit": "^4.8 || ^5.7 || ^7.5.15" + }, + "suggest": { + "ext-gd": "to use GD library based image processing.", + "ext-imagick": "to use Imagick based image processing.", + "intervention/imagecache": "Caching extension for the Intervention Image library" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.4-dev" + }, + "laravel": { + "providers": [ + "Intervention\\Image\\ImageServiceProvider" + ], + "aliases": { + "Image": "Intervention\\Image\\Facades\\Image" + } + } + }, + "autoload": { + "psr-4": { + "Intervention\\Image\\": "src/Intervention/Image" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Oliver Vogel", + "email": "oliver@olivervogel.com", + "homepage": "http://olivervogel.com/" + } + ], + "description": "Image handling and manipulation library with support for Laravel integration", + "homepage": "http://image.intervention.io/", + "keywords": [ + "gd", + "image", + "imagick", + "laravel", + "thumbnail", + "watermark" + ], + "support": { + "issues": "https://github.com/Intervention/image/issues", + "source": "https://github.com/Intervention/image/tree/2.7.1" + }, + "funding": [ + { + "url": "https://www.paypal.me/interventionphp", + "type": "custom" + }, + { + "url": "https://github.com/Intervention", + "type": "github" + } + ], + "time": "2021-12-16T16:49:26+00:00" + }, + { + "name": "laravel/framework", + "version": "v8.83.2", + "source": { + "type": "git", + "url": "https://github.com/laravel/framework.git", + "reference": "b91b3b5b39fbbdc763746f5714e08d50a4dd7857" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/framework/zipball/b91b3b5b39fbbdc763746f5714e08d50a4dd7857", + "reference": "b91b3b5b39fbbdc763746f5714e08d50a4dd7857", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^1.4|^2.0", + "dragonmantank/cron-expression": "^3.0.2", + "egulias/email-validator": "^2.1.10", + "ext-json": "*", + "ext-mbstring": "*", + "ext-openssl": "*", + "laravel/serializable-closure": "^1.0", + "league/commonmark": "^1.3|^2.0.2", + "league/flysystem": "^1.1", + "monolog/monolog": "^2.0", + "nesbot/carbon": "^2.53.1", + "opis/closure": "^3.6", + "php": "^7.3|^8.0", + "psr/container": "^1.0", + "psr/log": "^1.0|^2.0", + "psr/simple-cache": "^1.0", + "ramsey/uuid": "^4.2.2", + "swiftmailer/swiftmailer": "^6.3", + "symfony/console": "^5.4", + "symfony/error-handler": "^5.4", + "symfony/finder": "^5.4", + "symfony/http-foundation": "^5.4", + "symfony/http-kernel": "^5.4", + "symfony/mime": "^5.4", + "symfony/process": "^5.4", + "symfony/routing": "^5.4", + "symfony/var-dumper": "^5.4", + "tijsverkoyen/css-to-inline-styles": "^2.2.2", + "vlucas/phpdotenv": "^5.4.1", + "voku/portable-ascii": "^1.6.1" + }, + "conflict": { + "tightenco/collect": "<5.5.33" + }, + "provide": { + "psr/container-implementation": "1.0", + "psr/simple-cache-implementation": "1.0" + }, + "replace": { + "illuminate/auth": "self.version", + "illuminate/broadcasting": "self.version", + "illuminate/bus": "self.version", + "illuminate/cache": "self.version", + "illuminate/collections": "self.version", + "illuminate/config": "self.version", + "illuminate/console": "self.version", + "illuminate/container": "self.version", + "illuminate/contracts": "self.version", + "illuminate/cookie": "self.version", + "illuminate/database": "self.version", + "illuminate/encryption": "self.version", + "illuminate/events": "self.version", + "illuminate/filesystem": "self.version", + "illuminate/hashing": "self.version", + "illuminate/http": "self.version", + "illuminate/log": "self.version", + "illuminate/macroable": "self.version", + "illuminate/mail": "self.version", + "illuminate/notifications": "self.version", + "illuminate/pagination": "self.version", + "illuminate/pipeline": "self.version", + "illuminate/queue": "self.version", + "illuminate/redis": "self.version", + "illuminate/routing": "self.version", + "illuminate/session": "self.version", + "illuminate/support": "self.version", + "illuminate/testing": "self.version", + "illuminate/translation": "self.version", + "illuminate/validation": "self.version", + "illuminate/view": "self.version" + }, + "require-dev": { + "aws/aws-sdk-php": "^3.198.1", + "doctrine/dbal": "^2.13.3|^3.1.4", + "filp/whoops": "^2.14.3", + "guzzlehttp/guzzle": "^6.5.5|^7.0.1", + "league/flysystem-cached-adapter": "^1.0", + "mockery/mockery": "^1.4.4", + "orchestra/testbench-core": "^6.27", + "pda/pheanstalk": "^4.0", + "phpunit/phpunit": "^8.5.19|^9.5.8", + "predis/predis": "^1.1.9", + "symfony/cache": "^5.4" + }, + "suggest": { + "ably/ably-php": "Required to use the Ably broadcast driver (^1.0).", + "aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage and SES mail driver (^3.198.1).", + "brianium/paratest": "Required to run tests in parallel (^6.0).", + "doctrine/dbal": "Required to rename columns and drop SQLite columns (^2.13.3|^3.1.4).", + "ext-bcmath": "Required to use the multiple_of validation rule.", + "ext-ftp": "Required to use the Flysystem FTP driver.", + "ext-gd": "Required to use Illuminate\\Http\\Testing\\FileFactory::image().", + "ext-memcached": "Required to use the memcache cache driver.", + "ext-pcntl": "Required to use all features of the queue worker.", + "ext-posix": "Required to use all features of the queue worker.", + "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", + "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", + "filp/whoops": "Required for friendly error pages in development (^2.14.3).", + "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.5.5|^7.0.1).", + "laravel/tinker": "Required to use the tinker console command (^2.0).", + "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", + "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", + "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", + "mockery/mockery": "Required to use mocking (^1.4.4).", + "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", + "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", + "phpunit/phpunit": "Required to use assertions and run tests (^8.5.19|^9.5.8).", + "predis/predis": "Required to use the predis connector (^1.1.9).", + "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", + "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0|^5.0|^6.0|^7.0).", + "symfony/cache": "Required to PSR-6 cache bridge (^5.4).", + "symfony/filesystem": "Required to enable support for relative symbolic links (^5.4).", + "symfony/psr-http-message-bridge": "Required to use PSR-7 bridging features (^2.0).", + "wildbit/swiftmailer-postmark": "Required to use Postmark mail driver (^3.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "8.x-dev" + } + }, + "autoload": { + "files": [ + "src/Illuminate/Collections/helpers.php", + "src/Illuminate/Events/functions.php", + "src/Illuminate/Foundation/helpers.php", + "src/Illuminate/Support/helpers.php" + ], + "psr-4": { + "Illuminate\\": "src/Illuminate/", + "Illuminate\\Support\\": [ + "src/Illuminate/Macroable/", + "src/Illuminate/Collections/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "The Laravel Framework.", + "homepage": "https://laravel.com", + "keywords": [ + "framework", + "laravel" + ], + "support": { + "issues": "https://github.com/laravel/framework/issues", + "source": "https://github.com/laravel/framework" + }, + "time": "2022-02-22T15:10:17+00:00" + }, + { + "name": "laravel/serializable-closure", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/laravel/serializable-closure.git", + "reference": "9e4b005daa20b0c161f3845040046dc9ddc1d74e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/9e4b005daa20b0c161f3845040046dc9ddc1d74e", + "reference": "9e4b005daa20b0c161f3845040046dc9ddc1d74e", + "shasum": "" + }, + "require": { + "php": "^7.3|^8.0" + }, + "require-dev": { + "pestphp/pest": "^1.18", + "phpstan/phpstan": "^0.12.98", + "symfony/var-dumper": "^5.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Laravel\\SerializableClosure\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + }, + { + "name": "Nuno Maduro", + "email": "nuno@laravel.com" + } + ], + "description": "Laravel Serializable Closure provides an easy and secure way to serialize closures in PHP.", + "keywords": [ + "closure", + "laravel", + "serializable" + ], + "support": { + "issues": "https://github.com/laravel/serializable-closure/issues", + "source": "https://github.com/laravel/serializable-closure" + }, + "time": "2022-02-11T19:23:53+00:00" + }, + { + "name": "laravel/tinker", + "version": "v2.7.0", + "source": { + "type": "git", + "url": "https://github.com/laravel/tinker.git", + "reference": "5f2f9815b7631b9f586a3de7933c25f9327d4073" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/tinker/zipball/5f2f9815b7631b9f586a3de7933c25f9327d4073", + "reference": "5f2f9815b7631b9f586a3de7933c25f9327d4073", + "shasum": "" + }, + "require": { + "illuminate/console": "^6.0|^7.0|^8.0|^9.0", + "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0", + "illuminate/support": "^6.0|^7.0|^8.0|^9.0", + "php": "^7.2.5|^8.0", + "psy/psysh": "^0.10.4|^0.11.1", + "symfony/var-dumper": "^4.3.4|^5.0|^6.0" + }, + "require-dev": { + "mockery/mockery": "~1.3.3|^1.4.2", + "phpunit/phpunit": "^8.5.8|^9.3.3" + }, + "suggest": { + "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Tinker\\TinkerServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Tinker\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Powerful REPL for the Laravel framework.", + "keywords": [ + "REPL", + "Tinker", + "laravel", + "psysh" + ], + "support": { + "issues": "https://github.com/laravel/tinker/issues", + "source": "https://github.com/laravel/tinker/tree/v2.7.0" + }, + "time": "2022-01-10T08:52:49+00:00" + }, + { + "name": "league/commonmark", + "version": "2.2.2", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/commonmark.git", + "reference": "13d7751377732637814f0cda0e3f6d3243f9f769" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/13d7751377732637814f0cda0e3f6d3243f9f769", + "reference": "13d7751377732637814f0cda0e3f6d3243f9f769", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "league/config": "^1.1.1", + "php": "^7.4 || ^8.0", + "psr/event-dispatcher": "^1.0", + "symfony/deprecation-contracts": "^2.1 || ^3.0", + "symfony/polyfill-php80": "^1.15" + }, + "require-dev": { + "cebe/markdown": "^1.0", + "commonmark/cmark": "0.30.0", + "commonmark/commonmark.js": "0.30.0", + "composer/package-versions-deprecated": "^1.8", + "erusev/parsedown": "^1.0", + "ext-json": "*", + "github/gfm": "0.29.0", + "michelf/php-markdown": "^1.4", + "phpstan/phpstan": "^0.12.88 || ^1.0.0", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "symfony/finder": "^5.3", + "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "suggest": { + "symfony/yaml": "v2.3+ required if using the Front Matter extension" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.3-dev" + } + }, + "autoload": { + "psr-4": { + "League\\CommonMark\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Highly-extensible PHP Markdown parser which fully supports the CommonMark spec and GitHub-Flavored Markdown (GFM)", + "homepage": "https://commonmark.thephpleague.com", + "keywords": [ + "commonmark", + "flavored", + "gfm", + "github", + "github-flavored", + "markdown", + "md", + "parser" + ], + "support": { + "docs": "https://commonmark.thephpleague.com/", + "forum": "https://github.com/thephpleague/commonmark/discussions", + "issues": "https://github.com/thephpleague/commonmark/issues", + "rss": "https://github.com/thephpleague/commonmark/releases.atom", + "source": "https://github.com/thephpleague/commonmark" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/commonmark", + "type": "tidelift" + } + ], + "time": "2022-02-13T15:00:57+00:00" + }, + { + "name": "league/config", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/config.git", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/config/zipball/a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "reference": "a9d39eeeb6cc49d10a6e6c36f22c4c1f4a767f3e", + "shasum": "" + }, + "require": { + "dflydev/dot-access-data": "^3.0.1", + "nette/schema": "^1.2", + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^0.12.90", + "phpunit/phpunit": "^9.5.5", + "scrutinizer/ocular": "^1.8.1", + "unleashedtech/php-coding-standard": "^3.1", + "vimeo/psalm": "^4.7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.2-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Config\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Colin O'Dell", + "email": "colinodell@gmail.com", + "homepage": "https://www.colinodell.com", + "role": "Lead Developer" + } + ], + "description": "Define configuration arrays with strict schemas and access values with dot notation", + "homepage": "https://config.thephpleague.com", + "keywords": [ + "array", + "config", + "configuration", + "dot", + "dot-access", + "nested", + "schema" + ], + "support": { + "docs": "https://config.thephpleague.com/", + "issues": "https://github.com/thephpleague/config/issues", + "rss": "https://github.com/thephpleague/config/releases.atom", + "source": "https://github.com/thephpleague/config" + }, + "funding": [ + { + "url": "https://www.colinodell.com/sponsor", + "type": "custom" + }, + { + "url": "https://www.paypal.me/colinpodell/10.00", + "type": "custom" + }, + { + "url": "https://github.com/colinodell", + "type": "github" + } + ], + "time": "2021-08-14T12:15:32+00:00" + }, + { + "name": "league/flysystem", + "version": "1.1.9", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/flysystem.git", + "reference": "094defdb4a7001845300334e7c1ee2335925ef99" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/094defdb4a7001845300334e7c1ee2335925ef99", + "reference": "094defdb4a7001845300334e7c1ee2335925ef99", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "league/mime-type-detection": "^1.3", + "php": "^7.2.5 || ^8.0" + }, + "conflict": { + "league/flysystem-sftp": "<1.0.6" + }, + "require-dev": { + "phpspec/prophecy": "^1.11.1", + "phpunit/phpunit": "^8.5.8" + }, + "suggest": { + "ext-ftp": "Allows you to use FTP server storage", + "ext-openssl": "Allows you to use FTPS server storage", + "league/flysystem-aws-s3-v2": "Allows you to use S3 storage with AWS SDK v2", + "league/flysystem-aws-s3-v3": "Allows you to use S3 storage with AWS SDK v3", + "league/flysystem-azure": "Allows you to use Windows Azure Blob storage", + "league/flysystem-cached-adapter": "Flysystem adapter decorator for metadata caching", + "league/flysystem-eventable-filesystem": "Allows you to use EventableFilesystem", + "league/flysystem-rackspace": "Allows you to use Rackspace Cloud Files", + "league/flysystem-sftp": "Allows you to use SFTP server storage via phpseclib", + "league/flysystem-webdav": "Allows you to use WebDAV storage", + "league/flysystem-ziparchive": "Allows you to use ZipArchive adapter", + "spatie/flysystem-dropbox": "Allows you to use Dropbox storage", + "srmklive/flysystem-dropbox-v2": "Allows you to use Dropbox storage for PHP 5 applications" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.1-dev" + } + }, + "autoload": { + "psr-4": { + "League\\Flysystem\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frenky.net" + } + ], + "description": "Filesystem abstraction: Many filesystems, one API.", + "keywords": [ + "Cloud Files", + "WebDAV", + "abstraction", + "aws", + "cloud", + "copy.com", + "dropbox", + "file systems", + "files", + "filesystem", + "filesystems", + "ftp", + "rackspace", + "remote", + "s3", + "sftp", + "storage" + ], + "support": { + "issues": "https://github.com/thephpleague/flysystem/issues", + "source": "https://github.com/thephpleague/flysystem/tree/1.1.9" + }, + "funding": [ + { + "url": "https://offset.earth/frankdejonge", + "type": "other" + } + ], + "time": "2021-12-09T09:40:50+00:00" + }, + { + "name": "league/mime-type-detection", + "version": "1.9.0", + "source": { + "type": "git", + "url": "https://github.com/thephpleague/mime-type-detection.git", + "reference": "aa70e813a6ad3d1558fc927863d47309b4c23e69" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/thephpleague/mime-type-detection/zipball/aa70e813a6ad3d1558fc927863d47309b4c23e69", + "reference": "aa70e813a6ad3d1558fc927863d47309b4c23e69", + "shasum": "" + }, + "require": { + "ext-fileinfo": "*", + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^3.2", + "phpstan/phpstan": "^0.12.68", + "phpunit/phpunit": "^8.5.8 || ^9.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "League\\MimeTypeDetection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Frank de Jonge", + "email": "info@frankdejonge.nl" + } + ], + "description": "Mime-type detection for Flysystem", + "support": { + "issues": "https://github.com/thephpleague/mime-type-detection/issues", + "source": "https://github.com/thephpleague/mime-type-detection/tree/1.9.0" + }, + "funding": [ + { + "url": "https://github.com/frankdejonge", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/league/flysystem", + "type": "tidelift" + } + ], + "time": "2021-11-21T11:48:40+00:00" + }, + { + "name": "maatwebsite/excel", + "version": "3.1.36", + "source": { + "type": "git", + "url": "https://github.com/SpartnerNL/Laravel-Excel.git", + "reference": "eb31f30d72c51c3fb11644b636945accbe50404f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/SpartnerNL/Laravel-Excel/zipball/eb31f30d72c51c3fb11644b636945accbe50404f", + "reference": "eb31f30d72c51c3fb11644b636945accbe50404f", + "shasum": "" + }, + "require": { + "ext-json": "*", + "illuminate/support": "5.8.*|^6.0|^7.0|^8.0|^9.0", + "php": "^7.0|^8.0", + "phpoffice/phpspreadsheet": "^1.18" + }, + "require-dev": { + "orchestra/testbench": "^6.0|^7.0", + "predis/predis": "^1.1" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Maatwebsite\\Excel\\ExcelServiceProvider" + ], + "aliases": { + "Excel": "Maatwebsite\\Excel\\Facades\\Excel" + } + } + }, + "autoload": { + "psr-4": { + "Maatwebsite\\Excel\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Patrick Brouwers", + "email": "patrick@spartner.nl" + } + ], + "description": "Supercharged Excel exports and imports in Laravel", + "keywords": [ + "PHPExcel", + "batch", + "csv", + "excel", + "export", + "import", + "laravel", + "php", + "phpspreadsheet" + ], + "support": { + "issues": "https://github.com/SpartnerNL/Laravel-Excel/issues", + "source": "https://github.com/SpartnerNL/Laravel-Excel/tree/3.1.36" + }, + "funding": [ + { + "url": "https://laravel-excel.com/commercial-support", + "type": "custom" + }, + { + "url": "https://github.com/patrickbrouwers", + "type": "github" + } + ], + "time": "2022-01-27T18:34:20+00:00" + }, + { + "name": "madnest/madzipper", + "version": "v1.1.1", + "source": { + "type": "git", + "url": "https://github.com/madnest/madzipper.git", + "reference": "788211daf4555ecdacee341816720437d169c0cc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/madnest/madzipper/zipball/788211daf4555ecdacee341816720437d169c0cc", + "reference": "788211daf4555ecdacee341816720437d169c0cc", + "shasum": "" + }, + "require": { + "ext-zip": "*", + "illuminate/filesystem": "^7.0|^8.0", + "illuminate/support": "^7.0|^8.0", + "php": "^7.3|^8.0" + }, + "require-dev": { + "mockery/mockery": "^1.4.4", + "nunomaduro/collision": "^5.10", + "orchestra/testbench": "^6.8", + "phpunit/phpunit": "^9.5" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Madnest\\Madzipper\\MadzipperServiceProvider" + ], + "aliases": { + "Madzipper": "Madnest\\Madzipper\\Madzipper" + } + } + }, + "autoload": { + "psr-4": { + "Madnest\\Madzipper\\": "src/Madnest/Madzipper" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jakub Theimer", + "email": "theimer@madne.st", + "homepage": "https://madne.st", + "role": "Developer" + } + ], + "description": "Wannabe successor of Chumper/Zipper package for Laravel", + "support": { + "issues": "https://github.com/madnest/madzipper/issues", + "source": "https://github.com/madnest/madzipper/tree/v1.1.1" + }, + "time": "2021-11-20T18:23:07+00:00" + }, + { + "name": "maennchen/zipstream-php", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/maennchen/ZipStream-PHP.git", + "reference": "c4c5803cc1f93df3d2448478ef79394a5981cc58" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/maennchen/ZipStream-PHP/zipball/c4c5803cc1f93df3d2448478ef79394a5981cc58", + "reference": "c4c5803cc1f93df3d2448478ef79394a5981cc58", + "shasum": "" + }, + "require": { + "myclabs/php-enum": "^1.5", + "php": ">= 7.1", + "psr/http-message": "^1.0", + "symfony/polyfill-mbstring": "^1.0" + }, + "require-dev": { + "ext-zip": "*", + "guzzlehttp/guzzle": ">= 6.3", + "mikey179/vfsstream": "^1.6", + "phpunit/phpunit": ">= 7.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "ZipStream\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Paul Duncan", + "email": "pabs@pablotron.org" + }, + { + "name": "Jonatan Männchen", + "email": "jonatan@maennchen.ch" + }, + { + "name": "Jesse Donat", + "email": "donatj@gmail.com" + }, + { + "name": "András Kolesár", + "email": "kolesar@kolesar.hu" + } + ], + "description": "ZipStream is a library for dynamically streaming dynamic zip files from PHP without writing to the disk at all on the server.", + "keywords": [ + "stream", + "zip" + ], + "support": { + "issues": "https://github.com/maennchen/ZipStream-PHP/issues", + "source": "https://github.com/maennchen/ZipStream-PHP/tree/master" + }, + "funding": [ + { + "url": "https://opencollective.com/zipstream", + "type": "open_collective" + } + ], + "time": "2020-05-30T13:11:16+00:00" + }, + { + "name": "markbaker/complex", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPComplex.git", + "reference": "ab8bc271e404909db09ff2d5ffa1e538085c0f22" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPComplex/zipball/ab8bc271e404909db09ff2d5ffa1e538085c0f22", + "reference": "ab8bc271e404909db09ff2d5ffa1e538085c0f22", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "phpcompatibility/php-compatibility": "^9.0", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.3", + "squizlabs/php_codesniffer": "^3.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Complex\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@lange.demon.co.uk" + } + ], + "description": "PHP Class for working with complex numbers", + "homepage": "https://github.com/MarkBaker/PHPComplex", + "keywords": [ + "complex", + "mathematics" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPComplex/issues", + "source": "https://github.com/MarkBaker/PHPComplex/tree/3.0.1" + }, + "time": "2021-06-29T15:32:53+00:00" + }, + { + "name": "markbaker/matrix", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/MarkBaker/PHPMatrix.git", + "reference": "c66aefcafb4f6c269510e9ac46b82619a904c576" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/MarkBaker/PHPMatrix/zipball/c66aefcafb4f6c269510e9ac46b82619a904c576", + "reference": "c66aefcafb4f6c269510e9ac46b82619a904c576", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "phpcompatibility/php-compatibility": "^9.0", + "phpdocumentor/phpdocumentor": "2.*", + "phploc/phploc": "^4.0", + "phpmd/phpmd": "2.*", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.3", + "sebastian/phpcpd": "^4.0", + "squizlabs/php_codesniffer": "^3.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Matrix\\": "classes/src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mark Baker", + "email": "mark@demon-angel.eu" + } + ], + "description": "PHP Class for working with matrices", + "homepage": "https://github.com/MarkBaker/PHPMatrix", + "keywords": [ + "mathematics", + "matrix", + "vector" + ], + "support": { + "issues": "https://github.com/MarkBaker/PHPMatrix/issues", + "source": "https://github.com/MarkBaker/PHPMatrix/tree/3.0.0" + }, + "time": "2021-07-01T19:01:15+00:00" + }, + { + "name": "mews/captcha", + "version": "3.2.7", + "source": { + "type": "git", + "url": "https://github.com/mewebstudio/captcha.git", + "reference": "c4dec4963ea19a89aaf679fac1921323dd7decd8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mewebstudio/captcha/zipball/c4dec4963ea19a89aaf679fac1921323dd7decd8", + "reference": "c4dec4963ea19a89aaf679fac1921323dd7decd8", + "shasum": "" + }, + "require": { + "ext-gd": "*", + "illuminate/config": "~5|^6|^7|^8|^9", + "illuminate/filesystem": "~5|^6|^7|^8|^9", + "illuminate/hashing": "~5|^6|^7|^8|^9", + "illuminate/session": "~5|^6|^7|^8|^9", + "illuminate/support": "~5|^6|^7|^8|^9", + "intervention/image": "~2.5", + "php": "^7.2|^8.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "phpunit/phpunit": "^8.5|^9.0" + }, + "type": "package", + "extra": { + "laravel": { + "providers": [ + "Mews\\Captcha\\CaptchaServiceProvider" + ], + "aliases": { + "Captcha": "Mews\\Captcha\\Facades\\Captcha" + } + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Mews\\Captcha\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Muharrem ERİN", + "email": "me@mewebstudio.com", + "homepage": "https://github.com/mewebstudio", + "role": "Developer" + } + ], + "description": "Laravel 5 & 6 Captcha Package", + "homepage": "https://github.com/mewebstudio/captcha", + "keywords": [ + "captcha", + "laravel5 Security", + "laravel6 Captcha", + "laravel6 Security" + ], + "support": { + "issues": "https://github.com/mewebstudio/captcha/issues", + "source": "https://github.com/mewebstudio/captcha/tree/3.2.7" + }, + "time": "2022-02-12T15:58:32+00:00" + }, + { + "name": "monolog/monolog", + "version": "2.3.5", + "source": { + "type": "git", + "url": "https://github.com/Seldaek/monolog.git", + "reference": "fd4380d6fc37626e2f799f29d91195040137eba9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Seldaek/monolog/zipball/fd4380d6fc37626e2f799f29d91195040137eba9", + "reference": "fd4380d6fc37626e2f799f29d91195040137eba9", + "shasum": "" + }, + "require": { + "php": ">=7.2", + "psr/log": "^1.0.1 || ^2.0 || ^3.0" + }, + "provide": { + "psr/log-implementation": "1.0.0 || 2.0.0 || 3.0.0" + }, + "require-dev": { + "aws/aws-sdk-php": "^2.4.9 || ^3.0", + "doctrine/couchdb": "~1.0@dev", + "elasticsearch/elasticsearch": "^7", + "graylog2/gelf-php": "^1.4.2", + "mongodb/mongodb": "^1.8", + "php-amqplib/php-amqplib": "~2.4 || ^3", + "php-console/php-console": "^3.1.3", + "phpspec/prophecy": "^1.6.1", + "phpstan/phpstan": "^0.12.91", + "phpunit/phpunit": "^8.5", + "predis/predis": "^1.1", + "rollbar/rollbar": "^1.3", + "ruflin/elastica": ">=0.90@dev", + "swiftmailer/swiftmailer": "^5.3|^6.0" + }, + "suggest": { + "aws/aws-sdk-php": "Allow sending log messages to AWS services like DynamoDB", + "doctrine/couchdb": "Allow sending log messages to a CouchDB server", + "elasticsearch/elasticsearch": "Allow sending log messages to an Elasticsearch server via official client", + "ext-amqp": "Allow sending log messages to an AMQP server (1.0+ required)", + "ext-curl": "Required to send log messages using the IFTTTHandler, the LogglyHandler, the SendGridHandler, the SlackWebhookHandler or the TelegramBotHandler", + "ext-mbstring": "Allow to work properly with unicode symbols", + "ext-mongodb": "Allow sending log messages to a MongoDB server (via driver)", + "ext-openssl": "Required to send log messages using SSL", + "ext-sockets": "Allow sending log messages to a Syslog server (via UDP driver)", + "graylog2/gelf-php": "Allow sending log messages to a GrayLog2 server", + "mongodb/mongodb": "Allow sending log messages to a MongoDB server (via library)", + "php-amqplib/php-amqplib": "Allow sending log messages to an AMQP server using php-amqplib", + "php-console/php-console": "Allow sending log messages to Google Chrome", + "rollbar/rollbar": "Allow sending log messages to Rollbar", + "ruflin/elastica": "Allow sending log messages to an Elastic Search server" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Monolog\\": "src/Monolog" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "https://seld.be" + } + ], + "description": "Sends your logs to files, sockets, inboxes, databases and various web services", + "homepage": "https://github.com/Seldaek/monolog", + "keywords": [ + "log", + "logging", + "psr-3" + ], + "support": { + "issues": "https://github.com/Seldaek/monolog/issues", + "source": "https://github.com/Seldaek/monolog/tree/2.3.5" + }, + "funding": [ + { + "url": "https://github.com/Seldaek", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/monolog/monolog", + "type": "tidelift" + } + ], + "time": "2021-10-01T21:08:31+00:00" + }, + { + "name": "myclabs/php-enum", + "version": "1.8.3", + "source": { + "type": "git", + "url": "https://github.com/myclabs/php-enum.git", + "reference": "b942d263c641ddb5190929ff840c68f78713e937" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/php-enum/zipball/b942d263c641ddb5190929ff840c68f78713e937", + "reference": "b942d263c641ddb5190929ff840c68f78713e937", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.3 || ^8.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.5", + "squizlabs/php_codesniffer": "1.*", + "vimeo/psalm": "^4.6.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "MyCLabs\\Enum\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP Enum contributors", + "homepage": "https://github.com/myclabs/php-enum/graphs/contributors" + } + ], + "description": "PHP Enum implementation", + "homepage": "http://github.com/myclabs/php-enum", + "keywords": [ + "enum" + ], + "support": { + "issues": "https://github.com/myclabs/php-enum/issues", + "source": "https://github.com/myclabs/php-enum/tree/1.8.3" + }, + "funding": [ + { + "url": "https://github.com/mnapoli", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/php-enum", + "type": "tidelift" + } + ], + "time": "2021-07-05T08:18:36+00:00" + }, + { + "name": "nesbot/carbon", + "version": "2.57.0", + "source": { + "type": "git", + "url": "https://github.com/briannesbitt/Carbon.git", + "reference": "4a54375c21eea4811dbd1149fe6b246517554e78" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/4a54375c21eea4811dbd1149fe6b246517554e78", + "reference": "4a54375c21eea4811dbd1149fe6b246517554e78", + "shasum": "" + }, + "require": { + "ext-json": "*", + "php": "^7.1.8 || ^8.0", + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.16", + "symfony/translation": "^3.4 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "doctrine/dbal": "^2.0 || ^3.0", + "doctrine/orm": "^2.7", + "friendsofphp/php-cs-fixer": "^3.0", + "kylekatarnls/multi-tester": "^2.0", + "phpmd/phpmd": "^2.9", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12.54 || ^1.0", + "phpunit/phpunit": "^7.5.20 || ^8.5.14", + "squizlabs/php_codesniffer": "^3.4" + }, + "bin": [ + "bin/carbon" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-3.x": "3.x-dev", + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Carbon\\Laravel\\ServiceProvider" + ] + }, + "phpstan": { + "includes": [ + "extension.neon" + ] + } + }, + "autoload": { + "psr-4": { + "Carbon\\": "src/Carbon/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Brian Nesbitt", + "email": "brian@nesbot.com", + "homepage": "https://markido.com" + }, + { + "name": "kylekatarnls", + "homepage": "https://github.com/kylekatarnls" + } + ], + "description": "An API extension for DateTime that supports 281 different languages.", + "homepage": "https://carbon.nesbot.com", + "keywords": [ + "date", + "datetime", + "time" + ], + "support": { + "docs": "https://carbon.nesbot.com/docs", + "issues": "https://github.com/briannesbitt/Carbon/issues", + "source": "https://github.com/briannesbitt/Carbon" + }, + "funding": [ + { + "url": "https://opencollective.com/Carbon", + "type": "open_collective" + }, + { + "url": "https://tidelift.com/funding/github/packagist/nesbot/carbon", + "type": "tidelift" + } + ], + "time": "2022-02-13T18:13:33+00:00" + }, + { + "name": "nette/schema", + "version": "v1.2.2", + "source": { + "type": "git", + "url": "https://github.com/nette/schema.git", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/schema/zipball/9a39cef03a5b34c7de64f551538cbba05c2be5df", + "reference": "9a39cef03a5b34c7de64f551538cbba05c2be5df", + "shasum": "" + }, + "require": { + "nette/utils": "^2.5.7 || ^3.1.5 || ^4.0", + "php": ">=7.1 <8.2" + }, + "require-dev": { + "nette/tester": "^2.3 || ^2.4", + "phpstan/phpstan-nette": "^0.12", + "tracy/tracy": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "📐 Nette Schema: validating data structures against a given Schema.", + "homepage": "https://nette.org", + "keywords": [ + "config", + "nette" + ], + "support": { + "issues": "https://github.com/nette/schema/issues", + "source": "https://github.com/nette/schema/tree/v1.2.2" + }, + "time": "2021-10-15T11:40:02+00:00" + }, + { + "name": "nette/utils", + "version": "v3.2.7", + "source": { + "type": "git", + "url": "https://github.com/nette/utils.git", + "reference": "0af4e3de4df9f1543534beab255ccf459e7a2c99" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nette/utils/zipball/0af4e3de4df9f1543534beab255ccf459e7a2c99", + "reference": "0af4e3de4df9f1543534beab255ccf459e7a2c99", + "shasum": "" + }, + "require": { + "php": ">=7.2 <8.2" + }, + "conflict": { + "nette/di": "<3.0.6" + }, + "require-dev": { + "nette/tester": "~2.0", + "phpstan/phpstan": "^1.0", + "tracy/tracy": "^2.3" + }, + "suggest": { + "ext-gd": "to use Image", + "ext-iconv": "to use Strings::webalize(), toAscii(), chr() and reverse()", + "ext-intl": "to use Strings::webalize(), toAscii(), normalize() and compare()", + "ext-json": "to use Nette\\Utils\\Json", + "ext-mbstring": "to use Strings::lower() etc...", + "ext-tokenizer": "to use Nette\\Utils\\Reflection::getUseStatements()", + "ext-xml": "to use Strings::length() etc. when mbstring is not available" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause", + "GPL-2.0-only", + "GPL-3.0-only" + ], + "authors": [ + { + "name": "David Grudl", + "homepage": "https://davidgrudl.com" + }, + { + "name": "Nette Community", + "homepage": "https://nette.org/contributors" + } + ], + "description": "🛠 Nette Utils: lightweight utilities for string & array manipulation, image handling, safe JSON encoding/decoding, validation, slug or strong password generating etc.", + "homepage": "https://nette.org", + "keywords": [ + "array", + "core", + "datetime", + "images", + "json", + "nette", + "paginator", + "password", + "slugify", + "string", + "unicode", + "utf-8", + "utility", + "validation" + ], + "support": { + "issues": "https://github.com/nette/utils/issues", + "source": "https://github.com/nette/utils/tree/v3.2.7" + }, + "time": "2022-01-24T11:29:14+00:00" + }, + { + "name": "nikic/php-parser", + "version": "v4.13.2", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "210577fe3cf7badcc5814d99455df46564f3c077" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/210577fe3cf7badcc5814d99455df46564f3c077", + "reference": "210577fe3cf7badcc5814d99455df46564f3c077", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=7.0" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^6.5 || ^7.0 || ^8.0 || ^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.9-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v4.13.2" + }, + "time": "2021-11-30T19:35:32+00:00" + }, + { + "name": "opis/closure", + "version": "3.6.3", + "source": { + "type": "git", + "url": "https://github.com/opis/closure.git", + "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/opis/closure/zipball/3d81e4309d2a927abbe66df935f4bb60082805ad", + "reference": "3d81e4309d2a927abbe66df935f4bb60082805ad", + "shasum": "" + }, + "require": { + "php": "^5.4 || ^7.0 || ^8.0" + }, + "require-dev": { + "jeremeamia/superclosure": "^2.0", + "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.6.x-dev" + } + }, + "autoload": { + "psr-4": { + "Opis\\Closure\\": "src/" + }, + "files": [ + "functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marius Sarca", + "email": "marius.sarca@gmail.com" + }, + { + "name": "Sorin Sarca", + "email": "sarca_sorin@hotmail.com" + } + ], + "description": "A library that can be used to serialize closures (anonymous functions) and arbitrary objects.", + "homepage": "https://opis.io/closure", + "keywords": [ + "anonymous functions", + "closure", + "function", + "serializable", + "serialization", + "serialize" + ], + "support": { + "issues": "https://github.com/opis/closure/issues", + "source": "https://github.com/opis/closure/tree/3.6.3" + }, + "time": "2022-01-27T09:35:39+00:00" + }, + { + "name": "orangehill/iseed", + "version": "v3.0.2", + "source": { + "type": "git", + "url": "https://github.com/orangehill/iseed.git", + "reference": "11f4355cdffc570eb231259f8700d760215df3fe" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/orangehill/iseed/zipball/11f4355cdffc570eb231259f8700d760215df3fe", + "reference": "11f4355cdffc570eb231259f8700d760215df3fe", + "shasum": "" + }, + "require": { + "illuminate/support": "~5.5.0|~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0|^8.0|^9.0", + "php": "^7.2|^8.0.2" + }, + "require-dev": { + "illuminate/filesystem": "~5.5.0|~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0|^8.0|^9.0", + "laravel/framework": "~5.5.0|~5.6.0|~5.7.0|~5.8.0|^6.0|^7.0|^8.0|^9.0", + "mockery/mockery": "^1.0.0", + "phpunit/phpunit": "^8.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Orangehill\\Iseed\\IseedServiceProvider" + ] + } + }, + "autoload": { + "psr-0": { + "Orangehill\\Iseed": "src/" + }, + "classmap": [ + "src/Orangehill/Iseed/Exceptions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Tihomir Opacic", + "email": "tihomir.opacic@orangehilldev.com" + } + ], + "description": "Generate a new Laravel database seed file based on data from the existing database table.", + "keywords": [ + "artisan", + "generators", + "laravel", + "seed" + ], + "support": { + "issues": "https://github.com/orangehill/iseed/issues", + "source": "https://github.com/orangehill/iseed/tree/v3.0.2" + }, + "time": "2022-02-11T07:31:08+00:00" + }, + { + "name": "phpoffice/phpspreadsheet", + "version": "1.22.0", + "source": { + "type": "git", + "url": "https://github.com/PHPOffice/PhpSpreadsheet.git", + "reference": "3a9e29b4f386a08a151a33578e80ef1747037a48" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/PHPOffice/PhpSpreadsheet/zipball/3a9e29b4f386a08a151a33578e80ef1747037a48", + "reference": "3a9e29b4f386a08a151a33578e80ef1747037a48", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-dom": "*", + "ext-fileinfo": "*", + "ext-gd": "*", + "ext-iconv": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-simplexml": "*", + "ext-xml": "*", + "ext-xmlreader": "*", + "ext-xmlwriter": "*", + "ext-zip": "*", + "ext-zlib": "*", + "ezyang/htmlpurifier": "^4.13", + "maennchen/zipstream-php": "^2.1", + "markbaker/complex": "^3.0", + "markbaker/matrix": "^3.0", + "php": "^7.3 || ^8.0", + "psr/http-client": "^1.0", + "psr/http-factory": "^1.0", + "psr/simple-cache": "^1.0" + }, + "require-dev": { + "dealerdirect/phpcodesniffer-composer-installer": "dev-master", + "dompdf/dompdf": "^1.0", + "friendsofphp/php-cs-fixer": "^3.2", + "jpgraph/jpgraph": "^4.0", + "mpdf/mpdf": "8.0.17", + "phpcompatibility/php-compatibility": "^9.3", + "phpstan/phpstan": "^1.1", + "phpstan/phpstan-phpunit": "^1.0", + "phpunit/phpunit": "^8.5 || ^9.0", + "squizlabs/php_codesniffer": "^3.6", + "tecnickcom/tcpdf": "^6.4" + }, + "suggest": { + "dompdf/dompdf": "Option for rendering PDF with PDF Writer (doesn't yet support PHP8)", + "jpgraph/jpgraph": "Option for rendering charts, or including charts with PDF or HTML Writers", + "mpdf/mpdf": "Option for rendering PDF with PDF Writer", + "tecnickcom/tcpdf": "Option for rendering PDF with PDF Writer (doesn't yet support PHP8)" + }, + "type": "library", + "autoload": { + "psr-4": { + "PhpOffice\\PhpSpreadsheet\\": "src/PhpSpreadsheet" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Maarten Balliauw", + "homepage": "https://blog.maartenballiauw.be" + }, + { + "name": "Mark Baker", + "homepage": "https://markbakeruk.net" + }, + { + "name": "Franck Lefevre", + "homepage": "https://rootslabs.net" + }, + { + "name": "Erik Tilt" + }, + { + "name": "Adrien Crivelli" + } + ], + "description": "PHPSpreadsheet - Read, Create and Write Spreadsheet documents in PHP - Spreadsheet engine", + "homepage": "https://github.com/PHPOffice/PhpSpreadsheet", + "keywords": [ + "OpenXML", + "excel", + "gnumeric", + "ods", + "php", + "spreadsheet", + "xls", + "xlsx" + ], + "support": { + "issues": "https://github.com/PHPOffice/PhpSpreadsheet/issues", + "source": "https://github.com/PHPOffice/PhpSpreadsheet/tree/1.22.0" + }, + "time": "2022-02-18T12:57:07+00:00" + }, + { + "name": "phpoption/phpoption", + "version": "1.8.1", + "source": { + "type": "git", + "url": "https://github.com/schmittjoh/php-option.git", + "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", + "reference": "eab7a0df01fe2344d172bff4cd6dbd3f8b84ad15", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "phpunit/phpunit": "^6.5.14 || ^7.5.20 || ^8.5.19 || ^9.5.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.8-dev" + } + }, + "autoload": { + "psr-4": { + "PhpOption\\": "src/PhpOption/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Johannes M. Schmitt", + "email": "schmittjoh@gmail.com", + "homepage": "https://github.com/schmittjoh" + }, + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + } + ], + "description": "Option Type for PHP", + "keywords": [ + "language", + "option", + "php", + "type" + ], + "support": { + "issues": "https://github.com/schmittjoh/php-option/issues", + "source": "https://github.com/schmittjoh/php-option/tree/1.8.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpoption/phpoption", + "type": "tidelift" + } + ], + "time": "2021-12-04T23:24:31+00:00" + }, + { + "name": "predis/predis", + "version": "v1.1.10", + "source": { + "type": "git", + "url": "https://github.com/predis/predis.git", + "reference": "a2fb02d738bedadcffdbb07efa3a5e7bd57f8d6e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/predis/predis/zipball/a2fb02d738bedadcffdbb07efa3a5e7bd57f8d6e", + "reference": "a2fb02d738bedadcffdbb07efa3a5e7bd57f8d6e", + "shasum": "" + }, + "require": { + "php": ">=5.3.9" + }, + "require-dev": { + "phpunit/phpunit": "~4.8" + }, + "suggest": { + "ext-curl": "Allows access to Webdis when paired with phpiredis", + "ext-phpiredis": "Allows faster serialization and deserialization of the Redis protocol" + }, + "type": "library", + "autoload": { + "psr-4": { + "Predis\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Daniele Alessandri", + "email": "suppakilla@gmail.com", + "homepage": "http://clorophilla.net", + "role": "Creator & Maintainer" + }, + { + "name": "Till Krüss", + "homepage": "https://till.im", + "role": "Maintainer" + } + ], + "description": "Flexible and feature-complete Redis client for PHP and HHVM", + "homepage": "http://github.com/predis/predis", + "keywords": [ + "nosql", + "predis", + "redis" + ], + "support": { + "issues": "https://github.com/predis/predis/issues", + "source": "https://github.com/predis/predis/tree/v1.1.10" + }, + "funding": [ + { + "url": "https://github.com/sponsors/tillkruss", + "type": "github" + } + ], + "time": "2022-01-05T17:46:08+00:00" + }, + { + "name": "psr/container", + "version": "1.1.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/513e0666f7216c7459170d56df27dfcefe1689ea", + "reference": "513e0666f7216c7459170d56df27dfcefe1689ea", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/1.1.2" + }, + "time": "2021-11-05T16:50:12+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/http-client", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-client.git", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-client/zipball/2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "reference": "2dfb5f6c5eff0e91e20e913f8c5452ed95b86621", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Client\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP clients", + "homepage": "https://github.com/php-fig/http-client", + "keywords": [ + "http", + "http-client", + "psr", + "psr-18" + ], + "support": { + "source": "https://github.com/php-fig/http-client/tree/master" + }, + "time": "2020-06-29T06:28:15+00:00" + }, + { + "name": "psr/http-factory", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-factory.git", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-factory/zipball/12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "reference": "12ac7fcd07e5b077433f5f2bee95b3a771bf61be", + "shasum": "" + }, + "require": { + "php": ">=7.0.0", + "psr/http-message": "^1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for PSR-7 HTTP message factories", + "keywords": [ + "factory", + "http", + "message", + "psr", + "psr-17", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-factory/tree/master" + }, + "time": "2019-04-30T12:38:16+00:00" + }, + { + "name": "psr/http-message", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/http-message.git", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/http-message/zipball/f6561bf28d520154e4b0ec72be95418abe6d9363", + "reference": "f6561bf28d520154e4b0ec72be95418abe6d9363", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Http\\Message\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interface for HTTP messages", + "homepage": "https://github.com/php-fig/http-message", + "keywords": [ + "http", + "http-message", + "psr", + "psr-7", + "request", + "response" + ], + "support": { + "source": "https://github.com/php-fig/http-message/tree/master" + }, + "time": "2016-08-06T14:39:51+00:00" + }, + { + "name": "psr/log", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/ef29f6d262798707a9edd554e2b82517ef3a9376", + "reference": "ef29f6d262798707a9edd554e2b82517ef3a9376", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/2.0.0" + }, + "time": "2021-07-14T16:41:46+00:00" + }, + { + "name": "psr/simple-cache", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/simple-cache.git", + "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/simple-cache/zipball/408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "reference": "408d5eafb83c57f6365a3ca330ff23aa4a5fa39b", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\SimpleCache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for simple caching", + "keywords": [ + "cache", + "caching", + "psr", + "psr-16", + "simple-cache" + ], + "support": { + "source": "https://github.com/php-fig/simple-cache/tree/master" + }, + "time": "2017-10-23T01:57:42+00:00" + }, + { + "name": "psy/psysh", + "version": "v0.11.1", + "source": { + "type": "git", + "url": "https://github.com/bobthecow/psysh.git", + "reference": "570292577277f06f590635381a7f761a6cf4f026" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bobthecow/psysh/zipball/570292577277f06f590635381a7f761a6cf4f026", + "reference": "570292577277f06f590635381a7f761a6cf4f026", + "shasum": "" + }, + "require": { + "ext-json": "*", + "ext-tokenizer": "*", + "nikic/php-parser": "^4.0 || ^3.1", + "php": "^8.0 || ^7.0.8", + "symfony/console": "^6.0 || ^5.0 || ^4.0 || ^3.4", + "symfony/var-dumper": "^6.0 || ^5.0 || ^4.0 || ^3.4" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.2", + "hoa/console": "3.17.05.02" + }, + "suggest": { + "ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)", + "ext-pdo-sqlite": "The doc command requires SQLite to work.", + "ext-posix": "If you have PCNTL, you'll want the POSIX extension as well.", + "ext-readline": "Enables support for arrow-key history navigation, and showing and manipulating command history.", + "hoa/console": "A pure PHP readline implementation. You'll want this if your PHP install doesn't already support readline or libedit." + }, + "bin": [ + "bin/psysh" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "0.11.x-dev" + } + }, + "autoload": { + "files": [ + "src/functions.php" + ], + "psr-4": { + "Psy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Justin Hileman", + "email": "justin@justinhileman.info", + "homepage": "http://justinhileman.com" + } + ], + "description": "An interactive shell for modern PHP.", + "homepage": "http://psysh.org", + "keywords": [ + "REPL", + "console", + "interactive", + "shell" + ], + "support": { + "issues": "https://github.com/bobthecow/psysh/issues", + "source": "https://github.com/bobthecow/psysh/tree/v0.11.1" + }, + "time": "2022-01-03T13:58:38+00:00" + }, + { + "name": "ralouphie/getallheaders", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/ralouphie/getallheaders.git", + "reference": "120b605dfeb996808c31b6477290a714d356e822" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822", + "reference": "120b605dfeb996808c31b6477290a714d356e822", + "shasum": "" + }, + "require": { + "php": ">=5.6" + }, + "require-dev": { + "php-coveralls/php-coveralls": "^2.1", + "phpunit/phpunit": "^5 || ^6.5" + }, + "type": "library", + "autoload": { + "files": [ + "src/getallheaders.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ralph Khattar", + "email": "ralph.khattar@gmail.com" + } + ], + "description": "A polyfill for getallheaders.", + "support": { + "issues": "https://github.com/ralouphie/getallheaders/issues", + "source": "https://github.com/ralouphie/getallheaders/tree/develop" + }, + "time": "2019-03-08T08:55:37+00:00" + }, + { + "name": "ramsey/collection", + "version": "1.2.2", + "source": { + "type": "git", + "url": "https://github.com/ramsey/collection.git", + "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/collection/zipball/cccc74ee5e328031b15640b51056ee8d3bb66c0a", + "reference": "cccc74ee5e328031b15640b51056ee8d3bb66c0a", + "shasum": "" + }, + "require": { + "php": "^7.3 || ^8", + "symfony/polyfill-php81": "^1.23" + }, + "require-dev": { + "captainhook/captainhook": "^5.3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "ergebnis/composer-normalize": "^2.6", + "fakerphp/faker": "^1.5", + "hamcrest/hamcrest-php": "^2", + "jangregor/phpstan-prophecy": "^0.8", + "mockery/mockery": "^1.3", + "phpspec/prophecy-phpunit": "^2.0", + "phpstan/extension-installer": "^1", + "phpstan/phpstan": "^0.12.32", + "phpstan/phpstan-mockery": "^0.12.5", + "phpstan/phpstan-phpunit": "^0.12.11", + "phpunit/phpunit": "^8.5 || ^9", + "psy/psysh": "^0.10.4", + "slevomat/coding-standard": "^6.3", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Ramsey\\Collection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ben Ramsey", + "email": "ben@benramsey.com", + "homepage": "https://benramsey.com" + } + ], + "description": "A PHP library for representing and manipulating collections.", + "keywords": [ + "array", + "collection", + "hash", + "map", + "queue", + "set" + ], + "support": { + "issues": "https://github.com/ramsey/collection/issues", + "source": "https://github.com/ramsey/collection/tree/1.2.2" + }, + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ramsey/collection", + "type": "tidelift" + } + ], + "time": "2021-10-10T03:01:02+00:00" + }, + { + "name": "ramsey/uuid", + "version": "4.2.3", + "source": { + "type": "git", + "url": "https://github.com/ramsey/uuid.git", + "reference": "fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df", + "reference": "fc9bb7fb5388691fd7373cd44dcb4d63bbcf24df", + "shasum": "" + }, + "require": { + "brick/math": "^0.8 || ^0.9", + "ext-json": "*", + "php": "^7.2 || ^8.0", + "ramsey/collection": "^1.0", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-php80": "^1.14" + }, + "replace": { + "rhumsaa/uuid": "self.version" + }, + "require-dev": { + "captainhook/captainhook": "^5.10", + "captainhook/plugin-composer": "^5.3", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0", + "doctrine/annotations": "^1.8", + "ergebnis/composer-normalize": "^2.15", + "mockery/mockery": "^1.3", + "moontoast/math": "^1.1", + "paragonie/random-lib": "^2", + "php-mock/php-mock": "^2.2", + "php-mock/php-mock-mockery": "^1.3", + "php-parallel-lint/php-parallel-lint": "^1.1", + "phpbench/phpbench": "^1.0", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-mockery": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^8.5 || ^9", + "slevomat/coding-standard": "^7.0", + "squizlabs/php_codesniffer": "^3.5", + "vimeo/psalm": "^4.9" + }, + "suggest": { + "ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.", + "ext-ctype": "Enables faster processing of character classification using ctype functions.", + "ext-gmp": "Enables faster math with arbitrary-precision integers using GMP.", + "ext-uuid": "Enables the use of PeclUuidTimeGenerator and PeclUuidRandomGenerator.", + "paragonie/random-lib": "Provides RandomLib for use with the RandomLibAdapter", + "ramsey/uuid-doctrine": "Allows the use of Ramsey\\Uuid\\Uuid as Doctrine field type." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "4.x-dev" + }, + "captainhook": { + "force-install": true + } + }, + "autoload": { + "psr-4": { + "Ramsey\\Uuid\\": "src/" + }, + "files": [ + "src/functions.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A PHP library for generating and working with universally unique identifiers (UUIDs).", + "keywords": [ + "guid", + "identifier", + "uuid" + ], + "support": { + "issues": "https://github.com/ramsey/uuid/issues", + "source": "https://github.com/ramsey/uuid/tree/4.2.3" + }, + "funding": [ + { + "url": "https://github.com/ramsey", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid", + "type": "tidelift" + } + ], + "time": "2021-09-25T23:10:38+00:00" + }, + { + "name": "swiftmailer/swiftmailer", + "version": "v6.3.0", + "source": { + "type": "git", + "url": "https://github.com/swiftmailer/swiftmailer.git", + "reference": "8a5d5072dca8f48460fce2f4131fcc495eec654c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/swiftmailer/swiftmailer/zipball/8a5d5072dca8f48460fce2f4131fcc495eec654c", + "reference": "8a5d5072dca8f48460fce2f4131fcc495eec654c", + "shasum": "" + }, + "require": { + "egulias/email-validator": "^2.0|^3.1", + "php": ">=7.0.0", + "symfony/polyfill-iconv": "^1.0", + "symfony/polyfill-intl-idn": "^1.10", + "symfony/polyfill-mbstring": "^1.0" + }, + "require-dev": { + "mockery/mockery": "^1.0", + "symfony/phpunit-bridge": "^4.4|^5.4" + }, + "suggest": { + "ext-intl": "Needed to support internationalized email addresses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "6.2-dev" + } + }, + "autoload": { + "files": [ + "lib/swift_required.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Chris Corbyn" + }, + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + } + ], + "description": "Swiftmailer, free feature-rich PHP mailer", + "homepage": "https://swiftmailer.symfony.com", + "keywords": [ + "email", + "mail", + "mailer" + ], + "support": { + "issues": "https://github.com/swiftmailer/swiftmailer/issues", + "source": "https://github.com/swiftmailer/swiftmailer/tree/v6.3.0" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/swiftmailer/swiftmailer", + "type": "tidelift" + } + ], + "abandoned": "symfony/mailer", + "time": "2021-10-18T15:26:12+00:00" + }, + { + "name": "symfony/console", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "a2a86ec353d825c75856c6fd14fac416a7bdb6b8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/a2a86ec353d825c75856c6fd14fac416a7bdb6b8", + "reference": "a2a86ec353d825c75856c6fd14fac416a7bdb6b8", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.16", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/string": "^5.1|^6.0" + }, + "conflict": { + "psr/log": ">=3", + "symfony/dependency-injection": "<4.4", + "symfony/dotenv": "<5.1", + "symfony/event-dispatcher": "<4.4", + "symfony/lock": "<4.4", + "symfony/process": "<4.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0" + }, + "require-dev": { + "psr/log": "^1|^2", + "symfony/config": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/event-dispatcher": "^4.4|^5.0|^6.0", + "symfony/lock": "^4.4|^5.0|^6.0", + "symfony/process": "^4.4|^5.0|^6.0", + "symfony/var-dumper": "^4.4|^5.0|^6.0" + }, + "suggest": { + "psr/log": "For using the console logger", + "symfony/event-dispatcher": "", + "symfony/lock": "", + "symfony/process": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-26T16:28:35+00:00" + }, + { + "name": "symfony/css-selector", + "version": "v6.0.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/css-selector.git", + "reference": "1955d595c12c111629cc814d3f2a2ff13580508a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/1955d595c12c111629cc814d3f2a2ff13580508a", + "reference": "1955d595c12c111629cc814d3f2a2ff13580508a", + "shasum": "" + }, + "require": { + "php": ">=8.0.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\CssSelector\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Jean-François Simon", + "email": "jeanfrancois.simon@sensiolabs.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Converts CSS selectors to XPath expressions", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/css-selector/tree/v6.0.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:55:41+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", + "reference": "c726b64c1ccfe2896cb7df2e1331c357ad1c8ced", + "shasum": "" + }, + "require": { + "php": ">=8.0.2" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.0.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-11-01T23:48:49+00:00" + }, + { + "name": "symfony/error-handler", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/error-handler.git", + "reference": "c4ffc2cd919950d13c8c9ce32a70c70214c3ffc5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/c4ffc2cd919950d13c8c9ce32a70c70214c3ffc5", + "reference": "c4ffc2cd919950d13c8c9ce32a70c70214c3ffc5", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/log": "^1|^2|^3", + "symfony/var-dumper": "^4.4|^5.0|^6.0" + }, + "require-dev": { + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/http-kernel": "^4.4|^5.0|^6.0", + "symfony/serializer": "^4.4|^5.0|^6.0" + }, + "bin": [ + "Resources/bin/patch-type-declarations" + ], + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\ErrorHandler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools to manage errors and ease debugging PHP code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/error-handler/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:53:40+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v6.0.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "6472ea2dd415e925b90ca82be64b8bc6157f3934" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/6472ea2dd415e925b90ca82be64b8bc6157f3934", + "reference": "6472ea2dd415e925b90ca82be64b8bc6157f3934", + "shasum": "" + }, + "require": { + "php": ">=8.0.2", + "symfony/event-dispatcher-contracts": "^2|^3" + }, + "conflict": { + "symfony/dependency-injection": "<5.4" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/error-handler": "^5.4|^6.0", + "symfony/expression-language": "^5.4|^6.0", + "symfony/http-foundation": "^5.4|^6.0", + "symfony/service-contracts": "^1.1|^2|^3", + "symfony/stopwatch": "^5.4|^6.0" + }, + "suggest": { + "symfony/dependency-injection": "", + "symfony/http-kernel": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v6.0.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:55:41+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "aa5422287b75594b90ee9cd807caf8f0df491385" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/aa5422287b75594b90ee9cd807caf8f0df491385", + "reference": "aa5422287b75594b90ee9cd807caf8f0df491385", + "shasum": "" + }, + "require": { + "php": ">=8.0.2", + "psr/event-dispatcher": "^1" + }, + "suggest": { + "symfony/event-dispatcher-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.0.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-07-15T12:33:35+00:00" + }, + { + "name": "symfony/finder", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "231313534dded84c7ecaa79d14bc5da4ccb69b7d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/231313534dded84c7ecaa79d14bc5da4ccb69b7d", + "reference": "231313534dded84c7ecaa79d14bc5da4ccb69b7d", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-php80": "^1.16" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-26T16:34:36+00:00" + }, + { + "name": "symfony/http-foundation", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "ef409ff341a565a3663157d4324536746d49a0c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/ef409ff341a565a3663157d4324536746d49a0c7", + "reference": "ef409ff341a565a3663157d4324536746d49a0c7", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-mbstring": "~1.1", + "symfony/polyfill-php80": "^1.16" + }, + "require-dev": { + "predis/predis": "~1.0", + "symfony/cache": "^4.4|^5.0|^6.0", + "symfony/expression-language": "^4.4|^5.0|^6.0", + "symfony/mime": "^4.4|^5.0|^6.0" + }, + "suggest": { + "symfony/mime": "To use the file extension guesser" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpFoundation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Defines an object-oriented layer for the HTTP specification", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-foundation/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:53:40+00:00" + }, + { + "name": "symfony/http-kernel", + "version": "v5.4.4", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-kernel.git", + "reference": "49f40347228c773688a0488feea0175aa7f4d268" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/49f40347228c773688a0488feea0175aa7f4d268", + "reference": "49f40347228c773688a0488feea0175aa7f4d268", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/log": "^1|^2", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/error-handler": "^4.4|^5.0|^6.0", + "symfony/event-dispatcher": "^5.0|^6.0", + "symfony/http-foundation": "^5.3.7|^6.0", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-php73": "^1.9", + "symfony/polyfill-php80": "^1.16" + }, + "conflict": { + "symfony/browser-kit": "<5.4", + "symfony/cache": "<5.0", + "symfony/config": "<5.0", + "symfony/console": "<4.4", + "symfony/dependency-injection": "<5.3", + "symfony/doctrine-bridge": "<5.0", + "symfony/form": "<5.0", + "symfony/http-client": "<5.0", + "symfony/mailer": "<5.0", + "symfony/messenger": "<5.0", + "symfony/translation": "<5.0", + "symfony/twig-bridge": "<5.0", + "symfony/validator": "<5.0", + "twig/twig": "<2.13" + }, + "provide": { + "psr/log-implementation": "1.0|2.0" + }, + "require-dev": { + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/browser-kit": "^5.4|^6.0", + "symfony/config": "^5.0|^6.0", + "symfony/console": "^4.4|^5.0|^6.0", + "symfony/css-selector": "^4.4|^5.0|^6.0", + "symfony/dependency-injection": "^5.3|^6.0", + "symfony/dom-crawler": "^4.4|^5.0|^6.0", + "symfony/expression-language": "^4.4|^5.0|^6.0", + "symfony/finder": "^4.4|^5.0|^6.0", + "symfony/http-client-contracts": "^1.1|^2|^3", + "symfony/process": "^4.4|^5.0|^6.0", + "symfony/routing": "^4.4|^5.0|^6.0", + "symfony/stopwatch": "^4.4|^5.0|^6.0", + "symfony/translation": "^4.4|^5.0|^6.0", + "symfony/translation-contracts": "^1.1|^2|^3", + "twig/twig": "^2.13|^3.0.4" + }, + "suggest": { + "symfony/browser-kit": "", + "symfony/config": "", + "symfony/console": "", + "symfony/dependency-injection": "" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpKernel\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides a structured process for converting a Request into a Response", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-kernel/tree/v5.4.4" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-29T18:08:07+00:00" + }, + { + "name": "symfony/mime", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/mime.git", + "reference": "e1503cfb5c9a225350f549d3bb99296f4abfb80f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/mime/zipball/e1503cfb5c9a225350f549d3bb99296f4abfb80f", + "reference": "e1503cfb5c9a225350f549d3bb99296f4abfb80f", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-intl-idn": "^1.10", + "symfony/polyfill-mbstring": "^1.0", + "symfony/polyfill-php80": "^1.16" + }, + "conflict": { + "egulias/email-validator": "~3.0.0", + "phpdocumentor/reflection-docblock": "<3.2.2", + "phpdocumentor/type-resolver": "<1.4.0", + "symfony/mailer": "<4.4" + }, + "require-dev": { + "egulias/email-validator": "^2.1.10|^3.1", + "phpdocumentor/reflection-docblock": "^3.0|^4.0|^5.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/property-access": "^4.4|^5.1|^6.0", + "symfony/property-info": "^4.4|^5.1|^6.0", + "symfony/serializer": "^5.2|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Mime\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Allows manipulating MIME messages", + "homepage": "https://symfony.com", + "keywords": [ + "mime", + "mime-type" + ], + "support": { + "source": "https://github.com/symfony/mime/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:53:40+00:00" + }, + { + "name": "symfony/polyfill-ctype", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-ctype.git", + "reference": "30885182c981ab175d4d034db0f6f469898070ab" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/30885182c981ab175d4d034db0f6f469898070ab", + "reference": "30885182c981ab175d4d034db0f6f469898070ab", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "provide": { + "ext-ctype": "*" + }, + "suggest": { + "ext-ctype": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Ctype\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Gert de Pagter", + "email": "BackEndTea@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for ctype functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "ctype", + "polyfill", + "portable" + ], + "support": { + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-10-20T20:35:02+00:00" + }, + { + "name": "symfony/polyfill-iconv", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-iconv.git", + "reference": "f1aed619e28cb077fc83fac8c4c0383578356e40" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/f1aed619e28cb077fc83fac8c4c0383578356e40", + "reference": "f1aed619e28cb077fc83fac8c4c0383578356e40", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "provide": { + "ext-iconv": "*" + }, + "suggest": { + "ext-iconv": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Iconv\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Iconv extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "iconv", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-iconv/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-04T09:04:05+00:00" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "81b86b50cf841a64252b439e738e97f4a34e2783" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/81b86b50cf841a64252b439e738e97f4a34e2783", + "reference": "81b86b50cf841a64252b439e738e97f4a34e2783", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-11-23T21:10:46+00:00" + }, + { + "name": "symfony/polyfill-intl-idn", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-idn.git", + "reference": "749045c69efb97c70d25d7463abba812e91f3a44" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/749045c69efb97c70d25d7463abba812e91f3a44", + "reference": "749045c69efb97c70d25d7463abba812e91f3a44", + "shasum": "" + }, + "require": { + "php": ">=7.1", + "symfony/polyfill-intl-normalizer": "^1.10", + "symfony/polyfill-php72": "^1.10" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Idn\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Laurent Bassin", + "email": "laurent@bassin.info" + }, + { + "name": "Trevor Rowbotham", + "email": "trevor.rowbotham@pm.me" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's idn_to_ascii and idn_to_utf8 functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "idn", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-09-14T14:02:44+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/8590a5f561694770bdcd3f9b5c69dde6945028e8", + "reference": "8590a5f561694770bdcd3f9b5c69dde6945028e8", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-02-19T12:13:01+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/0abb51d2f102e00a4eefcf46ba7fec406d245825", + "reference": "0abb51d2f102e00a4eefcf46ba7fec406d245825", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-11-30T18:21:41+00:00" + }, + { + "name": "symfony/polyfill-php72", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "9a142215a36a3888e30d0a9eeea9766764e96976" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/9a142215a36a3888e30d0a9eeea9766764e96976", + "reference": "9a142215a36a3888e30d0a9eeea9766764e96976", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php72\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php72/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-05-27T09:17:38+00:00" + }, + { + "name": "symfony/polyfill-php73", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php73.git", + "reference": "cc5db0e22b3cb4111010e48785a97f670b350ca5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/cc5db0e22b3cb4111010e48785a97f670b350ca5", + "reference": "cc5db0e22b3cb4111010e48785a97f670b350ca5", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php73\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php73/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-06-05T21:20:04+00:00" + }, + { + "name": "symfony/polyfill-php80", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php80.git", + "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/57b712b08eddb97c762a8caa32c84e037892d2e9", + "reference": "57b712b08eddb97c762a8caa32c84e037892d2e9", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php80\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Ion Bazan", + "email": "ion.bazan@gmail.com" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php80/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-09-13T13:58:33+00:00" + }, + { + "name": "symfony/polyfill-php81", + "version": "v1.24.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php81.git", + "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php81/zipball/5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", + "reference": "5de4ba2d41b15f9bd0e19b2ab9674135813ec98f", + "shasum": "" + }, + "require": { + "php": ">=7.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.23-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php81\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php81/tree/v1.24.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-09-13T13:58:11+00:00" + }, + { + "name": "symfony/process", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "553f50487389a977eb31cf6b37faae56da00f753" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/553f50487389a977eb31cf6b37faae56da00f753", + "reference": "553f50487389a977eb31cf6b37faae56da00f753", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-php80": "^1.16" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Executes commands in sub-processes", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-26T16:28:35+00:00" + }, + { + "name": "symfony/routing", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/routing.git", + "reference": "44b29c7a94e867ccde1da604792f11a469958981" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/routing/zipball/44b29c7a94e867ccde1da604792f11a469958981", + "reference": "44b29c7a94e867ccde1da604792f11a469958981", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/deprecation-contracts": "^2.1|^3", + "symfony/polyfill-php80": "^1.16" + }, + "conflict": { + "doctrine/annotations": "<1.12", + "symfony/config": "<5.3", + "symfony/dependency-injection": "<4.4", + "symfony/yaml": "<4.4" + }, + "require-dev": { + "doctrine/annotations": "^1.12", + "psr/log": "^1|^2|^3", + "symfony/config": "^5.3|^6.0", + "symfony/dependency-injection": "^4.4|^5.0|^6.0", + "symfony/expression-language": "^4.4|^5.0|^6.0", + "symfony/http-foundation": "^4.4|^5.0|^6.0", + "symfony/yaml": "^4.4|^5.0|^6.0" + }, + "suggest": { + "symfony/config": "For using the all-in-one router or any loader", + "symfony/expression-language": "For using expression matching", + "symfony/http-foundation": "For using a Symfony Request object", + "symfony/yaml": "For using the YAML loader" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Routing\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Maps an HTTP request to a set of configuration variables", + "homepage": "https://symfony.com", + "keywords": [ + "router", + "routing", + "uri", + "url" + ], + "support": { + "source": "https://github.com/symfony/routing/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:53:40+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v2.4.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "d664541b99d6fb0247ec5ff32e87238582236204" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d664541b99d6fb0247ec5ff32e87238582236204", + "reference": "d664541b99d6fb0247ec5ff32e87238582236204", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "psr/container": "^1.1" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "suggest": { + "symfony/service-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "2.4-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/v2.4.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-11-04T16:37:19+00:00" + }, + { + "name": "symfony/string", + "version": "v6.0.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/522144f0c4c004c80d56fa47e40e17028e2eefc2", + "reference": "522144f0c4c004c80d56fa47e40e17028e2eefc2", + "shasum": "" + }, + "require": { + "php": ">=8.0.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.0", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.0" + }, + "require-dev": { + "symfony/error-handler": "^5.4|^6.0", + "symfony/http-client": "^5.4|^6.0", + "symfony/translation-contracts": "^2.0|^3.0", + "symfony/var-exporter": "^5.4|^6.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "files": [ + "Resources/functions.php" + ], + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v6.0.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-02T09:55:41+00:00" + }, + { + "name": "symfony/translation", + "version": "v6.0.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation.git", + "reference": "71bb15335798f8c4da110911bcf2d2fead7a430d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation/zipball/71bb15335798f8c4da110911bcf2d2fead7a430d", + "reference": "71bb15335798f8c4da110911bcf2d2fead7a430d", + "shasum": "" + }, + "require": { + "php": ">=8.0.2", + "symfony/polyfill-mbstring": "~1.0", + "symfony/translation-contracts": "^2.3|^3.0" + }, + "conflict": { + "symfony/config": "<5.4", + "symfony/console": "<5.4", + "symfony/dependency-injection": "<5.4", + "symfony/http-kernel": "<5.4", + "symfony/twig-bundle": "<5.4", + "symfony/yaml": "<5.4" + }, + "provide": { + "symfony/translation-implementation": "2.3|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^5.4|^6.0", + "symfony/console": "^5.4|^6.0", + "symfony/dependency-injection": "^5.4|^6.0", + "symfony/finder": "^5.4|^6.0", + "symfony/http-client-contracts": "^1.1|^2.0|^3.0", + "symfony/http-kernel": "^5.4|^6.0", + "symfony/intl": "^5.4|^6.0", + "symfony/polyfill-intl-icu": "^1.21", + "symfony/service-contracts": "^1.1.2|^2|^3", + "symfony/yaml": "^5.4|^6.0" + }, + "suggest": { + "psr/log-implementation": "To use logging capability in translator", + "symfony/config": "", + "symfony/yaml": "" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\Translation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools to internationalize your application", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/translation/tree/v6.0.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-07T00:29:03+00:00" + }, + { + "name": "symfony/translation-contracts", + "version": "v3.0.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation-contracts.git", + "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", + "reference": "1b6ea5a7442af5a12dba3dbd6d71034b5b234e77", + "shasum": "" + }, + "require": { + "php": ">=8.0.2" + }, + "suggest": { + "symfony/translation-implementation": "" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.0-dev" + }, + "thanks": { + "name": "symfony/contracts", + "url": "https://github.com/symfony/contracts" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Translation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to translation", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/translation-contracts/tree/v3.0.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2021-09-07T12:43:40+00:00" + }, + { + "name": "symfony/var-dumper", + "version": "v5.4.3", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "970a01f208bf895c5f327ba40b72288da43adec4" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/970a01f208bf895c5f327ba40b72288da43adec4", + "reference": "970a01f208bf895c5f327ba40b72288da43adec4", + "shasum": "" + }, + "require": { + "php": ">=7.2.5", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php80": "^1.16" + }, + "conflict": { + "phpunit/phpunit": "<5.4.3", + "symfony/console": "<4.4" + }, + "require-dev": { + "ext-iconv": "*", + "symfony/console": "^4.4|^5.0|^6.0", + "symfony/process": "^4.4|^5.0|^6.0", + "symfony/uid": "^5.1|^6.0", + "twig/twig": "^2.13|^3.0.4" + }, + "suggest": { + "ext-iconv": "To convert non-UTF-8 strings to UTF-8 (or symfony/polyfill-iconv in case ext-iconv cannot be used).", + "ext-intl": "To show region name in time zone dump", + "symfony/console": "To use the ServerDumpCommand and/or the bin/var-dump-server script" + }, + "bin": [ + "Resources/bin/var-dump-server" + ], + "type": "library", + "autoload": { + "files": [ + "Resources/functions/dump.php" + ], + "psr-4": { + "Symfony\\Component\\VarDumper\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides mechanisms for walking through any arbitrary PHP variable", + "homepage": "https://symfony.com", + "keywords": [ + "debug", + "dump" + ], + "support": { + "source": "https://github.com/symfony/var-dumper/tree/v5.4.3" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2022-01-17T16:30:37+00:00" + }, + { + "name": "tijsverkoyen/css-to-inline-styles", + "version": "2.2.4", + "source": { + "type": "git", + "url": "https://github.com/tijsverkoyen/CssToInlineStyles.git", + "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/da444caae6aca7a19c0c140f68c6182e337d5b1c", + "reference": "da444caae6aca7a19c0c140f68c6182e337d5b1c", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "php": "^5.5 || ^7.0 || ^8.0", + "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0 || ^6.0" + }, + "require-dev": { + "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5 || ^8.5.21 || ^9.5.10" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.2.x-dev" + } + }, + "autoload": { + "psr-4": { + "TijsVerkoyen\\CssToInlineStyles\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Tijs Verkoyen", + "email": "css_to_inline_styles@verkoyen.eu", + "role": "Developer" + } + ], + "description": "CssToInlineStyles is a class that enables you to convert HTML-pages/files into HTML-pages/files with inline styles. This is very useful when you're sending emails.", + "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", + "support": { + "issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues", + "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/2.2.4" + }, + "time": "2021-12-08T09:12:39+00:00" + }, + { + "name": "vlucas/phpdotenv", + "version": "v5.4.1", + "source": { + "type": "git", + "url": "https://github.com/vlucas/phpdotenv.git", + "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/264dce589e7ce37a7ba99cb901eed8249fbec92f", + "reference": "264dce589e7ce37a7ba99cb901eed8249fbec92f", + "shasum": "" + }, + "require": { + "ext-pcre": "*", + "graham-campbell/result-type": "^1.0.2", + "php": "^7.1.3 || ^8.0", + "phpoption/phpoption": "^1.8", + "symfony/polyfill-ctype": "^1.23", + "symfony/polyfill-mbstring": "^1.23.1", + "symfony/polyfill-php80": "^1.23.1" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "ext-filter": "*", + "phpunit/phpunit": "^7.5.20 || ^8.5.21 || ^9.5.10" + }, + "suggest": { + "ext-filter": "Required to use the boolean validator." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.4-dev" + } + }, + "autoload": { + "psr-4": { + "Dotenv\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Graham Campbell", + "email": "hello@gjcampbell.co.uk", + "homepage": "https://github.com/GrahamCampbell" + }, + { + "name": "Vance Lucas", + "email": "vance@vancelucas.com", + "homepage": "https://github.com/vlucas" + } + ], + "description": "Loads environment variables from `.env` to `getenv()`, `$_ENV` and `$_SERVER` automagically.", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "issues": "https://github.com/vlucas/phpdotenv/issues", + "source": "https://github.com/vlucas/phpdotenv/tree/v5.4.1" + }, + "funding": [ + { + "url": "https://github.com/GrahamCampbell", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/vlucas/phpdotenv", + "type": "tidelift" + } + ], + "time": "2021-12-12T23:22:04+00:00" + }, + { + "name": "voku/portable-ascii", + "version": "1.6.1", + "source": { + "type": "git", + "url": "https://github.com/voku/portable-ascii.git", + "reference": "87337c91b9dfacee02452244ee14ab3c43bc485a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/87337c91b9dfacee02452244ee14ab3c43bc485a", + "reference": "87337c91b9dfacee02452244ee14ab3c43bc485a", + "shasum": "" + }, + "require": { + "php": ">=7.0.0" + }, + "require-dev": { + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" + }, + "suggest": { + "ext-intl": "Use Intl for transliterator_transliterate() support" + }, + "type": "library", + "autoload": { + "psr-4": { + "voku\\": "src/voku/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Lars Moelleken", + "homepage": "http://www.moelleken.org/" + } + ], + "description": "Portable ASCII library - performance optimized (ascii) string functions for php.", + "homepage": "https://github.com/voku/portable-ascii", + "keywords": [ + "ascii", + "clean", + "php" + ], + "support": { + "issues": "https://github.com/voku/portable-ascii/issues", + "source": "https://github.com/voku/portable-ascii/tree/1.6.1" + }, + "funding": [ + { + "url": "https://www.paypal.me/moelleken", + "type": "custom" + }, + { + "url": "https://github.com/voku", + "type": "github" + }, + { + "url": "https://opencollective.com/portable-ascii", + "type": "open_collective" + }, + { + "url": "https://www.patreon.com/voku", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/voku/portable-ascii", + "type": "tidelift" + } + ], + "time": "2022-01-24T18:55:24+00:00" + }, + { + "name": "webmozart/assert", + "version": "1.10.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/6964c76c7804814a842473e0c8fd15bab0f18e25", + "reference": "6964c76c7804814a842473e0c8fd15bab0f18e25", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "phpstan/phpstan": "<0.12.20", + "vimeo/psalm": "<4.6.1 || 4.6.2" + }, + "require-dev": { + "phpunit/phpunit": "^8.5.13" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.10-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/1.10.0" + }, + "time": "2021-03-09T10:59:23+00:00" + } + ], + "packages-dev": [ + { + "name": "barryvdh/laravel-ide-helper", + "version": "v2.12.2", + "source": { + "type": "git", + "url": "https://github.com/barryvdh/laravel-ide-helper.git", + "reference": "7917cce7c991c7203545ea2e59a1dd366d1b60af" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/barryvdh/laravel-ide-helper/zipball/7917cce7c991c7203545ea2e59a1dd366d1b60af", + "reference": "7917cce7c991c7203545ea2e59a1dd366d1b60af", + "shasum": "" + }, + "require": { + "barryvdh/reflection-docblock": "^2.0.6", + "composer/pcre": "^1.0", + "doctrine/dbal": "^2.6 || ^3", + "ext-json": "*", + "illuminate/console": "^8 || ^9", + "illuminate/filesystem": "^8 || ^9", + "illuminate/support": "^8 || ^9", + "nikic/php-parser": "^4.7", + "php": "^7.3 || ^8.0", + "phpdocumentor/type-resolver": "^1.1.0" + }, + "require-dev": { + "ext-pdo_sqlite": "*", + "friendsofphp/php-cs-fixer": "^2", + "illuminate/config": "^8 || ^9", + "illuminate/view": "^8 || ^9", + "mockery/mockery": "^1.4", + "orchestra/testbench": "^6 || ^7", + "phpunit/phpunit": "^8.5 || ^9", + "spatie/phpunit-snapshot-assertions": "^3 || ^4", + "vimeo/psalm": "^3.12" + }, + "suggest": { + "illuminate/events": "Required for automatic helper generation (^6|^7|^8|^9)." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.12-dev" + }, + "laravel": { + "providers": [ + "Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Barryvdh\\LaravelIdeHelper\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "Laravel IDE Helper, generates correct PHPDocs for all Facade classes, to improve auto-completion.", + "keywords": [ + "autocomplete", + "codeintel", + "helper", + "ide", + "laravel", + "netbeans", + "phpdoc", + "phpstorm", + "sublime" + ], + "support": { + "issues": "https://github.com/barryvdh/laravel-ide-helper/issues", + "source": "https://github.com/barryvdh/laravel-ide-helper/tree/v2.12.2" + }, + "funding": [ + { + "url": "https://fruitcake.nl", + "type": "custom" + }, + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2022-02-08T19:30:33+00:00" + }, + { + "name": "barryvdh/reflection-docblock", + "version": "v2.0.6", + "source": { + "type": "git", + "url": "https://github.com/barryvdh/ReflectionDocBlock.git", + "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/6b69015d83d3daf9004a71a89f26e27d27ef6a16", + "reference": "6b69015d83d3daf9004a71a89f26e27d27ef6a16", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "require-dev": { + "phpunit/phpunit": "~4.0,<4.5" + }, + "suggest": { + "dflydev/markdown": "~1.0", + "erusev/parsedown": "~1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-0": { + "Barryvdh": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "mike.vanriel@naenius.com" + } + ], + "support": { + "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.0.6" + }, + "time": "2018-12-13T10:34:14+00:00" + }, + { + "name": "composer/pcre", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/composer/pcre.git", + "reference": "67a32d7d6f9f560b726ab25a061b38ff3a80c560" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/pcre/zipball/67a32d7d6f9f560b726ab25a061b38ff3a80c560", + "reference": "67a32d7d6f9f560b726ab25a061b38ff3a80c560", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.3", + "phpstan/phpstan-strict-rules": "^1.1", + "symfony/phpunit-bridge": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Pcre\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + } + ], + "description": "PCRE wrapping library that offers type-safe preg_* replacements.", + "keywords": [ + "PCRE", + "preg", + "regex", + "regular expression" + ], + "support": { + "issues": "https://github.com/composer/pcre/issues", + "source": "https://github.com/composer/pcre/tree/1.0.1" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/composer/composer", + "type": "tidelift" + } + ], + "time": "2022-01-21T20:24:37+00:00" + }, + { + "name": "doctrine/cache", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/cache.git", + "reference": "331b4d5dbaeab3827976273e9356b3b453c300ce" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/cache/zipball/331b4d5dbaeab3827976273e9356b3b453c300ce", + "reference": "331b4d5dbaeab3827976273e9356b3b453c300ce", + "shasum": "" + }, + "require": { + "php": "~7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": ">2.2,<2.4" + }, + "require-dev": { + "alcaeus/mongo-php-adapter": "^1.1", + "cache/integration-tests": "dev-master", + "doctrine/coding-standard": "^8.0", + "mongodb/mongodb": "^1.1", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0", + "predis/predis": "~1.0", + "psr/cache": "^1.0 || ^2.0 || ^3.0", + "symfony/cache": "^4.4 || ^5.2 || ^6.0@dev", + "symfony/var-exporter": "^4.4 || ^5.2 || ^6.0@dev" + }, + "suggest": { + "alcaeus/mongo-php-adapter": "Required to use legacy MongoDB driver" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.", + "homepage": "https://www.doctrine-project.org/projects/cache.html", + "keywords": [ + "abstraction", + "apcu", + "cache", + "caching", + "couchdb", + "memcached", + "php", + "redis", + "xcache" + ], + "support": { + "issues": "https://github.com/doctrine/cache/issues", + "source": "https://github.com/doctrine/cache/tree/2.1.1" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache", + "type": "tidelift" + } + ], + "time": "2021-07-17T14:49:29+00:00" + }, + { + "name": "doctrine/dbal", + "version": "3.3.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/dbal.git", + "reference": "35eae239ef515d55ebb24e9d4715cad09a4f58ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/35eae239ef515d55ebb24e9d4715cad09a4f58ed", + "reference": "35eae239ef515d55ebb24e9d4715cad09a4f58ed", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2", + "doctrine/cache": "^1.11|^2.0", + "doctrine/deprecations": "^0.5.3", + "doctrine/event-manager": "^1.0", + "php": "^7.3 || ^8.0", + "psr/cache": "^1|^2|^3", + "psr/log": "^1|^2|^3" + }, + "require-dev": { + "doctrine/coding-standard": "9.0.0", + "jetbrains/phpstorm-stubs": "2021.1", + "phpstan/phpstan": "1.4.0", + "phpstan/phpstan-strict-rules": "^1.1", + "phpunit/phpunit": "9.5.11", + "psalm/plugin-phpunit": "0.16.1", + "squizlabs/php_codesniffer": "3.6.2", + "symfony/cache": "^5.2|^6.0", + "symfony/console": "^2.7|^3.0|^4.0|^5.0|^6.0", + "vimeo/psalm": "4.16.1" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." + }, + "bin": [ + "bin/doctrine-dbal" + ], + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\DBAL\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", + "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "keywords": [ + "abstraction", + "database", + "db2", + "dbal", + "mariadb", + "mssql", + "mysql", + "oci8", + "oracle", + "pdo", + "pgsql", + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlite", + "sqlserver", + "sqlsrv" + ], + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/3.3.2" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", + "type": "tidelift" + } + ], + "time": "2022-02-05T16:33:45+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "v0.5.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/9504165960a1f83cc1480e2be1dd0a0478561314", + "reference": "9504165960a1f83cc1480e2be1dd0a0478561314", + "shasum": "" + }, + "require": { + "php": "^7.1|^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0|^7.0|^8.0", + "phpunit/phpunit": "^7.0|^8.0|^9.0", + "psr/log": "^1.0" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/v0.5.3" + }, + "time": "2021-03-21T12:59:47+00:00" + }, + { + "name": "doctrine/event-manager", + "version": "1.1.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/event-manager.git", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/41370af6a30faa9dc0368c4a6814d596e81aba7f", + "reference": "41370af6a30faa9dc0368c4a6814d596e81aba7f", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "doctrine/common": "<2.9@dev" + }, + "require-dev": { + "doctrine/coding-standard": "^6.0", + "phpunit/phpunit": "^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "lib/Doctrine/Common" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", + "homepage": "https://www.doctrine-project.org/projects/event-manager.html", + "keywords": [ + "event", + "event dispatcher", + "event manager", + "event system", + "events" + ], + "support": { + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/1.1.x" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fevent-manager", + "type": "tidelift" + } + ], + "time": "2020-05-29T18:28:51+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "1.4.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^8.0", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "keywords": [ + "constructor", + "instantiate" + ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/1.4.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2020-11-10T18:47:58+00:00" + }, + { + "name": "facade/flare-client-php", + "version": "1.9.1", + "source": { + "type": "git", + "url": "https://github.com/facade/flare-client-php.git", + "reference": "b2adf1512755637d0cef4f7d1b54301325ac78ed" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/flare-client-php/zipball/b2adf1512755637d0cef4f7d1b54301325ac78ed", + "reference": "b2adf1512755637d0cef4f7d1b54301325ac78ed", + "shasum": "" + }, + "require": { + "facade/ignition-contracts": "~1.0", + "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0", + "php": "^7.1|^8.0", + "symfony/http-foundation": "^3.3|^4.1|^5.0", + "symfony/mime": "^3.4|^4.0|^5.1", + "symfony/var-dumper": "^3.4|^4.0|^5.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.14", + "phpunit/phpunit": "^7.5.16", + "spatie/phpunit-snapshot-assertions": "^2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Facade\\FlareClient\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Send PHP errors to Flare", + "homepage": "https://github.com/facade/flare-client-php", + "keywords": [ + "exception", + "facade", + "flare", + "reporting" + ], + "support": { + "issues": "https://github.com/facade/flare-client-php/issues", + "source": "https://github.com/facade/flare-client-php/tree/1.9.1" + }, + "funding": [ + { + "url": "https://github.com/spatie", + "type": "github" + } + ], + "time": "2021-09-13T12:16:46+00:00" + }, + { + "name": "facade/ignition", + "version": "2.17.4", + "source": { + "type": "git", + "url": "https://github.com/facade/ignition.git", + "reference": "95c80bd35ee6858e9e1439b2f6a698295eeb2070" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/ignition/zipball/95c80bd35ee6858e9e1439b2f6a698295eeb2070", + "reference": "95c80bd35ee6858e9e1439b2f6a698295eeb2070", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "ext-json": "*", + "ext-mbstring": "*", + "facade/flare-client-php": "^1.9.1", + "facade/ignition-contracts": "^1.0.2", + "illuminate/support": "^7.0|^8.0", + "monolog/monolog": "^2.0", + "php": "^7.2.5|^8.0", + "symfony/console": "^5.0", + "symfony/var-dumper": "^5.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^2.14", + "livewire/livewire": "^2.4", + "mockery/mockery": "^1.3", + "orchestra/testbench": "^5.0|^6.0", + "psalm/plugin-laravel": "^1.2" + }, + "suggest": { + "laravel/telescope": "^3.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.x-dev" + }, + "laravel": { + "providers": [ + "Facade\\Ignition\\IgnitionServiceProvider" + ], + "aliases": { + "Flare": "Facade\\Ignition\\Facades\\Flare" + } + } + }, + "autoload": { + "files": [ + "src/helpers.php" + ], + "psr-4": { + "Facade\\Ignition\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A beautiful error page for Laravel applications.", + "homepage": "https://github.com/facade/ignition", + "keywords": [ + "error", + "flare", + "laravel", + "page" + ], + "support": { + "docs": "https://flareapp.io/docs/ignition-for-laravel/introduction", + "forum": "https://twitter.com/flareappio", + "issues": "https://github.com/facade/ignition/issues", + "source": "https://github.com/facade/ignition" + }, + "time": "2021-12-27T15:11:24+00:00" + }, + { + "name": "facade/ignition-contracts", + "version": "1.0.2", + "source": { + "type": "git", + "url": "https://github.com/facade/ignition-contracts.git", + "reference": "3c921a1cdba35b68a7f0ccffc6dffc1995b18267" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/facade/ignition-contracts/zipball/3c921a1cdba35b68a7f0ccffc6dffc1995b18267", + "reference": "3c921a1cdba35b68a7f0ccffc6dffc1995b18267", + "shasum": "" + }, + "require": { + "php": "^7.3|^8.0" + }, + "require-dev": { + "friendsofphp/php-cs-fixer": "^v2.15.8", + "phpunit/phpunit": "^9.3.11", + "vimeo/psalm": "^3.17.1" + }, + "type": "library", + "autoload": { + "psr-4": { + "Facade\\IgnitionContracts\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://flareapp.io", + "role": "Developer" + } + ], + "description": "Solution contracts for Ignition", + "homepage": "https://github.com/facade/ignition-contracts", + "keywords": [ + "contracts", + "flare", + "ignition" + ], + "support": { + "issues": "https://github.com/facade/ignition-contracts/issues", + "source": "https://github.com/facade/ignition-contracts/tree/1.0.2" + }, + "time": "2020-10-16T08:27:54+00:00" + }, + { + "name": "fakerphp/faker", + "version": "v1.19.0", + "source": { + "type": "git", + "url": "https://github.com/FakerPHP/Faker.git", + "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/d7f08a622b3346766325488aa32ddc93ccdecc75", + "reference": "d7f08a622b3346766325488aa32ddc93ccdecc75", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^2.2 || ^3.0" + }, + "conflict": { + "fzaninotto/faker": "*" + }, + "require-dev": { + "bamarni/composer-bin-plugin": "^1.4.1", + "doctrine/persistence": "^1.3 || ^2.0", + "ext-intl": "*", + "symfony/phpunit-bridge": "^4.4 || ^5.2" + }, + "suggest": { + "doctrine/orm": "Required to use Faker\\ORM\\Doctrine", + "ext-curl": "Required by Faker\\Provider\\Image to download images.", + "ext-dom": "Required by Faker\\Provider\\HtmlLorem for generating random HTML.", + "ext-iconv": "Required by Faker\\Provider\\ru_RU\\Text::realText() for generating real Russian text.", + "ext-mbstring": "Required for multibyte Unicode string functionality." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "v1.19-dev" + } + }, + "autoload": { + "psr-4": { + "Faker\\": "src/Faker/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "François Zaninotto" + } + ], + "description": "Faker is a PHP library that generates fake data for you.", + "keywords": [ + "data", + "faker", + "fixtures" + ], + "support": { + "issues": "https://github.com/FakerPHP/Faker/issues", + "source": "https://github.com/FakerPHP/Faker/tree/v1.19.0" + }, + "time": "2022-02-02T17:38:57+00:00" + }, + { + "name": "filp/whoops", + "version": "2.14.5", + "source": { + "type": "git", + "url": "https://github.com/filp/whoops.git", + "reference": "a63e5e8f26ebbebf8ed3c5c691637325512eb0dc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/filp/whoops/zipball/a63e5e8f26ebbebf8ed3c5c691637325512eb0dc", + "reference": "a63e5e8f26ebbebf8ed3c5c691637325512eb0dc", + "shasum": "" + }, + "require": { + "php": "^5.5.9 || ^7.0 || ^8.0", + "psr/log": "^1.0.1 || ^2.0 || ^3.0" + }, + "require-dev": { + "mockery/mockery": "^0.9 || ^1.0", + "phpunit/phpunit": "^4.8.36 || ^5.7.27 || ^6.5.14 || ^7.5.20 || ^8.5.8 || ^9.3.3", + "symfony/var-dumper": "^2.6 || ^3.0 || ^4.0 || ^5.0" + }, + "suggest": { + "symfony/var-dumper": "Pretty print complex values better with var-dumper available", + "whoops/soap": "Formats errors as SOAP responses" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.7-dev" + } + }, + "autoload": { + "psr-4": { + "Whoops\\": "src/Whoops/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Filipe Dobreira", + "homepage": "https://github.com/filp", + "role": "Developer" + } + ], + "description": "php error handling for cool kids", + "homepage": "https://filp.github.io/whoops/", + "keywords": [ + "error", + "exception", + "handling", + "library", + "throwable", + "whoops" + ], + "support": { + "issues": "https://github.com/filp/whoops/issues", + "source": "https://github.com/filp/whoops/tree/2.14.5" + }, + "funding": [ + { + "url": "https://github.com/denis-sokolov", + "type": "github" + } + ], + "time": "2022-01-07T12:00:00+00:00" + }, + { + "name": "hamcrest/hamcrest-php", + "version": "v2.0.1", + "source": { + "type": "git", + "url": "https://github.com/hamcrest/hamcrest-php.git", + "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", + "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3", + "shasum": "" + }, + "require": { + "php": "^5.3|^7.0|^8.0" + }, + "replace": { + "cordoval/hamcrest-php": "*", + "davedevelopment/hamcrest-php": "*", + "kodova/hamcrest-php": "*" + }, + "require-dev": { + "phpunit/php-file-iterator": "^1.4 || ^2.0", + "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.1-dev" + } + }, + "autoload": { + "classmap": [ + "hamcrest" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "description": "This is the PHP port of Hamcrest Matchers", + "keywords": [ + "test" + ], + "support": { + "issues": "https://github.com/hamcrest/hamcrest-php/issues", + "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1" + }, + "time": "2020-07-09T08:09:16+00:00" + }, + { + "name": "hhxsv5/laravel-s", + "version": "v3.7.30", + "source": { + "type": "git", + "url": "https://github.com/hhxsv5/laravel-s.git", + "reference": "676a295b357d7009e12742fd679cc1e880e6001d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hhxsv5/laravel-s/zipball/676a295b357d7009e12742fd679cc1e880e6001d", + "reference": "676a295b357d7009e12742fd679cc1e880e6001d", + "shasum": "" + }, + "require": { + "ext-curl": "*", + "ext-json": "*", + "ext-pcntl": "*", + "php": ">=5.5.9", + "swoole/ide-helper": "@dev", + "symfony/console": ">=2.7.0" + }, + "require-dev": { + "phpunit/phpunit": ">=4.8.36" + }, + "suggest": { + "ext-inotify": "Inotify, used to real-time reload.", + "ext-swoole": "Coroutine-based concurrency library for PHP, require >= 1.7.19." + }, + "bin": [ + "bin/fswatch" + ], + "type": "library", + "extra": { + "laravel": { + "providers": [ + "Hhxsv5\\LaravelS\\Illuminate\\LaravelSServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Hhxsv5\\LaravelS\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Xie Biao", + "email": "hhxsv5@sina.com" + } + ], + "description": "🚀 LaravelS is an out-of-the-box adapter between Swoole and Laravel/Lumen.", + "homepage": "https://github.com/hhxsv5/laravel-s", + "keywords": [ + "LaravelS", + "async", + "coroutine", + "http", + "inotify", + "laravel", + "laravel-s", + "lumen", + "performance", + "process", + "server", + "swoole", + "task", + "tcp", + "timer", + "udp", + "websocket" + ], + "support": { + "issues": "https://github.com/hhxsv5/laravel-s/issues", + "source": "https://github.com/hhxsv5/laravel-s" + }, + "funding": [ + { + "url": "https://gitee.com/hhxsv5/laravel-s?donate=true", + "type": "custom" + }, + { + "url": "https://www.blockchain.com/btc/address/367HnAzVTAEk8offesDhcsCQswnugsE54u", + "type": "custom" + }, + { + "url": "https://www.paypal.me/hhxsv5", + "type": "custom" + } + ], + "time": "2022-01-05T05:40:51+00:00" + }, + { + "name": "kitloong/laravel-migrations-generator", + "version": "v4.5.1", + "source": { + "type": "git", + "url": "https://github.com/kitloong/laravel-migrations-generator.git", + "reference": "65a6a2f6b9811f343da1092be75c450b51293e7c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/kitloong/laravel-migrations-generator/zipball/65a6a2f6b9811f343da1092be75c450b51293e7c", + "reference": "65a6a2f6b9811f343da1092be75c450b51293e7c", + "shasum": "" + }, + "require": { + "doctrine/dbal": "~2.4|^3.0", + "illuminate/support": "^5.6|^6.0|^7.0|^8.0", + "php": ">=7.1.3" + }, + "require-dev": { + "ext-pdo": "*", + "mockery/mockery": "^1.0", + "orchestra/testbench": "^3.6|^4.0|^5.0|^6.0", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "KitLoong\\MigrationsGenerator\\MigrationsGeneratorServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Way\\Generators\\": "src/Way/Generators", + "Xethron\\MigrationsGenerator\\": "src/Xethron/MigrationsGenerator", + "KitLoong\\MigrationsGenerator\\": "src/KitLoong/MigrationsGenerator" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kit Loong", + "email": "kitloong1008@gmail.com" + } + ], + "description": "Generates Laravel Migrations from an existing database", + "keywords": [ + "artisan", + "generator", + "laravel", + "lumen", + "migration", + "migrations" + ], + "support": { + "issues": "https://github.com/kitloong/laravel-migrations-generator/issues", + "source": "https://github.com/kitloong/laravel-migrations-generator/tree/v4.5.1" + }, + "funding": [ + { + "url": "https://www.buymeacoffee.com/kitloong", + "type": "custom" + } + ], + "time": "2021-08-31T13:55:56+00:00" + }, + { + "name": "laravel/sail", + "version": "v1.13.5", + "source": { + "type": "git", + "url": "https://github.com/laravel/sail.git", + "reference": "aeb6eeb55b22c328d2f301145b97288127691d48" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/laravel/sail/zipball/aeb6eeb55b22c328d2f301145b97288127691d48", + "reference": "aeb6eeb55b22c328d2f301145b97288127691d48", + "shasum": "" + }, + "require": { + "illuminate/console": "^8.0|^9.0", + "illuminate/contracts": "^8.0|^9.0", + "illuminate/support": "^8.0|^9.0", + "php": "^7.3|^8.0" + }, + "bin": [ + "bin/sail" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + }, + "laravel": { + "providers": [ + "Laravel\\Sail\\SailServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Laravel\\Sail\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Taylor Otwell", + "email": "taylor@laravel.com" + } + ], + "description": "Docker files for running a basic Laravel application.", + "keywords": [ + "docker", + "laravel" + ], + "support": { + "issues": "https://github.com/laravel/sail/issues", + "source": "https://github.com/laravel/sail" + }, + "time": "2022-02-17T19:59:03+00:00" + }, + { + "name": "mockery/mockery", + "version": "1.5.0", + "source": { + "type": "git", + "url": "https://github.com/mockery/mockery.git", + "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/mockery/mockery/zipball/c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", + "reference": "c10a5f6e06fc2470ab1822fa13fa2a7380f8fbac", + "shasum": "" + }, + "require": { + "hamcrest/hamcrest-php": "^2.0.1", + "lib-pcre": ">=7.0", + "php": "^7.3 || ^8.0" + }, + "conflict": { + "phpunit/phpunit": "<8.0" + }, + "require-dev": { + "phpunit/phpunit": "^8.5 || ^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.x-dev" + } + }, + "autoload": { + "psr-0": { + "Mockery": "library/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Pádraic Brady", + "email": "padraic.brady@gmail.com", + "homepage": "http://blog.astrumfutura.com" + }, + { + "name": "Dave Marshall", + "email": "dave.marshall@atstsolutions.co.uk", + "homepage": "http://davedevelopment.co.uk" + } + ], + "description": "Mockery is a simple yet flexible PHP mock object framework", + "homepage": "https://github.com/mockery/mockery", + "keywords": [ + "BDD", + "TDD", + "library", + "mock", + "mock objects", + "mockery", + "stub", + "test", + "test double", + "testing" + ], + "support": { + "issues": "https://github.com/mockery/mockery/issues", + "source": "https://github.com/mockery/mockery/tree/1.5.0" + }, + "time": "2022-01-20T13:18:17+00:00" + }, + { + "name": "myclabs/deep-copy", + "version": "1.10.2", + "source": { + "type": "git", + "url": "https://github.com/myclabs/DeepCopy.git", + "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/776f831124e9c62e1a2c601ecc52e776d8bb7220", + "reference": "776f831124e9c62e1a2c601ecc52e776d8bb7220", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "replace": { + "myclabs/deep-copy": "self.version" + }, + "require-dev": { + "doctrine/collections": "^1.0", + "doctrine/common": "^2.6", + "phpunit/phpunit": "^7.1" + }, + "type": "library", + "autoload": { + "files": [ + "src/DeepCopy/deep_copy.php" + ], + "psr-4": { + "DeepCopy\\": "src/DeepCopy/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Create deep copies (clones) of your objects", + "keywords": [ + "clone", + "copy", + "duplicate", + "object", + "object graph" + ], + "support": { + "issues": "https://github.com/myclabs/DeepCopy/issues", + "source": "https://github.com/myclabs/DeepCopy/tree/1.10.2" + }, + "funding": [ + { + "url": "https://tidelift.com/funding/github/packagist/myclabs/deep-copy", + "type": "tidelift" + } + ], + "time": "2020-11-13T09:40:50+00:00" + }, + { + "name": "nunomaduro/collision", + "version": "v5.11.0", + "source": { + "type": "git", + "url": "https://github.com/nunomaduro/collision.git", + "reference": "8b610eef8582ccdc05d8f2ab23305e2d37049461" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/8b610eef8582ccdc05d8f2ab23305e2d37049461", + "reference": "8b610eef8582ccdc05d8f2ab23305e2d37049461", + "shasum": "" + }, + "require": { + "facade/ignition-contracts": "^1.0", + "filp/whoops": "^2.14.3", + "php": "^7.3 || ^8.0", + "symfony/console": "^5.0" + }, + "require-dev": { + "brianium/paratest": "^6.1", + "fideloper/proxy": "^4.4.1", + "fruitcake/laravel-cors": "^2.0.3", + "laravel/framework": "8.x-dev", + "nunomaduro/larastan": "^0.6.2", + "nunomaduro/mock-final-classes": "^1.0", + "orchestra/testbench": "^6.0", + "phpstan/phpstan": "^0.12.64", + "phpunit/phpunit": "^9.5.0" + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "NunoMaduro\\Collision\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nuno Maduro", + "email": "enunomaduro@gmail.com" + } + ], + "description": "Cli error handling for console/command-line PHP applications.", + "keywords": [ + "artisan", + "cli", + "command-line", + "console", + "error", + "handling", + "laravel", + "laravel-zero", + "php", + "symfony" + ], + "support": { + "issues": "https://github.com/nunomaduro/collision/issues", + "source": "https://github.com/nunomaduro/collision" + }, + "funding": [ + { + "url": "https://www.paypal.com/paypalme/enunomaduro", + "type": "custom" + }, + { + "url": "https://github.com/nunomaduro", + "type": "github" + }, + { + "url": "https://www.patreon.com/nunomaduro", + "type": "patreon" + } + ], + "time": "2022-01-10T16:22:52+00:00" + }, + { + "name": "phar-io/manifest", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/phar-io/manifest.git", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/manifest/zipball/97803eca37d319dfa7826cc2437fc020857acb53", + "reference": "97803eca37d319dfa7826cc2437fc020857acb53", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-phar": "*", + "ext-xmlwriter": "*", + "phar-io/version": "^3.0.1", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)", + "support": { + "issues": "https://github.com/phar-io/manifest/issues", + "source": "https://github.com/phar-io/manifest/tree/2.0.3" + }, + "time": "2021-07-20T11:28:43+00:00" + }, + { + "name": "phar-io/version", + "version": "3.2.1", + "source": { + "type": "git", + "url": "https://github.com/phar-io/version.git", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "reference": "4f7fd7836c6f332bb2933569e566a0d6c4cbed74", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + }, + { + "name": "Sebastian Heuer", + "email": "sebastian@phpeople.de", + "role": "Developer" + }, + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "Developer" + } + ], + "description": "Library for handling version information and constraints", + "support": { + "issues": "https://github.com/phar-io/version/issues", + "source": "https://github.com/phar-io/version/tree/3.2.1" + }, + "time": "2022-02-21T01:04:05+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "5.3.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/622548b623e81ca6d78b721c5e029f4ce664f170", + "reference": "622548b623e81ca6d78b721c5e029f4ce664f170", + "shasum": "" + }, + "require": { + "ext-filter": "*", + "php": "^7.2 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^1.3", + "webmozart/assert": "^1.9.1" + }, + "require-dev": { + "mockery/mockery": "~1.3.2", + "psalm/phar": "^4.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + }, + { + "name": "Jaap van Otterdijk", + "email": "account@ijaap.nl" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/5.3.0" + }, + "time": "2021-10-19T17:43:47+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "1.6.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/93ebd0014cab80c4ea9f5e297ea48672f1b87706", + "reference": "93ebd0014cab80c4ea9f5e297ea48672f1b87706", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0", + "phpdocumentor/reflection-common": "^2.0" + }, + "require-dev": { + "ext-tokenizer": "*", + "psalm/phar": "^4.8" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", + "support": { + "issues": "https://github.com/phpDocumentor/TypeResolver/issues", + "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.6.0" + }, + "time": "2022-01-04T19:58:01+00:00" + }, + { + "name": "phpspec/prophecy", + "version": "v1.15.0", + "source": { + "type": "git", + "url": "https://github.com/phpspec/prophecy.git", + "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpspec/prophecy/zipball/bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "reference": "bbcd7380b0ebf3961ee21409db7b38bc31d69a13", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.2", + "php": "^7.2 || ~8.0, <8.2", + "phpdocumentor/reflection-docblock": "^5.2", + "sebastian/comparator": "^3.0 || ^4.0", + "sebastian/recursion-context": "^3.0 || ^4.0" + }, + "require-dev": { + "phpspec/phpspec": "^6.0 || ^7.0", + "phpunit/phpunit": "^8.0 || ^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Prophecy\\": "src/Prophecy" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Konstantin Kudryashov", + "email": "ever.zet@gmail.com", + "homepage": "http://everzet.com" + }, + { + "name": "Marcello Duarte", + "email": "marcello.duarte@gmail.com" + } + ], + "description": "Highly opinionated mocking framework for PHP 5.3+", + "homepage": "https://github.com/phpspec/prophecy", + "keywords": [ + "Double", + "Dummy", + "fake", + "mock", + "spy", + "stub" + ], + "support": { + "issues": "https://github.com/phpspec/prophecy/issues", + "source": "https://github.com/phpspec/prophecy/tree/v1.15.0" + }, + "time": "2021-12-08T12:19:24+00:00" + }, + { + "name": "phpunit/php-code-coverage", + "version": "9.2.11", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-code-coverage.git", + "reference": "665a1ac0a763c51afc30d6d130dac0813092b17f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/665a1ac0a763c51afc30d6d130dac0813092b17f", + "reference": "665a1ac0a763c51afc30d6d130dac0813092b17f", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-libxml": "*", + "ext-xmlwriter": "*", + "nikic/php-parser": "^4.13.0", + "php": ">=7.3", + "phpunit/php-file-iterator": "^3.0.3", + "phpunit/php-text-template": "^2.0.2", + "sebastian/code-unit-reverse-lookup": "^2.0.2", + "sebastian/complexity": "^2.0", + "sebastian/environment": "^5.1.2", + "sebastian/lines-of-code": "^1.0.3", + "sebastian/version": "^3.0.1", + "theseer/tokenizer": "^1.2.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-pcov": "*", + "ext-xdebug": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.2-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.", + "homepage": "https://github.com/sebastianbergmann/php-code-coverage", + "keywords": [ + "coverage", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/9.2.11" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-02-18T12:46:09+00:00" + }, + { + "name": "phpunit/php-file-iterator", + "version": "3.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-file-iterator.git", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "reference": "cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "FilterIterator implementation that filters files based on a list of suffixes.", + "homepage": "https://github.com/sebastianbergmann/php-file-iterator/", + "keywords": [ + "filesystem", + "iterator" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/3.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-12-02T12:48:52+00:00" + }, + { + "name": "phpunit/php-invoker", + "version": "3.1.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-invoker.git", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "reference": "5a10147d0aaf65b58940a0b72f71c9ac0423cc67", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "ext-pcntl": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-pcntl": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Invoke callables with a timeout", + "homepage": "https://github.com/sebastianbergmann/php-invoker/", + "keywords": [ + "process" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-invoker/issues", + "source": "https://github.com/sebastianbergmann/php-invoker/tree/3.1.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:58:55+00:00" + }, + { + "name": "phpunit/php-text-template", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-text-template.git", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Simple template engine.", + "homepage": "https://github.com/sebastianbergmann/php-text-template/", + "keywords": [ + "template" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-text-template/issues", + "source": "https://github.com/sebastianbergmann/php-text-template/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T05:33:50+00:00" + }, + { + "name": "phpunit/php-timer", + "version": "5.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/php-timer.git", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Utility class for timing", + "homepage": "https://github.com/sebastianbergmann/php-timer/", + "keywords": [ + "timer" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/php-timer/issues", + "source": "https://github.com/sebastianbergmann/php-timer/tree/5.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:16:10+00:00" + }, + { + "name": "phpunit/phpunit", + "version": "9.5.14", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/phpunit.git", + "reference": "1883687169c017d6ae37c58883ca3994cfc34189" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1883687169c017d6ae37c58883ca3994cfc34189", + "reference": "1883687169c017d6ae37c58883ca3994cfc34189", + "shasum": "" + }, + "require": { + "doctrine/instantiator": "^1.3.1", + "ext-dom": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-mbstring": "*", + "ext-xml": "*", + "ext-xmlwriter": "*", + "myclabs/deep-copy": "^1.10.1", + "phar-io/manifest": "^2.0.3", + "phar-io/version": "^3.0.2", + "php": ">=7.3", + "phpspec/prophecy": "^1.12.1", + "phpunit/php-code-coverage": "^9.2.7", + "phpunit/php-file-iterator": "^3.0.5", + "phpunit/php-invoker": "^3.1.1", + "phpunit/php-text-template": "^2.0.3", + "phpunit/php-timer": "^5.0.2", + "sebastian/cli-parser": "^1.0.1", + "sebastian/code-unit": "^1.0.6", + "sebastian/comparator": "^4.0.5", + "sebastian/diff": "^4.0.3", + "sebastian/environment": "^5.1.3", + "sebastian/exporter": "^4.0.3", + "sebastian/global-state": "^5.0.1", + "sebastian/object-enumerator": "^4.0.3", + "sebastian/resource-operations": "^3.0.3", + "sebastian/type": "^2.3.4", + "sebastian/version": "^3.0.2" + }, + "require-dev": { + "ext-pdo": "*", + "phpspec/prophecy-phpunit": "^2.0.1" + }, + "suggest": { + "ext-soap": "*", + "ext-xdebug": "*" + }, + "bin": [ + "phpunit" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "9.5-dev" + } + }, + "autoload": { + "files": [ + "src/Framework/Assert/Functions.php" + ], + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "The PHP Unit Testing framework.", + "homepage": "https://phpunit.de/", + "keywords": [ + "phpunit", + "testing", + "xunit" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/phpunit/issues", + "source": "https://github.com/sebastianbergmann/phpunit/tree/9.5.14" + }, + "funding": [ + { + "url": "https://phpunit.de/sponsors.html", + "type": "custom" + }, + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-02-18T12:54:07+00:00" + }, + { + "name": "psr/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "sebastian/cli-parser", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/cli-parser.git", + "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "reference": "442e7c7e687e42adc03470c7b668bc4b2402c0b2", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for parsing CLI options", + "homepage": "https://github.com/sebastianbergmann/cli-parser", + "support": { + "issues": "https://github.com/sebastianbergmann/cli-parser/issues", + "source": "https://github.com/sebastianbergmann/cli-parser/tree/1.0.1" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:08:49+00:00" + }, + { + "name": "sebastian/code-unit", + "version": "1.0.8", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit.git", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Collection of value objects that represent the PHP code units", + "homepage": "https://github.com/sebastianbergmann/code-unit", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit/issues", + "source": "https://github.com/sebastianbergmann/code-unit/tree/1.0.8" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:08:54+00:00" + }, + { + "name": "sebastian/code-unit-reverse-lookup", + "version": "2.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "reference": "ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Looks up which function or method a line of code belongs to", + "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/", + "support": { + "issues": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/issues", + "source": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/tree/2.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:30:19+00:00" + }, + { + "name": "sebastian/comparator", + "version": "4.0.6", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/comparator.git", + "reference": "55f4261989e546dc112258c7a75935a81a7ce382" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", + "reference": "55f4261989e546dc112258c7a75935a81a7ce382", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/diff": "^4.0", + "sebastian/exporter": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@2bepublished.at" + } + ], + "description": "Provides the functionality to compare PHP values for equality", + "homepage": "https://github.com/sebastianbergmann/comparator", + "keywords": [ + "comparator", + "compare", + "equality" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/comparator/issues", + "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.6" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T15:49:45+00:00" + }, + { + "name": "sebastian/complexity", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/complexity.git", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.7", + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for calculating the complexity of PHP code units", + "homepage": "https://github.com/sebastianbergmann/complexity", + "support": { + "issues": "https://github.com/sebastianbergmann/complexity/issues", + "source": "https://github.com/sebastianbergmann/complexity/tree/2.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T15:52:27+00:00" + }, + { + "name": "sebastian/diff", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/diff.git", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3", + "symfony/process": "^4.2 || ^5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Kore Nordmann", + "email": "mail@kore-nordmann.de" + } + ], + "description": "Diff implementation", + "homepage": "https://github.com/sebastianbergmann/diff", + "keywords": [ + "diff", + "udiff", + "unidiff", + "unified diff" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/diff/issues", + "source": "https://github.com/sebastianbergmann/diff/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:10:38+00:00" + }, + { + "name": "sebastian/environment", + "version": "5.1.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/environment.git", + "reference": "388b6ced16caa751030f6a69e588299fa09200ac" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/388b6ced16caa751030f6a69e588299fa09200ac", + "reference": "388b6ced16caa751030f6a69e588299fa09200ac", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-posix": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.1-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides functionality to handle HHVM/PHP environments", + "homepage": "http://www.github.com/sebastianbergmann/environment", + "keywords": [ + "Xdebug", + "environment", + "hhvm" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/environment/issues", + "source": "https://github.com/sebastianbergmann/environment/tree/5.1.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T05:52:38+00:00" + }, + { + "name": "sebastian/exporter", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/exporter.git", + "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "reference": "65e8b7db476c5dd267e65eea9cab77584d3cfff9", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-mbstring": "*", + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Volker Dusch", + "email": "github@wallbash.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + }, + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + } + ], + "description": "Provides the functionality to export PHP variables for visualization", + "homepage": "https://www.github.com/sebastianbergmann/exporter", + "keywords": [ + "export", + "exporter" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/exporter/issues", + "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-11-11T14:18:36+00:00" + }, + { + "name": "sebastian/global-state", + "version": "5.0.5", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/global-state.git", + "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "reference": "0ca8db5a5fc9c8646244e629625ac486fa286bf2", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "ext-dom": "*", + "phpunit/phpunit": "^9.3" + }, + "suggest": { + "ext-uopz": "*" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Snapshotting of global state", + "homepage": "http://www.github.com/sebastianbergmann/global-state", + "keywords": [ + "global state" + ], + "support": { + "issues": "https://github.com/sebastianbergmann/global-state/issues", + "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.5" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2022-02-14T08:28:10+00:00" + }, + { + "name": "sebastian/lines-of-code", + "version": "1.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/lines-of-code.git", + "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "reference": "c1c2e997aa3146983ed888ad08b15470a2e22ecc", + "shasum": "" + }, + "require": { + "nikic/php-parser": "^4.6", + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library for counting the lines of code in PHP source code", + "homepage": "https://github.com/sebastianbergmann/lines-of-code", + "support": { + "issues": "https://github.com/sebastianbergmann/lines-of-code/issues", + "source": "https://github.com/sebastianbergmann/lines-of-code/tree/1.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-11-28T06:42:11+00:00" + }, + { + "name": "sebastian/object-enumerator", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-enumerator.git", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", + "shasum": "" + }, + "require": { + "php": ">=7.3", + "sebastian/object-reflector": "^2.0", + "sebastian/recursion-context": "^4.0" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Traverses array structures and object graphs to enumerate all referenced objects", + "homepage": "https://github.com/sebastianbergmann/object-enumerator/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-enumerator/issues", + "source": "https://github.com/sebastianbergmann/object-enumerator/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:12:34+00:00" + }, + { + "name": "sebastian/object-reflector", + "version": "2.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/object-reflector.git", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Allows reflection of object attributes, including inherited and non-public ones", + "homepage": "https://github.com/sebastianbergmann/object-reflector/", + "support": { + "issues": "https://github.com/sebastianbergmann/object-reflector/issues", + "source": "https://github.com/sebastianbergmann/object-reflector/tree/2.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:14:26+00:00" + }, + { + "name": "sebastian/recursion-context", + "version": "4.0.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/recursion-context.git", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "4.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + }, + { + "name": "Jeff Welch", + "email": "whatthejeff@gmail.com" + }, + { + "name": "Adam Harvey", + "email": "aharvey@php.net" + } + ], + "description": "Provides functionality to recursively process PHP variables", + "homepage": "http://www.github.com/sebastianbergmann/recursion-context", + "support": { + "issues": "https://github.com/sebastianbergmann/recursion-context/issues", + "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-10-26T13:17:30+00:00" + }, + { + "name": "sebastian/resource-operations", + "version": "3.0.3", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/resource-operations.git", + "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "reference": "0f4443cb3a1d92ce809899753bc0d5d5a8dd19a8", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de" + } + ], + "description": "Provides a list of PHP built-in functions that operate on resources", + "homepage": "https://www.github.com/sebastianbergmann/resource-operations", + "support": { + "issues": "https://github.com/sebastianbergmann/resource-operations/issues", + "source": "https://github.com/sebastianbergmann/resource-operations/tree/3.0.3" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:45:17+00:00" + }, + { + "name": "sebastian/type", + "version": "2.3.4", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/type.git", + "reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/b8cd8a1c753c90bc1a0f5372170e3e489136f914", + "reference": "b8cd8a1c753c90bc1a0f5372170e3e489136f914", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "require-dev": { + "phpunit/phpunit": "^9.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.3-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Collection of value objects that represent the types of the PHP type system", + "homepage": "https://github.com/sebastianbergmann/type", + "support": { + "issues": "https://github.com/sebastianbergmann/type/issues", + "source": "https://github.com/sebastianbergmann/type/tree/2.3.4" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2021-06-15T12:49:02+00:00" + }, + { + "name": "sebastian/version", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/sebastianbergmann/version.git", + "reference": "c6c1022351a901512170118436c764e473f6de8c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c", + "reference": "c6c1022351a901512170118436c764e473f6de8c", + "shasum": "" + }, + "require": { + "php": ">=7.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Sebastian Bergmann", + "email": "sebastian@phpunit.de", + "role": "lead" + } + ], + "description": "Library that helps with managing the version number of Git-hosted PHP projects", + "homepage": "https://github.com/sebastianbergmann/version", + "support": { + "issues": "https://github.com/sebastianbergmann/version/issues", + "source": "https://github.com/sebastianbergmann/version/tree/3.0.2" + }, + "funding": [ + { + "url": "https://github.com/sebastianbergmann", + "type": "github" + } + ], + "time": "2020-09-28T06:39:44+00:00" + }, + { + "name": "swoole/ide-helper", + "version": "4.8.7", + "source": { + "type": "git", + "url": "https://github.com/swoole/ide-helper.git", + "reference": "62d306dcfdb7c2cd21768386955af9de387163f9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/swoole/ide-helper/zipball/62d306dcfdb7c2cd21768386955af9de387163f9", + "reference": "62d306dcfdb7c2cd21768386955af9de387163f9", + "shasum": "" + }, + "type": "library", + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache-2.0" + ], + "authors": [ + { + "name": "Team Swoole", + "email": "team@swoole.com" + } + ], + "description": "IDE help files for Swoole.", + "support": { + "issues": "https://github.com/swoole/ide-helper/issues", + "source": "https://github.com/swoole/ide-helper/tree/4.8.7" + }, + "funding": [ + { + "url": "https://gitee.com/swoole/swoole?donate=true", + "type": "custom" + }, + { + "url": "https://github.com/swoole", + "type": "github" + } + ], + "time": "2022-02-23T01:04:01+00:00" + }, + { + "name": "theseer/tokenizer", + "version": "1.2.1", + "source": { + "type": "git", + "url": "https://github.com/theseer/tokenizer.git", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/34a41e998c2183e22995f158c581e7b5e755ab9e", + "reference": "34a41e998c2183e22995f158c581e7b5e755ab9e", + "shasum": "" + }, + "require": { + "ext-dom": "*", + "ext-tokenizer": "*", + "ext-xmlwriter": "*", + "php": "^7.2 || ^8.0" + }, + "type": "library", + "autoload": { + "classmap": [ + "src/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Arne Blankerts", + "email": "arne@blankerts.de", + "role": "Developer" + } + ], + "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", + "support": { + "issues": "https://github.com/theseer/tokenizer/issues", + "source": "https://github.com/theseer/tokenizer/tree/1.2.1" + }, + "funding": [ + { + "url": "https://github.com/theseer", + "type": "github" + } + ], + "time": "2021-07-28T10:34:58+00:00" + } + ], + "aliases": [], + "minimum-stability": "dev", + "stability-flags": [], + "prefer-stable": true, + "prefer-lowest": false, + "platform": { + "php": "^8.0", + "ext-curl": "*", + "ext-gd": "*", + "ext-json": "*", + "ext-libxml": "*", + "ext-simplexml": "*" + }, + "platform-dev": [], + "plugin-api-version": "2.1.0" +} diff --git a/docker-compose.yml b/docker-compose.yml index a08431c10..3f02aefcf 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -118,6 +118,7 @@ services: - ./docker/drawio/webapp/stencils:/usr/local/tomcat/webapps/draw/stencils - ./docker/drawio/webapp/js/app.min.js:/usr/local/tomcat/webapps/draw/js/app.min.js - ./docker/drawio/webapp/js/croppie/croppie.min.css:/usr/local/tomcat/webapps/draw/js/croppie/croppie.min.css + - ./docker/drawio/webapp/js/diagramly/ElectronApp.js:/usr/local/tomcat/webapps/draw/js/diagramly/ElectronApp.js networks: extnetwork: ipv4_address: "${APP_IPPR}.8" diff --git a/docker/drawio/webapp/README.md b/docker/drawio/webapp/README.md new file mode 100644 index 000000000..83b1c592b --- /dev/null +++ b/docker/drawio/webapp/README.md @@ -0,0 +1,16 @@ +# Change + +## js/diagramly/ElectronApp.js + +- 隐藏文件中的无用菜单 + +## js/app.min.js + +- 隐藏帮助菜单 +- 取消未保存关闭窗口提示 +- `EmbedFile.prototype.getTitle=...` 改为 `EmbedFile.prototype.getTitle=function(){return this.desc.title||(urlParams.title?decodeURIComponent(urlParams.title):"")}` +- `390:270` 改为 `390:285` + +## index.html + +- 隐藏加载中的提示 diff --git a/docker/drawio/webapp/index.html b/docker/drawio/webapp/index.html index fac6d17af..89affb167 100644 --- a/docker/drawio/webapp/index.html +++ b/docker/drawio/webapp/index.html @@ -364,6 +364,7 @@ color:#606060; } .geBlock { + display: none; z-index:-3; margin:100px; margin-top:40px; @@ -372,9 +373,6 @@ text-align:center; min-width:50%; } - .geBlock h1, .geBlock p { - display: none; - } .geBlock h1, .geBlock h2 { margin-top:0px; padding-top:0px; @@ -411,6 +409,9 @@ cursor:pointer; margin:5px; } + .geDialog h2 { + line-height: 1.2; + } diff --git a/docker/drawio/webapp/js/app.min.js b/docker/drawio/webapp/js/app.min.js index 2d904e318..02bd7996b 100644 --- a/docker/drawio/webapp/js/app.min.js +++ b/docker/drawio/webapp/js/app.min.js @@ -2286,7 +2286,7 @@ b.deltaY&&(d=1+Math.abs(b.deltaY)/20*(d-1)),a.lazyZoom(c,null,null,d),mxEvent.co EditorUi.prototype.isPagesEnabled=function(){return this.editor.editable||"1"!=urlParams["hide-pages"]};EditorUi.prototype.createTemporaryGraph=function(a){return Graph.createOffscreenGraph(a)};EditorUi.prototype.addChromelessClickHandler=function(){var a=urlParams.highlight;null!=a&&0d&&(mxUtils.br(l),n=1);var t=document.createElement("a");t.style.overflow="hidden";t.style.display="inline-block";t.className="geBaseButton";t.style.boxSizing="border-box";t.style.fontSize="11px";t.style.position="relative";t.style.margin="4px";t.style.marginTop="8px";t.style.marginBottom="0px";t.style.padding="8px 10px 8px 10px";t.style.width="88px";t.style.height="100px";t.style.whiteSpace="nowrap";t.setAttribute("title", @@ -10881,7 +10881,7 @@ f.textarea.style.height="380px";this.showDialog(f.container,620,460,!0,!0,null,n k=65==(l?parseInt(l[2],10):!1)?!1:k}if(k||this.isOffline()){f.href=URL.createObjectURL(e?this.base64ToBlob(b,d):new Blob([b],{type:d}));k?f.download=c:f.setAttribute("target","_blank");document.body.appendChild(f);try{window.setTimeout(function(){URL.revokeObjectURL(f.href)},2E4),f.click(),f.parentNode.removeChild(f)}catch(y){}}else this.createEchoRequest(b,c,d,e,g).simulate(document,"_blank")}};EditorUi.prototype.createEchoRequest=function(b,c,d,e,g,k){b="xml="+encodeURIComponent(b);return new mxXmlRequest(SAVE_URL, b+(null!=d?"&mime="+d:"")+(null!=g?"&format="+g:"")+(null!=k?"&base64="+k:"")+(null!=c?"&filename="+encodeURIComponent(c):"")+(e?"&binary=1":""))};EditorUi.prototype.base64ToBlob=function(b,c){c=c||"";for(var f=atob(b),d=f.length,e=Math.ceil(d/1024),l=Array(e),g=0;g=g?2:6"+mxUtils.htmlEntities(b, -!1)+""),g.document.close())}else f==App.MODE_DEVICE||"download"==f?this.doSaveLocalFile(b,c,d,e,null,v):null!=c&&0f?390:270:160;this.showDialog(c.container,420,k,!0,!0);c.init()};EditorUi.prototype.openInNewWindow= +!1)+""),g.document.close())}else f==App.MODE_DEVICE||"download"==f?this.doSaveLocalFile(b,c,d,e,null,v):null!=c&&0f?390:285:160;this.showDialog(c.container,420,k,!0,!0);c.init()};EditorUi.prototype.openInNewWindow= function(b,c,d){var f=window.open("about:blank");null==f||null==f.document?mxUtils.popup(b,!0):("image/svg+xml"!=c||mxClient.IS_SVG?"image/svg+xml"==c?f.document.write(""+b+""):(b=d?b:btoa(unescape(encodeURIComponent(b))),f.document.write('')):f.document.write("
"+mxUtils.htmlEntities(b,!1)+"
"),f.document.close())};var c=EditorUi.prototype.addChromelessToolbarItems;EditorUi.prototype.isChromelessImageExportEnabled= function(){return"draw.io"!=this.getServiceName()||/.*\.draw\.io$/.test(window.location.hostname)||/.*\.diagrams\.net$/.test(window.location.hostname)};EditorUi.prototype.addChromelessToolbarItems=function(b){if(null!=urlParams.tags){this.tagsDialog=this.tagsComponent=null;var f=b(mxUtils.bind(this,function(b){null==this.tagsComponent&&(this.tagsComponent=this.editor.graph.createTagsDialog(mxUtils.bind(this,function(){return null!=this.tagsDialog}),!0),this.tagsComponent.div.getElementsByTagName("div")[0].style.position= "",mxUtils.setPrefixedStyle(this.tagsComponent.div.style,"borderRadius","5px"),this.tagsComponent.div.className="geScrollable",this.tagsComponent.div.style.maxHeight="160px",this.tagsComponent.div.style.maxWidth="120px",this.tagsComponent.div.style.padding="4px",this.tagsComponent.div.style.overflow="auto",this.tagsComponent.div.style.height="auto",this.tagsComponent.div.style.position="fixed",this.tagsComponent.div.style.fontFamily=Editor.defaultHtmlFont,mxClient.IS_IE||mxClient.IS_IE11?(this.tagsComponent.div.style.backgroundColor= @@ -10896,7 +10896,7 @@ function(b){e.stop();this.exportDialog.style.width="auto";this.exportDialog.styl function(){this.openInNewWindow(f.substring(f.indexOf(",")+1),"image/png",!0);c.apply(this,arguments)}))}),null,this.thumbImageCache,null,mxUtils.bind(this,function(b){this.spinner.stop();this.handleError(b)}),null,null,null,null,null,null,null,Editor.defaultBorder);mxEvent.addListener(this.editor.graph.container,"click",c);document.body.appendChild(this.exportDialog)}mxEvent.consume(b)}),Editor.cameraImage,mxResources.get("export"))}};EditorUi.prototype.saveData=function(b,c,d,e,g){this.isLocalFileSave()? this.saveLocalFile(d,b,e,g,c):this.saveRequest(b,c,mxUtils.bind(this,function(b,f){return this.createEchoRequest(d,b,e,g,c,f)}),d,g,e)};EditorUi.prototype.saveRequest=function(b,c,d,e,g,k,n){n=null!=n?n:!mxClient.IS_IOS||!navigator.standalone;var f=this.getServiceCount(!1);isLocalStorage&&f++;var l=4>=f?2:6=l.getStatus())try{this.exportFile(l.getText(),b,k,!0,f,d)}catch(C){this.handleError(C)}else this.handleError({message:mxResources.get("errorSavingFile")})}), -function(b){this.spinner.stop();this.handleError(b)})})))}}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),!1,!1,n,null,1=window.location.hash.length)&&null!=d&&0=b?2:6d?390:270,!0,!1,mxUtils.bind(this,function(b){b&& +c,mxUtils.bind(this,function(b,c){if(null==c){this.hideDialog();var d=Editor.useLocalStorage;this.createFile(0d?390:285,!0,!1,mxUtils.bind(this,function(b){b&& null==this.getCurrentFile()&&this.showSplash()}));c.init()}}),d=decodeURIComponent(d);if("http://"!=d.substring(0,7)&&"https://"!=d.substring(0,8))try{null!=window.opener&&null!=window.opener[d]?g(window.opener[d]):this.handleError(null,mxResources.get("errorLoadingFile"))}catch(k){this.handleError(k,mxResources.get("errorLoadingFile"))}else this.loadTemplate(d,function(b){g(b)},mxUtils.bind(this,function(){this.handleError(null,mxResources.get("errorLoadingFile"),c)}))}else(null==window.location.hash|| 1>=window.location.hash.length)&&null!=urlParams.state&&null!=this.stateArg&&"open"==this.stateArg.action?null!=this.stateArg.ids&&(window.history&&window.history.replaceState&&window.history.replaceState(null,null,window.location.pathname+this.getSearch(["state"])),window.location.hash="G"+this.stateArg.ids[0]):(null==window.location.hash||1>=window.location.hash.length)&&null!=this.drive&&null!=this.stateArg&&"create"==this.stateArg.action?(window.history&&window.history.replaceState&&window.history.replaceState(null, null,window.location.pathname+this.getSearch(["state"])),this.setMode(App.MODE_GOOGLE),"0"==urlParams.splash?this.createFile(null!=urlParams.title?decodeURIComponent(urlParams.title):this.defaultFilename):this.actions.get("new").funct()):(null!=urlParams.open&&window.history&&window.history.replaceState&&(window.history.replaceState(null,null,window.location.pathname+this.getSearch(["open"])),window.location.hash=urlParams.open),e())}}catch(k){this.handleError(k)}}; @@ -11759,7 +11759,7 @@ App.prototype.saveFile=function(b,e){var d=this.getCurrentFile();if(null!=d){var function(b,e){d.invalidFileHandle=null;d.fileHandle=b;d.title=e.name;d.desc=e;this.save(e.name,c)}),null,this.createFileSystemOptions(d.getTitle()));else{var g=null!=d.getTitle()?d.getTitle():this.defaultFilename,k=!mxClient.IS_IOS||!navigator.standalone,n=this.mode,f=this.getServiceCount(!0);isLocalStorage&&f++;var l=4>=f?2:6b.indexOf(".")||/(\.drawio)$/i.test(b),/(\.svg)$/i.test(b),/(\.html)$/i.test(b)),null,e,c,null==this.mode,d)})):null!=e&&this.save(b,c)))}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),null,null,k,null,!0,l,null,null,null,this.editor.fileExtensions,!1);this.showDialog(g.container,420,f>l?390:270,!0,!0);g.init()}else this.save(d.getTitle(),c)}}; +this.getFileData(/(\.xml)$/i.test(b)||0>b.indexOf(".")||/(\.drawio)$/i.test(b),/(\.svg)$/i.test(b),/(\.html)$/i.test(b)),null,e,c,null==this.mode,d)})):null!=e&&this.save(b,c)))}),mxUtils.bind(this,function(){this.hideDialog()}),mxResources.get("saveAs"),mxResources.get("download"),null,null,k,null,!0,l,null,null,null,this.editor.fileExtensions,!1);this.showDialog(g.container,420,f>l?390:285,!0,!0);g.init()}else this.save(d.getTitle(),c)}}; App.prototype.loadTemplate=function(b,e,d,c,g){var k=!1,n=b;this.editor.isCorsEnabledForUrl(n)||(n="t="+(new Date).getTime(),n=PROXY_URL+"?url="+encodeURIComponent(b)+"&base64=1&"+n,k=!0);var f=null!=c?c:b;this.editor.loadUrl(n,mxUtils.bind(this,function(c){try{var l=k?!window.atob||mxClient.IS_IE||mxClient.IS_IE11?Base64.decode(c):atob(c):c,n=/(\.v(dx|sdx?))($|\?)/i.test(f)||/(\.vs(x|sx?))($|\?)/i.test(f);if(n||this.isVisioData(l))n||(f=g?this.isRemoteVisioData(l)?"raw.vss":"raw.vssx":this.isRemoteVisioData(l)? "raw.vsd":"raw.vsdx"),this.importVisio(this.base64ToBlob(c.substring(c.indexOf(",")+1)),function(b){e(b)},d,f);else if(!this.isOffline()&&(new XMLHttpRequest).upload&&this.isRemoteFileFormat(l,f))this.parseFileData(l,mxUtils.bind(this,function(b){4==b.readyState&&200<=b.status&&299>=b.status&&" { + electron.request(msg, function(data) + { + resolve(data); + }, function(errMsg, e) + { + reject(e || errMsg); + }); + }); + }; + + return await doRequest(); + }; + + // Overrides default mode + App.mode = App.MODE_DEVICE; + + // Disables all external transmission functionality + App.prototype.isExternalDataComms = function() + { + return false; + }; + + // Disables preview option in embed dialog + EmbedDialog.showPreviewOption = false; + + // Disables new window option in edit diagram dialog + EditDiagramDialog.showNewWindowOption = false; + + PrintDialog.previewEnabled = false; + + PrintDialog.electronPrint = function(editorUi, allPages, pagesFrom, pagesTo, + fit, sheetsAcross, sheetsDown, zoom, pageScale, pageFormat) + { + var xml = '', title = ''; + var file = editorUi.getCurrentFile(); + + if (file) + { + file.updateFileData(); + xml = file.getData(); + title = file.title; + } + + new mxElectronRequest('export', { + print: true, + format: 'pdf', + xml: xml, + from: pagesFrom - 1, + to: pagesTo - 1, + allPages: allPages, + pageWidth: pageFormat.width, + pageHeight: pageFormat.height, + pageScale: pageScale, + fit: fit, + sheetsAcross: sheetsAcross, + sheetsDown: sheetsDown, + scale: zoom, + fileTitle: title + }).send(function(){}, function(){}); + }; + + var oldWindowOpen = window.open; + window.open = async function(url) + { + if (url != null && url.startsWith('http')) + { + await requestSync({action: 'openExternal', url: url}); + } + else + { + return oldWindowOpen(url); + } + } + + var origAppMain = App.main; + + App.main = async function() + { + //Load desktop plugins + var plugins = (mxSettings.settings != null) ? mxSettings.getPlugins() : null; + App.initPluginCallback(); + + if (plugins != null && plugins.length > 0) + { + for (var i = 0; i < plugins.length; i++) + { + try + { + if (plugins[i].startsWith('/plugins/')) + { + plugins[i] = '.' + plugins[i]; + } + else if (plugins[i].startsWith('plugins/')) + { + plugins[i] = './' + plugins[i]; + } + //Support old plugins added using file:// workaround + else if (!plugins[i].startsWith('file://')) + { + let appFolder = await requestSync('getAppDataFolder'); + + let pluginsFile = await requestSync({ + action: 'checkFileExists', + pathParts: [appFolder, '/plugins', plugins[i]] + }); + + if (pluginsFile.exists) + { + plugins[i] = 'file://' + pluginsFile.path; + } + else + { + continue; //skip not found files + } + } + + mxscript(plugins[i]); + } + catch (e) + { + // ignore + } + } + } + + //Disable web plugins loading + urlParams['plugins'] = '0'; + origAppMain.apply(this, arguments); + }; + + var menusInit = Menus.prototype.init; + Menus.prototype.init = function() + { + menusInit.apply(this, arguments); + + var editorUi = this.editorUi; + + editorUi.actions.put('useOffline', new Action(mxResources.get('useOffline') + '...', function() + { + editorUi.openLink('https://www.draw.io/') + })); + + this.put('openRecent', new Menu(function(menu, parent) + { + var recent = editorUi.getRecent(); + + if (recent != null) + { + for (var i = 0; i < recent.length; i++) + { + (function(entry) + { + menu.addItem(entry.title, null, function() + { + function doOpenRecent() + { + //Simulate opening a file via args + editorUi.loadArgs({args: [entry.id]}); + }; + + var file = editorUi.getCurrentFile(); + + if (file != null && file.isModified()) + { + editorUi.confirm(mxResources.get('allChangesLost'), null, doOpenRecent, + mxResources.get('cancel'), mxResources.get('discardChanges')); + } + else + { + doOpenRecent(); + } + }, parent); + })(recent[i]); + } + + menu.addSeparator(parent); + } + + menu.addItem(mxResources.get('reset'), null, function() + { + editorUi.resetRecent(); + }, parent); + })); + + // Replaces file menu to replace openFrom menu with open and rename downloadAs to export + this.put('file', new Menu(mxUtils.bind(this, function(menu, parent) + { + this.addMenuItems(menu, ['import'], parent); + this.addSubmenu('exportAs', menu, parent); + menu.addSeparator(parent); + this.addSubmenu('embed', menu, parent); + menu.addSeparator(parent); + this.addMenuItems(menu, ['newLibrary', 'openLibrary'], parent); + + var file = editorUi.getCurrentFile(); + + if (file != null && editorUi.fileNode != null) + { + var filename = (file.getTitle() != null) ? + file.getTitle() : editorUi.defaultFilename; + + if (!/(\.html)$/i.test(filename) && + !/(\.svg)$/i.test(filename)) + { + this.addMenuItems(menu, ['-', 'properties']); + } + } + + this.addMenuItems(menu, ['-', 'pageSetup', 'print'], parent); + // LATER: Find API for application.quit + }))); + }; + + var graphCreateLinkForHint = Graph.prototype.createLinkForHint; + + Graph.prototype.createLinkForHint = function(href, label) + { + var a = graphCreateLinkForHint.call(this, href, label); + + if (href != null && !this.isCustomLink(href)) + { + // KNOWN: Event with gesture handler mouseUp the middle click opens a framed window + mxEvent.addListener(a, 'click', mxUtils.bind(this, function(evt) + { + this.openLink(a.getAttribute('href'), a.getAttribute('target')); + mxEvent.consume(evt); + })); + } + + return a; + }; + + Graph.prototype.openLink = async function(url, target) + { + await requestSync({action: 'openExternal', url: url}); + }; + + // Initializes the user interface + var editorUiInit = EditorUi.prototype.init; + EditorUi.prototype.init = function() + { + editorUiInit.apply(this, arguments); + + var editorUi = this; + var graph = this.editor.graph; + + window.__emt_isModified = function() + { + if (editorUi.getCurrentFile()) + { + return editorUi.getCurrentFile().isModified() + } + + return false + }; + + window.__emt_removeDraft = function() + { + var currentFile = editorUi.getCurrentFile(); + + if (currentFile != null && EditorUi.enableDrafts) + { + currentFile.removeDraft(); + } + }; + + // Adds support for libraries + this.actions.addAction('newLibrary...', mxUtils.bind(this, function() + { + editorUi.showLibraryDialog(null, null, null, null, App.MODE_DEVICE); + })); + + this.actions.addAction('openLibrary...', mxUtils.bind(this, function() + { + editorUi.pickLibrary(App.MODE_DEVICE); + })); + + // Replaces import action + this.actions.addAction('import...', mxUtils.bind(this, async function() + { + if (editorUi.getCurrentFile() != null) + { + var lastDir = localStorage.getItem('.lastImpDir'); + + var paths = await requestSync({ + action: 'showOpenDialog', + defaultPath: lastDir || (await requestSync('getDocumentsFolder')), + properties: ['openFile'] + }); + + if (paths !== undefined && paths[0] != null) + { + var path = paths[0]; + localStorage.setItem('.lastImpDir', await requestSync({action: 'dirname', path: path})); + var asImage = /\.png$/i.test(path) || /\.gif$/i.test(path) || /\.jpe?g$/i.test(path); + var encoding = (asImage || /\.pdf$/i.test(path) || /\.vsdx$/i.test(path) || /\.vssx$/i.test(path)) ? + 'base64' : 'utf-8'; + + if (editorUi.spinner.spin(document.body, mxResources.get('loading'))) + { + electron.request({action: 'readFile', filename: path, encoding: encoding} , mxUtils.bind(this, function (data) + { + try + { + if (editorUi.isLucidChartData(data)) + { + editorUi.convertLucidChart(data, function(xml) + { + editorUi.spinner.stop(); + graph.setSelectionCells(editorUi.importXml(xml)); + }, function(e) + { + editorUi.spinner.stop(); + editorUi.handleError(e); + }); + } + else if (/(\.vsdx)($|\?)/i.test(path)) + { + editorUi.importVisio(editorUi.base64ToBlob(data, 'application/octet-stream'), function(xml) + { + editorUi.spinner.stop(); + graph.setSelectionCells(editorUi.importXml(xml)); + }); + } + else if (editorUi.isRemoteFileFormat(data, path)) + { + editorUi.spinner.stop(); + editorUi.showError(mxResources.get('error'), mxResources.get('notInDesktop')); + } + else + { + if (/\.pdf$/i.test(path)) + { + var tmp = Editor.extractGraphModelFromPdf(data); + + if (tmp != null) + { + data = tmp; + } + } + else if (/\.png$/i.test(path)) + { + var tmp = editorUi.extractGraphModelFromPng(data); + + if (tmp != null) + { + asImage = false; + data = tmp; + } + } + else if (/\.svg$/i.test(path)) + { + // LATER: Use importXml without throwing exception if no data + // Checks if SVG contains content attribute + var root = mxUtils.parseXml(data); + var svgs = root.getElementsByTagName('svg'); + + if (svgs.length > 0) + { + var svgRoot = svgs[0]; + var cont = svgRoot.getAttribute('content'); + + if (cont != null && cont.charAt(0) != '<' && cont.charAt(0) != '%') + { + cont = unescape((window.atob) ? atob(cont) : Base64.decode(cont, true)); + } + + if (cont != null && cont.charAt(0) == '%') + { + cont = decodeURIComponent(cont); + } + + if (cont != null && (cont.substring(0, 8) === ' 0) + { + try + { + var tmpGraph = createGraph(); + tmpGraph.importCells(cells, 0, 0, tmpGraph.getDefaultParent()); + var codec = new mxCodec(); + var node = codec.encode(tmpGraph.getModel()); + var modelString = mxUtils.getXml(node); + await requestSync({ + action: 'clipboardAction', + method: 'writeText', + data: encodeURIComponent(modelString) + }); + } + catch(e) + { + //Ignore + } + } + }; + + async function cloneSysCLipboardToMx() + { + try + { + var modelString = await requestSync({ + action: 'clipboardAction', + method: 'readText', + }); + + if (modelString) + { + modelString = decodeURIComponent(modelString); + var xmlDoc = mxUtils.parseXml(modelString); + var tmpGraph = createGraph(); + var codec = new mxCodec(xmlDoc); + var model = tmpGraph.getModel(); + codec.decode(xmlDoc.documentElement, model); + mxClipboard.setCells(model.root.children[0].children); + } + } + catch(e) + { + //Ignore, the contents of mxClipboard will be used + } + }; + + //Set system clipboard on menu copy/cut + var origCut = this.actions.get('cut').funct; + + editorUi.actions.addAction('cut', function() + { + origCut(); + cloneMxCLipboardToSys(); + }, null, 'sprite-cut', Editor.ctrlKey + '+X'); + + var origCopy = this.actions.get('copy').funct; + + editorUi.actions.addAction('copy', function() + { + origCopy(); + cloneMxCLipboardToSys(); + }, null, 'sprite-copy', Editor.ctrlKey + '+C'); + + //Get data from system clipboard for pase/pasteHere + var origPaste = this.actions.get('paste').funct; + + editorUi.actions.addAction('paste', function() + { + cloneSysCLipboardToMx(); + origPaste(); + }, false, 'sprite-paste', Editor.ctrlKey + '+V'); + + var origPasteHere = this.actions.get('pasteHere').funct; + + editorUi.actions.addAction('pasteHere', function() + { + cloneSysCLipboardToMx(); + origPasteHere(); + }); + + //Enable paste action even if mxClipboard is empty! TODO Is this OK? + editorUi.updatePasteActionStates = function() + { + var graph = this.editor.graph; + var paste = this.actions.get('paste'); + var pasteHere = this.actions.get('pasteHere'); + + paste.setEnabled(this.editor.graph.cellEditor.isContentEditing() || + (graph.isEnabled() && !graph.isCellLocked(graph.getDefaultParent()))); + pasteHere.setEnabled(paste.isEnabled()); + }; + + editorUi.actions.addAction('plugins...', function() + { + editorUi.showDialog(new PluginsDialog(editorUi, function(callback) + { + var div = document.createElement('div'); + + var title = document.createElement('span'); + title.style.marginTop = '6px'; + mxUtils.write(title, mxResources.get('builtinPlugins') + ': '); + div.appendChild(title); + + var pluginsSelect = document.createElement('select'); + pluginsSelect.style.width = '150px'; + + for (var i = 0; i < App.publicPlugin.length; i++) + { + var option = document.createElement('option'); + mxUtils.write(option, App.publicPlugin[i]); + option.value = App.publicPlugin[i]; + pluginsSelect.appendChild(option); + } + + div.appendChild(pluginsSelect); + mxUtils.br(div); + mxUtils.br(div); + + title = document.createElement('span'); + mxUtils.write(title, mxResources.get('extPlugins') + ': '); + div.appendChild(title); + + var extPluginsBtn = mxUtils.button(mxResources.get('selectFile') + '...', async function() + { + var lastDir = localStorage.getItem('.lastPluginDir'); + + var paths = await requestSync({ + action: 'showOpenDialog', + defaultPath: lastDir || (await requestSync('getDocumentsFolder')), + filters: [ + { name: 'draw.io Plugins', extensions: ['js'] }, + { name: 'All Files', extensions: ['*'] } + ], + properties: ['openFile'] + }); + + if (paths !== undefined && paths[0] != null) + { + try + { + let ret = await requestSync({ + action: 'installPlugin', + filePath: paths[0] + }); + + localStorage.setItem('.lastPluginDir', ret.selDir); + callback(ret.pluginName); + editorUi.hideDialog(); + } + catch (e) + { + if (e.message == 'fileExists') + { + alert(mxResources.get('fileExists')); + } + else + { + alert('Adding plugin failed.'); + } + } + } + }); + + extPluginsBtn.className = 'geBtn'; + div.appendChild(extPluginsBtn); + + var dlg = new CustomDialog(editorUi, div, mxUtils.bind(this, function() + { + callback(App.pluginRegistry[pluginsSelect.value]); + })); + editorUi.showDialog(dlg.container, 300, 125, true, true); + }, + async function(plugin) + { + await requestSync({ + action: 'uninstallPlugin', + plugin: plugin + }); + }).container, 360, 225, true, false); + }); + } + + var appLoad = App.prototype.load; + + App.prototype.load = function() + { + appLoad.apply(this, arguments); + + electron.registerMsgListener('args-obj', (argsObj) => + { + this.loadArgs(argsObj) + }) + + var editorUi = this; + + electron.registerMsgListener('export-vsdx', (argsObj) => + { + var file = new LocalFile(editorUi, argsObj.xml, ''); + + editorUi.fileLoaded(file); + + try + { + editorUi.saveData = function(filename, format, data, mimeType, base64Encoded) + { + electron.sendMessage('export-vsdx-finished', data); + }; + + var expSuccess = new VsdxExport(editorUi).exportCurrentDiagrams(); + + if (!expSuccess) + { + electron.sendMessage('export-vsdx-finished', null); + } + } + catch (e) + { + electron.sendMessage('export-vsdx-finished', null); + } + }) + + //We do some async stuff during app loading so we need to know exactly when loading is finished (it is not when onload is finished) + electron.sendMessage('app-load-finished', null); + + //Change offline translation + mxResources.parse('notInOffline=' + mxResources.get('notInDesktop')); + } + + App.prototype.loadArgs = function(argsObj) + { + var paths = argsObj.args; + + // If a file is passed, and it is not an argument (has a leading -) + if (paths !== undefined && paths[0] != null && paths[0].indexOf('-') != 0 && this.spinner.spin(document.body, mxResources.get('loading'))) + { + var path = paths[0]; + this.hideDialog(); + + var success = mxUtils.bind(this, function(fileEntry, data, stat, name, isModified) + { + this.spinner.stop(); + + if (data != null) + { + var file = new LocalFile(this, data, name || ''); + file.fileObject = fileEntry; + file.stat = stat; + file.setModified(isModified? true : false); + this.fileLoaded(file); + } + }); + + var error = mxUtils.bind(this, function(e) + { + this.spinner.stop(); + + if (e.code === 'ENOENT') + { + var title = path.replace(/^.*[\\\/]/, ''); + var data = this.emptyDiagramXml; + var file = new LocalFile(this, data, title, null); + + file.fileObject = new Object(); + file.fileObject.path = path; + file.fileObject.name = title; + file.fileObject.type = 'utf-8'; + this.fileCreated(file, null, null, null); + this.saveFile(); + } + else + { + this.handleError(e); + } + + }); + + // Tries to open the file + this.readGraphFile(success, error, path); + } + // If no file is passed, but there is the "create-if-not-exists" flag + else if (argsObj.create != null) + { + var title = 'Untitled document'; + var data = this.emptyDiagramXml; + var file = new LocalFile(this, data, title, null); + this.fileCreated(file, null, null, null); + } + else + { + this.checkDrafts(); + } + } + + var origFileLoaded = EditorUi.prototype.fileLoaded; + + EditorUi.prototype.fileLoaded = async function(file) + { + var oldFile = this.getCurrentFile(); + + if (oldFile != null) + { + //TODO This assumes the user confirmed discarding the file changes to get to this function? + if (EditorUi.enableDrafts) + { + oldFile.removeDraft(); + } + + if (oldFile.fileObject != null) + { + await requestSync({action: 'unwatchFile', path: oldFile.fileObject.path}); + } + } + + if (file != null) + { + if (file.fileObject == null) + { + var fname = file.getTitle(); + + var fileInfo = openFilesMap[fname]; + + if (fileInfo != null) + { + file.fileObject = { + name: fileInfo.name, + path: fileInfo.path, + type: fileInfo.type || 'utf-8' + }; + //delete it such that it is not used again incorrectly + delete openFilesMap[fname]; + } + } + + if (file.fileObject != null) + { + var title = file.fileObject.path; + + if (title.length > 100) + { + title = '...' + title.substr(title.length - 97); + } + + this.addRecent({id: file.fileObject.path, title: title}); + + await requestSync({ + action: 'watchFile', + path: file.fileObject.path, + listener: mxUtils.bind(this, function(curr, prev) + { + //File is changed (not just accessed) && File is not already in a conflict state + if (curr.mtimeMs != prev.mtimeMs && !file.inConflictState) + { + //Ignore our own changes + if (file.unwatchedSaves || (file.state != null && file.stat.mtimeMs == curr.mtimeMs)) + { + file.unwatchedSaves = false; + return; + } + + file.inConflictState = true; + + this.showError(mxResources.get('externalChanges'), + mxResources.get('fileChangedSyncDialog'), + mxResources.get('synchronize'), mxUtils.bind(this, function() + { + if (this.spinner.spin(document.body, mxResources.get('updatingDocument'))) + { + file.synchronizeFile(mxUtils.bind(this, function() + { + this.spinner.stop(); + }), mxUtils.bind(this, function(err) + { + file.handleFileError(err, true); + })); + } + }), null, null, null, + mxResources.get('cancel'), mxUtils.bind(this, function() + { + this.hideDialog(); + file.handleFileError(null, false); + }), 340, 150); + } + }) + }); + } + } + + origFileLoaded.apply(this, arguments); + }; + + // Uses local picker + App.prototype.pickFile = function() + { + var doPickFile = mxUtils.bind(this, function() + { + this.chooseFileEntry(mxUtils.bind(this, function(fileEntry, data, stat, name, isModified) + { + var file = new LocalFile(this, data, ''); + file.fileObject = fileEntry; + file.stat = stat; + file.setModified(isModified? true : false); + this.fileLoaded(file); + })); + }); + + var file = this.getCurrentFile(); + + if (file != null && file.isModified()) + { + this.confirm(mxResources.get('allChangesLost'), null, doPickFile, + mxResources.get('cancel'), mxResources.get('discardChanges')); + } + else + { + doPickFile(); + } + }; + + /** + * Selects a library to load from a picker + * + * @param mode the device mode, ignored in this case + */ + App.prototype.pickLibrary = function(mode) + { + this.chooseFileEntry(mxUtils.bind(this, function(fileEntry, data, stat) + { + try + { + var library = new DesktopLibrary(this, data, fileEntry); + this.loadLibrary(library); + } + catch (e) + { + this.handleError(e, mxResources.get('errorLoadingFile')); + } + })); + }; + + // Uses local picker + App.prototype.chooseFileEntry = async function(fn) + { + var lastDir = localStorage.getItem('.lastOpenDir'); + + var paths = await requestSync({ + action: 'showOpenDialog', + defaultPath: lastDir || (await requestSync('getDocumentsFolder')), + filters: [ + { name: 'draw.io Diagrams', extensions: ['drawio', 'xml', 'png', 'svg', 'html'] }, + { name: 'VSDX Documents', extensions: ['vsdx'] }, + { name: 'All Files', extensions: ['*'] } + ], + properties: ['openFile'] + }); + + if (paths !== undefined && paths[0] != null) + { + localStorage.setItem('.lastOpenDir', await requestSync({action: 'dirname', path: paths[0]})); + + this.readGraphFile(fn, mxUtils.bind(this, function(err) + { + this.handleError(err); + }), paths[0]); + } + else + { + this.spinner.stop(); + } + }; + + //In order not to repeat the logic for opening a file, we collect files information here and use them in openLocalFile + var origOpenFiles = EditorUi.prototype.openFiles; + var openFilesMap = {}; + + EditorUi.prototype.openFiles = function(files, temp) + { + openFilesMap = {}; + + for (var i = 0; i < files.length; i++) + { + openFilesMap[files[i].name] = files[i]; + } + + origOpenFiles.apply(this, arguments); + }; + + App.prototype.readGraphFile = function(fn, fnErr, path, noDraftCheck) + { + var index = path.lastIndexOf('.png'); + var isPng = index > -1 && index == path.length - 4; + var isVsdx = /\.vsdx$/i.test(path) || /\.vssx$/i.test(path); + var encoding = isVsdx? null : ((isPng || /\.pdf$/i.test(path)) ? 'base64' : 'utf-8'); + var fileEntry = new Object(), stat = null; + fileEntry.path = path; + fileEntry.name = path.replace(/^.*[\\\/]/, ''); + fileEntry.type = encoding; + + var checkDrafts = mxUtils.bind(this, function() + { + if (noDraftCheck) return; + + electron.request({ + action: 'getFileDrafts', + fileObject: fileEntry + }, mxUtils.bind(this, function(drafts) + { + if (drafts.length > 0) + { + var dlg = new DraftDialog(this, mxResources.get('unsavedChanges'), + (drafts.length > 1) ? null : drafts[0].data, mxUtils.bind(this, async function(index) + { + index = index || 0; + this.hideDialog(); + fn(fileEntry, drafts[index].data, stat, null, true); + await requestSync({action: 'deleteFile', file: drafts[index].path}); + }), mxUtils.bind(this, function(index) + { + index = index || 0; + + // Discard draft + this.confirm(mxResources.get('areYouSure'), null, mxUtils.bind(this, async function() + { + await requestSync({action: 'deleteFile', file: drafts[index].path}); + this.hideDialog(); + }), mxResources.get('no'), mxResources.get('yes')); + }), null, null, null, (drafts.length > 1) ? drafts : null); + + this.showDialog(dlg.container, 640, 480, true, false); + + dlg.init(); + } + }), + mxUtils.bind(this, function(errMsg, err) + { + //TODO Currently ignored, maybe we should retry? + })); + }); + + var readData = mxUtils.bind(this, function (data) + { + // VSDX and PDF files are imported instead of being opened + if (isVsdx) + { + var name = fileEntry.name; + + this.importVisio(data, mxUtils.bind(this, function(xml) + { + var dot = name.lastIndexOf('.'); + + if (dot >= 0) + { + name = name.substring(0, name.lastIndexOf('.')) + '.drawio'; + } + else + { + name = name + '.drawio'; + } + + if (xml.substring(0, 10) == '' + mxResources.get('readOnly') + ''); + } + } + })); + + checkDrafts(); + }), function(errMsg, err) + { + fnErr(err); + }); + }); + + electron.request({ + action: 'readFile', + filename: path, + encoding: encoding + }, readData, function(errMsg, err) + { + fnErr(err); + checkDrafts(); + }); + }; + + // Disables temp files in Electron + var LocalFileCtor = LocalFile; + + LocalFile = function(ui, data, title, temp) + { + LocalFileCtor.call(this, ui, data, title, false); + }; + + mxUtils.extend(LocalFile, LocalFileCtor); + + LocalFile.prototype.getLatestVersion = function(success, error) + { + if (this.fileObject == null) + { + if (error != null) + { + error({message: mxResources.get('fileNotFound')}); + } + } + else + { + this.ui.readGraphFile(mxUtils.bind(this, function(fileEntry, data, stat, name, isModified) + { + var file = new LocalFile(this, data, ''); + file.stat = stat; + file.setModified(isModified? true : false); + success(file); + }), error, this.fileObject.path, true); + } + }; + + // Call save as for copy + LocalFile.prototype.copyFile = function(success, error) + { + this.saveAs(this.ui.getCopyFilename(this), success, error); + }; + + /** + * Adds all listeners. + */ + LocalFile.prototype.getDescriptor = function() + { + return this.stat; + }; + + /** + * Updates the descriptor of this file with the one from the given file. + */ + LocalFile.prototype.setDescriptor = function(stat) + { + this.stat = stat; + }; + + LocalFile.prototype.reloadFile = function(success) + { + if (this.fileObject == null) + { + this.ui.handleError({message: mxResources.get('fileNotFound')}); + } + else + { + this.ui.spinner.stop(); + + var fn = mxUtils.bind(this, function() + { + this.setModified(false); + var page = this.ui.currentPage; + var viewState = this.ui.editor.graph.getViewState(); + var selection = this.ui.editor.graph.getSelectionCells(); + + if (this.ui.spinner.spin(document.body, mxResources.get('loading'))) + { + this.ui.readGraphFile(mxUtils.bind(this, function(fileEntry, data, stat, name, isModified) + { + this.ui.spinner.stop(); + + var file = new LocalFile(this.ui, data, ''); + file.fileObject = fileEntry; + file.stat = stat; + file.setModified(isModified? true : false); + this.ui.fileLoaded(file); + this.ui.restoreViewState(page, viewState, selection); + + if (this.backupPatch != null) + { + this.patch([this.backupPatch]); + } + + if (success != null) + { + success(); + } + }), mxUtils.bind(this, function(err) + { + this.handleFileError(err); + }), this.fileObject.path); + } + }); + + if (this.isModified() && this.backupPatch == null) + { + this.ui.confirm(mxResources.get('allChangesLost'), mxUtils.bind(this, function() + { + this.handleFileSuccess(DrawioFile.SYNC == 'manual'); + }), fn, mxResources.get('cancel'), mxResources.get('discardChanges')); + } + else + { + fn(); + } + } + }; + + LocalFile.prototype.isAutosave = function() + { + return this.fileObject != null && DrawioFile.prototype.isAutosave.apply(this, arguments); + }; + + LocalFile.prototype.isAutosaveOptional = function() + { + return this.fileObject != null; + }; + + LocalFile.prototype.getTitle = function() + { + return (this.fileObject != null) ? this.fileObject.name : this.title; + }; + + LocalFile.prototype.isRenamable = function() + { + return false; + }; + + // Restores default implementation of open with autosave + LocalFile.prototype.open = DrawioFile.prototype.open; + var autoSaveEnabled = false; + + LocalFile.prototype.save = function(revision, success, error, unloading, overwrite) + { + DrawioFile.prototype.save.apply(this, [revision, mxUtils.bind(this, function() + { + this.saveFile(revision, mxUtils.bind(this, function() + { + //Only for first save after auto save is enabled (excluding the save as [overwrite]) + if (autoSaveEnabled && !overwrite && EditorUi.enableDrafts) + { + this.removeDraft(); + } + + autoSaveEnabled = false; + success.apply(this, arguments); + }), error, unloading, overwrite); + }), error, unloading, overwrite]); + }; + + LocalFile.prototype.isConflict = function(stat) + { + return stat != null && this.stat != null && stat.mtimeMs != this.stat.mtimeMs; + }; + + LocalFile.prototype.isEditable = function() + { + return this.editable != null? this.editable : this.ui.editor.editable; + }; + + LocalFile.prototype.setEditable = function(editable) + { + this.editable = editable; + }; + + LocalFile.prototype.getFilename = function() + { + var filename = this.title; + + // Adds default extension + if (filename.length > 0 && (!/(\.xml)$/i.test(filename) && !/(\.html)$/i.test(filename) && + !/(\.svg)$/i.test(filename) && !/(\.png)$/i.test(filename) && !/(\.drawio)$/i.test(filename))) + { + filename += '.drawio'; + } + + return filename; + }; + + // Prototype inheritance needs new functions to be added to subclasses + LocalLibrary.prototype.getFilename = LocalFile.prototype.getFilename; + + LocalFile.prototype.saveFile = async function(revision, success, error, unloading, overwrite) + { + //Safeguard in case saveFile is called from online code in the future + if (typeof success !== 'function') + { + if (typeof unloading === 'function') + { + //Call error + unloading({message: 'This is a bug, please report!'}); //Original draw.io function parameters are (title, revision, success, error, useCurrentData) + } + return; + } + + if (!this.savingFile) + { + var fn = mxUtils.bind(this, function() + { + var doSave = mxUtils.bind(this, function(data, enc) + { + var savedData = this.data; + + // Makes sure no changes get lost while the file is saved + this.setShadowModified(false); + this.savingFile = true; + + var errorWrapper = mxUtils.bind(this, function(e) + { + this.savingFile = false; + + if (error != null) + { + error(e); + } + }); + + this.unwatchedSaves = true; //Multiple saves doesn't call watch the same number, so use a boolean and check for changes + + electron.request({ + action: 'saveFile', + fileObject: this.fileObject, + defEnc: enc, + data: data, + origStat: this.stat, + overwrite: overwrite + }, mxUtils.bind(this, function(stat) + { + //No changes during the saving process? + this.setModified(this.getShadowModified()); + this.savingFile = false; + var lastDesc = this.stat; + this.stat = stat; + + this.fileSaved(savedData, lastDesc, mxUtils.bind(this, function() + { + this.contentChanged(); + + if (success != null) + { + success(); + } + }), error); + }), + mxUtils.bind(this, function(errMsg, err) + { + if (errMsg == 'empty data') + { + this.ui.handleError({message: mxResources.get('errorSavingFile')}); + errorWrapper(); + } + else if (errMsg == 'conflict') + { + this.inConflictState = true; + errorWrapper(); + } + else + { + errorWrapper(err || errMsg); + } + })); + }); + + if (!/(\.png)$/i.test(this.fileObject.name)) + { + doSave(this.getData()); + } + else + { + var p = this.ui.getPngFileProperties(this.ui.fileNode); + + this.ui.getEmbeddedPng(function(data) + { + doSave(atob(data), 'binary'); + }, error, null, p.scale, p.border); + } + }); + + if (this.fileObject == null) + { + var lastDir = localStorage.getItem('.lastSaveDir'); + var name = this.getFilename(); + var ext = null; + + if (name != null) + { + var idx = name.lastIndexOf('.'); + + if (idx > 0) + { + ext = name.substring(idx + 1); + name = name.substring(0, idx); + } + } + + var path = await requestSync({ + action: 'showSaveDialog', + defaultPath: (lastDir || (await requestSync('getDocumentsFolder'))) + '/' + name, + filters: this.ui.createFileSystemFilters(ext) + }); + + if (path != null) + { + localStorage.setItem('.lastSaveDir', await requestSync({action: 'dirname', path: path})); + this.fileObject = new Object(); + this.fileObject.path = path; + this.fileObject.name = path.replace(/^.*[\\\/]/, ''); + this.fileObject.type = 'utf-8'; + fn(); + } + else + { + this.ui.spinner.stop(); + } + } + else + { + fn(); + } + } + }; + + LocalFile.prototype.saveAs = async function(title, success, error) + { + var lastDir = localStorage.getItem('.lastSaveDir'); + var name = this.getFilename(); + var ext = null; + + if (name == '' && this.fileObject != null && this.fileObject.name != null) + { + name = this.fileObject.name; + var idx = name.lastIndexOf('.'); + + if (idx > 0) + { + ext = name.substring(idx + 1); + name = name.substring(0, idx); + } + } + + var path = await requestSync({ + action: 'showSaveDialog', + defaultPath: (lastDir || (await requestSync('getDocumentsFolder'))) + '/' + name, + filters: this.ui.createFileSystemFilters(ext) + }); + + if (path != null) + { + localStorage.setItem('.lastSaveDir', await requestSync({action: 'dirname', path: path})); + this.fileObject = new Object(); + this.fileObject.path = path; + this.fileObject.name = path.replace(/^.*[\\\/]/, ''); + this.fileObject.type = 'utf-8'; + this.setEditable(true); //In case original file is read only + this.save(false, success, error, null, true); + } + }; + + LocalFile.prototype.saveDraft = function() + { + if (this.fileObject == null) + { + //Use indexed db for unsaved files + DrawioFile.prototype.saveDraft.apply(this, arguments); + } + else + { + electron.request({ + action: 'saveDraft', + fileObject: this.fileObject, + data: this.ui.getFileData() + }, mxUtils.bind(this, function(draftFileName) + { + this.fileObject.draftFileName = draftFileName; + }), mxUtils.bind(this, function(msg, e) + { + //TODO Currently ignored, maybe we should retry? + })); + } + }; + + LocalFile.prototype.removeDraft = async function() + { + try + { + if (this.fileObject == null) + { + //Use indexed db for unsaved files + DrawioFile.prototype.removeDraft.apply(this, arguments); + } + else if (this.fileObject.draftFileName != null) + { + await requestSync({action: 'deleteFile', file: this.fileObject.draftFileName}); + } + } + catch (e) + { + // ignore + } + }; + + /** + * Loads the given file handle as a local file. + */ + App.prototype.createFileSystemFilters = function(defaultExt) + { + var ext = []; + + for (var i = 0; i < this.editor.diagramFileTypes.length; i++) + { + var obj = {name: mxResources.get(this.editor.diagramFileTypes[i].description) + + ' (.' + this.editor.diagramFileTypes[i].extension + ')', + extensions: [this.editor.diagramFileTypes[i].extension]}; + + if (this.editor.diagramFileTypes[i].extension == defaultExt) + { + ext.splice(0, 0, obj); + } + else + { + ext.push(obj); + } + } + + return ext; + }; + + /** + * Loads the given file handle as a local file. + */ + App.prototype.saveFile = function(forceDialog) + { + var file = this.getCurrentFile(); + + if (file != null) + { + if (!forceDialog && file.getTitle() != null) + { + file.save(true, mxUtils.bind(this, function() + { + if (EditorUi.enableDrafts) + { + file.removeDraft(); + } + + file.handleFileSuccess(true); + }), mxUtils.bind(this, function(err) + { + file.handleFileError(err, true); + })); + } + else + { + let oldFileObject = file.fileObject; + + file.saveAs(null, mxUtils.bind(this, function() + { + if (EditorUi.enableDrafts) + { + //Workaround to delete the correct draft as the file object is updated in place + let curFileObject = file.fileObject; + file.fileObject = oldFileObject; + file.removeDraft(); + file.fileObject = curFileObject; + } + + file.handleFileSuccess(true); + }), mxUtils.bind(this, function(err) + { + file.handleFileError(err, true); + })); + } + } + }; + + /** + * Translates this point by the given vector. + */ + App.prototype.saveLibrary = function(name, images, file, mode, noSpin, noReload, fn) + { + mode = (mode != null) ? mode : this.mode; + noSpin = (noSpin != null) ? noSpin : false; + noReload = (noReload != null) ? noReload : false; + var xml = this.createLibraryDataFromImages(images); + + var error = mxUtils.bind(this, function(resp) + { + this.spinner.stop(); + + if (fn != null) + { + fn(); + } + + // Null means cancel by user and is ignored + if (resp != null) + { + this.handleError(resp, mxResources.get('errorSavingFile')); + } + }); + + // Handles special case for local libraries + if (file == null) + { + file = new LocalLibrary(this, xml, name); + } + + if (noSpin || this.spinner.spin(document.body, mxResources.get('saving'))) + { + file.setData(xml); + + var doSave = mxUtils.bind(this, function() + { + file.save(true, mxUtils.bind(this, function(resp) + { + this.spinner.stop(); + this.hideDialog(true); + + if (!noReload) + { + this.libraryLoaded(file, images) + } + + if (fn != null) + { + fn(); + } + }), error); + }); + + if (name != file.getTitle()) + { + var oldHash = file.getHash(); + + file.rename(name, mxUtils.bind(this, function(resp) + { + // Change hash in stored settings + if (file.constructor != LocalLibrary && oldHash != file.getHash()) + { + mxSettings.removeCustomLibrary(oldHash); + mxSettings.addCustomLibrary(file.getHash()); + } + + // Workaround for library files changing hash so + // the old library cannot be removed from the + // sidebar using the updated file in libraryLoaded + this.removeLibrarySidebar(oldHash); + + doSave(); + }), error) + } + else + { + doSave(); + } + } + }; + + App.prototype.checkForUpdates = function() + { + electron.sendMessage('checkForUpdates'); + } + + App.prototype.toggleSpellCheck = function() + { + electron.sendMessage('toggleSpellCheck'); + } + + var origUpdateHeader = App.prototype.updateHeader; + + App.prototype.updateHeader = function() + { + origUpdateHeader.apply(this, arguments); + + if (urlParams['winCtrls'] != '1') + { + return; + } + + document.querySelectorAll('.geStatus').forEach(i => i.style.webkitAppRegion = 'no-drag'); + var menubarContainer = document.querySelector('.geMenubarContainer'); + + if (urlParams['sketch'] == '1') + { + menubarContainer = this.titlebar; + } + + menubarContainer.style.webkitAppRegion = 'drag'; + + //Add window control buttons + this.windowControls = document.createElement('div'); + this.windowControls.id = 'geWindow-controls'; + this.windowControls.innerHTML = + '
' + + ' ' + + ' ' + + ' ' + + '
' + + '
' + + ' ' + + ' ' + + ' ' + + '
' + + '
' + + ' ' + + ' ' + + ' ' + + '
' + + '
' + + ' ' + + ' ' + + ' ' + + '
'; + + if (uiTheme == 'atlas') + { + this.windowControls.style.top = '9px'; + } + else if (urlParams['sketch'] == '1') + { + this.windowControls.style.top = '-1px'; + } + + menubarContainer.appendChild(this.windowControls); + + var handleDarkModeChange = mxUtils.bind(this, function () + { + if (uiTheme == 'atlas' || Editor.isDarkMode()) + { + this.windowControls.style.fill = 'white'; + document.querySelectorAll('#geWindow-controls .button').forEach(b => b.className = 'button dark'); + } + else + { + this.windowControls.style.fill = '#999'; + document.querySelectorAll('#geWindow-controls .button').forEach(b => b.className = 'button white'); + } + }); + + handleDarkModeChange(); + this.addListener('darkModeChanged', handleDarkModeChange); + + if (this.appIcon != null) + { + this.appIcon.style.webkitAppRegion = 'no-drag'; + } + + if (this.menubar != null) + { + this.menubar.container.style.webkitAppRegion = 'no-drag'; + + if (uiTheme == 'atlas') + { + this.menubar.container.style.width = 'fit-content'; + } + + if (this.menubar.langIcon != null) + { + this.menubar.langIcon.parentNode.removeChild(this.menubar.langIcon); + menubarContainer.appendChild(this.menubar.langIcon); + } + } + + window.onbeforeunload = async (event) => { + /* If window is reloaded, remove win event listeners + (DOM element listeners get auto garbage collected but not + Electron win listeners as the win is not dereferenced unless closed) */ + await requestSync({action: 'windowAction', method: 'removeAllListeners'}); + } + + // Make minimise/maximise/restore/close buttons work when they are clicked + document.getElementById('min-button').addEventListener("click", async event => { + await requestSync({action: 'windowAction', method: 'minimize'}); + }); + + document.getElementById('max-button').addEventListener("click", async event => { + await requestSync({action: 'windowAction', method: 'maximize'}); + }); + + document.getElementById('restore-button').addEventListener("click", async event => { + await requestSync({action: 'windowAction', method: 'unmaximize'}); + }); + + document.getElementById('close-button').addEventListener("click", async event => { + await requestSync({action: 'windowAction', method: 'close'}); + }); + + // Toggle maximise/restore buttons when maximisation/unmaximisation occurs + toggleMaxRestoreButtons(); + electron.registerMsgListener('maximize', toggleMaxRestoreButtons) + electron.registerMsgListener('unmaximize', toggleMaxRestoreButtons) + electron.registerMsgListener('resize', toggleMaxRestoreButtons) + + async function toggleMaxRestoreButtons() { + if (await requestSync({action: 'windowAction', method: 'isMaximized'})) { + document.body.classList.add('geMaximized'); + } else { + document.body.classList.remove('geMaximized'); + } + } + } + + var origUpdateDocumentTitle = App.prototype.updateDocumentTitle; + + App.prototype.updateDocumentTitle = function() + { + origUpdateDocumentTitle.apply(this, arguments); + + if (this.titlebar != null && this.titlebar.firstChild != null) + { + this.titlebar.firstChild.innerHTML = mxUtils.htmlEntities(document.title); + } + }; + /** + * Copies the given cells and XML to the clipboard as an embedded image. + */ + EditorUi.prototype.writeImageToClipboard = async function(dataUrl, w, h, error) + { + try + { + await requestSync({ + action: 'clipboardAction', + method: 'writeImage', + data: {dataUrl: dataUrl, w: w, h: h} + }); + } + catch (e) + { + error(e); + } + }; + + /** + * Updates action states depending on the selection. + */ + var editorUiUpdateActionStates = EditorUi.prototype.updateActionStates; + EditorUi.prototype.updateActionStates = function() + { + editorUiUpdateActionStates.apply(this, arguments); + + var file = this.getCurrentFile(); + var syncEnabled = file != null && file.fileObject != null; + this.actions.get('synchronize').setEnabled(syncEnabled); + }; + + EditorUi.prototype.saveLocalFile = function(data, filename, mimeType, base64Encoded, format, allowBrowser) + { + this.saveData(filename, format, data, mimeType, base64Encoded); + }; + + EditorUi.prototype.saveRequest = function(filename, format, fn, data, base64Encoded, mimeType) + { + var xhr = fn(null, '1'); + + if (xhr != null && this.spinner.spin(document.body, mxResources.get('saving'))) + { + xhr.send(mxUtils.bind(this, function() + { + this.spinner.stop(); + + if (xhr.getStatus() >= 200 && xhr.getStatus() <= 299) + { + this.saveData(filename, format, xhr.getText(), mimeType, true); + } + else + { + this.handleError({message: mxResources.get('errorSavingFile')}); + } + }), mxUtils.bind(this, function(resp) + { + this.spinner.stop(); + this.handleError(resp); + })); + } + }; + + function mxElectronRequest(reqType, reqObj) + { + this.reqType = reqType; + this.reqObj = reqObj; + }; + + //Extends mxXmlRequest + mxUtils.extend(mxElectronRequest, mxXmlRequest); + + mxElectronRequest.prototype.send = function(callback, error) + { + electron.sendMessage(this.reqType, this.reqObj); + + electron.listenOnce(this.reqType + '-success', (data) => + { + this.response = data; + callback(); + electron.sendMessage(this.reqType + '-finalize'); + }) + + electron.listenOnce(this.reqType + '-error', (err) => + { + this.hasError = true; + error(err); + electron.sendMessage(this.reqType + '-finalize'); + }) + }; + + mxElectronRequest.prototype.getStatus = function() + { + return this.hasError? 500 : 200; + } + + mxElectronRequest.prototype.getText = function() + { + return this.response; + } + + //Direct export to pdf + EditorUi.prototype.createDownloadRequest = function(filename, format, ignoreSelection, base64, transparent, + currentPage, scale, border, grid, includeXml) + { + var graph = this.editor.graph; + var bounds = graph.getGraphBounds(); + + // Exports only current page for images that does not contain file data, but for + // the other formats with XML included or pdf with all pages, we need to send the complete data and use + // the from/to URL parameters to specify the page to be exported. + var data = this.getFileData(true, null, null, null, ignoreSelection, currentPage == false? false : format != 'xmlpng'); + var range = null; + var allPages = null; + + var embed = (includeXml) ? '1' : '0'; + + if (format == 'pdf' && currentPage == false) + { + allPages = '1'; + } + + if (format == 'xmlpng') + { + embed = '1'; + format = 'png'; + + // Finds the current page number + if (this.pages != null && this.currentPage != null) + { + for (var i = 0; i < this.pages.length; i++) + { + if (this.pages[i] == this.currentPage) + { + range = i; + break; + } + } + } + } + + var bg = graph.background; + + if (format == 'png' && transparent) + { + bg = mxConstants.NONE; + } + else if (!transparent && (bg == null || bg == mxConstants.NONE)) + { + bg = '#ffffff'; + } + + var extras = {globalVars: graph.getExportVariables()}; + + if (grid) + { + extras.grid = { + size: graph.gridSize, + steps: graph.view.gridSteps, + color: graph.view.gridColor + }; + } + + return new mxElectronRequest('export', { + format: format, + xml: data, + from: range, + bg: (bg != null) ? bg : mxConstants.NONE, + filename: (filename != null) ? filename : null, + allPages: allPages, + base64: base64, + embedXml: embed, + extras: encodeURIComponent(JSON.stringify(extras)), + scale: scale, + border: border + }); + }; + + var origSetAutosave = Editor.prototype.setAutosave; + + Editor.prototype.setAutosave = function(value) + { + autoSaveEnabled = value; + return origSetAutosave.apply(this, arguments); + } + + //Export Dialog Pdf case + var origExportFile = ExportDialog.exportFile; + + ExportDialog.exportFile = function(editorUi, name, format, bg, s, b, dpi) + { + var graph = editorUi.editor.graph; + + if (format == 'xml' || format == 'svg') + { + return origExportFile.apply(this, arguments); + } + else + { + var data = editorUi.getFileData(true, null, null, null, null, true); + var bounds = graph.getGraphBounds(); + var w = Math.floor(bounds.width * s / graph.view.scale); + var h = Math.floor(bounds.height * s / graph.view.scale); + + editorUi.hideDialog(); + + if ((format == 'png' || format == 'jpg' || format == 'jpeg') && editorUi.isExportToCanvas()) + { + if (format == 'png') + { + editorUi.exportImage(s, bg == null || bg == 'none', true, + false, false, b, true, false, null, null, dpi); + } + else + { + editorUi.exportImage(s, false, true, + false, false, b, true, false, 'jpeg'); + } + } + else + { + var extras = {globalVars: graph.getExportVariables()}; + + editorUi.saveRequest(name, format, + function(newTitle, base64) + { + return new mxElectronRequest('export', { + format: format, + xml: data, + bg: (bg != null) ? bg : mxConstants.NONE, + filename: (newTitle != null) ? newTitle : null, + w: w, + h: h, + border: b, + base64: (base64 || '0'), + extras: JSON.stringify(extras), + dpi: dpi > 0? dpi : null + }); + }); + } + } + }; + + EditorUi.prototype.saveData = async function(filename, format, data, mimeType, base64Encoded) + { + var resume = (this.spinner != null && this.spinner.pause != null) ? this.spinner.pause() : function() {}; + var lastDir = localStorage.getItem('.lastExpDir'); + + // Spinner.stop is asynchronous so we must invoke save dialog asynchronously + // to give the spinner some time to stop spinning + window.setTimeout(mxUtils.bind(this, async function() + { + var dlgConfig = { + action: 'showSaveDialog', + defaultPath: (lastDir || (await requestSync('getDocumentsFolder'))) + '/' + filename + }; + var filters = null; + + switch (format) + { + case 'xmlpng': + case 'png': + filters = [ + { name: 'PNG Images', extensions: ['png'] } + ]; + break; + case 'jpg': + case 'jpeg': + filters = [ + { name: 'JPEG Images', extensions: ['jpg', 'jpeg'] } + ]; + break; + case 'svg': + filters = [ + { name: 'SVG Images', extensions: ['svg'] } + ]; + break; + case 'pdf': + filters = [ + { name: 'PDF Documents', extensions: ['pdf'] } + ]; + break; + case 'vsdx': + filters = [ + { name: 'VSDX Documents', extensions: ['vsdx'] } + ]; + break; + case 'html': + filters = [ + { name: 'HTML Documents', extensions: ['html'] } + ]; + break; + case 'xml': + filters = [ + { name: 'XML Documents', extensions: ['xml'] } + ]; + break; + }; + + dlgConfig['filters'] = filters; + //showSaveDialog + var path = await requestSync(dlgConfig); + + if (path != null) + { + localStorage.setItem('.lastExpDir', await requestSync({action: 'dirname', path: path})); + + if (data == null || data.length == 0) + { + this.handleError({message: mxResources.get('errorSavingFile')}); + } + else + { + resume(); + + electron.request({ + action: 'writeFile', + path: path, + data: data, + enc: (base64Encoded) ? 'base64' : 'utf-8' + }, mxUtils.bind(this, function () + { + this.spinner.stop(); + }), mxUtils.bind(this, function () + { + this.spinner.stop(); + this.handleError({message: mxResources.get('errorSavingFile')}); + })); + } + } + }), 50); + }; + + EditorUi.prototype.addBeforeUnloadListener = function() {}; + + EditorUi.prototype.loadDesktopLib = function(libPath, success, error) + { + this.readGraphFile(mxUtils.bind(this, function(fileEntry, data, stat) + { + var library = new DesktopLibrary(this, data, fileEntry); + this.loadLibrary(library); + success(library); + }), error, libPath); + }; +})(); diff --git a/docker/php/php.conf b/docker/php/php.conf index 74f52c2d1..14a4861a6 100644 --- a/docker/php/php.conf +++ b/docker/php/php.conf @@ -10,7 +10,7 @@ command=php bin/laravels start -i numprocs=1 autostart=true autorestart=true -startretries=3 +startretries=100 user=root redirect_stderr=true stdout_logfile=/var/log/supervisor/%(program_name)s.log diff --git a/electron/electron-preload.js b/electron/electron-preload.js new file mode 100644 index 000000000..44f4b252d --- /dev/null +++ b/electron/electron-preload.js @@ -0,0 +1,67 @@ +const { + contextBridge, + ipcRenderer +} = require("electron"); + +let reqId = 1; +let reqInfo = {}; +let fileChangedListeners = {}; + +ipcRenderer.on('mainResp', (event, resp) => { + let callbacks = reqInfo[resp.reqId]; + + if (resp.error) { + callbacks.error(resp.msg, resp.e); + } else { + callbacks.callback(resp.data); + } + + delete reqInfo[resp.reqId]; +}); + +ipcRenderer.on('fileChanged', (event, resp) => { + let listener = fileChangedListeners[resp.path]; + + if (listener) { + listener(resp.curr, resp.prev); + } +}); + +contextBridge.exposeInMainWorld( + 'electron', { + request: (msg, callback, error) => { + msg.reqId = reqId++; + reqInfo[msg.reqId] = {callback: callback, error: error}; + + if (msg.action == 'watchFile') { + fileChangedListeners[msg.path] = msg.listener; + delete msg.listener; + } + + ipcRenderer.send('rendererReq', msg); + }, + registerMsgListener: (action, callback) => { + ipcRenderer.on(action, (event, args) => { + callback(args); + }); + }, + listenOnce: (action, callback) => { + ipcRenderer.once(action, (event, args) => { + callback(args); + }); + }, + sendMessage: (action, args) => { + ipcRenderer.send(action, args); + }, + sendSyncMessage: (action, args) => { + ipcRenderer.sendSync(action, args); + } + } +); + +contextBridge.exposeInMainWorld( + 'process', { + type: process.type, + versions: process.versions + } +); diff --git a/electron/electron.js b/electron/electron.js new file mode 100644 index 000000000..26f83b118 --- /dev/null +++ b/electron/electron.js @@ -0,0 +1,1201 @@ +const fs = require('fs') +const fse = require('fs-extra') +const os = require("os"); +const path = require('path') +const {app, BrowserWindow, ipcMain, dialog, clipboard, nativeImage, shell} = require('electron') +const log = require("electron-log"); +const fsProm = require('fs/promises'); +const PDFDocument = require('pdf-lib').PDFDocument; +const crc = require('crc'); +const zlib = require('zlib'); +const utils = require('./utils'); +const config = require('./package.json'); + +let mainWindow = null, + subWindow = [], + willQuitApp = false, + devloadUrl = "", + devloadCachePath = path.resolve(__dirname, ".devload"), + downloadList = [], + downloadCacheFile = path.join(app.getPath('cache'), config.name, '.downloadCache'); + +if (fs.existsSync(devloadCachePath)) { + devloadUrl = fs.readFileSync(devloadCachePath, 'utf8') +} + +if (fs.existsSync(downloadCacheFile)) { + downloadList = utils.jsonParse(fs.readFileSync(downloadCacheFile, 'utf8'), []) +} else { + fse.ensureDirSync(path.join(app.getPath('cache'), config.name)) +} + +function downloadUpdate(item) { + const chain = item.getURLChain() + if (chain.length == 0) { + return + } + let currentState = item.getState() + if (currentState == "progressing" && item.isPaused()) { + currentState = "paused" + } + // + const downloadItem = downloadList.find(item => item.url == chain[0]) + if (downloadItem && downloadItem.state != currentState) { + downloadItem.state = currentState; + downloadItem.result = { + url: item.getURL(), + name: item.getFilename(), + savePath: item.getSavePath(), + mimeType: item.getMimeType(), + totalBytes: item.getTotalBytes(), + chain, + }; + fs.writeFileSync(downloadCacheFile, utils.jsonStringify(downloadList), 'utf8'); + // + if (currentState == 'completed') { + mainWindow.webContents.send("downloadDone", downloadItem) + log.info("下载完成", downloadItem) + } else { + mainWindow.webContents.send("downloadUpdate", downloadItem) + log.info("下载更新", downloadItem) + } + } +} + +function createMainWindow() { + mainWindow = new BrowserWindow({ + width: 1280, + height: 800, + center: true, + autoHideMenuBar: true, + webPreferences: { + preload: path.join(__dirname, 'electron-preload.js'), + webSecurity: true, + nodeIntegration: true, + nodeIntegrationInSubFrames: true, + contextIsolation: true, + nativeWindowOpen: true + } + }) + mainWindow.webContents.setUserAgent(mainWindow.webContents.getUserAgent() + " MainTaskWindow/" + process.platform + "/" + os.arch() + "/1.0"); + + if (devloadUrl) { + mainWindow.loadURL(devloadUrl).then(r => { + + }) + } else { + mainWindow.loadFile('./public/index.html').then(r => { + + }) + } + + mainWindow.on('page-title-updated', (event, title) => { + if (title == "index.html") { + event.preventDefault() + } + }) + + mainWindow.on('close', event => { + if (!willQuitApp) { + utils.onBeforeUnload(event, app) + } + }) + + mainWindow.webContents.session.on('will-download', (event, item) => { + item.setSavePath(path.join(app.getPath('cache'), config.name, item.getFilename())); + item.on('updated', () => { + downloadUpdate(item) + }) + item.on('done', () => { + downloadUpdate(item) + }) + }) +} + +/** + * @param args {path, hash, title, titleFixed, force, userAgent, config, webPreferences} + */ +function createSubWindow(args) { + if (!args) { + return; + } + + if (!utils.isJson(args)) { + args = {path: args, config: {}} + } + + let name = args.name || "auto_" + utils.randomString(6); + let item = subWindow.find(item => item.name == name); + let browser = item ? item.browser : null; + if (browser) { + browser.focus(); + if (args.force === false) { + return; + } + } else { + let config = args.config || {}; + let webPreferences = args.webPreferences || {}; + browser = new BrowserWindow(Object.assign({ + width: 1280, + height: 800, + center: true, + parent: mainWindow, + autoHideMenuBar: true, + webPreferences: Object.assign({ + preload: path.join(__dirname, 'electron-preload.js'), + webSecurity: true, + nodeIntegration: true, + nodeIntegrationInSubFrames: true, + contextIsolation: true, + nativeWindowOpen: true + }, webPreferences), + }, config)) + + browser.on('page-title-updated', (event, title) => { + if (title == "index.html" || config.titleFixed === true) { + event.preventDefault() + } + }) + + browser.on('close', event => { + utils.onBeforeUnload(event) + }) + + browser.on('closed', () => { + let index = subWindow.findIndex(item => item.name == name); + if (index > -1) { + subWindow.splice(index, 1) + } + }) + + subWindow.push({ name, browser }) + } + browser.webContents.setUserAgent(browser.webContents.getUserAgent() + " SubTaskWindow/" + process.platform + "/" + os.arch() + "/1.0" + (args.userAgent ? (" " + args.userAgent) : "")); + + if (devloadUrl) { + browser.loadURL(devloadUrl + '#' + (args.hash || args.path)).then(r => { + + }) + } else { + browser.loadFile('./public/index.html', { + hash: args.hash || args.path + }).then(r => { + + }) + } +} + +app.whenReady().then(() => { + createMainWindow() + + app.on('activate', () => { + if (BrowserWindow.getAllWindows().length === 0) createMainWindow() + }) +}) + +app.on('window-all-closed', () => { + if (process.platform !== 'darwin') { + app.quit() + } +}) + +app.on('before-quit', () => { + willQuitApp = true +}) + +/** + * 下载文件 + * @param args {url} + */ +ipcMain.on('downloadFile', (event, args) => { + event.returnValue = "ok" + // + let appendJson = {state: "progressing", startTime: utils.Time()} + let downloadItem = downloadList.find(({url}) => url == args.url) + if (downloadItem) { + switch (downloadItem.state) { + case "completed": + if (fs.existsSync(downloadItem.result.savePath)) { // 下载完成,文件存在 + log.info("下载已完成", downloadItem) + mainWindow.webContents.send("downloadDone", downloadItem) + return + } + break; + case "progressing": + if (downloadItem.startTime + 480 > utils.Time()) { // 下载中,未超时(超时时间8分钟) + log.info("下载已存在", downloadItem) + return; + } + break; + } + downloadItem = Object.assign(downloadItem, appendJson) + } else { + downloadList.push(downloadItem = Object.assign(args, appendJson)) + } + fs.writeFileSync(downloadCacheFile, utils.jsonStringify(downloadList), 'utf8'); + mainWindow.webContents.downloadURL(downloadItem.url); + log.info("下载开始", downloadItem) +}) + +/** + * 打开文件 + * @param args {path} + */ +ipcMain.on('openFile', (event, args) => { + utils.openFile(args.path) + event.returnValue = "ok" +}) + +/** + * 退出客户端 + */ +ipcMain.on('windowQuit', (event) => { + event.returnValue = "ok" + app.quit(); +}) + +/** + * 创建路由窗口 + * @param args {path, ?} + */ +ipcMain.on('windowRouter', (event, args) => { + createSubWindow(args) + event.returnValue = "ok" +}) + +/** + * 隐藏窗口(mac隐藏,其他关闭) + */ +ipcMain.on('windowHidden', (event) => { + if (process.platform === 'darwin') { + app.hide(); + } else { + app.quit(); + } + event.returnValue = "ok" +}) + +/** + * 关闭窗口 + */ +ipcMain.on('windowClose', (event) => { + const win = BrowserWindow.fromWebContents(event.sender); + win.close() + event.returnValue = "ok" +}) + +/** + * 关闭窗口(强制) + */ +ipcMain.on('windowDestroy', (event) => { + const win = BrowserWindow.fromWebContents(event.sender); + win.destroy() + event.returnValue = "ok" +}) + +/** + * 设置窗口尺寸 + * @param args {width, height, autoZoom, minWidth, minHeight, maxWidth, maxHeight} + */ +ipcMain.on('windowSize', (event, args) => { + const win = BrowserWindow.fromWebContents(event.sender); + if (win) { + if (args.width || args.height) { + let [w, h] = win.getSize() + const width = args.width || w + const height = args.height || h + win.setSize(width, height, args.animate === true) + // + if (args.autoZoom === true) { + let move = false + let [x, y] = win.getPosition() + if (Math.abs(width - w) > 10) { + move = true + x -= (width - w) / 2 + } + if (Math.abs(height - h) > 10) { + move = true + y -= (height - h) / 2 + } + if (move) { + win.setPosition(Math.max(0, Math.floor(x)), Math.max(0, Math.floor(y))) + } + } + } + if (args.minWidth || args.minHeight) { + win.setMinimumSize(args.minWidth || win.getMinimumSize()[0], args.minHeight || win.getMinimumSize()[1]) + } + if (args.maxWidth || args.maxHeight) { + win.setMaximumSize(args.maxWidth || win.getMaximumSize()[0], args.maxHeight || win.getMaximumSize()[1]) + } + } + event.returnValue = "ok" +}) + +/** + * 设置窗口最小尺寸 + * @param args {minWidth, minHeight} + */ +ipcMain.on('windowMinSize', (event, args) => { + const win = BrowserWindow.fromWebContents(event.sender); + if (win) { + win.setMinimumSize(args.minWidth || win.getMinimumSize()[0], args.minHeight || win.getMinimumSize()[1]) + } + event.returnValue = "ok" +}) + +/** + * 设置窗口最大尺寸 + * @param args {maxWidth, maxHeight} + */ +ipcMain.on('windowMaxSize', (event, args) => { + const win = BrowserWindow.fromWebContents(event.sender); + if (win) { + win.setMaximumSize(args.maxWidth || win.getMaximumSize()[0], args.maxHeight || win.getMaximumSize()[1]) + } + event.returnValue = "ok" +}) + +/** + * 窗口居中 + */ +ipcMain.on('windowCenter', (event) => { + const win = BrowserWindow.fromWebContents(event.sender); + if (win) { + win.center(); + } + event.returnValue = "ok" +}) + +/** + * 窗口最大化或恢复 + */ +ipcMain.on('windowMax', (event) => { + const win = BrowserWindow.fromWebContents(event.sender); + if (win.isMaximized()) { + win.restore(); + } else { + win.maximize(); + } + event.returnValue = "ok" +}) + +/** + * 给主窗口发送信息 + * @param args {channel, data} + */ +ipcMain.on('sendForwardMain', (event, args) => { + if (mainWindow) { + mainWindow.webContents.send(args.channel, args.data) + } + event.returnValue = "ok" +}) + +/** + * 设置Dock标记 + * @param args + */ +ipcMain.on('setDockBadge', (event, args) => { + if(process.platform !== 'darwin'){ + // Mac only + return; + } + if (utils.runNum(args) > 0) { + app.dock.setBadge(String(args)) + } else { + app.dock.setBadge("") + } + event.returnValue = "ok" +}) + +//================================================================ +// Pdf export +//================================================================ + +const MICRON_TO_PIXEL = 264.58 //264.58 micron = 1 pixel +const PNG_CHUNK_IDAT = 1229209940; +const LARGE_IMAGE_AREA = 30000000; + +//NOTE: Key length must not be longer than 79 bytes (not checked) +function writePngWithText(origBuff, key, text, compressed, base64encoded) { + let isDpi = key == 'dpi'; + let inOffset = 0; + let outOffset = 0; + let data = text; + let dataLen = isDpi ? 9 : key.length + data.length + 1; //we add 1 zeros with non-compressed data, for pHYs it's 2 of 4-byte-int + 1 byte + + //prepare compressed data to get its size + if (compressed) { + data = zlib.deflateRawSync(encodeURIComponent(text)); + dataLen = key.length + data.length + 2; //we add 2 zeros with compressed data + } + + let outBuff = Buffer.allocUnsafe(origBuff.length + dataLen + 4); //4 is the header size "zTXt", "tEXt" or "pHYs" + + try { + let magic1 = origBuff.readUInt32BE(inOffset); + inOffset += 4; + let magic2 = origBuff.readUInt32BE(inOffset); + inOffset += 4; + + if (magic1 != 0x89504e47 && magic2 != 0x0d0a1a0a) { + throw new Error("PNGImageDecoder0"); + } + + outBuff.writeUInt32BE(magic1, outOffset); + outOffset += 4; + outBuff.writeUInt32BE(magic2, outOffset); + outOffset += 4; + } catch (e) { + log.error(e.message, {stack: e.stack}); + throw new Error("PNGImageDecoder1"); + } + + try { + while (inOffset < origBuff.length) { + let length = origBuff.readInt32BE(inOffset); + inOffset += 4; + let type = origBuff.readInt32BE(inOffset) + inOffset += 4; + + if (type == PNG_CHUNK_IDAT) { + // Insert zTXt chunk before IDAT chunk + outBuff.writeInt32BE(dataLen, outOffset); + outOffset += 4; + + let typeSignature = isDpi ? 'pHYs' : (compressed ? "zTXt" : "tEXt"); + outBuff.write(typeSignature, outOffset); + + outOffset += 4; + + if (isDpi) { + let dpm = Math.round(parseInt(text) / 0.0254) || 3937; //One inch is equal to exactly 0.0254 meters. 3937 is 100dpi + + outBuff.writeInt32BE(dpm, outOffset); + outBuff.writeInt32BE(dpm, outOffset + 4); + outBuff.writeInt8(1, outOffset + 8); + outOffset += 9; + + data = Buffer.allocUnsafe(9); + data.writeInt32BE(dpm, 0); + data.writeInt32BE(dpm, 4); + data.writeInt8(1, 8); + } else { + outBuff.write(key, outOffset); + outOffset += key.length; + outBuff.writeInt8(0, outOffset); + outOffset++; + + if (compressed) { + outBuff.writeInt8(0, outOffset); + outOffset++; + data.copy(outBuff, outOffset); + } else { + outBuff.write(data, outOffset); + } + + outOffset += data.length; + } + + let crcVal = 0xffffffff; + crcVal = crc.crcjam(typeSignature, crcVal); + crcVal = crc.crcjam(data, crcVal); + + // CRC + outBuff.writeInt32BE(crcVal ^ 0xffffffff, outOffset); + outOffset += 4; + + // Writes the IDAT chunk after the zTXt + outBuff.writeInt32BE(length, outOffset); + outOffset += 4; + outBuff.writeInt32BE(type, outOffset); + outOffset += 4; + + origBuff.copy(outBuff, outOffset, inOffset); + + // Encodes the buffer using base64 if requested + return base64encoded ? outBuff.toString('base64') : outBuff; + } + + outBuff.writeInt32BE(length, outOffset); + outOffset += 4; + outBuff.writeInt32BE(type, outOffset); + outOffset += 4; + + origBuff.copy(outBuff, outOffset, inOffset, inOffset + length + 4);// +4 to move past the crc + + inOffset += length + 4; + outOffset += length + 4; + } + } catch (e) { + log.error(e.message, {stack: e.stack}); + throw e; + } +} + +//TODO Create a lightweight html file similar to export3.html for exporting to vsdx +function exportVsdx(event, args, directFinalize) { + + let win = new BrowserWindow({ + width: 1280, + height: 800, + show: false, + webPreferences: { + preload: path.join(__dirname, 'electron-preload.js'), + webSecurity: true, + nodeIntegration: true, + contextIsolation: true, + nativeWindowOpen: true + }, + }) + + let loadEvtCount = 0; + + function loadFinished() { + loadEvtCount++; + + if (loadEvtCount == 2) { + win.webContents.send('export-vsdx', args); + + ipcMain.once('export-vsdx-finished', (evt, data) => { + let hasError = false; + + if (data == null) { + hasError = true; + } + + //Set finalize here since it is call in the reply below + function finalize() { + win.destroy(); + } + + if (directFinalize === true) { + event.finalize = finalize; + } else { + //Destroy the window after response being received by caller + ipcMain.once('export-finalize', finalize); + } + + if (hasError) { + event.reply('export-error'); + } else { + event.reply('export-success', data); + } + }); + } + } + + //Order of these two events is not guaranteed, so wait for them async. + //TOOD There is still a chance we catch another window 'app-load-finished' if user created multiple windows quickly + ipcMain.once('app-load-finished', loadFinished); + win.webContents.on('did-finish-load', loadFinished); +} + +async function mergePdfs(pdfFiles, xml) { + //Pass throgh single files + if (pdfFiles.length == 1 && xml == null) { + return pdfFiles[0]; + } + + try { + const pdfDoc = await PDFDocument.create(); + pdfDoc.setCreator(config.name); + + if (xml != null) { + //Embed diagram XML as file attachment + await pdfDoc.attach(Buffer.from(xml).toString('base64'), config.name + '.xml', { + mimeType: 'application/vnd.jgraph.mxfile', + description: config.name + ' Content' + }); + } + + for (let i = 0; i < pdfFiles.length; i++) { + const pdfFile = await PDFDocument.load(pdfFiles[i].buffer); + const pages = await pdfDoc.copyPages(pdfFile, pdfFile.getPageIndices()); + pages.forEach(p => pdfDoc.addPage(p)); + } + + const pdfBytes = await pdfDoc.save(); + return Buffer.from(pdfBytes); + } catch (e) { + throw new Error('Error during PDF combination: ' + e.message); + } +} + +//TODO Use canvas to export images if math is not used to speedup export (no capturePage). Requires change to export3.html also +function exportDiagram(event, args, directFinalize) { + if (args.format == 'vsdx') { + exportVsdx(event, args, directFinalize); + return; + } + + let browser = null; + + try { + browser = new BrowserWindow({ + webPreferences: { + preload: path.join(__dirname, 'electron-preload.js'), + backgroundThrottling: false, + contextIsolation: true, + nativeWindowOpen: true + }, + show: false, + frame: false, + enableLargerThanScreen: true, + transparent: args.format == 'png' && (args.bg == null || args.bg == 'none'), + }); + + browser.loadURL(`file://${__dirname}/export3.html`); + + const contents = browser.webContents; + let pageByPage = (args.format == 'pdf' && !args.print), from, to, pdfs; + + if (pageByPage) { + from = args.allPages ? 0 : parseInt(args.from || 0); + to = args.allPages ? 1000 : parseInt(args.to || 1000) + 1; //The 'to' will be corrected later + pdfs = []; + + args.from = from; + args.to = from; + args.allPages = false; + } + + contents.on('did-finish-load', function () { + //Set finalize here since it is call in the reply below + function finalize() { + browser.destroy(); + } + + if (directFinalize === true) { + event.finalize = finalize; + } else { + //Destroy the window after response being received by caller + ipcMain.once('export-finalize', finalize); + } + + function renderingFinishHandler(evt, renderInfo) { + if (renderInfo == null) { + event.reply('export-error'); + return; + } + + let pageCount = renderInfo.pageCount, bounds = null; + //For some reason, Electron 9 doesn't send this object as is without stringifying. Usually when variable is external to function own scope + try { + bounds = JSON.parse(renderInfo.bounds); + } catch (e) { + bounds = null; + } + + let pdfOptions = {pageSize: 'A4'}; + let hasError = false; + + if (bounds == null || bounds.width < 5 || bounds.height < 5) //very small page size never return from printToPDF + { + //A workaround to detect errors in the input file or being empty file + hasError = true; + } else { + //Chrome generates Pdf files larger than requested pixels size and requires scaling + let fixingScale = 0.959; + + let w = Math.ceil(bounds.width * fixingScale); + + // +0.1 fixes cases where adding 1px below is not enough + // Increase this if more cropped PDFs have extra empty pages + let h = Math.ceil(bounds.height * fixingScale + 0.1); + + pdfOptions = { + printBackground: true, + pageSize: { + width: w * MICRON_TO_PIXEL, + height: (h + 2) * MICRON_TO_PIXEL //the extra 2 pixels to prevent adding an extra empty page + }, + marginsType: 1 // no margin + } + } + + let base64encoded = args.base64 == '1'; + + if (hasError) { + event.reply('export-error'); + } else if (args.format == 'png' || args.format == 'jpg' || args.format == 'jpeg') { + //Adds an extra pixel to prevent scrollbars from showing + let newBounds = { + width: Math.ceil(bounds.width + bounds.x) + 1, + height: Math.ceil(bounds.height + bounds.y) + 1 + }; + browser.setBounds(newBounds); + + //TODO The browser takes sometime to show the graph (also after resize it takes some time to render) + // 1 sec is most probably enough (for small images, 5 for large ones) BUT not a stable solution + setTimeout(function () { + browser.capturePage().then(function (img) { + //Image is double the given bounds, so resize is needed! + let tScale = 1; + + //If user defined width and/or height, enforce it precisely here. Height override width + if (args.h) { + tScale = args.h / newBounds.height; + } else if (args.w) { + tScale = args.w / newBounds.width; + } + + newBounds.width *= tScale; + newBounds.height *= tScale; + img = img.resize(newBounds); + + let data = args.format == 'png' ? img.toPNG() : img.toJPEG(args.jpegQuality || 90); + + if (args.dpi != null && args.format == 'png') { + data = writePngWithText(data, 'dpi', args.dpi); + } + + if (args.embedXml == "1" && args.format == 'png') { + data = writePngWithText(data, "mxGraphModel", args.xml, true, + base64encoded); + } else { + if (base64encoded) { + data = data.toString('base64'); + } + } + + event.reply('export-success', data); + }); + }, bounds.width * bounds.height < LARGE_IMAGE_AREA ? 1000 : 5000); + } else if (args.format == 'pdf') { + if (args.print) { + pdfOptions = { + scaleFactor: args.pageScale, + printBackground: true, + pageSize: { + width: args.pageWidth * MICRON_TO_PIXEL, + //This height adjustment fixes the output. TODO Test more cases + height: (args.pageHeight * 1.025) * MICRON_TO_PIXEL + }, + marginsType: 1 // no margin + }; + + contents.print(pdfOptions, (success, errorType) => { + //Consider all as success + event.reply('export-success', {}); + }); + } else { + contents.printToPDF(pdfOptions).then(async (data) => { + pdfs.push(data); + to = to > pageCount ? pageCount : to; + from++; + + if (from < to) { + args.from = from; + args.to = from; + ipcMain.once('render-finished', renderingFinishHandler); + contents.send('render', args); + } else { + data = await mergePdfs(pdfs, args.embedXml == '1' ? args.xml : null); + event.reply('export-success', data); + } + }) + .catch((error) => { + event.reply('export-error', error); + }); + } + } else if (args.format == 'svg') { + contents.send('get-svg-data'); + + ipcMain.once('svg-data', (evt, data) => { + event.reply('export-success', data); + }); + } else { + event.reply('export-error', 'Error: Unsupported format'); + } + } + + ipcMain.once('render-finished', renderingFinishHandler); + + if (args.format == 'xml') { + ipcMain.once('xml-data', (evt, data) => { + event.reply('export-success', data); + }); + + ipcMain.once('xml-data-error', () => { + event.reply('export-error'); + }); + } + + args.border = args.border || 0; + args.scale = args.scale || 1; + + contents.send('render', args); + }); + } catch (e) { + if (browser != null) { + browser.destroy(); + } + + event.reply('export-error', e); + console.log('export-error', e); + } +} + +ipcMain.on('export', exportDiagram); + +//================================================================ +// Renderer Helper functions +//================================================================ + +const {COPYFILE_EXCL} = fs.constants; +const DRAFT_PREFEX = '~$'; +const DRAFT_EXT = '.dtmp'; +const BKP_PREFEX = '~$'; +const BKP_EXT = '.bkp'; + +function isConflict(origStat, stat) { + return stat != null && origStat != null && stat.mtimeMs != origStat.mtimeMs; +} + +function getDraftFileName(fileObject) { + let filePath = fileObject.path; + let draftFileName = '', counter = 1, uniquePart = ''; + + do { + draftFileName = path.join(path.dirname(filePath), DRAFT_PREFEX + path.basename(filePath) + uniquePart + DRAFT_EXT); + uniquePart = '_' + counter++; + } while (fs.existsSync(draftFileName)); + + return draftFileName; +} + +async function getFileDrafts(fileObject) { + let filePath = fileObject.path; + let draftsPaths = [], drafts = [], draftFileName, counter = 1, uniquePart = ''; + + do { + draftsPaths.push(draftFileName); + draftFileName = path.join(path.dirname(filePath), DRAFT_PREFEX + path.basename(filePath) + uniquePart + DRAFT_EXT); + uniquePart = '_' + counter++; + } while (fs.existsSync(draftFileName)); //TODO this assume continuous drafts names + + for (let i = 1; i < draftsPaths.length; i++) { + try { + let stat = await fsProm.lstat(draftsPaths[i]); + drafts.push({ + data: await fsProm.readFile(draftsPaths[i], 'utf8'), + created: stat.ctimeMs, + modified: stat.mtimeMs, + path: draftsPaths[i] + }); + } catch (e) { + } // Ignore + } + + return drafts; +} + +async function saveDraft(fileObject, data) { + if (data == null || data.length == 0) { + throw new Error('empty data'); + } else { + let draftFileName = fileObject.draftFileName || getDraftFileName(fileObject); + await fsProm.writeFile(draftFileName, data, 'utf8'); + return draftFileName; + } +} + +async function saveFile(fileObject, data, origStat, overwrite, defEnc) { + let retryCount = 0; + let backupCreated = false; + let bkpPath = path.join(path.dirname(fileObject.path), BKP_PREFEX + path.basename(fileObject.path) + BKP_EXT); + + let writeFile = async function () { + if (data == null || data.length == 0) { + throw new Error('empty data'); + } else { + let writeEnc = defEnc || fileObject.encoding; + + await fsProm.writeFile(fileObject.path, data, writeEnc); + let stat2 = await fsProm.stat(fileObject.path); + let writtenData = await fsProm.readFile(fileObject.path, writeEnc); + + if (data != writtenData) { + retryCount++; + + if (retryCount < 3) { + return await writeFile(); + } else { + throw new Error('all saving trials failed'); + } + } else { + if (backupCreated) { + fs.unlink(bkpPath, (err) => { + }); //Ignore errors! + } + + return stat2; + } + } + }; + + async function doSaveFile() { + try { + await fsProm.copyFile(fileObject.path, bkpPath, COPYFILE_EXCL); + backupCreated = true; + } catch (e) { + } //Ignore + + return await writeFile(); + } + + if (overwrite) { + return await doSaveFile(); + } else { + let stat = fs.existsSync(fileObject.path) ? + await fsProm.stat(fileObject.path) : null; + + if (stat && isConflict(origStat, stat)) { + new Error('conflict'); + } else { + return await doSaveFile(); + } + } +} + +async function writeFile(path, data, enc) { + return await fsProm.writeFile(path, data, enc); +} + +function getAppDataFolder() { + try { + let appDataDir = app.getPath('appData'); + let drawioDir = appDataDir + '/' + config.name; + + if (!fs.existsSync(drawioDir)) //Usually this dir already exists + { + fs.mkdirSync(drawioDir); + } + + return drawioDir; + } catch (e) { + } + + return '.'; +} + +function getDocumentsFolder() { + try { + return app.getPath('documents'); + } catch (e) { + } + + return '.'; +} + +function checkFileExists(pathParts) { + let filePath = path.join(...pathParts); + return {exists: fs.existsSync(filePath), path: filePath}; +} + +async function showOpenDialog(defaultPath, filters, properties) { + return dialog.showOpenDialogSync({ + defaultPath: defaultPath, + filters: filters, + properties: properties + }); +} + +async function showSaveDialog(defaultPath, filters) { + return dialog.showSaveDialogSync({ + defaultPath: defaultPath, + filters: filters + }); +} + +async function installPlugin(filePath) { + let pluginsDir = path.join(getAppDataFolder(), '/plugins'); + + if (!fs.existsSync(pluginsDir)) { + fs.mkdirSync(pluginsDir); + } + + let pluginName = path.basename(filePath); + let dstFile = path.join(pluginsDir, pluginName); + + if (fs.existsSync(dstFile)) { + throw new Error('fileExists'); + } else { + await fsProm.copyFile(filePath, dstFile); + } + + return {pluginName: pluginName, selDir: path.dirname(filePath)}; +} + +function uninstallPlugin(plugin) { + let pluginsFile = path.join(getAppDataFolder(), '/plugins', plugin); + + if (fs.existsSync(pluginsFile)) { + fs.unlinkSync(pluginsFile); + } + return null +} + +function dirname(path_p) { + return path.dirname(path_p); +} + +async function readFile(filename, encoding) { + return await fsProm.readFile(filename, encoding); +} + +async function fileStat(file) { + return await fsProm.stat(file); +} + +async function isFileWritable(file) { + try { + await fsProm.access(file, fs.constants.W_OK); + return true; + } catch (e) { + return false; + } +} + +function clipboardAction(method, data) { + if (method == 'writeText') { + clipboard.writeText(data); + } else if (method == 'readText') { + return clipboard.readText(); + } else if (method == 'writeImage') { + clipboard.write({ + image: + nativeImage.createFromDataURL(data.dataUrl), html: '' + }); + } +} + +async function deleteFile(file) { + await fsProm.unlink(file); +} + +function windowAction(method) { + let win = BrowserWindow.getFocusedWindow(); + + if (win) { + if (method == 'minimize') { + win.minimize(); + } else if (method == 'maximize') { + win.maximize(); + } else if (method == 'unmaximize') { + win.unmaximize(); + } else if (method == 'close') { + win.close(); + } else if (method == 'isMaximized') { + return win.isMaximized(); + } else if (method == 'removeAllListeners') { + win.removeAllListeners(); + } + } +} + +function openExternal(url) { + shell.openExternal(url).then(() => {}).catch(() => {}); + return null +} + +function watchFile(path) { + let win = BrowserWindow.getFocusedWindow(); + + if (win) { + fs.watchFile(path, (curr, prev) => { + try { + win.webContents.send('fileChanged', { + path: path, + curr: curr, + prev: prev + }); + } catch (e) { + } // Ignore + }); + } + return null +} + +function unwatchFile(path) { + fs.unwatchFile(path); + return null +} + +ipcMain.on("rendererReq", async (event, args) => { + try { + let ret = null; + + switch (args.action) { + case 'saveFile': + ret = await saveFile(args.fileObject, args.data, args.origStat, args.overwrite, args.defEnc); + break; + case 'writeFile': + ret = await writeFile(args.path, args.data, args.enc); + break; + case 'saveDraft': + ret = await saveDraft(args.fileObject, args.data); + break; + case 'getFileDrafts': + ret = await getFileDrafts(args.fileObject); + break; + case 'getAppDataFolder': + ret = getAppDataFolder(); + break; + case 'getDocumentsFolder': + ret = await getDocumentsFolder(); + break; + case 'checkFileExists': + ret = checkFileExists(args.pathParts); + break; + case 'showOpenDialog': + ret = await showOpenDialog(args.defaultPath, args.filters, args.properties); + break; + case 'showSaveDialog': + ret = await showSaveDialog(args.defaultPath, args.filters); + break; + case 'installPlugin': + ret = await installPlugin(args.filePath); + break; + case 'uninstallPlugin': + ret = await uninstallPlugin(args.plugin); + break; + case 'dirname': + ret = dirname(args.path); + break; + case 'readFile': + ret = await readFile(args.filename, args.encoding); + break; + case 'clipboardAction': + ret = clipboardAction(args.method, args.data); + break; + case 'deleteFile': + ret = await deleteFile(args.file); + break; + case 'fileStat': + ret = await fileStat(args.file); + break; + case 'isFileWritable': + ret = await isFileWritable(args.file); + break; + case 'windowAction': + ret = windowAction(args.method); + break; + case 'openExternal': + ret = await openExternal(args.url); + break; + case 'watchFile': + ret = await watchFile(args.path); + break; + case 'unwatchFile': + ret = await unwatchFile(args.path); + break; + } + + event.reply('mainResp', {success: true, data: ret, reqId: args.reqId}); + } catch (e) { + event.reply('mainResp', {error: true, msg: e.message, e: e, reqId: args.reqId}); + } +}); diff --git a/electron/main.js b/electron/main.js deleted file mode 100644 index 8c0806288..000000000 --- a/electron/main.js +++ /dev/null @@ -1,423 +0,0 @@ -const fs = require('fs') -const fse = require('fs-extra') -const os = require("os"); -const path = require('path') -const XLSX = require('xlsx'); -const {app, BrowserWindow, ipcMain, dialog} = require('electron') -const utils = require('./utils'); -const config = require('./package.json'); -const log = require("electron-log"); - -let mainWindow = null, - subWindow = [], - willQuitApp = false, - inheritClose = false, - devloadUrl = "", - devloadCachePath = path.resolve(__dirname, ".devload"), - downloadList = [], - downloadCacheFile = path.join(app.getPath('cache'), config.name, '.downloadCache'); - -if (fs.existsSync(devloadCachePath)) { - devloadUrl = fs.readFileSync(devloadCachePath, 'utf8') -} - -if (fs.existsSync(downloadCacheFile)) { - downloadList = utils.jsonParse(fs.readFileSync(downloadCacheFile, 'utf8'), []) -} else { - fse.ensureDirSync(path.join(app.getPath('cache'), config.name)) -} - -function downloadUpdate(item) { - const chain = item.getURLChain() - if (chain.length == 0) { - return - } - let currentState = item.getState() - if (currentState == "progressing" && item.isPaused()) { - currentState = "paused" - } - // - const downloadItem = downloadList.find(item => item.url == chain[0]) - if (downloadItem && downloadItem.state != currentState) { - downloadItem.state = currentState; - downloadItem.result = { - url: item.getURL(), - name: item.getFilename(), - savePath: item.getSavePath(), - mimeType: item.getMimeType(), - totalBytes: item.getTotalBytes(), - chain, - }; - fs.writeFileSync(downloadCacheFile, utils.jsonStringify(downloadList), 'utf8'); - // - if (currentState == 'completed') { - mainWindow.webContents.send("downloadDone", downloadItem) - log.info("下载完成", downloadItem) - } else { - mainWindow.webContents.send("downloadUpdate", downloadItem) - log.info("下载更新", downloadItem) - } - } -} - -function createMainWindow() { - mainWindow = new BrowserWindow({ - width: 1280, - height: 800, - center: true, - autoHideMenuBar: true, - webPreferences: { - preload: path.join(__dirname, 'preload.js'), - nodeIntegration: true, - contextIsolation: false - } - }) - mainWindow.webContents.setUserAgent(mainWindow.webContents.getUserAgent() + " MainTaskWindow/" + process.platform + "/" + os.arch() + "/1.0"); - - if (devloadUrl) { - mainWindow.loadURL(devloadUrl).then(r => { - - }) - } else { - mainWindow.loadFile('./public/index.html').then(r => { - - }) - } - - mainWindow.on('page-title-updated', (event, title) => { - if (title == "index.html") { - event.preventDefault() - } - }) - - mainWindow.on('close', (e) => { - if (!willQuitApp) { - e.preventDefault(); - if (inheritClose) { - mainWindow.webContents.send("windowClose", {}) - } else { - if (process.platform === 'darwin') { - app.hide(); - } else { - app.quit(); - } - } - } - }) - - mainWindow.webContents.session.on('will-download', (event, item) => { - item.setSavePath(path.join(app.getPath('cache'), config.name, item.getFilename())); - item.on('updated', () => { - downloadUpdate(item) - }) - item.on('done', () => { - downloadUpdate(item) - }) - }) -} - -function createSubWindow(args) { - if (!args) { - return; - } - - if (typeof args !== "object") { - args = { - path: args, - config: {}, - } - } - - let name = args.name || "auto_" + utils.randomString(6); - let item = subWindow.find(item => item.name == name); - let browser = item ? item.browser : null; - if (browser) { - browser.focus(); - if (args.force === false) { - return; - } - } else { - let config = args.config || {}; - if (typeof args.title !== "undefined") { - config.title = args.title; - } - browser = new BrowserWindow(Object.assign({ - width: 1280, - height: 800, - center: true, - parent: mainWindow, - autoHideMenuBar: true, - webPreferences: { - preload: path.join(__dirname, 'preload.js'), - devTools: args.devTools !== false, - nodeIntegration: true, - contextIsolation: false - } - }, config)) - browser.on('page-title-updated', (event, title) => { - if (title == "index.html" || args.titleFixed === true) { - event.preventDefault() - } - }) - browser.on('close', () => { - let index = subWindow.findIndex(item => item.name == name); - if (index > -1) { - subWindow.splice(index, 1) - } - }) - subWindow.push({ name, browser }) - } - browser.webContents.setUserAgent(browser.webContents.getUserAgent() + " SubTaskWindow/" + process.platform + "/" + os.arch() + "/1.0" + (args.userAgent ? (" " + args.userAgent) : "")); - - if (devloadUrl) { - browser.loadURL(devloadUrl + '#' + (args.hash || args.path)).then(r => { - - }) - } else { - browser.loadFile('./public/index.html', { - hash: args.hash || args.path - }).then(r => { - - }) - } -} - -app.whenReady().then(() => { - createMainWindow() - - app.on('activate', () => { - if (BrowserWindow.getAllWindows().length === 0) createMainWindow() - }) -}) - -app.on('window-all-closed', () => { - if (process.platform !== 'darwin') { - app.quit() - } -}) - -app.on('before-quit', () => { - willQuitApp = true -}) - -/** - * 继承关闭窗口事件 - */ -ipcMain.on('inheritClose', (event) => { - inheritClose = true - event.returnValue = "ok" -}) - -/** - * 下载文件 - * @param args {url} - */ -ipcMain.on('downloadFile', (event, args) => { - event.returnValue = "ok" - // - let appendJson = {state: "progressing", startTime: utils.Time()} - let downloadItem = downloadList.find(({url}) => url == args.url) - if (downloadItem) { - switch (downloadItem.state) { - case "completed": - if (fs.existsSync(downloadItem.result.savePath)) { // 下载完成,文件存在 - log.info("下载已完成", downloadItem) - mainWindow.webContents.send("downloadDone", downloadItem) - return - } - break; - case "progressing": - if (downloadItem.startTime + 480 > utils.Time()) { // 下载中,未超时(超时时间8分钟) - log.info("下载已存在", downloadItem) - return; - } - break; - } - downloadItem = Object.assign(downloadItem, appendJson) - } else { - downloadList.push(downloadItem = Object.assign(args, appendJson)) - } - fs.writeFileSync(downloadCacheFile, utils.jsonStringify(downloadList), 'utf8'); - mainWindow.webContents.downloadURL(downloadItem.url); - log.info("下载开始", downloadItem) -}) - -/** - * 打开文件 - * @param args {path} - */ -ipcMain.on('openFile', (event, args) => { - utils.openFile(args.path) - event.returnValue = "ok" -}) - -/** - * 退出客户端 - */ -ipcMain.on('windowQuit', (event) => { - event.returnValue = "ok" - app.quit(); -}) - -/** - * 创建路由窗口 - * @param args {path, ?} - */ -ipcMain.on('windowRouter', (event, args) => { - createSubWindow(args) - event.returnValue = "ok" -}) - -/** - * 隐藏窗口(mac隐藏,其他关闭) - */ -ipcMain.on('windowHidden', (event) => { - if (process.platform === 'darwin') { - app.hide(); - } else { - app.quit(); - } - event.returnValue = "ok" -}) - -/** - * 关闭窗口 - */ -ipcMain.on('windowClose', (event) => { - const win = BrowserWindow.fromWebContents(event.sender); - win.close() - event.returnValue = "ok" -}) - -/** - * 设置窗口尺寸 - * @param args {width, height, autoZoom, minWidth, minHeight, maxWidth, maxHeight} - */ -ipcMain.on('windowSize', (event, args) => { - const win = BrowserWindow.fromWebContents(event.sender); - if (win) { - if (args.width || args.height) { - let [w, h] = win.getSize() - const width = args.width || w - const height = args.height || h - win.setSize(width, height, args.animate === true) - // - if (args.autoZoom === true) { - let move = false - let [x, y] = win.getPosition() - if (Math.abs(width - w) > 10) { - move = true - x -= (width - w) / 2 - } - if (Math.abs(height - h) > 10) { - move = true - y -= (height - h) / 2 - } - if (move) { - win.setPosition(Math.max(0, Math.floor(x)), Math.max(0, Math.floor(y))) - } - } - } - if (args.minWidth || args.minHeight) { - win.setMinimumSize(args.minWidth || win.getMinimumSize()[0], args.minHeight || win.getMinimumSize()[1]) - } - if (args.maxWidth || args.maxHeight) { - win.setMaximumSize(args.maxWidth || win.getMaximumSize()[0], args.maxHeight || win.getMaximumSize()[1]) - } - } - event.returnValue = "ok" -}) - -/** - * 设置窗口最小尺寸 - * @param args {minWidth, minHeight} - */ -ipcMain.on('windowMinSize', (event, args) => { - const win = BrowserWindow.fromWebContents(event.sender); - if (win) { - win.setMinimumSize(args.minWidth || win.getMinimumSize()[0], args.minHeight || win.getMinimumSize()[1]) - } - event.returnValue = "ok" -}) - -/** - * 设置窗口最大尺寸 - * @param args {maxWidth, maxHeight} - */ -ipcMain.on('windowMaxSize', (event, args) => { - const win = BrowserWindow.fromWebContents(event.sender); - if (win) { - win.setMaximumSize(args.maxWidth || win.getMaximumSize()[0], args.maxHeight || win.getMaximumSize()[1]) - } - event.returnValue = "ok" -}) - -/** - * 窗口居中 - */ -ipcMain.on('windowCenter', (event) => { - const win = BrowserWindow.fromWebContents(event.sender); - if (win) { - win.center(); - } - event.returnValue = "ok" -}) - -/** - * 窗口最大化或恢复 - */ -ipcMain.on('windowMax', (event) => { - const win = BrowserWindow.fromWebContents(event.sender); - if (win.isMaximized()) { - win.restore(); - } else { - win.maximize(); - } - event.returnValue = "ok" -}) - -/** - * 给主窗口发送信息 - * @param args {channel, data} - */ -ipcMain.on('sendForwardMain', (event, args) => { - if (mainWindow) { - mainWindow.webContents.send(args.channel, args.data) - } - event.returnValue = "ok" -}) - -/** - * 设置Dock标记 - * @param args - */ -ipcMain.on('setDockBadge', (event, args) => { - if(process.platform !== 'darwin'){ - // Mac only - return; - } - if (utils.runNum(args) > 0) { - app.dock.setBadge(String(args)) - } else { - app.dock.setBadge("") - } - event.returnValue = "ok" -}) - -/** - * 保存sheets - */ -ipcMain.on('saveSheet', (event, data, filename, opts) => { - const EXTENSIONS = "xls|xlsx|xlsm|xlsb|xml|csv|txt|dif|sylk|slk|prn|ods|fods|htm|html".split("|"); - dialog.showSaveDialog({ - title: 'Save file as', - defaultPath: filename, - filters: [{ - name: "Spreadsheets", - extensions: EXTENSIONS - }] - }).then(o => { - XLSX.writeFile(data, o.filePath, opts); - }); - event.returnValue = "ok" -}) diff --git a/electron/package.json b/electron/package.json index bf0800c54..d367a2200 100644 --- a/electron/package.json +++ b/electron/package.json @@ -1,8 +1,8 @@ { "name": "DooTask", - "version": "0.9.16", + "version": "0.9.36", "description": "DooTask is task management system.", - "main": "main.js", + "main": "electron.js", "license": "MIT", "scripts": { "start": "electron-forge start", @@ -40,18 +40,19 @@ }, "dependencies": { "axios": "^0.26.0", + "crc": "^3.8.0", "electron-squirrel-startup": "^1.0.0", "electron-log": "^4.4.6", "fs-extra": "^10.0.0", - "xlsx": "^0.18.1" + "pdf-lib": "^1.16.0" }, "build": { "appId": "com.dootask.task", "artifactName": "${productName}-v${version}-${os}-${arch}.${ext}", "files": [ "public/**/*", - "main.js", - "preload.js", + "electron-preload.js", + "electron.js", "utils.js" ], "mac": { diff --git a/electron/preload.js b/electron/preload.js deleted file mode 100644 index 601ef65b4..000000000 --- a/electron/preload.js +++ /dev/null @@ -1,14 +0,0 @@ -// preload.js - -// All of the Node.js APIs are available in the preload process. -// It has the same sandbox as a Chrome extension. -window.addEventListener('DOMContentLoaded', () => { - const replaceText = (selector, text) => { - const element = document.getElementById(selector) - if (element) element.innerText = text - } - - for (const dependency of ['chrome', 'node', 'electron']) { - replaceText(`${dependency}-version`, process.versions[dependency]) - } -}) diff --git a/electron/utils.js b/electron/utils.js index ca1507c9d..41469d78e 100644 --- a/electron/utils.js +++ b/electron/utils.js @@ -1,5 +1,5 @@ const fs = require("fs"); -const {shell} = require("electron"); +const {shell, dialog} = require("electron"); module.exports = { /** @@ -269,4 +269,39 @@ module.exports = { } return Math.round(time / 1000) }, + + /** + * 窗口关闭事件 + * @param event + * @param app + */ + onBeforeUnload(event, app) { + const sender = event.sender + const contents = sender.webContents + if (contents != null) { + const destroy = () => { + if (typeof app === "undefined") { + sender.destroy() + } else { + if (process.platform === 'darwin') { + app.hide() + } else { + app.quit() + } + } + } + contents.executeJavaScript('if(typeof window.__onBeforeUnload === \'function\'){window.__onBeforeUnload()}', true).then(options => { + if (this.isJson(options)) { + let choice = dialog.showMessageBoxSync(sender, options) + if (choice === 1) { + contents.executeJavaScript('if(typeof window.__removeBeforeUnload === \'function\'){window.__removeBeforeUnload()}', true).catch(() => {}); + destroy() + } + } else if (options !== true) { + destroy() + } + }) + event.preventDefault() + } + }, } diff --git a/package.json b/package.json index 53cd32528..622889ad5 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "DooTask", - "version": "0.9.16", + "version": "0.9.36", "description": "DooTask is task management system.", "scripts": { "start": "./cmd dev", @@ -41,7 +41,6 @@ "cross-env": "^7.0.3", "css-loader": "^6.5.1", "echarts": "^5.2.2", - "electron": "^17.0.1", "element-ui": "^2.15.6", "file-loader": "^6.2.0", "inquirer": "^8.2.0", @@ -64,7 +63,7 @@ "stylus-loader": "^6.2.0", "tinymce": "^5.10.3", "tui-calendar-hi": "^1.15.1-5", - "view-design-hi": "^4.7.0-12", + "view-design-hi": "^4.7.0-16", "vue": "^2.6.14", "vue-clipboard2": "^0.3.3", "vue-emoji-picker": "^1.0.3", @@ -75,8 +74,7 @@ "vue-template-compiler": "^2.6.14", "vuedraggable": "^2.24.3", "vuex": "^3.6.2", - "webpack": "^5.65.0", - "webpack-cli": "^4.9.1", - "xlsx": "^0.17.4" + "webpack": "^5.69.1", + "webpack-cli": "^4.9.2" } } diff --git a/public/css/app.css b/public/css/app.css index 275f05f4b..960cae9d9 100644 --- a/public/css/app.css +++ b/public/css/app.css @@ -1 +1 @@ -@charset "UTF-8";.file-icon:before{background-image:url(../images/file/light/other.svg);background-repeat:no-repeat;background-size:contain;content:""}.file-icon.archive:before{background-image:url(../images/file/light/archive.svg)}.file-icon.cad:before{background-image:url(../images/file/light/cad.svg)}.file-icon.code:before{background-image:url(../images/file/light/code.svg)}.file-icon.document:before{background-image:url(../images/file/light/document.svg)}.file-icon.drawio:before{background-image:url(../images/file/light/drawio.svg)}.file-icon.excel:before{background-image:url(../images/file/light/excel.svg)}.file-icon.flow:before{background-image:url(../images/file/light/flow.svg)}.file-icon.folder:before{background-image:url(../images/file/light/folder.svg)}.file-icon.media:before{background-image:url(../images/file/light/media.svg)}.file-icon.mind:before{background-image:url(../images/file/light/mind.svg)}.file-icon.ofd:before{background-image:url(../images/file/light/ofd.svg)}.file-icon.pdf:before{background-image:url(../images/file/light/pdf.svg)}.file-icon.picture:before{background-image:url(../images/file/light/picture.svg)}.file-icon.ppt:before{background-image:url(../images/file/light/ppt.svg)}.file-icon.sheet:before{background-image:url(../images/file/light/sheet.svg)}.file-icon.tif:before{background-image:url(../images/file/light/tif.svg)}.file-icon.txt:before{background-image:url(../images/file/light/txt.svg)}.file-icon.updir:before{background-image:url(../images/file/light/updir.svg)}.file-icon.upload:before{background-image:url(../images/file/light/upload.svg)}.file-icon.word:before{background-image:url(../images/file/light/word.svg)}.file-icon.wps:before{background-image:url(../images/file/light/wps.svg)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:opacity .2s linear}.fade-in-linear-enter,.fade-in-linear-leave,.fade-in-linear-leave-active{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:opacity .2s linear}.el-fade-in-linear-enter,.el-fade-in-linear-leave,.el-fade-in-linear-leave-active{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all .3s cubic-bezier(.55,0,.1,1)}.el-fade-in-enter,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all .3s cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1)}.el-zoom-in-top-enter,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1)}.el-zoom-in-bottom-enter,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1)}.el-zoom-in-left-enter,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:height .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out}.horizontal-collapse-transition{transition:width .3s ease-in-out,padding-left .3s ease-in-out,padding-right .3s ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter,.el-list-leave-active{opacity:0;transform:translateY(-30px)}.el-opacity-transition{transition:opacity .3s cubic-bezier(.55,0,.1,1)}@font-face{font-display:"auto";font-family:element-icons;font-style:normal;font-weight:400;src:url(fonts/element-icons.woff) format("woff"),url(fonts/element-icons.ttf) format("truetype")}[class*=" el-icon-"],[class^=el-icon-]{speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:element-icons!important;font-style:normal;font-variant:normal;font-weight:400;line-height:1;text-transform:none;vertical-align:baseline}.el-icon-ice-cream-round:before{content:"\e6a0"}.el-icon-ice-cream-square:before{content:"\e6a3"}.el-icon-lollipop:before{content:"\e6a4"}.el-icon-potato-strips:before{content:"\e6a5"}.el-icon-milk-tea:before{content:"\e6a6"}.el-icon-ice-drink:before{content:"\e6a7"}.el-icon-ice-tea:before{content:"\e6a9"}.el-icon-coffee:before{content:"\e6aa"}.el-icon-orange:before{content:"\e6ab"}.el-icon-pear:before{content:"\e6ac"}.el-icon-apple:before{content:"\e6ad"}.el-icon-cherry:before{content:"\e6ae"}.el-icon-watermelon:before{content:"\e6af"}.el-icon-grape:before{content:"\e6b0"}.el-icon-refrigerator:before{content:"\e6b1"}.el-icon-goblet-square-full:before{content:"\e6b2"}.el-icon-goblet-square:before{content:"\e6b3"}.el-icon-goblet-full:before{content:"\e6b4"}.el-icon-goblet:before{content:"\e6b5"}.el-icon-cold-drink:before{content:"\e6b6"}.el-icon-coffee-cup:before{content:"\e6b8"}.el-icon-water-cup:before{content:"\e6b9"}.el-icon-hot-water:before{content:"\e6ba"}.el-icon-ice-cream:before{content:"\e6bb"}.el-icon-dessert:before{content:"\e6bc"}.el-icon-sugar:before{content:"\e6bd"}.el-icon-tableware:before{content:"\e6be"}.el-icon-burger:before{content:"\e6bf"}.el-icon-knife-fork:before{content:"\e6c1"}.el-icon-fork-spoon:before{content:"\e6c2"}.el-icon-chicken:before{content:"\e6c3"}.el-icon-food:before{content:"\e6c4"}.el-icon-dish-1:before{content:"\e6c5"}.el-icon-dish:before{content:"\e6c6"}.el-icon-moon-night:before{content:"\e6ee"}.el-icon-moon:before{content:"\e6f0"}.el-icon-cloudy-and-sunny:before{content:"\e6f1"}.el-icon-partly-cloudy:before{content:"\e6f2"}.el-icon-cloudy:before{content:"\e6f3"}.el-icon-sunny:before{content:"\e6f6"}.el-icon-sunset:before{content:"\e6f7"}.el-icon-sunrise-1:before{content:"\e6f8"}.el-icon-sunrise:before{content:"\e6f9"}.el-icon-heavy-rain:before{content:"\e6fa"}.el-icon-lightning:before{content:"\e6fb"}.el-icon-light-rain:before{content:"\e6fc"}.el-icon-wind-power:before{content:"\e6fd"}.el-icon-baseball:before{content:"\e712"}.el-icon-soccer:before{content:"\e713"}.el-icon-football:before{content:"\e715"}.el-icon-basketball:before{content:"\e716"}.el-icon-ship:before{content:"\e73f"}.el-icon-truck:before{content:"\e740"}.el-icon-bicycle:before{content:"\e741"}.el-icon-mobile-phone:before{content:"\e6d3"}.el-icon-service:before{content:"\e6d4"}.el-icon-key:before{content:"\e6e2"}.el-icon-unlock:before{content:"\e6e4"}.el-icon-lock:before{content:"\e6e5"}.el-icon-watch:before{content:"\e6fe"}.el-icon-watch-1:before{content:"\e6ff"}.el-icon-timer:before{content:"\e702"}.el-icon-alarm-clock:before{content:"\e703"}.el-icon-map-location:before{content:"\e704"}.el-icon-delete-location:before{content:"\e705"}.el-icon-add-location:before{content:"\e706"}.el-icon-location-information:before{content:"\e707"}.el-icon-location-outline:before{content:"\e708"}.el-icon-location:before{content:"\e79e"}.el-icon-place:before{content:"\e709"}.el-icon-discover:before{content:"\e70a"}.el-icon-first-aid-kit:before{content:"\e70b"}.el-icon-trophy-1:before{content:"\e70c"}.el-icon-trophy:before{content:"\e70d"}.el-icon-medal:before{content:"\e70e"}.el-icon-medal-1:before{content:"\e70f"}.el-icon-stopwatch:before{content:"\e710"}.el-icon-mic:before{content:"\e711"}.el-icon-copy-document:before{content:"\e718"}.el-icon-full-screen:before{content:"\e719"}.el-icon-switch-button:before{content:"\e71b"}.el-icon-aim:before{content:"\e71c"}.el-icon-crop:before{content:"\e71d"}.el-icon-odometer:before{content:"\e71e"}.el-icon-time:before{content:"\e71f"}.el-icon-bangzhu:before{content:"\e724"}.el-icon-close-notification:before{content:"\e726"}.el-icon-microphone:before{content:"\e727"}.el-icon-turn-off-microphone:before{content:"\e728"}.el-icon-position:before{content:"\e729"}.el-icon-postcard:before{content:"\e72a"}.el-icon-message:before{content:"\e72b"}.el-icon-chat-line-square:before{content:"\e72d"}.el-icon-chat-dot-square:before{content:"\e72e"}.el-icon-chat-dot-round:before{content:"\e72f"}.el-icon-chat-square:before{content:"\e730"}.el-icon-chat-line-round:before{content:"\e731"}.el-icon-chat-round:before{content:"\e732"}.el-icon-set-up:before{content:"\e733"}.el-icon-turn-off:before{content:"\e734"}.el-icon-open:before{content:"\e735"}.el-icon-connection:before{content:"\e736"}.el-icon-link:before{content:"\e737"}.el-icon-cpu:before{content:"\e738"}.el-icon-thumb:before{content:"\e739"}.el-icon-female:before{content:"\e73a"}.el-icon-male:before{content:"\e73b"}.el-icon-guide:before{content:"\e73c"}.el-icon-news:before{content:"\e73e"}.el-icon-price-tag:before{content:"\e744"}.el-icon-discount:before{content:"\e745"}.el-icon-wallet:before{content:"\e747"}.el-icon-coin:before{content:"\e748"}.el-icon-money:before{content:"\e749"}.el-icon-bank-card:before{content:"\e74a"}.el-icon-box:before{content:"\e74b"}.el-icon-present:before{content:"\e74c"}.el-icon-sell:before{content:"\e6d5"}.el-icon-sold-out:before{content:"\e6d6"}.el-icon-shopping-bag-2:before{content:"\e74d"}.el-icon-shopping-bag-1:before{content:"\e74e"}.el-icon-shopping-cart-2:before{content:"\e74f"}.el-icon-shopping-cart-1:before{content:"\e750"}.el-icon-shopping-cart-full:before{content:"\e751"}.el-icon-smoking:before{content:"\e752"}.el-icon-no-smoking:before{content:"\e753"}.el-icon-house:before{content:"\e754"}.el-icon-table-lamp:before{content:"\e755"}.el-icon-school:before{content:"\e756"}.el-icon-office-building:before{content:"\e757"}.el-icon-toilet-paper:before{content:"\e758"}.el-icon-notebook-2:before{content:"\e759"}.el-icon-notebook-1:before{content:"\e75a"}.el-icon-files:before{content:"\e75b"}.el-icon-collection:before{content:"\e75c"}.el-icon-receiving:before{content:"\e75d"}.el-icon-suitcase-1:before{content:"\e760"}.el-icon-suitcase:before{content:"\e761"}.el-icon-film:before{content:"\e763"}.el-icon-collection-tag:before{content:"\e765"}.el-icon-data-analysis:before{content:"\e766"}.el-icon-pie-chart:before{content:"\e767"}.el-icon-data-board:before{content:"\e768"}.el-icon-data-line:before{content:"\e76d"}.el-icon-reading:before{content:"\e769"}.el-icon-magic-stick:before{content:"\e76a"}.el-icon-coordinate:before{content:"\e76b"}.el-icon-mouse:before{content:"\e76c"}.el-icon-brush:before{content:"\e76e"}.el-icon-headset:before{content:"\e76f"}.el-icon-umbrella:before{content:"\e770"}.el-icon-scissors:before{content:"\e771"}.el-icon-mobile:before{content:"\e773"}.el-icon-attract:before{content:"\e774"}.el-icon-monitor:before{content:"\e775"}.el-icon-search:before{content:"\e778"}.el-icon-takeaway-box:before{content:"\e77a"}.el-icon-paperclip:before{content:"\e77d"}.el-icon-printer:before{content:"\e77e"}.el-icon-document-add:before{content:"\e782"}.el-icon-document:before{content:"\e785"}.el-icon-document-checked:before{content:"\e786"}.el-icon-document-copy:before{content:"\e787"}.el-icon-document-delete:before{content:"\e788"}.el-icon-document-remove:before{content:"\e789"}.el-icon-tickets:before{content:"\e78b"}.el-icon-folder-checked:before{content:"\e77f"}.el-icon-folder-delete:before{content:"\e780"}.el-icon-folder-remove:before{content:"\e781"}.el-icon-folder-add:before{content:"\e783"}.el-icon-folder-opened:before{content:"\e784"}.el-icon-folder:before{content:"\e78a"}.el-icon-edit-outline:before{content:"\e764"}.el-icon-edit:before{content:"\e78c"}.el-icon-date:before{content:"\e78e"}.el-icon-c-scale-to-original:before{content:"\e7c6"}.el-icon-view:before{content:"\e6ce"}.el-icon-loading:before{content:"\e6cf"}.el-icon-rank:before{content:"\e6d1"}.el-icon-sort-down:before{content:"\e7c4"}.el-icon-sort-up:before{content:"\e7c5"}.el-icon-sort:before{content:"\e6d2"}.el-icon-finished:before{content:"\e6cd"}.el-icon-refresh-left:before{content:"\e6c7"}.el-icon-refresh-right:before{content:"\e6c8"}.el-icon-refresh:before{content:"\e6d0"}.el-icon-video-play:before{content:"\e7c0"}.el-icon-video-pause:before{content:"\e7c1"}.el-icon-d-arrow-right:before{content:"\e6dc"}.el-icon-d-arrow-left:before{content:"\e6dd"}.el-icon-arrow-up:before{content:"\e6e1"}.el-icon-arrow-down:before{content:"\e6df"}.el-icon-arrow-right:before{content:"\e6e0"}.el-icon-arrow-left:before{content:"\e6de"}.el-icon-top-right:before{content:"\e6e7"}.el-icon-top-left:before{content:"\e6e8"}.el-icon-top:before{content:"\e6e6"}.el-icon-bottom:before{content:"\e6eb"}.el-icon-right:before{content:"\e6e9"}.el-icon-back:before{content:"\e6ea"}.el-icon-bottom-right:before{content:"\e6ec"}.el-icon-bottom-left:before{content:"\e6ed"}.el-icon-caret-top:before{content:"\e78f"}.el-icon-caret-bottom:before{content:"\e790"}.el-icon-caret-right:before{content:"\e791"}.el-icon-caret-left:before{content:"\e792"}.el-icon-d-caret:before{content:"\e79a"}.el-icon-share:before{content:"\e793"}.el-icon-menu:before{content:"\e798"}.el-icon-s-grid:before{content:"\e7a6"}.el-icon-s-check:before{content:"\e7a7"}.el-icon-s-data:before{content:"\e7a8"}.el-icon-s-opportunity:before{content:"\e7aa"}.el-icon-s-custom:before{content:"\e7ab"}.el-icon-s-claim:before{content:"\e7ad"}.el-icon-s-finance:before{content:"\e7ae"}.el-icon-s-comment:before{content:"\e7af"}.el-icon-s-flag:before{content:"\e7b0"}.el-icon-s-marketing:before{content:"\e7b1"}.el-icon-s-shop:before{content:"\e7b4"}.el-icon-s-open:before{content:"\e7b5"}.el-icon-s-management:before{content:"\e7b6"}.el-icon-s-ticket:before{content:"\e7b7"}.el-icon-s-release:before{content:"\e7b8"}.el-icon-s-home:before{content:"\e7b9"}.el-icon-s-promotion:before{content:"\e7ba"}.el-icon-s-operation:before{content:"\e7bb"}.el-icon-s-unfold:before{content:"\e7bc"}.el-icon-s-fold:before{content:"\e7a9"}.el-icon-s-platform:before{content:"\e7bd"}.el-icon-s-order:before{content:"\e7be"}.el-icon-s-cooperation:before{content:"\e7bf"}.el-icon-bell:before{content:"\e725"}.el-icon-message-solid:before{content:"\e799"}.el-icon-video-camera:before{content:"\e772"}.el-icon-video-camera-solid:before{content:"\e796"}.el-icon-camera:before{content:"\e779"}.el-icon-camera-solid:before{content:"\e79b"}.el-icon-download:before{content:"\e77c"}.el-icon-upload2:before{content:"\e77b"}.el-icon-upload:before{content:"\e7c3"}.el-icon-picture-outline-round:before{content:"\e75f"}.el-icon-picture-outline:before{content:"\e75e"}.el-icon-picture:before{content:"\e79f"}.el-icon-close:before{content:"\e6db"}.el-icon-check:before{content:"\e6da"}.el-icon-plus:before{content:"\e6d9"}.el-icon-minus:before{content:"\e6d8"}.el-icon-help:before{content:"\e73d"}.el-icon-s-help:before{content:"\e7b3"}.el-icon-circle-close:before{content:"\e78d"}.el-icon-circle-check:before{content:"\e720"}.el-icon-circle-plus-outline:before{content:"\e723"}.el-icon-remove-outline:before{content:"\e722"}.el-icon-zoom-out:before{content:"\e776"}.el-icon-zoom-in:before{content:"\e777"}.el-icon-error:before{content:"\e79d"}.el-icon-success:before{content:"\e79c"}.el-icon-circle-plus:before{content:"\e7a0"}.el-icon-remove:before{content:"\e7a2"}.el-icon-info:before{content:"\e7a1"}.el-icon-question:before{content:"\e7a4"}.el-icon-warning-outline:before{content:"\e6c9"}.el-icon-warning:before{content:"\e7a3"}.el-icon-goods:before{content:"\e7c2"}.el-icon-s-goods:before{content:"\e7b2"}.el-icon-star-off:before{content:"\e717"}.el-icon-star-on:before{content:"\e797"}.el-icon-more-outline:before{content:"\e6cc"}.el-icon-more:before{content:"\e794"}.el-icon-phone-outline:before{content:"\e6cb"}.el-icon-phone:before{content:"\e795"}.el-icon-user:before{content:"\e6e3"}.el-icon-user-solid:before{content:"\e7a5"}.el-icon-setting:before{content:"\e6ca"}.el-icon-s-tools:before{content:"\e7ac"}.el-icon-delete:before{content:"\e6d7"}.el-icon-delete-solid:before{content:"\e7c9"}.el-icon-eleme:before{content:"\e7c7"}.el-icon-platform-eleme:before{content:"\e7ca"}.el-icon-loading{-webkit-animation:rotating 2s linear infinite;animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@-webkit-keyframes rotating{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes rotating{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.el-avatar{background:#c0c4cc;box-sizing:border-box;color:#fff;display:inline-block;font-size:14px;height:40px;line-height:40px;overflow:hidden;text-align:center;width:40px}.el-avatar>img{display:block;height:100%;vertical-align:middle}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:4px}.el-avatar--icon{font-size:18px}.el-avatar--large{height:40px;line-height:40px;width:40px}.el-avatar--medium{height:36px;line-height:36px;width:36px}.el-avatar--small{height:28px;line-height:28px;width:28px}.el-tooltip:focus:hover,.el-tooltip:focus:not(.focusing){outline-width:0}.el-tooltip__popper{word-wrap:break-word;border-radius:4px;font-size:14px;line-height:1.2;min-width:10px;padding:10px;position:absolute;z-index:2000}.el-tooltip__popper .popper__arrow,.el-tooltip__popper .popper__arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.el-tooltip__popper .popper__arrow{border-width:6px}.el-tooltip__popper .popper__arrow:after{border-width:5px;content:" "}.el-tooltip__popper[x-placement^=top]{margin-bottom:12px}.el-tooltip__popper[x-placement^=top] .popper__arrow{border-bottom-width:0;border-top-color:#585e6a;bottom:-6px}.el-tooltip__popper[x-placement^=top] .popper__arrow:after{border-bottom-width:0;border-top-color:#585e6a;bottom:1px;margin-left:-5px}.el-tooltip__popper[x-placement^=bottom]{margin-top:12px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow{border-bottom-color:#585e6a;border-top-width:0;top:-6px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#585e6a;border-top-width:0;margin-left:-5px;top:1px}.el-tooltip__popper[x-placement^=right]{margin-left:12px}.el-tooltip__popper[x-placement^=right] .popper__arrow{border-left-width:0;border-right-color:#585e6a;left:-6px}.el-tooltip__popper[x-placement^=right] .popper__arrow:after{border-left-width:0;border-right-color:#585e6a;bottom:-5px;left:1px}.el-tooltip__popper[x-placement^=left]{margin-right:12px}.el-tooltip__popper[x-placement^=left] .popper__arrow{border-left-color:#585e6a;border-right-width:0;right:-6px}.el-tooltip__popper[x-placement^=left] .popper__arrow:after{border-left-color:#585e6a;border-right-width:0;bottom:-5px;margin-left:-5px;right:1px}.el-tooltip__popper.is-dark{background:#585e6a;color:#fff}.el-tooltip__popper.is-light{background:#fff;border:1px solid #585e6a}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow:after{border-top-color:#fff}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#fff}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow:after{border-left-color:#fff}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow:after{border-right-color:#fff}.el-popover{background:#fff;border:1px solid #ebeef5;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);color:#606266;font-size:14px;line-height:1.4;min-width:150px;padding:12px;position:absolute;text-align:justify;word-break:break-all;z-index:2000}.el-popover--plain{padding:18px 20px}.el-popover__title{color:#303133;font-size:16px;line-height:1;margin-bottom:12px}.el-popover:focus,.el-popover:focus:active,.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-button{-webkit-appearance:none;background:#fff;border:1px solid #dcdfe6;border-radius:4px;box-sizing:border-box;color:#606266;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;line-height:1;margin:0;outline:none;padding:12px 20px;text-align:center;transition:.1s;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap}.el-button+.el-button{margin-left:10px}.el-button.is-round{padding:12px 20px}.el-button:focus,.el-button:hover{background-color:#ecf5ff;border-color:#c6e2ff;color:#409eff}.el-button:active{border-color:#3a8ee6;color:#3a8ee6;outline:none}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon-]+span{margin-left:5px}.el-button.is-plain:focus,.el-button.is-plain:hover{background:#fff;border-color:#409eff;color:#409eff}.el-button.is-plain:active{background:#fff;outline:none}.el-button.is-active,.el-button.is-plain:active{border-color:#3a8ee6;color:#3a8ee6}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{background-color:#fff;background-image:none;border-color:#ebeef5;color:#c0c4cc;cursor:not-allowed}.el-button.is-disabled.el-button--text{background-color:transparent}.el-button.is-disabled.is-plain,.el-button.is-disabled.is-plain:focus,.el-button.is-disabled.is-plain:hover{background-color:#fff;border-color:#ebeef5;color:#c0c4cc}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{background-color:hsla(0,0%,100%,.35);border-radius:inherit;bottom:-1px;content:"";left:-1px;pointer-events:none;position:absolute;right:-1px;top:-1px}.el-button.is-round{border-radius:20px;padding:12px 23px}.el-button.is-circle{border-radius:50%;padding:12px}.el-button--primary{background-color:#409eff;border-color:#409eff;color:#fff}.el-button--primary:focus,.el-button--primary:hover{background:#66b1ff;border-color:#66b1ff;color:#fff}.el-button--primary:active{outline:none}.el-button--primary.is-active,.el-button--primary:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff}.el-button--primary.is-disabled,.el-button--primary.is-disabled:active,.el-button--primary.is-disabled:focus,.el-button--primary.is-disabled:hover{background-color:#a0cfff;border-color:#a0cfff;color:#fff}.el-button--primary.is-plain{background:#ecf5ff;border-color:#b3d8ff;color:#409eff}.el-button--primary.is-plain:focus,.el-button--primary.is-plain:hover{background:#409eff;border-color:#409eff;color:#fff}.el-button--primary.is-plain:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff;outline:none}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover{background-color:#ecf5ff;border-color:#d9ecff;color:#8cc5ff}.el-button--success{background-color:#67c23a;border-color:#67c23a;color:#fff}.el-button--success:focus,.el-button--success:hover{background:#85ce61;border-color:#85ce61;color:#fff}.el-button--success:active{outline:none}.el-button--success.is-active,.el-button--success:active{background:#5daf34;border-color:#5daf34;color:#fff}.el-button--success.is-disabled,.el-button--success.is-disabled:active,.el-button--success.is-disabled:focus,.el-button--success.is-disabled:hover{background-color:#b3e19d;border-color:#b3e19d;color:#fff}.el-button--success.is-plain{background:#f0f9eb;border-color:#c2e7b0;color:#67c23a}.el-button--success.is-plain:focus,.el-button--success.is-plain:hover{background:#67c23a;border-color:#67c23a;color:#fff}.el-button--success.is-plain:active{background:#5daf34;border-color:#5daf34;color:#fff;outline:none}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover{background-color:#f0f9eb;border-color:#e1f3d8;color:#a4da89}.el-button--warning{background-color:#e6a23c;border-color:#e6a23c;color:#fff}.el-button--warning:focus,.el-button--warning:hover{background:#ebb563;border-color:#ebb563;color:#fff}.el-button--warning:active{outline:none}.el-button--warning.is-active,.el-button--warning:active{background:#cf9236;border-color:#cf9236;color:#fff}.el-button--warning.is-disabled,.el-button--warning.is-disabled:active,.el-button--warning.is-disabled:focus,.el-button--warning.is-disabled:hover{background-color:#f3d19e;border-color:#f3d19e;color:#fff}.el-button--warning.is-plain{background:#fdf6ec;border-color:#f5dab1;color:#e6a23c}.el-button--warning.is-plain:focus,.el-button--warning.is-plain:hover{background:#e6a23c;border-color:#e6a23c;color:#fff}.el-button--warning.is-plain:active{background:#cf9236;border-color:#cf9236;color:#fff;outline:none}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover{background-color:#fdf6ec;border-color:#faecd8;color:#f0c78a}.el-button--danger{background-color:#f56c6c;border-color:#f56c6c;color:#fff}.el-button--danger:focus,.el-button--danger:hover{background:#f78989;border-color:#f78989;color:#fff}.el-button--danger:active{outline:none}.el-button--danger.is-active,.el-button--danger:active{background:#dd6161;border-color:#dd6161;color:#fff}.el-button--danger.is-disabled,.el-button--danger.is-disabled:active,.el-button--danger.is-disabled:focus,.el-button--danger.is-disabled:hover{background-color:#fab6b6;border-color:#fab6b6;color:#fff}.el-button--danger.is-plain{background:#fef0f0;border-color:#fbc4c4;color:#f56c6c}.el-button--danger.is-plain:focus,.el-button--danger.is-plain:hover{background:#f56c6c;border-color:#f56c6c;color:#fff}.el-button--danger.is-plain:active{background:#dd6161;border-color:#dd6161;color:#fff;outline:none}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover{background-color:#fef0f0;border-color:#fde2e2;color:#f9a7a7}.el-button--info{background-color:#909399;border-color:#909399;color:#fff}.el-button--info:focus,.el-button--info:hover{background:#a6a9ad;border-color:#a6a9ad;color:#fff}.el-button--info:active{outline:none}.el-button--info.is-active,.el-button--info:active{background:#82848a;border-color:#82848a;color:#fff}.el-button--info.is-disabled,.el-button--info.is-disabled:active,.el-button--info.is-disabled:focus,.el-button--info.is-disabled:hover{background-color:#c8c9cc;border-color:#c8c9cc;color:#fff}.el-button--info.is-plain{background:#f4f4f5;border-color:#d3d4d6;color:#909399}.el-button--info.is-plain:focus,.el-button--info.is-plain:hover{background:#909399;border-color:#909399;color:#fff}.el-button--info.is-plain:active{background:#82848a;border-color:#82848a;color:#fff;outline:none}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover{background-color:#f4f4f5;border-color:#e9e9eb;color:#bcbec2}.el-button--medium{border-radius:4px;font-size:14px;padding:10px 20px}.el-button--medium.is-round{padding:10px 20px}.el-button--medium.is-circle{padding:10px}.el-button--small{border-radius:3px;font-size:12px;padding:9px 15px}.el-button--small.is-round{padding:9px 15px}.el-button--small.is-circle{padding:9px}.el-button--mini{border-radius:3px;font-size:12px;padding:7px 15px}.el-button--mini.is-round{padding:7px 15px}.el-button--mini.is-circle{padding:7px}.el-button--text{background:transparent;border-color:transparent;color:#409eff;padding-left:0;padding-right:0}.el-button--text:focus,.el-button--text:hover{background-color:transparent;border-color:transparent;color:#66b1ff}.el-button--text:active{background-color:transparent;color:#3a8ee6}.el-button--text.is-disabled,.el-button--text.is-disabled:focus,.el-button--text.is-disabled:hover,.el-button--text:active{border-color:transparent}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{content:"";display:table}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button.is-disabled{z-index:1}.el-button-group>.el-button:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.el-button-group>.el-button:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top-left-radius:4px;border-top-right-radius:4px}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:20px}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button.is-active,.el-button-group>.el-button:not(.is-disabled):active,.el-button-group>.el-button:not(.is-disabled):focus,.el-button-group>.el-button:not(.is-disabled):hover{z-index:1}.el-button-group>.el-dropdown>.el-button{border-bottom-left-radius:0;border-left-color:hsla(0,0%,100%,.5);border-top-left-radius:0}.el-button-group .el-button--primary:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-popper .popper__arrow,.el-popper .popper__arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.el-popper .popper__arrow{border-width:6px;filter:drop-shadow(0 2px 12px rgba(0,0,0,.03))}.el-popper .popper__arrow:after{border-width:6px;content:" "}.el-popper[x-placement^=top]{margin-bottom:12px}.el-popper[x-placement^=top] .popper__arrow{border-bottom-width:0;border-top-color:#ebeef5;bottom:-6px;left:50%;margin-right:3px}.el-popper[x-placement^=top] .popper__arrow:after{border-bottom-width:0;border-top-color:#fff;bottom:1px;margin-left:-6px}.el-popper[x-placement^=bottom]{margin-top:12px}.el-popper[x-placement^=bottom] .popper__arrow{border-bottom-color:#ebeef5;border-top-width:0;left:50%;margin-right:3px;top:-6px}.el-popper[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#fff;border-top-width:0;margin-left:-6px;top:1px}.el-popper[x-placement^=right]{margin-left:12px}.el-popper[x-placement^=right] .popper__arrow{border-left-width:0;border-right-color:#ebeef5;left:-6px;margin-bottom:3px;top:50%}.el-popper[x-placement^=right] .popper__arrow:after{border-left-width:0;border-right-color:#fff;bottom:-6px;left:1px}.el-popper[x-placement^=left]{margin-right:12px}.el-popper[x-placement^=left] .popper__arrow{border-left-color:#ebeef5;border-right-width:0;margin-bottom:3px;right:-6px;top:50%}.el-popper[x-placement^=left] .popper__arrow:after{border-left-color:#fff;border-right-width:0;bottom:-6px;margin-left:-6px;right:1px}.el-dropdown{color:#606266;display:inline-block;font-size:14px;position:relative}.el-dropdown .el-button-group{display:block}.el-dropdown .el-button-group .el-button{float:none}.el-dropdown .el-dropdown__caret-button{border-left:none;padding-left:5px;padding-right:5px;position:relative}.el-dropdown .el-dropdown__caret-button:before{background:hsla(0,0%,100%,.5);bottom:5px;content:"";display:block;left:0;position:absolute;top:5px;width:1px}.el-dropdown .el-dropdown__caret-button.el-button--default:before{background:rgba(220,223,230,.5)}.el-dropdown .el-dropdown__caret-button:hover:not(.is-disabled):before{bottom:0;top:0}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{padding-left:0}.el-dropdown__icon{font-size:12px;margin:0 3px}.el-dropdown .el-dropdown-selfdefine:focus:active,.el-dropdown .el-dropdown-selfdefine:focus:not(.focusing){outline-width:0}.el-dropdown [disabled]{color:#bbb;cursor:not-allowed}.el-dropdown-menu{background-color:#fff;border:1px solid #ebeef5;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);left:0;margin:5px 0;padding:10px 0;position:absolute;top:0;z-index:10}.el-dropdown-menu__item{color:#606266;cursor:pointer;font-size:14px;line-height:36px;list-style:none;margin:0;outline:none;padding:0 20px}.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover{background-color:#f4f5f7;color:#606266}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{border-top:1px solid #ebeef5;margin-top:6px;position:relative}.el-dropdown-menu__item--divided:before{background-color:#fff;content:"";display:block;height:6px;margin:0 -20px}.el-dropdown-menu__item.is-disabled{color:#bbb;cursor:default;pointer-events:none}.el-dropdown-menu--medium{padding:6px 0}.el-dropdown-menu--medium .el-dropdown-menu__item{font-size:14px;line-height:30px;padding:0 17px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:6px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:6px;margin:0 -17px}.el-dropdown-menu--small{padding:6px 0}.el-dropdown-menu--small .el-dropdown-menu__item{font-size:13px;line-height:27px;padding:0 15px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:4px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:4px;margin:0 -15px}.el-dropdown-menu--mini{padding:3px 0}.el-dropdown-menu--mini .el-dropdown-menu__item{font-size:12px;line-height:24px;padding:0 10px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:3px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:3px;margin:0 -10px}.el-notification{background-color:#fff;border:1px solid #ebeef5;border-radius:8px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-sizing:border-box;display:flex;overflow:hidden;padding:14px 26px 14px 13px;position:fixed;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s;width:330px}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{margin-left:13px;margin-right:8px}.el-notification__title{color:#303133;font-size:16px;font-weight:700;margin:0}.el-notification__content{color:#606266;font-size:14px;line-height:21px;margin:6px 0 0;text-align:justify}.el-notification__content p{margin:0}.el-notification__icon{font-size:24px;height:24px;width:24px}.el-notification__closeBtn{color:#909399;cursor:pointer;font-size:16px;position:absolute;right:15px;top:18px}.el-notification__closeBtn:hover{color:#606266}.el-notification .el-icon-success{color:#67c23a}.el-notification .el-icon-error{color:#f56c6c}.el-notification .el-icon-info{color:#909399}.el-notification .el-icon-warning{color:#e6a23c}.el-notification-fade-enter.right{right:0;transform:translateX(100%)}.el-notification-fade-enter.left{left:0;transform:translateX(-100%)}.el-notification-fade-leave-active{opacity:0}.el-dropdown-menu__item{min-width:100px}.el-dropdown-menu__item .item.red,.el-dropdown-menu__item .item.red>i{color:red!important}.el-dropdown-menu__item--divided:before{height:5px}.el-tooltip__popper.is-light{border-width:0;box-shadow:0 1px 6px rgba(0,0,0,.2)}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:hsla(0,0%,85%,.5)}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:hsla(0,0%,85%,.5)}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:hsla(0,0%,85%,.5)}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:hsla(0,0%,85%,.5)}.el-popover{border-width:0;box-shadow:0 1px 6px rgba(0,0,0,.2)}@font-face{font-family:zenicon;src:url(../css/fonts/zenicon.woff2) format("woff2")}.ft.icon{word-wrap:normal;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;speak:none;-webkit-font-feature-settings:"liga";direction:ltr;font-family:zenicon,serif;letter-spacing:normal;line-height:1;padding-left:1px;text-transform:none;transform:scale(1.2);transform-origin:50% 0;white-space:nowrap}.ft+.el-el-button,.ft+.ft,.ft+.z-confirm,.ft+.z-execute,.ft+.z-link,.ft+a{margin-left:.6rem}.ft.l12{margin-left:12px}.ft.r12{margin-right:12px}.ft.hover{cursor:pointer}.ft.hover:hover{color:#0285d7}.ft.dark{color:#0d0d0d}.ft.gray{color:#666}.ft.yellow{color:#f90}.ft.red{color:#ed3f14}.ft.green{color:#19be6b}.ft.blue{color:#2d8cf0}.ft.center{text-align:center}.ft.right{text-align:right}.ft.bold{font-weight:700}.ft.underline{text-decoration:underline}.ft.through{text-decoration:line-through}.ft.italic{font-style:italic}.ft.cursor{cursor:pointer}.ft.h1{font-size:1.3rem}.ft.h2{font-size:1.2rem}.ft.h3{font-size:1.1rem}.ft.h4{font-size:.9rem}.ft.h5{font-size:.8rem}@font-face{font-family:taskfont;src:url(../css/fonts/taskfont.woff2) format("woff2"),url(../css/fonts/taskfont.woff) format("woff"),url(../css/fonts/taskfont.ttf) format("truetype")}.taskfont{-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px;-moz-osx-font-smoothing:grayscale;font-family:taskfont,"serif"!important;font-size:16px;font-style:normal}.app-view-loading{align-items:center;background-color:hsla(0,0%,100%,.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:99999}.app-view-loading>div{text-align:center}.app-view-loading>div>div{color:#ccc;font:11px verdana;letter-spacing:1px;line-height:16px;margin:0;text-transform:uppercase}.app-view-loading>div>span{-webkit-animation:app-view-loadanim 1s infinite alternate;animation:app-view-loadanim 1s infinite alternate;background:#007db6;border-radius:8px;display:inline-block;height:8px;margin:2px;vertical-align:middle;width:8px}.app-view-loading>div>span:nth-of-type(2){-webkit-animation-delay:.2s;animation-delay:.2s;background:#008fb2}.app-view-loading>div>span:nth-of-type(3){-webkit-animation-delay:.4s;animation-delay:.4s;background:#009b9e}.app-view-loading>div>span:nth-of-type(4){-webkit-animation-delay:.6s;animation-delay:.6s;background:#00a77d}.app-view-loading>div>span:nth-of-type(5){-webkit-animation-delay:.8s;animation-delay:.8s;background:#00b247}.app-view-loading>div>span:nth-of-type(6){-webkit-animation-delay:1s;animation-delay:1s;background:#5ab027}.app-view-loading>div>span:nth-of-type(7){-webkit-animation-delay:1.2s;animation-delay:1.2s;background:#a0b61e}@-webkit-keyframes app-view-loadanim{0%{opacity:0}to{opacity:1}}@keyframes app-view-loadanim{0%{opacity:0}to{opacity:1}}.overlay-y{overflow-y:overlay!important}.overlay-y::-webkit-scrollbar{height:10px;width:10px}.overlay-y::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}.overlay-y::-webkit-scrollbar-thumb:active{background:rgba(0,0,0,.5);border-radius:10px}.overlay-y:hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);background-clip:content-box;border:2px solid transparent}.overlay-y:hover::-webkit-scrollbar-thumb:hover{border-bottom-width:0;border-top-width:0}.overlay-y::-webkit-scrollbar-track{background:transparent;border-radius:10px}.common-auto-tip{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.common-circle{border-radius:50%}.common-circle .common-circle-path{fill:transparent}.common-circle .common-circle-g-path-ring{stroke:#8bcf70}.common-circle .common-circle-g-path-core{fill:#8bcf70;transform:scale(.56);transform-origin:50%}.drawer-overlay{background:hsla(0,0%,4%,.76);box-sizing:border-box;display:flex;flex-direction:column;height:0;justify-content:flex-end;left:0;opacity:0;outline:none;pointer-events:none;position:fixed;top:0;width:0;z-index:1000}.drawer-overlay .overlay-mask{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.drawer-overlay .overlay-body{display:flex;flex-direction:column;height:100%;max-height:100%;max-width:100%;width:100%;z-index:2}.drawer-overlay .overlay-body .overlay-close{align-items:flex-end;display:flex;flex-shrink:0;justify-content:flex-end}.drawer-overlay .overlay-body .overlay-close>a{align-items:center;color:#dbdbde;display:flex;height:40px;justify-content:center;width:40px}.drawer-overlay .overlay-body .overlay-close>a .icon{height:24px;width:24px}.drawer-overlay .overlay-body .overlay-close>a>svg{transition:all .3s}.drawer-overlay .overlay-body .overlay-close>a:hover{color:#fff}.drawer-overlay .overlay-body .overlay-close>a:hover>svg{transform:rotate(-90deg)}.drawer-overlay .overlay-body .overlay-resize{height:5px;margin-bottom:-5px;width:100%;z-index:1}.drawer-overlay .overlay-body .overlay-content{background:#fff;border-radius:18px 18px 0 0;cursor:default;flex:1;opacity:0;position:relative;transform:translateY(15%) scale(.98)}.drawer-overlay.overlay-visible{height:100%;opacity:1;pointer-events:auto;transition:opacity .2s ease;width:100%}.drawer-overlay.overlay-visible .overlay-body .overlay-content{opacity:1;transform:translate(0) scale(1);transition:opacity .2s ease,transform .3s ease}.drawer-overlay.overlay-hide{height:100%;transition:opacity .2s ease;width:100%}.drawer-overlay.overlay-hide .overlay-body .overlay-content{transform:translateY(15%) scale(.98);transition:opacity .2s ease,transform .2s ease}.drawer-overlay.right{flex-direction:row;justify-content:flex-end}.drawer-overlay.right .overlay-body{flex-direction:row}.drawer-overlay.right .overlay-body .overlay-close{align-items:flex-start}.drawer-overlay.right .overlay-body .overlay-resize{height:100%;margin-right:-5px;width:5px;z-index:1}.drawer-overlay.right .overlay-body .overlay-content{border-radius:18px 0 0 18px;transform:translate(15%) scale(.98)}.drawer-overlay.right.overlay-visible .overlay-body .overlay-content{transform:translate(0) scale(1)}.drawer-overlay.right.overlay-hide .overlay-body .overlay-content{transform:translate(15%) scale(.98)}.img-upload-modal .ivu-modal-mask{z-index:1001}.img-upload-modal .ivu-modal-no-mask{background-color:rgba(55,55,55,.2)}.img-upload-modal .ivu-modal-wrap{z-index:1001}.imgcomp-upload-list{background:#fff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.2);display:inline-block;height:60px;line-height:60px;margin-right:4px;overflow:hidden;position:relative;text-align:center;vertical-align:top;width:60px}.imgcomp-upload-list .imgcomp-upload-img{background-position:50%;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%}.imgcomp-upload-list .imgcomp-upload-list-cover{background:rgba(0,0,0,.6);bottom:0;display:none;left:0;position:absolute;right:0;top:0}.imgcomp-upload-list .imgcomp-upload-list-cover i{color:#fff;cursor:pointer;font-size:24px;margin:0;transition:all .2s;vertical-align:middle}.imgcomp-upload-list .imgcomp-upload-list-cover i:hover{font-size:28px}.imgcomp-upload-list .ivu-progress{height:100%}.imgcomp-upload-list .ivu-progress .ivu-progress-outer{background-color:rgba(0,0,0,.68);height:100%}.imgcomp-upload-list .ivu-progress .ivu-progress-outer .ivu-progress-inner{margin:0 auto;width:88%}.imgcomp-upload-list:hover .imgcomp-upload-list-cover{display:block}.img-upload-foot,.img-upload-foot .img-upload-foot-input{align-items:center;display:flex;justify-content:flex-end}.img-upload-foot .img-upload-foot-input{flex:1;text-align:left}.img-upload-foot .img-upload-foot-input .img-upload-foot-httptitle{cursor:pointer;margin-right:22px;padding-left:3px}.add-box{background:#fff;border:1px dashed #dddee1;border-radius:4px;display:inline-block;height:60px;line-height:60px;overflow:hidden;position:relative;text-align:center;vertical-align:top;width:60px}.add-box .add-box-icon i{padding-bottom:2px;vertical-align:middle}.add-box .add-box-upload{background:rgba(0,0,0,.6);color:#fff;display:none;height:100%;left:0;padding-top:9px;position:absolute;top:0;width:100%}.add-box .add-box-upload .add-box-item{cursor:pointer;height:22px;line-height:22px}.add-box .add-box-upload .add-box-item .ivu-upload-drag,.add-box .add-box-upload .add-box-item .ivu-upload-drag:hover{background:transparent;border:0;border-radius:0}.add-box .add-box-upload .add-box-item span{font-size:12px;transition:all .2s}.add-box .add-box-upload .add-box-item:hover span{font-size:14px}.add-box em{font-style:normal}.add-box:hover{border-color:rgba(0,0,0,.6)}.add-box:hover .add-box-upload{display:block}.callback-add-box{background:transparent;border:0;display:block;height:25px;line-height:25px;width:auto}.callback-add-box .add-box-icon{display:none}.callback-add-box .add-box-upload{background:transparent;color:#333;display:block;padding:0;width:auto}.callback-add-box .add-box-upload>div{display:inline-block;padding-right:10px}.browse-load{margin:20px;text-align:center}.browse-list{max-height:540px;overflow:auto}.browse-list .browse-item{cursor:pointer;display:inline-block;margin:10px 15px;position:relative;text-align:center}.browse-list .browse-item .browse-img{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKoAAABxCAAAAABg5GeyAAACW0lEQVR4Ae3XVRLjMBAE0L3/rSwKM3OcSNPyLVYOLvM6UD0Bd03LVe9XH+RlhlRSSSWVVFJJJZVUUkkllVRSSSWVVFJJJZVUUkl9WyqppJJKKqmkkgpURP17xngOAR5NxW5wlJ9MaLQh83F4NHWmd/gZtdVBaOldfDB1bq5UpJFbFOC6LKnYrkRO209PAw+hIuzWB8Ep5es8HvYo4z4tE1X8UeRwlMM2D5Bzkc7kj6Bi3VTKDDwEeUcrMxrUvGDXTnHa6kK69SDN9sgq1clxKSbNHqqnYmdri81Q9QHf1JPt1Frncaib2XbiTKL2GkHaurnY9LOulMV0O7G6Kw+g9sw2ohhm62KezVJaaufjWC1TnOkr1exilJ7Ji0vxCCqO9V4UwV4PYr9+apouhGYLKfnahdpqegjmeoXOpXgANe70pKT6Zhu19qkY2nC0PZS527lQOyInqr8Uvc5jqfUb1X+PGh5IhW90S2quh3FQC2XRcF66TUkTXPcLKm5FtdR9RJq+2hWII7UpFtmsQLEyzsdJtkxxpr6gLotbUSlV9yeT0Trmzk2XPdUThLYarUbWOY9j04xXQ2u+pMZLYSumGmNUH3HbM9qOAwSHodN2Pks25F2j3aI7+IxqNsB+YLWb16ukSjiW4xNB0gMoMfApBS/XZQgi3p9/5RsiKNKZEOwYFVIF5VyTyD19sbyjIJiNJRZxpNbx2S8sGKvGZNHJBniBu9Wy5WxjGuQFqIAcBHiRGyt4ua5gSCWVVFJJJZVUUkkllVRSSSWVVFJJJZVUUkkllVRSSSWVVFI/AgO0SXIVYHeGAAAAAElFTkSuQmCC);background-position:50%;background-repeat:no-repeat;background-size:cover;height:64px;width:64px}.browse-list .browse-item .browse-title{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:64px}.browse-list .browse-item .browse-icon{background-color:rgba(0,0,0,.5);color:#fff;font-size:36px;height:64px;left:0;padding-top:15px;position:absolute;top:0;width:100%}.browse-list-disabled{position:relative}.browse-list-disabled:after{background-color:hsla(0,0%,100%,.9);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.common-loading{-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite;height:30px;margin:auto;max-height:100%;max-width:100%;overflow:hidden;transform-origin:center center;width:30px}.common-loading .common-path{stroke-dasharray:1,200;stroke-dashoffset:0;stroke-linecap:round;-webkit-animation:dash 1.5s ease-in-out infinite,color 6s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite,color 6s ease-in-out infinite}@-webkit-keyframes rotate{to{transform:rotate(1turn)}}@keyframes rotate{to{transform:rotate(1turn)}}@-webkit-keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}@-webkit-keyframes color{0%,to{stroke:#d62d20}40%{stroke:#0057e7}66%{stroke:#008744}80%,90%{stroke:#ffa700}}@keyframes color{0%,to{stroke:#d62d20}40%{stroke:#0057e7}66%{stroke:#008744}80%,90%{stroke:#ffa700}}.app-scroller-y{-webkit-overflow-scrolling:touch;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;position:absolute;right:0;top:0}.app-scroller-y .app-scroller-bottom{height:0;margin:0;padding:0}.app-scroller-y.static{flex:1;position:static}.common-spinner{bottom:20px;display:none;height:30px;margin:0 auto;position:fixed;right:20px;width:30px;z-index:9999}.common-spinner .common-circular{bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}.teditor-box .tox.tox-silver-sink,.teditor-transfer .tox.tox-silver-sink{z-index:13000}.teditor-box{min-height:22px;position:relative}.teditor-box .icon-inline{color:#bbb;left:0;position:absolute;top:0}.teditor-box textarea{opacity:0}.teditor-box .tox-tinymce{border-color:#dddee1;border-radius:4px;box-shadow:none;box-sizing:border-box;overflow:hidden}.teditor-box .tox-tinymce .tox-statusbar span.tox-statusbar__branding a{display:none}.teditor-box .tox-tinymce .tox-tbtn--bespoke .tox-tbtn__select-label{width:auto}.teditor-transfer{background-color:#fff}.teditor-transfer .tox-toolbar>div:last-child>button:last-child{margin-right:64px}.teditor-transfer .ivu-modal-header{display:none}.teditor-transfer .ivu-modal-close{top:7px;z-index:2}.teditor-transfer .teditor-transfer-body{height:100%;left:0;margin:0;padding:0;position:absolute;top:0;width:100%}.teditor-transfer .teditor-transfer-body textarea{opacity:0}.teditor-transfer .teditor-transfer-body .tox-tinymce{border:0}.teditor-transfer .teditor-transfer-body .tox-tinymce .tox-statusbar span.tox-statusbar__branding a{display:none}.teditor-loadstyle{height:180px;overflow:hidden;position:relative;width:100%}.teditor-loadedstyle{max-height:inherit;overflow:inherit;position:relative;width:100%}.upload-control{display:none;height:0;overflow:hidden;width:0}.tox-tinymce-inline{z-index:100000}.quick-edit{align-items:center;display:flex;max-width:100%}.quick-edit .quick-input{flex:1;max-width:100%;position:relative}.quick-edit .quick-input .quick-loading{align-items:center;bottom:0;display:flex;position:absolute;right:8px;top:0}.quick-edit .quick-input .quick-loading .common-loading{height:14px;margin:0;width:14px}.quick-edit .quick-text{align-items:center;height:20px;line-height:20px;margin-right:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-edit .quick-icon{cursor:pointer;display:none;font-size:16px}.quick-edit.quick-always .quick-icon{display:inline-block;opacity:.3;transition:opacity .2s}.ivu-table-row-hover .quick-edit .quick-icon,.quick-edit:hover .quick-icon{display:inline-block;opacity:1}.common-tag-input{background:#fff;border:1px solid #dddee1;border-radius:4px;color:#495060;cursor:text;display:inline-block;line-height:normal;min-height:32px;padding:2px 7px;position:relative;transition:all .2s;vertical-align:middle;width:100%}.common-tag-input:hover{border-color:#a2d98d}.common-tag-input.focus{border-color:#a2d98d;box-shadow:0 0 0 2px rgba(139,207,112,.2)}.common-tag-input .tags-input,.common-tag-input .tags-item{background-color:#f1f8ff;border-radius:3px;color:#495060;float:left;line-height:22px;margin:2px 6px 2px 0;padding:0 20px 0 6px;position:relative}.common-tag-input .tags-input .tags-content,.common-tag-input .tags-item .tags-content{line-height:22px}.common-tag-input .tags-input .tags-del,.common-tag-input .tags-item .tags-del{cursor:pointer;height:22px;position:absolute;right:0;text-align:center;top:-1px;width:20px}.common-tag-input .tags-input{-webkit-appearance:none;background-color:inherit;border:none;color:inherit;height:22px;line-height:22px;max-width:80%;outline:none;overflow:hidden;padding:0;resize:none}.common-tag-input .tags-input::-moz-placeholder{color:#bbb}.common-tag-input .tags-input:-ms-input-placeholder{color:#bbb}.common-tag-input .tags-input::placeholder{color:#bbb}.common-tag-input .tags-placeholder{color:hsla(0,0%,100%,0);left:0;position:absolute;top:0;z-index:-1}.common-tag-input:after{clear:both;content:"";display:block;height:0}.ivu-form-item-error .common-tag-input,.ivu-form-item-error .common-tag-input:hover{border-color:#ed4014}.ivu-form-item-error .common-tag-input.focus{border-color:#ed4014;box-shadow:0 0 0 2px rgba(237,64,20,.2)}.common-avatar{position:relative}.common-avatar.avatar-wrapper{align-items:center;display:flex}.common-avatar.avatar-wrapper .avatar-box{align-items:center;border-radius:50%;display:flex;position:relative}.common-avatar.avatar-wrapper .avatar-box .avatar-default{background-color:transparent}.common-avatar.avatar-wrapper .avatar-box .avatar-text{background-color:#8bcf70}.common-avatar.avatar-wrapper .avatar-box .avatar-text>span{display:inline-block;font-size:15px;line-height:1}.common-avatar.avatar-wrapper .avatar-box>em{background-color:#f90;border:1px solid #fff;border-radius:50%;bottom:0;height:8px;position:absolute;right:0;transform-origin:right bottom;width:8px;z-index:1}.common-avatar.avatar-wrapper .avatar-box.online>em{background-color:#8bcf70}.common-avatar.avatar-wrapper .avatar-name{overflow:hidden;padding-left:6px;text-overflow:ellipsis;white-space:nowrap}.common-avatar-transfer{line-height:1.5;padding:4px 2px}.common-avatar-transfer>p{padding:1px 2px}.common-avatar-transfer .avatar-icons{align-items:center;border-top:1px solid hsla(240,5%,96%,.5);display:flex;margin-top:12px;padding:8px 0 2px}.common-avatar-transfer .avatar-icons>i{color:#f4f4f5;cursor:pointer;font-size:22px;margin-right:12px}.common-avatar-transfer .avatar-icons>i:last-child{margin-right:0}.common-avatar-transfer .avatar-icons>i:hover{color:#fff}.common-user{position:relative;white-space:normal}.common-user .common-user-loading{align-items:center;bottom:0;display:flex;position:absolute;right:10px;top:2px}.common-user .common-user-loading .common-loading{height:14px;width:14px}.common-user.hidden-input .ivu-select-selection{padding:0 4px}.common-user.hidden-input .ivu-select-selection .ivu-select-input{display:none}.common-user-transfer .user-input-option,.common-user-transfer .user-input-option .user-input-avatar{align-items:center;display:flex}.common-user-transfer .user-input-option .user-input-avatar .avatar{height:26px;line-height:26px;width:26px}.common-user-transfer .user-input-option .user-input-nickname{flex:1;margin-left:10px}.common-user-transfer .user-input-option .user-input-userid{color:#ccc;font-size:12px;margin-left:10px;transition:margin .1s}.common-user-transfer .ivu-select-item.ivu-select-item-selected:after{top:8px}.common-user-transfer .ivu-select-item.ivu-select-item-selected .user-input-option .user-input-userid{margin-right:16px}.common-user-transfer .user-drop-prepend{border-bottom:1px solid #f1f1f1;color:#c5c8ce;font-size:12px;line-height:20px;margin-bottom:5px;padding-bottom:5px;text-align:center}.report{height:100%;padding:10px 20px}.report .report-list-wrap{display:flex;flex-direction:column;height:100%;padding-top:53px;position:absolute;top:0;width:100%}.report .report-list-wrap .report-row-foot{flex:0 0 auto}.report .report-list-wrap .report-row-content{flex:1 1 auto;overflow-y:auto}.report .report-list-wrap .report-row-content .ivu-table .ivu-table-body{height:100%;overflow-y:auto;padding-bottom:50px}.report .manage-box-report{margin-left:4px;transform:scale(.8);vertical-align:top}.report .page-box{margin-top:15px;text-align:center}.report .ivu-tabs{height:100%;position:relative}.report .ivu-tabs .ivu-tabs-bar{background:#fff;position:relative;z-index:2}.report .ivu-tabs .ivu-tabs-content{height:100%;margin-top:-53px;padding-top:53px;width:100%}.report-detail{display:flex;flex-direction:column;height:100%}.report-detail .report-title{border-bottom:1px solid #eee;flex-shrink:0;font-size:16px;font-weight:700;margin-bottom:12px;padding:20px 24px}.report-detail .report-detail-context{display:flex;flex:1;flex-direction:column;height:0;padding:12px 0 12px 24px}.report-detail .report-detail-context .report-main{flex:1;margin-top:12px;overflow:auto}.report-detail .report-detail-context .report-submitter p{opacity:.8}.report-detail .report-profile{font-size:14px;padding-right:24px}.report-detail .report-submitter{display:flex;flex-wrap:wrap;height:28px;line-height:28px}.report-detail .report-submitter p{display:block;padding-right:12px;text-align:justify;width:100%}.report-detail .report-submitter p:after{content:"";display:inline-block;width:100%}.report-detail .report-submitter>div{margin-right:8px}.report-detail .ivu-col{margin-bottom:12px}.report-detail .report-content{width:100%}.report-detail .report-content h2{margin-bottom:10px}.report-detail .report-content ol{margin-bottom:20px;padding-left:18px}.report-detail .report-content ol li{font-size:14px;line-height:24px}.report-detail .report-content img{max-width:100%}.report-box{display:flex;flex-direction:column;height:100%;padding:24px}.report-box .report-row-foot{flex:0 0 auto}.report-box .report-row-content{flex:1 1 auto;overflow-y:auto}.report-box .report-row-content .report-row-content-editor{height:100%}.report-box .report-row-content .report-row-content-editor .ivu-form-item-content{display:flex;height:100%}.report-box .report-row-content .report-row-content-editor .ivu-form-item-content .teditor-wrapper{display:flex;flex:1}.report-box .report-row-foot{margin-bottom:0}.report-box .report-titles{line-height:32px}.report-box .report-poptip .ivu-tooltip-inner{font-size:12px!important;min-width:60px!important}.report-box .report-users{align-items:center;display:flex}.report-box .report-users .common-user{flex:1;margin-right:12px}.report-box .report-users .report-row-a{flex-shrink:0}.report-box .report-radiogroup{background:#f4f5f7!important;border-radius:4px!important;padding:2px!important}.report-box .report-radiogroup .ivu-radio-wrapper{background:#f4f5f7!important;border:none!important;box-shadow:none!important;color:#515a6e!important;padding:0 30px!important}.report-box .report-radiogroup .ivu-radio-wrapper:after,.report-box .report-radiogroup .ivu-radio-wrapper:before{width:0!important}.report-box .report-radiogroup .ivu-radio-focus{border:none!important;box-shadow:none!important}.report-box .report-radiogroup .ivu-radio-focus:after{background:none!important}.report-box .report-radiogroup .ivu-radio-wrapper-checked:not(.ivu-radio-wrapper-disabled){background:#fff!important;border:none!important;border-radius:4px!important;box-shadow:none!important;color:#8bcf70!important}.report-box .report-buttongroup{background:#f4f5f7!important;border-radius:4px;margin-left:20px}.report-box .report-buttongroup .report-buttongroup-vertical{background-color:#e5e5e5;height:23px;left:47px;position:absolute;top:5px;width:1px}.report-box .report-buttongroup .ivu-btn-primary{background:#f4f5f7!important;border:none!important;box-shadow:none!important;color:#8bcf70!important;height:36px;line-height:34px}.report-box .report-buttongroup .ivu-btn-primary[disabled]{color:#515a6e!important}.report-row{margin-bottom:20px}.report-row .report-row-a{float:right;line-height:32px}.report-row .report-row-a .report-row-a-icon{font-size:16px;margin-right:2px;transform:rotate(-90deg)}.report-row .report-bottom{height:38px;line-height:36px;min-width:120px}.report-row .ivu-input[disabled]{color:#666}.common-right-bottom{align-items:flex-end;bottom:22px;display:flex;flex-direction:column;position:absolute;right:26px;transition:bottom .3s;z-index:1}.common-right-bottom .common-right-bottom-link{background-color:#8bcf70;border-color:#8bcf70;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;height:32px;line-height:32px;margin:4px 0;padding:0 15px}.common-right-bottom .common-right-bottom-link:hover{color:#fff;opacity:.9}.common-right-bottom-notification .notification-head{align-items:center;display:flex}.common-right-bottom-notification .notification-head .notification-title{color:#303133;display:inline-block;font-size:18px;font-weight:500;margin-right:6px;vertical-align:middle}.common-right-bottom-notification .notification-body{margin:18px 0;max-height:210px;overflow-x:hidden;overflow-y:auto}.common-right-bottom-notification .notification-body .markdown-preview{margin:-20px -12px}.common-right-bottom-notification .notification-body .markdown-preview h2{font-size:18px!important;padding-top:2px!important}.common-right-bottom-notification .notification-body .markdown-preview ul li{padding:2px 0 2px 2px!important}.common-right-bottom-notification .notification-body .markdown-preview ul li:after{height:6px!important;top:10px!important;width:6px!important}.common-right-bottom-notification .notification-link{margin-top:20px;text-align:right}.common-right-bottom-notification .notification-link>button+button{margin-left:6px}body{overflow:hidden}body .form-tip{color:#999;line-height:22px;padding:5px 0}body .ivu-input,body .ivu-select-selection{border-color:#e8e8e8}body .ivu-select-dropdown{max-height:360px}body .ivu-select-dropdown.select-node .ivu-select-item{align-items:center;display:flex;justify-content:space-between}body .ivu-select-dropdown.select-node .ivu-select-item .option-title{flex:1}body .ivu-select-dropdown.select-node .ivu-select-item .ivu-tag{flex-shrink:0;margin-left:18px;margin-right:0;transform:scale(.9);transform-origin:right center}body .ivu-select-dropdown.ivu-date-picker-transfer{max-width:98%;overflow:auto}body .ivu-tooltip-popper .ivu-tooltip-inner{white-space:normal}body .ivu-table table{width:100%!important}body .ivu-table table .ivu-table-cell{padding-left:12px;padding-right:12px}body .ivu-table table thead .ivu-table-cell{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .ivu-table table tbody .tree-icon-loading .ivu-table-cell{align-items:center;display:flex}body .ivu-table table tbody .tree-icon-loading .ivu-table-cell .ivu-table-cell-tree{margin-right:6px}body .ivu-table .td-ellipsis{align-items:center;display:flex;max-width:100%}body .ivu-table .td-ellipsis .remark-text{align-items:center;height:20px;line-height:20px;margin-right:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .ivu-table .td-ellipsis .remark-icon{cursor:pointer;display:none;font-size:16px}body .ivu-table .td-ellipsis .remark-tag{background:#f7f7f7;border:1px solid #e8eaec;border-radius:3px;color:#606266;display:inline-block;font-size:12px;height:22px;line-height:22px;margin:2px 4px 2px 0;opacity:1;overflow:visible;padding:0 4px;vertical-align:middle;white-space:nowrap}body .ivu-table .td-ellipsis .remark-tag.pointer-tag{background:#e6f7ff;border-color:#91d5ff;color:#1890ff;cursor:pointer}body .ivu-table .td-action,body .ivu-table .td-ellipsis .icon-tooltip .ivu-tooltip-rel{align-items:center;display:flex}body .ivu-table .td-action{justify-content:center;max-width:100%}body .ivu-table .td-action .td-action-container{flex-shrink:0}body .ivu-table .td-action .td-action-container a{font-size:12px;padding:0 5px}body .ivu-table .td-action .td-action-container.td-action-menu{align-items:center;display:flex}body .ivu-table .td-action .td-action-container.td-action-menu .menu-dropdown{display:flex}body .ivu-table .td-action .td-action-container.td-action-menu .menu-icon{cursor:pointer;font-size:21px;padding:0 6px}body .ivu-table .ivu-table-row-hover:hover .td-ellipsis .remark-icon{display:inline-block}body .ivu-table:before{background-color:#efefef}body .ivu-modal-wrap{overflow:overlay}body .ivu-modal-wrap .ivu-modal{padding-bottom:100px;top:100px}@media (max-height:900px){body .ivu-modal-wrap .ivu-modal{padding-bottom:35px;top:35px}}body .ivu-modal-wrap .ivu-modal.ivu-modal-fullscreen{top:0}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer,body .ivu-modal-wrap .ivu-modal .ivu-modal-header{border-color:transparent}body .ivu-modal-wrap .ivu-modal .ivu-modal-header{padding:22px 24px 20px}body .ivu-modal-wrap .ivu-modal .ivu-modal-header .ivu-modal-header-inner{font-size:18px}body .ivu-modal-wrap .ivu-modal .ivu-modal-body{padding:16px 32px 2px}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer{padding:20px 30px 22px}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .ivu-btn{height:34px;line-height:32px;min-width:94px}@media (max-width:576px){body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption{align-items:center;display:flex}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption>.ivu-btn{padding:0}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption>.ivu-btn>span{padding:0 15px}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn{height:38px;line-height:36px;min-width:auto}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn,body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn-group,body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-poptip{flex:1}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn-group,body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-poptip{align-items:center;display:flex}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-poptip .ivu-poptip-rel{align-items:center;display:flex;flex:1}}body .ivu-modal-wrap .ivu-modal .ivu-modal-content{border-radius:18px}body .ivu-modal-wrap .ivu-modal .ivu-modal-content .ivu-modal-close .ivu-icon-ios-close{font-size:38px;right:2px;top:3px;transition:all .2s}body .ivu-modal-wrap .ivu-modal .ivu-modal-content .ivu-modal-close:hover .ivu-icon-ios-close{transform:rotate(-90deg)}body .ivu-modal-wrap .ivu-modal-confirm{padding:6px 0 20px}body .ivu-modal-wrap .ivu-modal-confirm .ivu-modal-confirm-body>div{word-break:break-all}body .ivu-modal-wrap .form-network-add-tabs .ivu-tabs-tabpane{padding:10px 6px 0}body .ivu-modal-wrap .form-network-add-in-out{padding:0 6px}body .ivu-modal-wrap .form-network-add-in-out .select-in-type span.ivu-radio{display:none}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item-checked{border:1px solid #8bcf70!important;color:#8bcf70}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item{align-items:center;border:1px solid #e8ebee;border-radius:4px;display:flex;margin:0 8px 0 0;min-width:90px;padding:0 12px}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item>span{flex:1}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item:hover{cursor:pointer}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item .select-in-type-icon{margin-left:12px}body .ivu-modal-wrap .form-network-add-in-out .select-in-node{margin-top:18px}body .ivu-progress,body .ivu-progress .ivu-progress-outer{align-items:center;display:flex}body .ivu-progress.ivu-progress-show-info .ivu-progress-outer{margin:0;padding:0}body .ivu-progress.ivu-progress-show-info .ivu-progress-text{flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .ivu-drawer-right .ivu-drawer-content{border-radius:18px 0 0 18px}body .ivu-drawer-right .ivu-drawer-content .ivu-drawer-header{border-bottom:1px solid transparent;padding-bottom:6px;padding-top:16px}body .ivu-drawer-right .ivu-drawer-content .ivu-drawer-header .ivu-drawer-header-inner{font-size:18px;height:32px;line-height:32px;padding:0 4px}body .ivu-drawer-right .ivu-drawer-content .ivu-drawer-body{padding:10px 20px}body .ivu-drawer-bottom .ivu-drawer-content{border-radius:18px 18px 0 0}body .ivu-drawer-bottom .ivu-drawer-content .ivu-drawer-close{top:-40px}body .ivu-drawer-bottom .ivu-drawer-content .ivu-drawer-close .ivu-icon{color:#fff;font-size:40px}[hidden=hidden]{display:none!important}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}.page-container{padding:20px 0;text-align:center}.search-container{margin-bottom:12px}.search-container>ul{align-items:flex-end;display:flex;flex-wrap:wrap}.search-container>ul>li{display:flex;flex:1;flex-direction:column;flex-shrink:0;list-style:none;margin-bottom:12px;margin-right:12px}.search-container>ul>li:last-child{margin-right:0}.search-container>ul>li .search-label{font-weight:600}.search-container>ul>li .search-content{margin-top:6px}.search-container>ul>li.search-button{align-items:center;display:flex;flex:none;flex-direction:row}.search-container>ul>li.search-button>button+button{margin-left:8px}.search-container.lr>ul>li:not(.search-button){align-items:center;flex:none;flex-direction:row;margin-right:18px}.search-container.lr>ul>li:not(.search-button) .search-label{flex-shrink:0}.search-container.lr>ul>li:not(.search-button) .search-content{margin-left:6px;margin-top:0}.search-container.lr>ul>li:not(.search-button) .search-content .ivu-input-wrapper,.search-container.lr>ul>li:not(.search-button) .search-content .ivu-select{max-width:100%;width:168px}.search-container.auto>ul>li:not(.search-button){flex:none}.search-container.auto>ul>li:not(.search-button) .search-content{margin-left:6px;margin-top:0}.search-container.auto>ul>li:not(.search-button) .search-content .ivu-input-wrapper,.search-container.auto>ul>li:not(.search-button) .search-content .ivu-select{max-width:100%;width:150px}.search-expand{align-items:flex-end;display:flex}.search-expand .search-container{flex:1}.search-expand .expand-button-group{flex-shrink:0;margin-bottom:24px;margin-left:24px}.search-button-clear .ivu-tooltip-inner{align-items:center;display:flex;padding:0}.search-button-clear .ivu-tooltip-inner .ivu-btn{font-size:13px;min-width:80px}.icon-loading{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}@-webkit-keyframes icon-loading-load{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes icon-loading-load{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.page-calendar{display:flex;flex-direction:column}.page-calendar .calendar-head{align-items:flex-start;border-bottom:1px solid #f4f4f5;display:flex;flex-shrink:0;margin:32px 32px 16px}.page-calendar .calendar-head .calendar-titbox{align-items:center;display:flex;flex:1;margin-bottom:16px}.page-calendar .calendar-head .calendar-titbox .calendar-title{align-items:center;display:flex;margin-right:36px}.page-calendar .calendar-head .calendar-titbox .calendar-title>h1{color:#333;font-size:28px;font-weight:600}.page-calendar .calendar-head .calendar-titbox .calendar-arrow{margin-right:12px}.page-calendar .calendar-head .calendar-titbox .calendar-arrow>button{color:#888;font-size:12px}.page-calendar .calendar-head .calendar-titbox .calendar-arrow>button:focus{box-shadow:none}.page-calendar .calendar-head .calendar-titbox .calendar-view{display:flex;flex:1;justify-content:flex-end}.page-calendar .calendar-head .calendar-titbox .calendar-view>button:focus{box-shadow:none}.page-calendar .calendar-box{display:flex;flex:1;flex-direction:column;overflow:hidden;padding:0 48px 6px}.page-calendar .calendar-box .calendar-wrapper{flex:1;position:relative}.page-calendar .calendar-box .calendar-wrapper:before{background-color:#fff;content:"";height:2px;left:0;position:absolute;right:0;top:0;z-index:1}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup{box-shadow:none}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup .tui-full-calendar-section-header .tui-full-calendar-ic-checkbox-checked{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAhFBMVEUAAACLz3CLz3CLz3CKzm6Gy2+Lz3CLz3CL0HCLz3CLz3CLz3CLz3CMz3GLz3CKz3CLz3CL0HCJ0G+KznCN0HCL0HCLz3CKz3CLz3CLz3CLz3CMz3CLz3CLz3GL0XCL0HCN0XKLz3CLz3CMz3CLz3CM0HCM0G+FzHCLz3CKz3CMz3CLz3Bod5CFAAAAK3RSTlMA18RAOQ3s8+Pc0rmyq3tpiUwTgBnovyDMjmNSRjUvJQX5yKB0WisKppuUFLaY7gAAAotJREFUeNrtm+FymkAUhc8KqIAgSkyUtkmsmqa97/9+HWeSudpCd8qZ7E0m+73A9/1gxmXx4IK0nbipvDFTN2lT9JDVToLh6gx/sHQSFLfEFZUEp8IFczFgrv5CTChe/TsxYvfy/IkZy7M/c2KGywDUYkgNIBdDciARUxI0YkqDiZgygRNTHKZiyhRiTAyIATEgBsSAGBADYsAnCJgdmtIywKUAOrsA94QzJyKA95/pbALcPV7piADGryzDB+Rnv3IkAhi/UhMBjF9pQwbk3/A3JRXA+7GjAng/DqEC5v3+dMYE8P6nQsIEzFOPnw7g/QpC+R8K4QJ4f5iAzaA/TMAm6fdvZQgY+wW2fn9A0a66Bee/2xLH8kp/Rr1MB/3jAxaP0ALCPzagzPBCM9r/XcYH3K4BLfD4vw75xwdMbqB4CmaD/vEB2ztc0RD+MQHFg+c85fffDPv9AbPUd6Lz+ydCBDyjh1//6WcCGngK1L8a8lMBJTwFfj8XIC16+SnX7Af9bIDUngLSrwFEwaD/VogA5YheDj7/Wv1MgL9g/8XjpwNk+c8Cyq8BYwqePX46QOkGCmi/BowrqFi/Bvg4wYv6y7e4Kz4Rfj5AnzY/WSlcwHAB5+cD9ivKzwfIbEX4qQA99RB+NkDfO4b5sRAigHjzpP0C6u6D9wuo2z/eL+DvXx8Zv4C4gVd/qABxCeFnApQT5+cDpOP8fICcLv2VxbfjlQZUNh+vU/XbBIj6jQLm9wDWlZgFyOaYHJ3Ix/gDQwyIATEgBsSAGODBfuBgPvEwH7m0YkqLVExJYfsQuPcwdjOf+5kPHoFKjKio0e3Hn90WUCyGt7v3Nf0GsjqXYOR1hh6SJsz8v0mg/AZRXmaRKXtJBwAAAABJRU5ErkJggg==)}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup .tui-full-calendar-popup-container{border:0;border-radius:6px;box-shadow:0 1px 6px rgba(0,0,0,.2)}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup .tui-full-calendar-arrow-top .tui-full-calendar-popup-arrow-border{border-bottom-color:hsla(0,0%,85%,.5);top:-8px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-dropdown-menu{border-color:#e8e8e8;width:calc(100% - 14px)}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-icon.tui-full-calendar-calendar-dot,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-icon.tui-full-calendar-ic-title{display:none}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-icon.tui-full-calendar-ic-date{background-image:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTk2MCAxMjhIODMzYzAtNTMtNDMtOTYtOTYtOTZoLTE2Yy01MyAwLTk2IDQzLTk2IDk2SDQwMGMwLTI2LjUtMTAuNy01MC41LTI4LjEtNjcuOUMzNTQuNSA0Mi43IDMzMC41IDMyIDMwNCAzMmgtMTZjLTUzIDAtOTYgNDMtOTYgOTZINjRjLTM1LjMgMC02NCAyOC42LTY0IDY0djczNmMwIDM1LjMgMjguNyA2NCA2NCA2NGg4OTZjMzUuMyAwIDY0LTI4LjcgNjQtNjRWMTkyYzAtMzUuNC0yOC43LTY0LTY0LTY0em0tMjcxIDhjMC0yMi4xIDE3LjktNDAgNDAtNDBzNDAgMTcuOSA0MCA0MHY4MGMwIDIyLjEtMTcuOSA0MC00MCA0MC0xMSAwLTIxLTQuNS0yOC4zLTExLjdDNjkzLjUgMjM3IDY4OSAyMjcgNjg5IDIxNnYtODB6bS00MzMgMGMwLTIyLjEgMTcuOS00MCA0MC00MHM0MCAxNy45IDQwIDQwdjgwYzAgMjIuMS0xNy45IDQwLTQwIDQwLTExIDAtMjEtNC41LTI4LjMtMTEuN0MyNjAuNSAyMzcgMjU2IDIyNyAyNTYgMjE2di04MHptNzA0IDc2MGMwIDE3LjctMTQuMyAzMi0zMiAzMkg5NmMtMTcuNyAwLTMyLTE0LjMtMzItMzJWNDQ4aDg5NnY0NDh6IiBmaWxsPSIjNTE1MTUxIi8+PC9zdmc+");background-size:contain}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-content{padding-left:0}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-section{display:flex;justify-content:space-between;margin-bottom:10px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-section .tui-full-calendar-popup-section-item{border-color:#e8e8e8;border-radius:4px;height:36px;line-height:34px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-section .tui-full-calendar-popup-section-item input{height:34px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-title,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-title input{width:100%}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-end-date,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-start-date{width:210px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-end-date .tui-full-calendar-content,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-start-date .tui-full-calendar-content{padding-left:8px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-location,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-allday,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-private,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-state{display:none}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .priority{border-radius:4px;color:#fff;margin-right:6px;padding:2px 4px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .overdue{background:#fff1f0;border:1px solid #ffa39e;border-radius:4px;color:#f5222d;margin-right:6px;padding:1px 3px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-calendar-dot,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-ic-priority{opacity:0}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-ic-edit{background-image:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTgzMy40MjkgNjJIMTkwLjU3QTEyOC41NzEgMTI4LjU3MSAwIDAgMCA2MiAxOTAuNTcxVjgzMy40M0ExMjguNTcxIDEyOC41NzEgMCAwIDAgMTkwLjU3MSA5NjJIODMzLjQzQTEyOC41NzEgMTI4LjU3MSAwIDAgMCA5NjIgODMzLjQyOVYxOTAuNTdBMTI4LjU3MSAxMjguNTcxIDAgMCAwIDgzMy40MjkgNjJ6bTY0LjI4NSA3NzEuNDI5YTY0LjI4NiA2NC4yODYgMCAwIDEtNjQuMjg1IDY0LjI4NUgxOTAuNTdhNjQuMjg2IDY0LjI4NiAwIDAgMS02NC4yODUtNjQuMjg1VjE5MC41N2E2NC4yODYgNjQuMjg2IDAgMCAxIDY0LjI4NS02NC4yODVIODMzLjQzYTY0LjI4NiA2NC4yODYgMCAwIDEgNjQuMjg1IDY0LjI4NXoiIGZpbGw9IiM1MTUxNTEiLz48cGF0aCBkPSJNMTkwLjU3MSAyNTQuODU3aDY0LjI4NnY2NC4yODZoLTY0LjI4NnptMTI4LjU3MiAwaDQ1MHY2NC4yODZoLTQ1MHpNMTkwLjU3IDQ0Ny43MTRoNjQuMjg2VjUxMmgtNjQuMjg2em0xMjguNTcyIDBoNDUwVjUxMmgtNDUwek0xOTAuNTcgNjQwLjU3MWg2NC4yODZ2NjQuMjg2aC02NC4yODZ6bTEyOC41NzIgMEg2NDAuNTd2NjQuMjg2SDMxOS4xNDN6IiBmaWxsPSIjNTE1MTUxIi8+PC9zdmc+");top:-2px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-ic-delete{background-image:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTg5Mi4yODggMjU2SDcwMS4xMkEyMDIuMjQgMjAyLjI0IDAgMCAwIDUwOS42MzIgNjIuMDggMjAxLjIxNiAyMDEuMjE2IDAgMCAwIDMxOC44NDggMjU2SDEyOGMtMTguNjg4IDAtNjYuMDQ4LTQuMjI0LTY2LjA0OCAyNC43NjhDNjEuOTUyIDMyNy43NDQgMTA5LjM3NiAzMjAgMTI4IDMyMGg2NHY1MTJhMTQ2LjQ5NiAxNDYuNDk2IDAgMCAwIDEyNy40MjQgMTI4aDM4Mi4yNzJBMTUwLjAxNiAxNTAuMDE2IDAgMCAwIDgzMiA4MzJsLTMuMzkyLTUxMmg2NGMxOC4zNjggMCA2NS4wMjQgMS40NzIgNjUuMDI0LTM5Ljc0NEE3Mi4zODQgNzIuMzg0IDAgMCAwIDg5Mi4yODggMjU2ek01MDkuNjMyIDEyOC41MTJBMTM4LjE3NiAxMzguMTc2IDAgMCAxIDYzNy40NCAyNTZIMzgyLjU5MmExMzcuOTIgMTM3LjkyIDAgMCAxIDEyNy4wNC0xMjcuNDg4ek03NjggODMyYTk3Ljk4NCA5Ny45ODQgMCAwIDEtNjYuODggNjRIMzE4Ljg0OGE5My41NjggOTMuNTY4IDAgMCAxLTY0LTY0VjMyMEg3Njh2NTEyem0tMzg1LjQwOC02NFY1MTJjMC0xOC40OTYuOTYtNjAuOTkyIDM2LjczNi02MC45OTIgMjcuMzI4IDAgMjYuNDk2IDQzLjAwOCAyNi45NDQgNjAuOTkydjI1NmMwIDE4LjQ5Ni02LjQgMjAuMDMyLTI0Ljk2IDIwLjAzMnMtMzguNzItMS41MzYtMzguNzItMjAuMDMyem0xOTEuMTY4IDBWNTEyYTY0IDY0IDAgMCAxIDIzLjgwOC02MC45OTJjNDIuNDMyIDAgMzkuMzYgNDMuMDA4IDM5Ljg3MiA2MC45OTJ2MjU2YzAgMTguNDk2LTE5LjU4NCAyMC4wMzItMzcuOTUyIDIwLjAzMnMtMjUuNzkyLTEuNTM2LTI1Ljc5Mi0yMC4wMzJ6IiBmaWxsPSIjNTE1MTUxIi8+PC9zdmc+");top:-2px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-popup-detail-item-separate{padding-left:22px}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker{border-color:#e8e8e8}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar td,.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar th{height:32px}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar .tui-calendar-next-month.tui-calendar-date,.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar .tui-calendar-prev-month.tui-calendar-date{visibility:visible}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-datepicker-body .tui-timepicker,.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-datepicker-footer .tui-timepicker{padding:16px 46px 16px 47px}.page-calendar .calendar-menu{opacity:0;position:absolute;right:2px;top:2px;z-index:-1}@media (max-width:768px){.page-calendar .calendar-head .calendar-titbox .calendar-title{flex:1}.page-calendar .calendar-head .calendar-titbox .calendar-arrow{margin-left:12px;margin-right:0}.page-calendar .calendar-head .calendar-titbox .calendar-view{display:none}.page-calendar .calendar-box{padding:0 24px 5px}}.page-dashboard{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;width:100%}.page-dashboard .dashboard-wrapper{display:flex;flex-direction:column;margin-bottom:2%;max-height:80%;max-width:80%;width:664px}.page-dashboard .dashboard-wrapper .dashboard-hello{word-wrap:break-word;color:#333;font-size:24px;font-weight:600;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-desc{color:#888;font-size:13px;margin-top:18px;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-block{display:flex;margin-top:18px;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-block>li{background-color:#fa8e8c;border-radius:8px;cursor:pointer;display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;list-style:none;margin-right:24px;padding:16px 24px;transition:box-shadow .3s}.page-dashboard .dashboard-wrapper .dashboard-block>li:hover{box-shadow:0 0 10px #ccc}.page-dashboard .dashboard-wrapper .dashboard-block>li:first-child{background-color:#6f9ef6}.page-dashboard .dashboard-wrapper .dashboard-block>li:last-child{background-color:#98de6e;box-shadow:none;cursor:default;margin-right:0}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-title{color:hsla(0,0%,100%,.6);font-size:12px}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-data{align-items:center;display:flex;line-height:1;padding-top:10px}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .block-num{color:#fff;flex:1;font-size:32px;font-weight:600}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .taskfont{color:hsla(0,0%,100%,.7);font-size:20px}.page-dashboard .dashboard-wrapper .dashboard-title{font-size:15px;font-weight:600;margin-top:60px;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-list{margin-top:4px;overflow:auto;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-list>li{background:#f9fafb;border-radius:6px;cursor:pointer;display:flex;list-style:none;margin-top:12px;padding:8px 12px;position:relative;transition:box-shadow .3s}.page-dashboard .dashboard-wrapper .dashboard-list>li:hover{box-shadow:0 0 6px #dfdfdf}.page-dashboard .dashboard-wrapper .dashboard-list>li:last-child{margin-bottom:12px}.page-dashboard .dashboard-wrapper .dashboard-list>li.complete .item-title{opacity:.5;text-decoration:line-through}.page-dashboard .dashboard-wrapper .dashboard-list>li.complete .item-icon{display:none}.page-dashboard .dashboard-wrapper .dashboard-list>li .priority-color{height:12px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:2px}.page-dashboard .dashboard-wrapper .dashboard-list>li .el-dropdown{flex-shrink:0;height:22px;line-height:22px;width:22px}.page-dashboard .dashboard-wrapper .dashboard-list>li .el-dropdown .taskfont{color:#bbb;font-size:18px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title{flex:1;line-height:22px;padding-left:6px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;display:inline-block;font-size:12px;height:18px;line-height:16px;margin-right:3px;margin-top:3px;min-width:20px;padding:0 2px;text-align:center;vertical-align:top}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon{align-items:center;color:#aaa;cursor:pointer;display:flex;font-size:13px;height:22px;margin-left:16px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon .taskfont{font-size:13px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon>em{font-style:normal;margin-left:4px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon.overdue{color:#ed4014}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon.today{color:#f90}.page-dashboard .nopage{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;width:100%}.page-dashboard .nopage .nopage-icon{background-color:#f4f5f7;border-radius:50%;padding:20px}.page-dashboard .nopage .nopage-icon .ivu-icon{color:#d1d8dd;font-size:46px}.page-dashboard .nopage .nopage-text{background-color:#f4f5f7;border-radius:14px;color:#bec6cc;margin-top:16px;padding:4px 15px}@media (max-width:768px){.page-dashboard .dashboard-wrapper{display:block;max-height:86%;max-width:86%}.page-dashboard .dashboard-wrapper .dashboard-block{display:block;margin-top:10px}.page-dashboard .dashboard-wrapper .dashboard-block>li{margin:0 0 10px;padding:8px 12px}.page-dashboard .dashboard-wrapper .dashboard-title{margin-top:36px}.page-dashboard .dashboard-wrapper .dashboard-list{padding-bottom:22px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.page-file{display:flex;flex-direction:column;height:100%;width:100%}.page-file .file-wrapper{display:flex;flex:1;flex-direction:column;height:0;position:relative}.page-file .file-wrapper .file-head{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;margin:32px 32px 16px;padding-bottom:16px}.page-file .file-wrapper .file-head .file-nav{align-items:center;display:flex;flex:1}.page-file .file-wrapper .file-head .file-nav>h1{color:#333;font-size:28px;font-weight:600}.page-file .file-wrapper .file-head .file-nav .file-refresh{cursor:pointer;display:none;margin-left:12px}.page-file .file-wrapper .file-head .file-nav .file-refresh>i{font-size:18px}.page-file .file-wrapper .file-head .file-nav:hover .file-refresh{display:block}.page-file .file-wrapper .file-head .file-status{align-items:center;cursor:pointer;display:flex;flex-shrink:0;margin-left:22px}.page-file .file-wrapper .file-head .file-status>button{background:#8bcf70;border-color:#8bcf70;color:#fff}.page-file .file-wrapper .file-head .file-search{cursor:pointer;flex-shrink:0;margin-left:22px}.page-file .file-wrapper .file-head .file-search .ivu-input-wrapper{transform:translateZ(0);width:auto}.page-file .file-wrapper .file-head .file-search .ivu-input-wrapper .ivu-input{border-color:#dcdee2;border-radius:16px;padding-left:0;padding-right:30px;transition:all .3s;width:0}.page-file .file-wrapper .file-head .file-search .ivu-input-wrapper .ivu-input-suffix i{color:#606266}.page-file .file-wrapper .file-head .file-search.has-value .ivu-input-wrapper .ivu-input,.page-file .file-wrapper .file-head .file-search:hover .ivu-input-wrapper .ivu-input{padding-left:14px;width:160px}.page-file .file-wrapper .file-head .file-add{cursor:pointer;flex-shrink:0;margin-left:18px}.page-file .file-wrapper .file-head .file-add .taskfont{font-size:18px}.page-file .file-wrapper .file-no{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:center;margin-bottom:5%;opacity:.8}.page-file .file-wrapper .file-no>i{font-size:64px}.page-file .file-wrapper .file-no>p{font-size:14px;font-weight:500;line-height:1;margin-top:18px}.page-file .file-wrapper .file-navigator{align-items:center;display:flex;height:24px;line-height:24px;margin:0 32px}.page-file .file-wrapper .file-navigator>ul{align-items:center;display:flex;overflow:auto}.page-file .file-wrapper .file-navigator>ul>li{align-items:center;color:#8bcf70;cursor:pointer;display:flex;font-size:14px;list-style:none;padding-left:8px}.page-file .file-wrapper .file-navigator>ul>li:last-child{color:#606266;cursor:default}.page-file .file-wrapper .file-navigator>ul>li+li:before{color:#606266;content:"›";font-family:system-ui,sans-serif;font-size:16px;font-weight:500;line-height:1;margin-top:-2px;padding-right:8px}.page-file .file-wrapper .file-navigator>ul>li .taskfont{padding-right:2px}.page-file .file-wrapper .file-navigator>ul>li>span{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-file .file-wrapper .file-navigator>ul>li>span.readonly{background:#f7f7f7;border:1px solid #e8eaec;border-radius:2px;color:#606266;font-size:12px;line-height:20px;padding:0 5px;transform:scale(.8);transform-origin:right center}.page-file .file-wrapper .file-navigator .nav-load{align-items:center;display:flex;height:24px;justify-content:center;margin-left:8px;width:24px}.page-file .file-wrapper .file-navigator .nav-load .common-loading{height:12px;width:12px}.page-file .file-wrapper .file-navigator .nav-refresh{margin-left:8px}.page-file .file-wrapper .file-navigator .ivu-btn{font-size:12px;margin-left:12px}.page-file .file-wrapper .file-navigator .file-shear{align-items:center;display:flex}.page-file .file-wrapper .file-navigator .file-shear>span{padding-right:3px}.page-file .file-wrapper .file-navigator .file-shear>em{display:inline-block;font-style:normal;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-file .file-wrapper .file-navigator .flex-full{flex:1}.page-file .file-wrapper .file-navigator .switch-button{align-items:center;background-color:#fff;border-radius:6px;display:flex;position:relative;transition:box-shadow .2s}.page-file .file-wrapper .file-navigator .switch-button:hover{box-shadow:0 0 10px #e6ecfa}.page-file .file-wrapper .file-navigator .switch-button:before{background-color:rgba(139,207,112,.1);border:1px solid #8bcf70;border-radius:6px;color:#8bcf70;content:"";height:100%;left:0;position:absolute;top:0;transition:left .2s;width:50%;z-index:0}.page-file .file-wrapper .file-navigator .switch-button>div{align-items:center;border-radius:6px;color:#606266;cursor:pointer;display:flex;height:30px;justify-content:center;width:32px;z-index:1}.page-file .file-wrapper .file-navigator .switch-button>div>i{font-size:17px}.page-file .file-wrapper .file-navigator .switch-button>div:first-child{color:#8bcf70}.page-file .file-wrapper .file-navigator .switch-button.table:before{left:50%}.page-file .file-wrapper .file-navigator .switch-button.table>div:first-child{color:#606266}.page-file .file-wrapper .file-navigator .switch-button.table>div:last-child{color:#8bcf70}.page-file .file-wrapper .file-table{cursor:default;flex:1;margin:16px 32px 32px}.page-file .file-wrapper .file-table .ivu-table:before{display:none}.page-file .file-wrapper .file-table .ivu-table .ivu-table-tip{opacity:.8}.page-file .file-wrapper .file-table .ivu-table .ivu-table-tip span{font-size:14px;font-weight:500;line-height:1.8}.page-file .file-wrapper .file-table .ivu-table .ivu-table-tip span:before{-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px;content:"\e60b";display:block;font-family:taskfont,"serif"!important;font-size:64px;font-style:normal}.page-file .file-wrapper .file-table .file-nbox{align-items:center;display:flex;position:relative}.page-file .file-wrapper .file-table .file-nbox.shear{opacity:.38}.page-file .file-wrapper .file-table .file-nbox .file-name{align-items:center;display:flex;flex:1;margin-right:46px;position:relative;width:0}.page-file .file-wrapper .file-table .file-nbox .file-name:before{content:"";flex-shrink:0;height:22px;margin-right:8px;width:22px}.page-file .file-wrapper .file-table .file-nbox .permission{font-size:13px;padding-left:6px}.page-file .file-wrapper .file-table .file-nbox .taskfont{color:#aaa;font-size:16px;margin:0 3px}.page-file .file-wrapper .file-list{flex:1;margin-top:16px;overflow:auto;padding:0 20px 20px}.page-file .file-wrapper .file-list>ul{margin-top:-12px}.page-file .file-wrapper .file-list>ul>li{align-items:center;border-radius:5px;cursor:pointer;display:flex;flex-direction:column;float:left;height:110px;justify-content:space-between;list-style:none;margin:12px;position:relative;width:100px}.page-file .file-wrapper .file-list>ul>li .file-input{margin:0 4px 4px;position:relative}.page-file .file-wrapper .file-list>ul>li .file-input input{font-size:13px;margin:0;padding:1px 5px}.page-file .file-wrapper .file-list>ul>li .file-input .file-load{bottom:0;display:flex;position:absolute;right:6px;top:0}.page-file .file-wrapper .file-list>ul>li .file-input .file-load .common-loading{height:10px;width:10px}.page-file .file-wrapper .file-list>ul>li .file-name{color:#606266;display:block;font-size:12px;height:20px;line-height:20px;margin-bottom:5px;overflow:hidden;padding:0 6px;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.page-file .file-wrapper .file-list>ul>li .file-check{left:4px;opacity:0;position:absolute;top:1px;transition:opacity .2s}.page-file .file-wrapper .file-list>ul>li .file-check.file-checked{opacity:1}.page-file .file-wrapper .file-list>ul>li .file-menu{display:flex;opacity:0;position:absolute;right:2px;top:2px;transition:opacity .2s}.page-file .file-wrapper .file-list>ul>li .file-menu .ivu-icon{color:#aaa;font-size:16px;padding:2px 5px;transition:color .2s}.page-file .file-wrapper .file-list>ul>li .file-menu .ivu-icon:hover{color:#606266}.page-file .file-wrapper .file-list>ul>li .file-icon{display:inline-block;height:64px;margin-top:12px;position:relative;width:64px}.page-file .file-wrapper .file-list>ul>li .file-icon:before{bottom:0;left:0;position:absolute;right:0;top:0}.page-file .file-wrapper .file-list>ul>li .file-icon .share-avatar,.page-file .file-wrapper .file-list>ul>li .file-icon .share-icon{align-items:center;background-color:#9acd7b;border-radius:50%;bottom:0;display:flex;height:20px;justify-content:center;position:absolute;right:0;transform:scale(.9);width:20px}.page-file .file-wrapper .file-list>ul>li .file-icon .share-avatar .taskfont,.page-file .file-wrapper .file-list>ul>li .file-icon .share-icon .taskfont{color:#fff;font-size:18px}.page-file .file-wrapper .file-list>ul>li.shear{opacity:.38}.page-file .file-wrapper .file-list>ul>li.highlight,.page-file .file-wrapper .file-list>ul>li:hover{background-color:#f4f5f7}.page-file .file-wrapper .file-list>ul>li:hover .file-check,.page-file .file-wrapper .file-list>ul>li:hover .file-menu{opacity:1}.page-file .file-wrapper .file-menu{position:absolute}.page-file .file-upload-list{background-color:#fff;border:1px solid #ebeef5;border-radius:8px;bottom:16px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);display:flex;overflow:hidden;padding:14px 26px 14px 13px;position:fixed;right:16px;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s;width:380px}.page-file .file-upload-list .upload-wrap{flex:1;margin-left:13px;margin-right:8px}.page-file .file-upload-list .upload-wrap .title{color:#303133;font-size:16px;font-weight:700;margin:0}.page-file .file-upload-list .upload-wrap .title>em{color:#2b85e4;cursor:pointer;font-size:12px;font-style:normal;font-weight:400;padding-left:4px}.page-file .file-upload-list .upload-wrap .content{color:#606266;font-size:14px;line-height:21px;margin:12px -16px 0 0;max-height:500px;overflow:auto}.page-file .file-upload-list .upload-wrap .content>li{list-style:none;padding:4px 16px 4px 0;position:relative}.page-file .file-upload-list .upload-wrap .content>li .file-name{line-height:18px}.page-file .file-upload-list .upload-wrap .content>li .file-error{color:red;font-size:12px}.page-file .file-upload-list .upload-wrap .content>li .file-close{cursor:pointer;display:none;position:absolute;right:0;top:7px}.page-file .file-upload-list .upload-wrap .content>li:hover .file-close{display:block}.page-file .file-upload-list .upload-wrap .close{color:#909399;cursor:pointer;font-size:16px;position:absolute;right:15px;top:18px}.page-file-dropdown-menu{max-height:none!important}.page-file-dropdown-menu .ivu-dropdown{width:100%}.page-file-dropdown-menu .ivu-dropdown .arrow-forward-item{align-items:center;display:flex;justify-content:space-between;margin-right:-6px;min-width:90px}.page-file-dropdown-menu .ivu-dropdown .arrow-forward-item .ivu-icon{opacity:.7}.page-file-dropdown-menu .file-item{align-items:center;display:flex;position:relative}.page-file-dropdown-menu .file-item:before{content:"";flex-shrink:0;height:20px;margin-right:8px;width:20px}.page-file-share-form{display:flex;margin-bottom:12px}.page-file-share-form .share-userid{flex:1}.page-file-share-form>div{flex-shrink:0}.page-file-share-form>div:last-child{margin-right:0}.page-file-share-title{margin-bottom:14px;margin-top:-8px;padding:0 2px}.page-file-share-list{margin-bottom:24px;max-height:500px}.page-file-share-list>li{align-items:center;display:flex;margin-bottom:12px}.page-file-share-list>li .common-avatar{flex:1}.page-file-share-list>li .all-avatar{align-items:center;display:flex;flex:1}.page-file-share-list>li .all-avatar .avatar-text{height:32px;line-height:32px;width:32px}.page-file-share-list>li .all-avatar .avatar-name{overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.page-file-share-list>li .ivu-select{flex-shrink:0;width:auto}.page-file-share-list>li .delete{color:red}.page-file-drawer .overlay-content{border-radius:20px 20px 0 0!important}@media (max-width:768px){.page-file .file-wrapper .file-head{margin:24px 24px 16px}.page-file .file-wrapper .file-navigator{margin:0 24px}.page-file .file-wrapper .file-table{margin:16px 24px 24px}}.page-login{align-items:center;background-color:#f3f6fe;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.page-login .login-body{align-items:center;display:flex;flex-direction:column;max-height:100%;overflow:auto;padding:32px 0;width:100%}.page-login .login-body .login-logo{background:url(../images/logo.svg) no-repeat 50%;background-size:contain;flex-shrink:0;height:68px;width:68px}.page-login .login-body .login-box{background-color:#fff;border-radius:12px;box-shadow:0 0 10px #e6ecfa;margin-top:32px;width:400px}.page-login .login-body .login-box .login-title{font-size:24px;font-weight:600;margin-top:36px;text-align:center}.page-login .login-body .login-box .login-subtitle{color:#aaa;font-size:14px;margin-top:12px;padding:0 12px;text-align:center}.page-login .login-body .login-box .login-input{margin:32px 40px}.page-login .login-body .login-box .login-input>*{margin-top:26px}.page-login .login-body .login-box .login-input .ivu-input{border-color:#f1f1f1}.page-login .login-body .login-box .login-input .ivu-input[readonly=readonly]{background-color:#f5f5f5}.page-login .login-body .login-box .login-input .ivu-input-large{font-size:15px}.page-login .login-body .login-box .login-input .login-code .ivu-input-group-append,.page-login .login-body .login-box .login-input .login-code .ivu-input-group-prepend{background:transparent;border-color:#f1f1f1;font-size:14px}.page-login .login-body .login-box .login-input .login-code .ivu-input{border-left-color:transparent}.page-login .login-body .login-box .login-input .login-code .login-code-end{cursor:pointer;height:38px;margin:-6px -7px;overflow:hidden}.page-login .login-body .login-box .login-input .login-code .login-code-end img{height:100%}.page-login .login-body .login-box .login-input .login-switch{color:#aaa}.page-login .login-body .login-box .login-input .login-input-tips-box{position:relative}.page-login .login-body .login-box .login-input .login-input-tips-box .login-input-tips{bottom:-20px;color:#c7c7c7;font-size:12px;left:0;position:absolute}.page-login .login-body .login-box .login-input>.ivu-poptip,.page-login .login-body .login-box .login-input>.ivu-poptip>.ivu-poptip-rel{width:100%}.page-login .login-body .login-bottom{align-items:center;display:flex;margin-top:18px;width:388px}.page-login .login-body .login-bottom .login-setting{align-items:center;color:#666;cursor:pointer;display:flex;flex-shrink:0}.page-login .login-body .login-bottom .login-setting .taskfont{font-size:12px;margin-left:3px;margin-top:1px;transform:scale(.8)}.page-login .login-body .login-bottom .login-setting-menu{display:flex;flex-direction:column}.page-login .login-body .login-bottom .login-setting-item{align-items:center;display:flex;justify-content:space-between}.page-login .login-body .login-bottom .login-setting-item .ivu-icon{color:#666;margin-right:-6px;padding-left:6px}.page-login .login-body .login-bottom .login-forgot{color:#aaa;flex:1;padding-left:24px;text-align:right}.page-manage{bottom:0;display:flex;left:0;position:absolute;right:0;top:0}.page-manage .manage-box-menu{align-items:center;background:#f4f5f7;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;height:100%;position:relative;transition:all .2s;width:255px}.page-manage .manage-box-menu .manage-box-dropdown{flex-shrink:0;width:86%}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown{padding:7px 0}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown .ivu-dropdown-item{padding:9px 16px}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown .ivu-dropdown-item-divided{margin-top:7px}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown .ivu-dropdown-item-divided:before{top:-9px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title{align-items:center;background-color:#fff;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;margin-top:27px;padding:6px 10px;transition:box-shadow .3s}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title.menu-visible{box-shadow:0 1px 6px rgba(0,0,0,.2)}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-avatar{height:36px;width:36px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title>span{flex:1;font-size:16px;font-weight:600;overflow:hidden;padding-left:12px;text-overflow:ellipsis;white-space:nowrap}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-arrow{align-items:center;display:flex;flex-direction:column;justify-content:center;padding-left:16px;padding-right:2px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-arrow>i{font-size:12px;margin:-1px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-top-report{align-items:center;flex:0 0 auto;flex-direction:column;justify-content:center;margin-right:-6px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-top-report>i{font-size:12px;margin:-1px}.page-manage .manage-box-menu .manage-box-dropdown .manage-menu-report-badge{margin-left:6px;transform:scale(.9);vertical-align:top}.page-manage .manage-box-menu .manage-box-dropdown .manage-menu-language{align-items:center;display:flex;justify-content:space-between}.page-manage .manage-box-menu .manage-box-dropdown .manage-menu-language .ivu-icon{color:#666}.page-manage .manage-box-menu>ul{flex:1;margin-top:16px;overflow:auto;width:100%}.page-manage .manage-box-menu>ul>li{align-items:center;border-radius:4px;color:#6b6e72;cursor:pointer;display:flex;height:38px;margin:8px auto;max-width:100%;padding:0 4%;position:relative;width:80%}.page-manage .manage-box-menu>ul>li>i{font-size:20px;margin-right:10px;opacity:.3}.page-manage .manage-box-menu>ul>li .menu-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-manage .manage-box-menu>ul>li .menu-badge{margin-left:12px;transform:scale(.9)}.page-manage .manage-box-menu>ul>li.menu-project{align-items:center;cursor:default;display:flex;flex-direction:column;height:auto;padding:14px 0 0}.page-manage .manage-box-menu>ul>li.menu-project>ul{width:100%}.page-manage .manage-box-menu>ul>li.menu-project>ul>li{cursor:pointer;display:flex;flex-direction:column;list-style:none;margin:4px auto}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1{align-items:center;border-radius:4px;display:flex;justify-content:space-between;padding:0 8px 0 30px;position:relative}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1>em{align-items:center;cursor:pointer;display:flex;height:24px;justify-content:center;left:2px;position:absolute;top:50%;transform:translateY(-50%);width:24px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1>em:before{background:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNDgiIGhlaWdodD0iNDgiPjxwYXRoIGQ9Im0zNjYuMTgyIDEwOC4yMzcgNDQ1Ljg1IDMxOS43OTVhMTAyLjQgMTAyLjQgMCAwIDEgMCAxNjYuNTAyTDM2Ni4xODIgOTE0LjMzYTEwMi40IDEwMi40IDAgMCAxLTE2Mi4wOTktODMuMjUydi02MzkuNTlhMTAyLjQgMTAyLjQgMCAwIDEgMTYyLjEtODMuMjUxeiIgZmlsbD0iIzk5OSIvPjwvc3ZnPg==") no-repeat 50%;background-size:contain;content:"";height:12px;transition:transform .2s;width:12px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1 .title{color:#333;flex:1;height:38px;line-height:38px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1 .num{font-size:12px;padding-left:16px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2{cursor:default;display:none;margin:16px 4px;padding:0 8px 0 26px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p{align-items:center;display:flex;height:36px;padding:4px 0}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p em,.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p span{flex-shrink:0;font-size:12px;font-style:normal;padding-right:6px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p .ivu-progress{margin-right:-18px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p .ivu-progress .ivu-progress-inner{background-color:#e4e4e4}.page-manage .manage-box-menu>ul>li.menu-project>ul>li.active .project-h1{background-color:#fff}.page-manage .manage-box-menu>ul>li.menu-project>ul>li.open-menu .project-h1>em:before{transform:rotate(90deg)}.page-manage .manage-box-menu>ul>li.menu-project>ul>li.open-menu .project-h2{display:block}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .top{background-color:#eeeff1}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .operate{border:1px solid #8bcf70}.page-manage .manage-box-menu>ul>li.menu-project .common-loading{height:22px;margin:6px;width:22px}.page-manage .manage-box-menu>ul>li.menu-project .top-operate{display:flex;opacity:0;position:absolute;right:0;top:0}.page-manage .manage-box-menu>ul>li.active{background-color:#fff}.page-manage .manage-box-menu .manage-project-search{background-color:#fff;border-radius:12px;margin:12px 0 -2px;overflow:hidden;padding:0 3px;width:80%}.page-manage .manage-box-menu .manage-project-search .ivu-input{background-color:transparent;border-color:transparent;padding-left:30px}.page-manage .manage-box-menu .manage-project-search .ivu-input:focus,.page-manage .manage-box-menu .manage-project-search .ivu-input:hover{box-shadow:none}.page-manage .manage-box-menu .manage-project-search.loading .ivu-icon-ios-search{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}.page-manage .manage-box-menu .manage-project-search.loading .ivu-icon-ios-search:before{content:"\f45b"}.page-manage .manage-box-menu .manage-box-new-group{align-items:center;display:flex;margin-bottom:20px;margin-top:16px;width:80%}.page-manage .manage-box-menu .manage-box-new-group .manage-box-new{flex:1}.page-manage .manage-box-menu .manage-box-new-group .ivu-btn{height:38px}.page-manage .manage-box-menu .manage-box-new-group .ivu-dropdown .ivu-btn{border-radius:0 4px 4px 0;min-width:auto!important;padding:0 4px}.page-manage .manage-box-main{flex:1;position:relative}.page-manage .manage-box-main .manage-box-view{bottom:0;left:0;overflow:auto;position:absolute;right:0;top:0}.page-manage .manage-mini-menu{display:none;position:relative}.page-manage .manage-mini-menu .ivu-badge{left:30px;position:absolute;top:-6px;transform:scale(.9)}.page-manage-task-modal{display:flex;flex-direction:column}.page-manage-add-task-button-group{margin-left:8px!important}.page-manage-add-task-button-group .ivu-dropdown .ivu-btn{border-radius:0 4px 4px 0;min-width:auto!important;padding:0 4px}@media (max-width:768px){.page-manage .manage-box-menu{bottom:0;left:0;position:fixed;top:0;transform:translateX(-120%);width:100%;z-index:49}.page-manage .manage-box-menu.show768-menu{transform:translateX(0)}.page-manage .manage-mini-menu{align-items:center;background-color:#fff;border-radius:4px;box-shadow:0 0 50px rgba(0,0,0,.3);cursor:pointer;display:flex;font-size:22px;height:42px;justify-content:center;white-space:nowrap;width:46px}}.page-messenger{display:flex}.page-messenger .messenger-wrapper{align-items:flex-start;display:flex;flex:1}.page-messenger .messenger-wrapper .messenger-select{display:flex;flex-direction:column;flex-shrink:0;height:100%;max-width:320px;min-width:240px;position:relative;width:30%}.page-messenger .messenger-wrapper .messenger-select:after{background-color:#f4f5f5;content:"";height:100%;position:absolute;right:0;top:0;width:1px}.page-messenger .messenger-wrapper .messenger-select .messenger-search{align-items:center;display:flex;flex-shrink:0;height:54px;justify-content:center;padding:0 12px}.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper{background-color:#f7f7f7;border-radius:12px;flex:1;margin:0 4px;overflow:hidden;padding:0 8px}.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper .ivu-input{background-color:transparent;border-color:transparent}.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper .ivu-input:focus,.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper .ivu-input:hover{box-shadow:none}.page-messenger .messenger-wrapper .messenger-select .messenger-nav{align-items:center;display:flex;justify-content:space-evenly;padding:2px 0 12px}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p{color:#888;cursor:pointer;line-height:1;padding:0 6px;position:relative}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p .nav-num{position:absolute;right:-8px;top:-12px;transform:scale(.7)}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p.active{color:#555;font-weight:500}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p:hover{color:#777}.page-messenger .messenger-wrapper .messenger-select .messenger-list{flex:1;height:0;overflow-x:hidden;overflow-y:auto;padding-right:9px;width:100%}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li{align-items:flex-start;border:2px solid transparent;cursor:pointer;display:flex;flex-direction:row;list-style:none;margin-right:1px;padding:14px 10px;position:relative}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar,.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .user-avatar{flex-grow:0;flex-shrink:0;height:42px;margin:2px;width:42px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar{align-items:center;background-color:#61b2f9;border-radius:50%;color:#fff;display:flex;font-size:26px;justify-content:center}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar.project{background-color:#6e99eb}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar.task{background-color:#9b96df;font-size:24px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar.completed:after{bottom:0;color:#19be6b;content:"\f373";font-family:Ionicons,serif;font-size:32px;opacity:.2;pointer-events:none;position:absolute;right:12px;z-index:1}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box{display:flex;flex:1;flex-direction:column;padding-left:12px;width:0}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title{align-items:center;display:flex;flex-direction:row;justify-content:space-between;line-height:24px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title .ivu-tag{margin:0 4px 0 0;padding:0 5px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title .ivu-tag.ivu-tag-success{padding:0 6px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>span{color:#333;flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>i{color:#8bcf70;flex-shrink:0;font-size:12px;margin-left:8px;transform:scale(.9)}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>i.completed{font-size:18px;margin:0 4px 0 0;transform:scale(1)}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>em{color:#999;flex-shrink:0;font-size:12px;font-style:normal;margin-left:8px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-text{color:#999;font-size:12px;line-height:24px;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-num{left:42px;position:absolute;top:10px;transform:scale(.8)}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.top{background-color:#eeeff1}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.active{background-color:#f4f5f7}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.operate{border-color:#8bcf70}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.loading{align-items:center;display:flex;height:52px;justify-content:center;margin:0}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.loading .common-loading{height:20px;margin:0;width:20px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li{list-style:none;margin-left:24px;position:relative}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li .label{border-bottom:1px solid #efefef;height:34px;line-height:34px;margin-bottom:6px;margin-top:6px;padding-left:4px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loaded,.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loading{align-items:center;display:flex;height:52px;justify-content:center;margin:0}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loaded .common-loading,.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loading .common-loading{height:20px;margin:0;width:20px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li>ul>li{align-items:center;cursor:pointer;display:flex;flex-direction:row;height:52px;list-style:none}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li>ul>li .avatar{flex-grow:0;flex-shrink:0;height:30px;width:30px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li>ul>li .nickname{font-size:14px;overflow:hidden;padding:0 12px;text-overflow:ellipsis;white-space:nowrap}.page-messenger .messenger-wrapper .messenger-select .messenger-list .top-operate{display:flex;opacity:0;position:absolute;right:0;top:0}.page-messenger .messenger-wrapper .messenger-select .messenger-menu{align-items:center;border-top:1px solid #f4f5f5;display:flex;flex-shrink:0;height:52px;justify-content:center}.page-messenger .messenger-wrapper .messenger-select .messenger-menu>i{color:#aaa;cursor:pointer;font-size:24px;margin:0 24px;opacity:.9}.page-messenger .messenger-wrapper .messenger-select .messenger-menu>i.active{color:#8bcf70;opacity:1}.page-messenger .messenger-wrapper .messenger-select .messenger-menu>i:hover{opacity:1}.page-messenger .messenger-wrapper .messenger-msg{display:flex;flex:1;height:100%;position:relative;width:0}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer .dialog-back{display:none}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg{align-items:center;bottom:0;display:flex;flex:1;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:0}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg .msg-dialog-bg-icon{background-color:#f4f5f7;border-radius:50%;padding:20px}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg .msg-dialog-bg-icon .ivu-icon{color:#d1d8dd;font-size:46px}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg .msg-dialog-bg-text{background-color:#f4f5f7;border-radius:14px;color:#bec6cc;margin-top:16px;padding:4px 15px}@media (max-width:768px){.page-messenger .messenger-wrapper .messenger-select{background-color:#fff;height:100%;left:0;max-width:none;position:fixed;top:0;transform:translateX(-120%);transition:all .2s;width:100%;z-index:48}.page-messenger .messenger-wrapper .messenger-select.show768-menu{transform:translateX(0)}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-title{align-items:center;height:54px}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer{position:relative}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer .dialog-back{align-items:center;bottom:0;display:flex;font-size:26px;height:49px;justify-content:center;left:0;position:absolute;width:64px;z-index:1}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer .dialog-input{width:calc(100% - 44px)}}.page-project{align-items:flex-start;display:flex;flex:1}.page-project .project-list{background-color:#fafafa;flex:1;height:100%;width:0}.page-project .project-dialog{flex-shrink:0;height:100%;max-width:520px;min-width:320px;position:relative;width:35%}@media (max-width:768px){.page-project .project-list{height:auto}.page-project .project-dialog{height:100%;left:0;max-width:none;position:absolute;top:0;width:100%}}.page-setting{display:flex;flex-direction:column}.page-setting .setting-head{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;margin:32px 32px 16px}.page-setting .setting-head .setting-titbox{flex:1;margin-bottom:16px}.page-setting .setting-head .setting-titbox .setting-title{align-items:center;display:flex}.page-setting .setting-head .setting-titbox .setting-title>h1{color:#333;flex:1;font-size:28px;font-weight:600}.page-setting .setting-head .setting-titbox .setting-title .setting-more{display:none}.page-setting .setting-box{display:flex;flex:1;height:0;padding-bottom:16px}.page-setting .setting-box .setting-menu{border-right:1px solid #f4f4f5;flex-shrink:0;overflow:auto;width:200px}.page-setting .setting-box .setting-menu>ul{padding:12px 0 0 32px}.page-setting .setting-box .setting-menu>ul>li{color:#6b6e72;cursor:pointer;line-height:42px;list-style:none;margin:5px 0;padding:0 20px;position:relative}.page-setting .setting-box .setting-menu>ul>li.active,.page-setting .setting-box .setting-menu>ul>li:hover{background-color:#f4f5f7}.page-setting .setting-box .setting-menu>ul>li.version{cursor:default}.page-setting .setting-box .setting-menu>ul>li.version:hover{background-color:transparent}.page-setting .setting-box .setting-menu>ul>li.divided{margin-top:10px;padding-top:10px;position:relative}.page-setting .setting-box .setting-menu>ul>li.divided:before{background-color:#f4f4f5;content:"";height:1px;left:0;position:absolute;right:0;top:0;z-index:1}.page-setting .setting-box .setting-menu>ul>li.divided:after{background-color:#fff;content:"";height:9px;left:0;position:absolute;right:0;top:1px;z-index:2}.page-setting .setting-box .setting-content{display:flex;flex:1;flex-direction:column;overflow:auto;position:relative}.page-setting .setting-box .setting-content .setting-content-title{font-size:20px;font-weight:500;padding:12px 32px}.page-setting .setting-box .setting-content .setting-content-view{flex:1;position:relative}.page-setting .setting-box .setting-content .setting-content-view .setting-router-view{padding:24px 40px}.page-setting .setting-item .ivu-input,.page-setting .setting-item .ivu-select-selection{max-width:460px}.page-setting .setting-item .ivu-form{overflow:auto}.page-setting .setting-item .setting-color,.page-setting .setting-item .setting-template{margin-bottom:12px;max-width:600px;min-width:400px}.page-setting .setting-item .setting-color>div,.page-setting .setting-item .setting-template>div{padding-right:12px;text-align:center}.page-setting .setting-item .setting-color>div:first-child,.page-setting .setting-item .setting-template>div:first-child{text-align:left}.page-setting .setting-item .setting-color>div:last-child,.page-setting .setting-item .setting-template>div:last-child{flex:auto;flex-shrink:0;padding-right:0;width:60px}.page-setting .setting-item .setting-color>div .ivu-color-picker,.page-setting .setting-item .setting-template>div .ivu-color-picker{width:100%}.page-setting .setting-item .setting-color .information,.page-setting .setting-item .setting-template .information{color:#999}.page-setting .setting-item .setting-template>div{flex-shrink:0;text-align:left}.page-setting .setting-item .setting-template>div:last-child{flex:1;max-width:none;width:auto}.page-setting .setting-item .setting-footer>button{height:34px;line-height:32px;min-width:94px}.page-setting .setting-item .setting-auto-day{display:block;line-height:32px;margin-bottom:-10px;margin-top:12px;width:110px}.page-setting .setting-item.submit{bottom:0;display:flex;flex-direction:column;left:0;padding:0!important;position:absolute;right:0;top:0}.page-setting .setting-item.submit .ivu-form{flex:1;overflow:auto;padding:24px 40px}.page-setting .setting-item.submit .ivu-tabs{display:flex;flex:1;flex-direction:column;padding:16px 32px 0}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content{flex:1;height:0}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane{position:relative}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane .setting-system-item{bottom:0;display:flex;flex:1;flex-direction:column;left:0;position:absolute;right:0;top:0}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane .setting-system-item .ivu-form{padding:8px 12px}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane .setting-system-item .setting-footer{margin:0 -32px}.page-setting .setting-item.submit .setting-footer{border-top:1px solid #f4f4f5;flex-shrink:0;padding:16px 24px 0;position:static}@media (max-width:768px){.page-setting .setting-head .setting-titbox .setting-title .setting-more{align-items:center;display:flex;font-size:24px;height:42px;justify-content:center;width:42px}.page-setting .setting-box{position:relative}.page-setting .setting-box .setting-menu{background-color:#fff;height:100%;left:0;position:absolute;top:0;transform:translateX(-120%);transition:all .2s;width:100%;z-index:9}.page-setting .setting-box .setting-menu.show768-menu{transform:translateX(0)}.page-setting .setting-box .setting-menu>ul{padding:12px 32px}}.dialog-wrapper{background-color:#fff;bottom:0;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:0;z-index:1}.dialog-wrapper .dialog-title{display:flex;flex-direction:column;height:68px;justify-content:center;padding:0 30px;position:relative}.dialog-wrapper .dialog-title:before{background-color:#f4f5f5;bottom:0;content:"";height:1px;left:0;position:absolute;width:100%}.dialog-wrapper .dialog-title.completed:after{color:#19be6b;content:"\f373";font-family:Ionicons,serif;font-size:52px;opacity:.2;pointer-events:none;position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:1}.dialog-wrapper .dialog-title .main-title{align-items:center;display:flex;line-height:22px;max-width:100%}.dialog-wrapper .dialog-title .main-title .ivu-tag{flex-shrink:0;margin:0 6px 0 0;padding:0 5px}.dialog-wrapper .dialog-title .main-title .ivu-tag.ivu-tag-success{padding:0 6px}.dialog-wrapper .dialog-title .main-title .ivu-icon{font-size:18px;margin-right:6px}.dialog-wrapper .dialog-title .main-title .ivu-icon.completed{color:#8bcf70}.dialog-wrapper .dialog-title .main-title>h2{font-size:17px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-wrapper .dialog-title .main-title>em{font-size:17px;font-style:normal;font-weight:500;padding-left:6px}.dialog-wrapper .dialog-title .sub-title{color:#aaa;flex-shrink:0;font-size:12px;line-height:20px}.dialog-wrapper .dialog-title .sub-title.pointer{cursor:pointer}.dialog-wrapper .dialog-title .sub-title.pointer:hover{color:#888}.dialog-wrapper .dialog-scroller{flex:1;overflow:auto;padding:0 32px;position:relative}.dialog-wrapper .dialog-scroller .dialog-list>ul>li{align-items:flex-end;display:flex;flex-direction:row;list-style:none;margin-bottom:16px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li:first-child{margin-top:16px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-avatar{flex-shrink:0;height:30px;margin-bottom:20px;position:relative;width:30px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view{align-items:flex-start;display:flex;flex-direction:column;margin:0 0 0 8px;position:relative}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view.text{max-width:70%}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view:hover .dialog-head .dialog-menu{opacity:1}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head{align-items:flex-start;display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content{align-items:flex-start;background-color:#f4f5f7;border-radius:6px 6px 6px 0;display:flex;min-width:32px;padding:8px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-text{color:#333}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-text>pre{word-wrap:break-word;display:block;line-height:1.5;margin:0;padding:0;white-space:pre-wrap;word-break:break-word}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file{display:inline-block}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box{align-items:center;background-color:#fff;border-radius:3px;display:flex;padding:10px 14px;width:220px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-thumb{width:36px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-info{display:flex;flex-direction:column;justify-content:center;margin-left:12px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-info .file-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#333;display:-webkit-box;font-size:14px;line-height:18px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-info .file-size{color:#666;font-size:14px;padding-top:4px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.img{background-color:transparent;border-radius:6px;display:flex;max-height:220px;max-width:220px;overflow:hidden;padding:0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.img .file-img{cursor:pointer;display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-loading{display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-loading .common-loading{height:20px;margin:4px;width:20px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-unknown{text-decoration:underline}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu{margin-left:6px;opacity:0;transition:all .3s}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon>i{color:#999;cursor:pointer;display:inline-block;flex:1;font-size:13px;padding:4px 6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon>i+i{border-left:1px solid #ddd}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon>i:hover{color:#777}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot{align-items:center;display:flex;height:21px;line-height:1;padding-top:4px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .common-loading{height:10px;margin:0 2px;width:10px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .time{color:#bbb;font-size:12px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .done{color:#8bcf70;display:none;font-size:12px;margin-left:4px;transform:scale(.9)}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .percent{cursor:pointer;display:none;margin-left:4px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-action{align-items:flex-start;align-self:flex-start;display:flex;height:100%}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-action>*{margin:0 5px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history{cursor:pointer;font-size:13px;justify-content:center;margin:12px 0;opacity:.6;padding:3px 0;transition:opacity .2s}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history:hover{opacity:1}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history-tip{padding-top:60px;position:relative}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history-tip .history-text{background:#f5f5f5;border-radius:2px;font-size:12px;font-style:normal;height:22px;left:50%;line-height:22px;padding:0 48px;position:absolute;text-align:center;top:10px;transform:translateX(-50%)}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.loading{justify-content:center;padding:12px 0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.loading .common-loading{height:18px;margin:0;width:18px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.nothing{color:#999;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.bottom{height:0;margin:0;padding:0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self{flex-direction:row-reverse}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view{align-items:flex-end;margin:0 8px 0 0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head{flex-direction:row-reverse}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content{background-color:#8bcf70;border-radius:6px 6px 0 6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content .content-text{color:#fff}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content .content-file.file{background-color:#f4f5f7}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content .content-file.img{background-color:transparent;border-radius:6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-menu{margin-left:0;margin-right:6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-foot .done,.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-foot .percent{display:inline-block}.dialog-wrapper .dialog-footer{align-items:flex-end;display:flex;flex-direction:column;margin-bottom:20px;padding:0 28px;position:relative}.dialog-wrapper .dialog-footer .dialog-newmsg{background-color:rgba(0,0,0,.6);border-radius:16px;color:#fff;cursor:pointer;display:none;font-size:12px;height:30px;line-height:30px;margin-bottom:20px;margin-right:10px;padding:0 12px;z-index:2}.dialog-wrapper .dialog-footer .dialog-input{background-color:#f4f5f7;border-radius:10px;padding:10px 52px 10px 12px}.dialog-wrapper .dialog-footer .dialog-input .ivu-input{background-color:transparent;border:0;resize:none}.dialog-wrapper .dialog-footer .dialog-input .ivu-input:focus{box-shadow:none}.dialog-wrapper .dialog-footer .dialog-send{align-items:center;bottom:0;display:flex;font-size:18px;justify-content:center;position:absolute;right:28px;top:0;width:46px}.dialog-wrapper .dialog-footer .chat-upload{display:none;height:0;overflow:hidden;width:0}.dialog-wrapper .dialog-footer.newmsg{margin-top:-50px}.dialog-wrapper .dialog-footer.newmsg .dialog-newmsg{display:block}.dialog-wrapper .drag-over{align-items:center;background-color:hsla(0,0%,100%,.78);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:3}.dialog-wrapper .drag-over:before{border:2px dashed #7b7b7b;border-radius:12px;bottom:16px;content:"";left:16px;position:absolute;right:16px;top:16px}.dialog-wrapper .drag-over .drag-text{color:#666;font-size:18px;padding:12px}.dialog-wrapper-read-poptip-content{display:flex;position:relative}.dialog-wrapper-read-poptip-content .read,.dialog-wrapper-read-poptip-content .unread{flex:1;max-height:300px;overflow:auto}.dialog-wrapper-read-poptip-content .read>li,.dialog-wrapper-read-poptip-content .unread>li{list-style:none;margin-bottom:12px}.dialog-wrapper-read-poptip-content .read>li .common-avatar,.dialog-wrapper-read-poptip-content .unread>li .common-avatar{width:100%}.dialog-wrapper-read-poptip-content .read>li:last-child,.dialog-wrapper-read-poptip-content .unread>li:last-child{margin-bottom:6px}.dialog-wrapper-read-poptip-content .read>li.read-title>em,.dialog-wrapper-read-poptip-content .unread>li.read-title>em{font-size:18px;font-style:normal;font-weight:600;padding-right:6px}.dialog-wrapper-read-poptip-content .unread>li{padding-left:16px}.dialog-wrapper-read-poptip-content:before{background-color:#f4f4f5;bottom:0;content:"";left:50%;position:absolute;top:0;width:1px}.dialog-wrapper-paste{margin-top:-4px}.dialog-wrapper-paste img{max-height:1000px;max-width:100%}.dialog-wrapper-paste>div,.dialog-wrapper-paste>img{display:flex;flex-direction:column;margin:4px 0;padding:0}@media (max-width:768px){.dialog-wrapper .dialog-footer{margin-bottom:16px;padding:0 20px}.dialog-wrapper .dialog-footer .dialog-send{right:20px}}.file-content,.file-preview{border-radius:18px 18px 0 0;bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:absolute;right:0;top:0}.file-content .preview-iframe,.file-preview .preview-iframe{background:0 0;border:0;float:none;height:100%;left:0;margin:-1px 0 0;max-width:none;outline:0;padding:0;position:absolute;top:0;width:100%}.file-content .edit-header,.file-preview .edit-header{align-items:center;background-color:#fff;box-shadow:0 1px 5px 0 rgba(0,0,0,.05);display:flex;flex-direction:row;height:42px;position:relative;width:100%;z-index:99}.file-content .edit-header .header-title,.file-preview .edit-header .header-title{color:#333;flex:1;font-size:16px;line-height:24px;overflow:hidden;padding-left:24px;padding-right:24px;text-overflow:ellipsis;white-space:nowrap}.file-content .edit-header .header-title .file-unsave-tip,.file-preview .edit-header .header-title .file-unsave-tip{color:#333;cursor:pointer;font-weight:500;padding-right:6px;transition:color .3s}.file-content .edit-header .header-title .file-unsave-tip:hover,.file-preview .edit-header .header-title .file-unsave-tip:hover{color:#000}.file-content .edit-header .header-user,.file-preview .edit-header .header-user{margin-right:24px}.file-content .edit-header .header-user>ul,.file-preview .edit-header .header-user>ul{align-items:center;display:flex}.file-content .edit-header .header-user>ul>li,.file-preview .edit-header .header-user>ul>li{list-style:none;margin-right:-4px}.file-content .edit-header .header-user>ul>li.more,.file-preview .edit-header .header-user>ul>li.more{background-color:#8bcf70;border:2px solid #fff;border-radius:50%;color:#fff;font-size:12px;height:28px;line-height:24px;text-align:center;width:28px;z-index:1}.file-content .edit-header .header-hint,.file-preview .edit-header .header-hint{color:#666;font-size:12px;padding-right:22px;white-space:nowrap}.file-content .edit-header .header-hint .ivu-btn,.file-preview .edit-header .header-hint .ivu-btn{font-size:12px;padding:0 10px}.file-content .edit-header .header-hint .ivu-dropdown-item,.file-preview .edit-header .header-hint .ivu-dropdown-item{font-size:12px!important}.file-content .edit-header .header-button,.file-preview .edit-header .header-button{font-size:12px;margin-right:24px}.file-content .content-body,.file-preview .content-body{display:flex;flex:1;position:relative}.file-content .content-body .mdeditor-wrapper,.file-content .content-body .teditor-wrapper,.file-preview .content-body .mdeditor-wrapper,.file-preview .content-body .teditor-wrapper{display:flex;flex:1}.file-content .content-body .mdeditor-box,.file-preview .content-body .mdeditor-box{position:relative;width:100%}.file-content .content-body .mdeditor-box .markdown,.file-preview .content-body .mdeditor-box .markdown{bottom:0;left:0;overflow:auto;position:absolute;right:0;top:0;transform:translateZ(0)}.file-content .content-body .mdeditor-box .markdown .markdown-toolbars,.file-preview .content-body .mdeditor-box .markdown .markdown-toolbars{border-bottom:1px solid #eee}.file-content .content-body .mdeditor-box .markdown.border,.file-preview .content-body .mdeditor-box .markdown.border{border:0!important}.file-content .content-body .teditor-loadedstyle,.file-preview .content-body .teditor-loadedstyle{height:100%}.file-content .content-body .teditor-loadedstyle .tox-tinymce,.file-preview .content-body .teditor-loadedstyle .tox-tinymce{border:0;border-radius:0}.file-content .content-body .teditor-loadedstyle .tox-mbtn,.file-preview .content-body .teditor-loadedstyle .tox-mbtn{height:36px}.file-content .content-body .teditor-loadedstyle .tox-menubar,.file-content .content-body .teditor-loadedstyle .tox-toolbar-overlord,.file-preview .content-body .teditor-loadedstyle .tox-menubar,.file-preview .content-body .teditor-loadedstyle .tox-toolbar-overlord{background:#fff;padding:0 12%}.file-content .content-body .teditor-loadedstyle .tox-toolbar__overflow,.file-content .content-body .teditor-loadedstyle .tox-toolbar__primary,.file-preview .content-body .teditor-loadedstyle .tox-toolbar__overflow,.file-preview .content-body .teditor-loadedstyle .tox-toolbar__primary{background:none!important;border-top:1px solid #eaeaea!important}.file-content .content-body .teditor-loadedstyle .tox-toolbar-overlord,.file-preview .content-body .teditor-loadedstyle .tox-toolbar-overlord{border-bottom:1px solid #e9e9e9!important}.file-content .content-body .teditor-loadedstyle .tox-toolbar__group:not(:last-of-type),.file-preview .content-body .teditor-loadedstyle .tox-toolbar__group:not(:last-of-type){border-right:1px solid #eaeaea!important}.file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap,.file-preview .content-body .teditor-loadedstyle .tox-sidebar-wrap{border:1px solid #e8e8e8;border-radius:2px;box-shadow:0 4px 8px 0 rgba(0,0,0,.08);margin:22px 12%}.file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap .tox-edit-area,.file-preview .content-body .teditor-loadedstyle .tox-sidebar-wrap .tox-edit-area{border-top:0}.file-content .content-body .teditor-loadedstyle .tox-statusbar,.file-preview .content-body .teditor-loadedstyle .tox-statusbar{border-top:1px solid #e9e9e9}.file-content .content-body .teditor-loadedstyle .tox-statusbar .tox-statusbar__resize-handle,.file-preview .content-body .teditor-loadedstyle .tox-statusbar .tox-statusbar__resize-handle{display:none}.file-content .content-load,.file-preview .content-load{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:42px;z-index:1000}.file-content .content-load .common-loading,.file-preview .content-load .common-loading{margin:0}.file-preview .edit-header .header-title{align-items:center;display:flex}.file-preview .edit-header .header-title .ivu-tag{line-height:20px;margin-left:6px;padding:0 6px}.file-preview .edit-header .header-title .refresh{align-items:center;display:flex;margin-left:6px}.file-preview .edit-header .header-title .refresh .common-loading{height:16px;margin:2px;width:16px}.file-preview .edit-header .header-title .refresh>i{cursor:pointer;font-size:20px;opacity:.6;transition:all .2s}.file-preview .edit-header .header-title .refresh>i:hover{opacity:1}.file-preview .content-body{overflow:hidden}.file-preview .content-body .markdown-preview-warp{flex:1;overflow:auto}@media (max-width:1200px){.file-content{overflow:auto}.file-content .content-body,.file-content .edit-header{min-width:768px;overflow-x:auto}.file-content .content-body .tox .tox-toolbar--scrolling,.file-content .edit-header .tox .tox-toolbar--scrolling{flex-wrap:wrap}.file-content .content-body .teditor-loadedstyle .tox-menubar,.file-content .content-body .teditor-loadedstyle .tox-toolbar-overlord,.file-content .edit-header .teditor-loadedstyle .tox-menubar,.file-content .edit-header .teditor-loadedstyle .tox-toolbar-overlord{padding:0}.file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap,.file-content .edit-header .teditor-loadedstyle .tox-sidebar-wrap{margin:0}}.project-archived{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.project-archived .archived-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.project-archived .archived-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.project-archived .archived-title .title-icon>i{cursor:pointer}.project-dialog{background-color:#fff;border-left:1px solid #f4f5f5;display:flex;flex-direction:column;position:relative;z-index:1}.project-dialog .project-dialog-wrapper .dialog-user{margin-top:36px;padding:0 32px}.project-dialog .project-dialog-wrapper .dialog-user .member-head{align-items:center;display:flex}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-title{flex:1;font-size:18px;font-weight:600}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-title>span{color:#8bcf70;padding-left:6px}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-view-all{color:#999;cursor:pointer;font-size:13px}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-view-all:hover{color:#777}.project-dialog .project-dialog-wrapper .dialog-user .member-list{align-items:center;display:flex;margin-top:14px;overflow:auto}.project-dialog .project-dialog-wrapper .dialog-user .member-list::-webkit-scrollbar{display:none}.project-dialog .project-dialog-wrapper .dialog-user .member-list>li{list-style:none;margin-bottom:8px;margin-right:14px;position:relative}.project-dialog .project-dialog-wrapper .dialog-user .member-list.member-all{display:block}.project-dialog .project-dialog-wrapper .dialog-user .member-list.member-all>li{display:inline-block}.project-dialog .project-dialog-wrapper .dialog-footer .dialog-back{display:none}@media (max-width:768px){.project-dialog .project-dialog-wrapper .dialog-user{margin-top:24px;padding:0 20px}.project-dialog .project-dialog-wrapper .dialog-scroller,.project-dialog .project-dialog-wrapper .dialog-title{padding:0 20px}.project-dialog .project-dialog-wrapper .dialog-footer{position:relative}.project-dialog .project-dialog-wrapper .dialog-footer .dialog-back{align-items:center;bottom:0;display:flex;font-size:26px;justify-content:center;left:0;position:absolute;top:0;width:64px;z-index:1}.project-dialog .project-dialog-wrapper .dialog-footer .dialog-input{width:calc(100% - 44px)}}.project-list,.project-list .project-head{display:flex;flex-direction:column}.project-list .project-head{align-items:flex-start;margin:32px 32px 0}.project-list .project-head .project-titbox{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px;width:100%}.project-list .project-head .project-titbox .project-title{align-items:center;display:flex}.project-list .project-head .project-titbox .project-title>h1{color:#333;font-size:28px;font-weight:600}.project-list .project-head .project-titbox .project-title .project-load{align-items:center;display:flex;margin-left:18px}.project-list .project-head .project-titbox .project-title .project-load .common-loading{height:22px;width:22px}.project-list .project-head .project-titbox .project-title .top-text{background-color:#8bcf70;border-radius:4px;color:#fff;height:24px;margin-left:10px;margin-top:4px;padding-top:2px;text-align:center;width:40px}.project-list .project-head .project-titbox .project-icons{align-items:center;display:flex;flex-shrink:0;margin-top:3px}.project-list .project-head .project-titbox .project-icons>li{align-items:center;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;list-style:none;margin-left:16px;position:relative;transition:box-shadow .3s;width:36px}.project-list .project-head .project-titbox .project-icons>li:hover{box-shadow:0 0 6px #ccc}.project-list .project-head .project-titbox .project-icons>li.project-avatar{min-width:36px;width:auto}.project-list .project-head .project-titbox .project-icons>li.project-avatar:hover{box-shadow:none}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul{align-items:center;display:flex}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li{list-style:none;margin-left:-6px;transition:transform .2s}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li:hover{transform:scale(1.05)}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li:first-child{margin-left:0}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li.more{align-items:center;background-color:transparent;border-color:transparent;color:#aaa;display:flex;font-size:17px;height:32px;justify-content:center;transform:scale(1)!important;width:30px;z-index:1}.project-list .project-head .project-titbox .project-icons>li.project-icon{background-color:#f2f3f5;border-radius:50%}.project-list .project-head .project-titbox .project-icons>li.project-icon .menu-icon{font-size:20px;height:36px;line-height:36px;width:36px}.project-list .project-head .project-titbox .project-icons>li.project-icon .menu-badge{left:20px;position:absolute;top:-6px;transform:scale(.8)}.project-list .project-head .project-titbox .project-icons>li.project-icon .search-input{margin:2px 0;width:170px}.project-list .project-head .project-titbox .project-icons>li.project-icon.active{background-color:#8bcf70;color:#fff}.project-list .project-head .project-subbox{width:100%}.project-list .project-head .project-subbox .project-subtitle{color:#999;float:left;line-height:24px;padding:3px 0}.project-list .project-head .project-subbox .project-switch{align-items:flex-end;display:flex;float:right;margin-left:32px}.project-list .project-head .project-subbox .project-switch .project-checkbox{align-items:center;display:flex;height:30px;margin-right:14px;opacity:.9}.project-list .project-head .project-subbox .project-switch .project-checkbox .ivu-checkbox-focus{box-shadow:none}.project-list .project-head .project-subbox .project-switch .project-select{align-items:center;display:flex;height:30px;margin-right:14px;opacity:.9}.project-list .project-head .project-subbox .project-switch .project-select .project-flow{align-items:center;background:#f7f7f7;border:1px solid #e8eaec;border-radius:4px;cursor:pointer;display:flex;font-size:13px;height:28px;justify-content:center;line-height:26px;padding:0 8px}.project-list .project-head .project-subbox .project-switch .project-select .project-flow.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-list .project-head .project-subbox .project-switch .project-select .project-flow.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-list .project-head .project-subbox .project-switch .project-select .project-flow.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-list .project-head .project-subbox .project-switch .project-switch-button{align-items:center;background-color:#fff;border-radius:6px;display:flex;height:30px;position:relative;transition:box-shadow .2s}.project-list .project-head .project-subbox .project-switch .project-switch-button:hover{box-shadow:0 0 10px #e6ecfa}.project-list .project-head .project-subbox .project-switch .project-switch-button:before{background-color:rgba(139,207,112,.1);border:1px solid #8bcf70;border-radius:6px;color:#8bcf70;content:"";height:100%;left:0;position:absolute;top:0;transition:left .2s;width:50%;z-index:0}.project-list .project-head .project-subbox .project-switch .project-switch-button>div{align-items:center;border-radius:6px;color:#606266;cursor:pointer;display:flex;height:30px;justify-content:center;width:32px;z-index:1}.project-list .project-head .project-subbox .project-switch .project-switch-button>div>i{font-size:17px}.project-list .project-head .project-subbox .project-switch .project-switch-button>div:first-child{color:#8bcf70}.project-list .project-head .project-subbox .project-switch .project-switch-button.menu:before{left:50%}.project-list .project-head .project-subbox .project-switch .project-switch-button.menu>div:first-child{color:#606266}.project-list .project-head .project-subbox .project-switch .project-switch-button.menu>div:last-child{color:#8bcf70}.project-list .project-column{display:flex;height:100%;overflow-x:auto;overflow-y:hidden;padding-top:15px}.project-list .project-column>ul{align-items:flex-start;display:inline-flex;justify-content:space-between}.project-list .project-column>ul>li{display:flex;flex-direction:column;flex-shrink:0;height:100%;list-style:none;width:260px}.project-list .project-column>ul>li:first-child{margin-left:22px}.project-list .project-column>ul>li:last-child{margin-right:22px}.project-list .project-column>ul>li.add-column{background-color:#f2f3f5;border-radius:4px;color:#888;cursor:pointer;height:36px}.project-list .project-column>ul>li.add-column .add-column-text{align-items:center;display:flex;flex-direction:row;line-height:36px;padding:0 12px}.project-list .project-column>ul>li.add-column .add-column-text>i{font-size:16px;padding-right:8px}.project-list .project-column>ul>li.add-column .add-column-text:hover{color:#777}.project-list .project-column>ul>li.add-column .add-column-input{align-items:center;display:none;height:36px}.project-list .project-column>ul>li.add-column .add-column-input .ivu-input{height:36px;padding:4px 10px}.project-list .project-column>ul>li.add-column .add-column-input .ivu-input-icon{height:36px;line-height:36px;width:36px}.project-list .project-column>ul>li.add-column.show-input .add-column-text{display:none}.project-list .project-column>ul>li.add-column.show-input .add-column-input{display:flex}.project-list .project-column>ul>li .column-head{align-items:center;background-color:#f2f3f5;border-radius:4px;display:flex;margin:0 10px;padding:7px 10px}.project-list .project-column>ul>li .column-head .column-head-title{align-items:center;display:flex;flex:1;font-weight:500;width:0}.project-list .project-column>ul>li .column-head .column-head-title>span{font-size:15px}.project-list .project-column>ul>li .column-head .column-head-title>em{color:#888;font-size:14px;font-style:normal;padding-left:6px}.project-list .project-column>ul>li .column-head .column-head-icon{align-items:center;display:flex;margin-left:16px}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon,.project-list .project-column>ul>li .column-head .column-head-icon .loading{align-items:center;display:flex;height:24px;justify-content:center;padding-right:8px;width:24px}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon .common-loading,.project-list .project-column>ul>li .column-head .column-head-icon .loading .common-loading{height:16px;margin:0;width:16px}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon{color:#aaa;cursor:pointer;font-size:16px;font-weight:600;transition:color .3s}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon:hover{color:#888}.project-list .project-column>ul>li .column-head .column-head-icon .last{padding-right:0}.project-list .project-column>ul>li .column-head.custom-color{color:#fff}.project-list .project-column>ul>li .column-head.custom-color .column-head-title>em{color:hsla(0,0%,100%,.6)}.project-list .project-column>ul>li .column-head.custom-color .ivu-icon{color:hsla(0,0%,100%,.5)}.project-list .project-column>ul>li .column-head.custom-color .ivu-icon:hover{color:hsla(0,0%,100%,.9)}.project-list .project-column>ul>li .column-task{display:flex;flex:1;flex-direction:column;overflow-x:hidden;overflow-y:auto}.project-list .project-column>ul>li .column-task .task-list>div:last-child{margin-bottom:16px}.project-list .project-column>ul>li .column-task .task-item{background-color:#fff;border-radius:12px;cursor:pointer;margin:16px 10px 0;padding:12px;position:relative;transition:box-shadow .3s,opacity .3s}.project-list .project-column>ul>li .column-task .task-item:hover{box-shadow:0 0 10px #e6ecfa}.project-list .project-column>ul>li .column-task .task-item .task-head{align-items:flex-start;display:flex}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title{flex:1;padding-top:1px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;float:left;font-size:12px;height:20px;line-height:18px;margin-right:4px;padding:0 3px;text-align:center}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>pre{word-wrap:break-word;display:block;line-height:1.5;margin:0;padding:0;white-space:pre-wrap;word-break:break-word}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu{height:22px;margin-left:8px;width:22px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon,.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .loading{align-items:center;display:flex;height:22px;justify-content:center;width:22px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon .common-loading,.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .loading .common-loading{height:16px;margin:0;width:16px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon{font-size:22px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon.uncomplete{color:#777}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon.uncomplete:hover{color:#555}.project-list .project-column>ul>li .column-task .task-item .task-head.has-desc .task-title{font-weight:600}.project-list .project-column>ul>li .column-task .task-item .task-desc>pre{word-wrap:break-word;color:#999;line-height:20px;margin:10px 0 0;padding:0;white-space:pre-wrap;word-break:break-all}.project-list .project-column>ul>li .column-task .task-item .task-tags{margin-top:10px}.project-list .project-column>ul>li .column-task .task-item .task-users{align-items:center;display:flex;margin-top:10px}.project-list .project-column>ul>li .column-task .task-item .task-users>ul{align-items:center;display:flex;flex:1;margin-right:24px;overflow:auto;width:0}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li{height:32px;list-style:none;margin-left:-6px;width:32px}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li:first-child{margin-left:0}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li.no-owner{width:auto}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li.no-owner .ivu-btn-small{font-size:12px}.project-list .project-column>ul>li .column-task .task-item .task-users .task-icon{font-size:12px;margin-left:6px}.project-list .project-column>ul>li .column-task .task-item .task-users .task-icon .ivu-icon{font-size:14px;margin-left:1px}.project-list .project-column>ul>li .column-task .task-item .task-progress{align-items:center;display:flex;justify-content:flex-end;margin-top:10px}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-sub-num{color:#777;font-size:12px;margin-right:8px}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time{align-items:center;background-color:#eaedf2;border:1px solid #eaedf2;border-radius:3px;color:#777;display:flex;flex-shrink:0;font-size:12px;margin-left:18px;padding:0 3px}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.overdue,.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.today{color:#fff}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.overdue{background-color:#ed4014;border-color:#ed4014;font-weight:600}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.today{background-color:#f90;border-color:#f90;font-weight:500}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time .taskfont{font-size:12px;margin-right:3px}.project-list .project-column>ul>li .column-task .task-item .priority-color{border-radius:2px;height:42px;left:0;max-height:50%;position:absolute;top:12px;width:3px}.project-list .project-column>ul>li .column-task .task-item.additem{cursor:default;padding:0}.project-list .project-column>ul>li .column-task .task-item.complete{opacity:.5}.project-list .project-column>ul>li .column-task .task-item.complete:hover{opacity:.8}.project-list .project-column>ul>li .column-task .task-item.complete .task-head .task-title{text-decoration:line-through}.project-list .project-column>ul>li .column-task .task-item.complete .priority-color,.project-list .project-column>ul>li .column-task .task-item.complete .task-desc,.project-list .project-column>ul>li .column-task .task-item.complete .task-progress,.project-list .project-column>ul>li .column-task .task-item.complete .task-tags,.project-list .project-column>ul>li .column-task .task-item.complete .task-users,.project-list .project-column>ul>li .column-task .task-item.hidden{display:none}.project-list .project-table{height:100%;margin-top:18px;overflow-x:hidden;overflow-y:auto}.project-list .project-table .task-row{background-color:#fff;border-bottom:1px solid #f4f4f5;position:relative}.project-list .project-table .task-row>div{align-items:center;border-right:1px solid #f4f4f5;display:flex;padding:8px 12px}.project-list .project-table .task-row>div:first-child{padding-left:32px}.project-list .project-table .task-row>div:last-child{border-right:0}.project-list .project-table .task-row>div.complete .item-title{color:#aaa;text-decoration:line-through}.project-list .project-table .task-row .priority-color{bottom:-1px;left:0;position:absolute;top:0;width:3px}.project-list .project-table .project-table-body,.project-list .project-table .project-table-head{border:1px solid #f4f4f5;border-bottom:0;border-radius:5px;margin:0 32px 12px;overflow:hidden}.project-list .project-table .project-table-body.project-table-hide .task-rows,.project-list .project-table .project-table-head.project-table-hide .task-rows{display:none}.project-list .project-table .project-table-body.project-table-hide .row-title .taskfont,.project-list .project-table .project-table-head.project-table-hide .row-title .taskfont{transform:rotate(-90deg)}.project-list .project-table .project-table-head .task-row>div{color:#888;font-size:13px;font-weight:500}.project-list .project-table .project-table-head .task-row>div .sort{align-items:center;cursor:pointer;display:flex}.project-list .project-table .project-table-head .task-row>div .task-sort{cursor:pointer;display:inline-block;height:12px;margin-left:1px;margin-top:-1px;overflow:hidden;position:relative;vertical-align:middle;width:14px}.project-list .project-table .project-table-head .task-row>div .task-sort>i{color:#c5c8ce;display:block;font-size:16px;height:6px;line-height:6px;overflow:hidden;position:absolute;transition:color .2s ease-in-out}.project-list .project-table .project-table-head .task-row>div .task-sort>i.on{color:#8bcf70}.project-list .project-table .project-table-head .task-row>div .task-sort>i:hover{color:inherit}.project-list .project-table .project-table-head .task-row>div .task-sort>i:first-child{top:0}.project-list .project-table .project-table-head .task-row>div .task-sort>i:last-child{bottom:0}.project-list .project-table .project-table-body{transition:box-shadow .3s}.project-list .project-table .project-table-body:hover{box-shadow:0 0 10px #e6ecfa}.project-list .project-table .project-table-body .task-row>div{padding:10px 12px}.project-list .project-table .project-table-body .task-row>div.row-title{color:#333;font-size:14px;font-weight:500;padding-left:14px}.project-list .project-table .project-table-body .task-row>div.row-title .taskfont{cursor:pointer;font-size:12px;transition:transform .3s}.project-list .project-table .project-table-body .task-row>div.row-title .row-h1{padding-left:18px}.project-list .project-table .project-table-body .task-row>div.row-title .row-num{color:#999;padding-left:6px}.project-list .project-table .project-table-body .task-row>div.row-name{align-items:flex-start;line-height:24px;padding:12px 12px 12px 34px}.project-list .project-table .project-table-body .task-row>div.row-name .loading{height:24px}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon{cursor:pointer;font-size:16px}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon.sub-icon{color:#cfcfcf;font-size:16px;height:16px;margin-left:-20px;margin-right:4px;margin-top:4px;transition:transform .2s;width:16px}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon.sub-icon.active{transform:rotate(90deg)}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon.uncomplete{color:#ccc}.project-list .project-table .project-table-body .task-row>div.row-name .item-title{cursor:pointer;flex:1;padding:0 22px 0 8px}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;display:inline-block;font-size:12px;height:18px;line-height:16px;margin-right:3px;margin-top:3px;min-width:20px;padding:0 2px;text-align:center;vertical-align:top}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons{align-items:center;display:flex;flex-shrink:0;margin-left:4px}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons .item-icon{color:#aaa;cursor:pointer;display:flex;font-size:12px;margin-left:16px}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons .item-icon .taskfont{font-size:12px}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons .item-icon>em{font-style:normal;margin-left:4px}.project-list .project-table .project-table-body .task-row>div.row-column .el-dropdown,.project-list .project-table .project-table-body .task-row>div.row-priority .el-dropdown{align-items:center;display:flex;overflow:hidden}.project-list .project-table .project-table-body .task-row>div.row-column .task-column,.project-list .project-table .project-table-body .task-row>div.row-column .task-priority,.project-list .project-table .project-table-body .task-row>div.row-priority .task-column,.project-list .project-table .project-table-body .task-row>div.row-priority .task-priority{cursor:pointer}.project-list .project-table .project-table-body .task-row>div.row-column .task-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list .project-table .project-table-body .task-row>div.row-user{padding:8px}.project-list .project-table .project-table-body .task-row>div.row-user>ul{align-items:center;cursor:pointer;display:flex;height:32px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list .project-table .project-table-body .task-row>div.row-user>ul>li{display:inline-block;list-style:none;margin-left:-6px;max-width:100%}.project-list .project-table .project-table-body .task-row>div.row-user>ul>li:first-child{margin-left:0}.project-list .project-table .project-table-body .task-row>div.row-user>ul>li.no-owner{align-items:center;display:flex;height:32px}.project-list .project-table .project-table-body .task-row>div.row-time .task-time{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list .project-table .project-table-body .task-row>div.row-time .task-time.overdue,.project-list .project-table .project-table-body .task-row>div.row-time .task-time.today{border:1px solid transparent;border-radius:3px;color:#fff;font-size:13px;padding:0 4px}.project-list .project-table .project-table-body .task-row>div.row-time .task-time.overdue{background-color:#ed4014;border-color:#ed4014;font-weight:600}.project-list .project-table .project-table-body .task-row>div.row-time .task-time.today{background-color:#f90;border-color:#f90;font-weight:500}.project-list .project-table .project-table-body .task-rows .task-rows{overflow:hidden;position:relative}.project-list .project-table .project-table-body .task-rows .task-rows:before{box-shadow:0 0 8px 1px rgba(0,0,0,.08);content:"";left:0;position:absolute;right:0;top:0;z-index:1}.project-list .project-table .project-table-body .task-rows .task-rows .task-row{background-color:#fcfcfd}.project-list .project-table .project-table-body .task-rows .task-rows .task-row .priority-color{display:none}.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-name{padding-left:56px}.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-name .item-title{color:#6b6e72}.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-column>div,.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-priority>div{display:none}.project-list .project-table .project-table-body .task-rows .task-rows .task-add-row{background-color:#fcfcfd}.project-list .project-table .project-table-body .task-rows .task-rows .task-add-row>div.row-add{padding-left:56px}.project-list-more-dropdown-menu>li .item{align-items:center;display:flex}.project-list-more-dropdown-menu>li .item>i{color:#bbb;font-size:18px;height:18px;line-height:18px;margin-right:8px;padding:0;width:18px}.project-list-more-dropdown-menu>li .item>i.ivu-icon{font-size:16px}.project-list-wait-remove{margin-top:6px}.project-list-wait-remove>li{align-items:center;display:flex;line-height:26px;list-style:none}.project-list-wait-remove>li:first-child{font-weight:600}.project-list-flow-cascader .ivu-cascader-menu-item{color:#606266!important}.project-list-flow-cascader .ivu-cascader-menu-item.start{color:#595959!important}.project-list-flow-cascader .ivu-cascader-menu-item.progress{color:#0171c2!important}.project-list-flow-cascader .ivu-cascader-menu-item.end{color:#038a24!important}.project-list-flow-cascader .ivu-cascader-menu-item.ivu-cascader-menu-item-active.project-list-flow-cascader-item.start,.project-list-flow-cascader .ivu-cascader-menu-item:hover.project-list-flow-cascader-item.start{background-color:rgba(38,38,38,.05)}.project-list-flow-cascader .ivu-cascader-menu-item.ivu-cascader-menu-item-active.project-list-flow-cascader-item.progress,.project-list-flow-cascader .ivu-cascader-menu-item:hover.project-list-flow-cascader-item.progress{background-color:rgba(27,154,238,.1)}.project-list-flow-cascader .ivu-cascader-menu-item.ivu-cascader-menu-item-active.project-list-flow-cascader-item.end,.project-list-flow-cascader .ivu-cascader-menu-item:hover.project-list-flow-cascader-item.end{background-color:rgba(21,173,49,.1)}@media (max-width:768px){.project-list .project-head{margin:24px 24px 0}.project-list .project-head .project-titbox{display:block}.project-list .project-head .project-titbox .project-title{float:left;padding-bottom:4px}.project-list .project-head .project-titbox .project-icons{float:right;justify-content:flex-end;margin-left:24px;margin-top:4px}.project-list .project-head .project-subbox{display:block}.project-list .project-head .project-subbox .project-subtitle{margin-bottom:6px}.project-list .project-head .project-subbox .project-switch{justify-content:flex-end;margin-left:0}.project-list .project-column>ul>li:first-child{margin-left:10px}.project-list .project-column>ul>li:last-child{margin-right:10px}.project-list .project-table{overflow-x:auto}.project-list .project-table .project-table-body,.project-list .project-table .project-table-head{margin:0 24px 12px;min-width:768px}}.project-log .log-title{display:none}.project-log.is-drawer{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.project-log.is-drawer .log-title{color:#333;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.project-log .logs-activity{padding:12px;position:relative;word-break:break-all}.project-log .logs-activity>li{list-style:none;padding-top:0}.project-log .logs-activity>li.logs-loading,.project-log .logs-activity>li.logs-more,.project-log .logs-activity>li.logs-none{height:22px;line-height:22px}.project-log .logs-activity>li.logs-loading{display:flex}.project-log .logs-activity>li.logs-loading .common-loading{margin:0}.project-log .logs-activity>li.logs-more{cursor:pointer}.project-log .logs-activity>li.logs-more:hover{color:#048be0}.project-log .logs-activity>li.logs-none{color:#bbb;cursor:pointer}.project-log .logs-activity>li .logs-date{color:rgba(0,0,0,.36);padding-bottom:14px}.project-log .logs-activity>li .logs-section{margin:4px}.project-log .logs-activity>li .logs-section .ivu-timeline>li{padding-bottom:8px}.project-log .logs-activity>li .logs-section .ivu-timeline>li:last-child{padding-bottom:0}.project-log .logs-activity>li .logs-section .ivu-timeline>li .ivu-timeline-item-head-custom{left:auto;margin-left:-13px;margin-right:6px;margin-top:8px;min-width:40px;position:static;width:auto}.project-log .logs-activity>li .logs-section .ivu-timeline>li .ivu-timeline-item-content{margin-top:-5px;padding-left:20px}.project-log .logs-activity>li .logs-dot{display:flex;height:18px;margin-left:10px;width:auto}.project-log .logs-activity>li .logs-dot .avatar-name.auto{color:#9599a1}.project-log .logs-activity>li .log-summary{padding:4px 0 4px 12px;position:relative}.project-log .logs-activity>li .log-summary>a,.project-log .logs-activity>li .log-summary>span{word-wrap:break-word;padding-right:6px;word-break:break-word}.project-log .logs-activity>li .log-summary .log-text{color:rgba(0,0,0,.72);display:inline-block}.project-log .logs-activity>li .log-summary .log-text .detail-user{display:inline-block;vertical-align:top}.project-log .logs-activity>li .log-summary .log-text .detail-user .detail-user-wrap{display:flex}.project-log .logs-activity>li .log-summary .log-text .detail-user .detail-user-wrap .common-avatar{margin:0 2px}.project-log .logs-activity>li .log-summary .log-operation>button{font-size:12px}.project-log .logs-activity>li .log-summary .log-operation>button+button{margin-left:4px}.project-log .logs-activity>li .log-summary .log-time{color:rgba(0,0,0,.3);font-size:12px}.project-log .logs-activity>li .log-task{cursor:pointer;margin-bottom:6px;margin-left:12px;opacity:.6}.project-log .logs-activity>li .log-task:hover{opacity:1}.project-log .logs-activity>li .log-task:hover>em{color:#8bcf70}.project-log .logs-activity>li .log-task>em{border-radius:5px;color:#999;display:inline-block;font-size:12px;font-style:normal;height:18px;line-height:18px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-management{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.project-management .management-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.project-management .management-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.project-management .management-title .title-icon>i{cursor:pointer}.project-management .project-name{align-items:center;display:flex}.project-management .project-name .ivu-tag{flex-shrink:0;height:18px;line-height:18px;overflow:hidden;padding:0 4px;text-overflow:ellipsis;transform:scale(.8);transform-origin:right center;white-space:nowrap}.project-management .project-percent{line-height:1}.project-management .project-percent .ivu-progress{margin-top:2px}.project-workflow{bottom:0;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:0}.project-workflow .workflow-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;padding:20px 20px 24px}.project-workflow .workflow-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.project-workflow .workflow-title .title-icon>i{cursor:pointer}.project-workflow .workflow-content{flex:1;overflow:auto;padding:0 20px}.project-workflow .workflow-content .ivu-collapse-header{align-items:center;display:flex}.project-workflow .workflow-content .workflow-item{align-items:center;display:flex;flex:1}.project-workflow .workflow-content .workflow-item .workflow-name{flex-shrink:0;margin-right:24px}.project-workflow .workflow-content .workflow-item .workflow-status{align-items:center;display:flex;flex:1}.project-workflow .workflow-content .workflow-item .workflow-status>div{background:#f7f7f7;border:1px solid #e8eaec;border-radius:3px;font-size:12px;height:22px;line-height:22px;margin-right:8px;overflow:hidden;padding:0 8px;vertical-align:middle}.project-workflow .workflow-content .workflow-item .workflow-status>div.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-workflow .workflow-content .workflow-item .workflow-status>div.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-workflow .workflow-content .workflow-item .workflow-status>div.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-workflow .workflow-content .workflow-item .workflow-save{flex-shrink:0;margin:0 8px}.project-workflow .workflow-content .workflow-item .workflow-save>button{font-size:13px;height:26px;line-height:24px;margin-right:4px;padding:0 13px}.project-workflow .workflow-no{align-items:center;color:#999;display:flex;flex:1;flex-direction:column;justify-content:center;padding:0 20px}.project-workflow .workflow-no>button{margin-top:18px}.project-workflow .taskflow-config{display:flex;max-height:800px}.project-workflow .taskflow-config .taskflow-config-table{border-radius:4px;box-shadow:1px 0 3px rgba(0,0,0,.1);display:flex;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-left-container{-ms-overflow-style:none;flex-shrink:0;overflow-x:scroll;padding-bottom:16px;padding-top:16px;position:relative;width:246px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-left-container:after{border-right:1px solid #f4f4f5;bottom:0;content:"";position:absolute;right:0;top:0;z-index:1}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-column-header{font-size:16px;font-weight:700;height:58px;left:0;line-height:58px;padding:0 20px;position:absolute;right:0;top:0}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-column-header.left-header{top:16px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-column-body{height:calc(100% - 58px);margin-top:58px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block{padding:12px 0;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block.hr{position:relative}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block.hr:after{border-top:1px solid #f4f4f5;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-title{color:#8c8c8c;height:40px;line-height:40px;padding:0 20px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-radio-group{display:block;text-align:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-radio-group .ivu-radio-group-item{display:flex;flex-direction:column;height:58px;justify-content:center;padding:0 20px;position:relative;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-checkbox-group{display:block;text-align:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-checkbox-group .ivu-checkbox-group-item,.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item{display:flex;flex-direction:column;height:58px;justify-content:center;padding:0 20px;position:relative;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item.with-indicator:before{border-radius:4px;content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:4px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item .title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item .subtitle{color:#8c8c8c;font-size:12px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item.center{align-items:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item.radio-item>span{display:none}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item .transform-status-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-right-container{flex-direction:row;flex-grow:1;overflow-x:auto;overflow-y:hidden;padding-bottom:16px;padding-top:16px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-list-wrapper,.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-right-container{display:flex}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column{border-radius:4px;flex-shrink:0;height:100%;margin-bottom:16px;margin-right:16px;position:relative;width:210px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column:first-child{margin-left:20px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column:hover .status-label-with-menu .more{opacity:1}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.addnew{align-items:center;border:1px dashed #d9d9d9;color:#8c8c8c;cursor:pointer;display:flex;flex-direction:column;justify-content:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.addnew:hover{border-color:#bfbfbf;color:#777}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.column-border{border-style:solid;border-width:1px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.start{border-color:#e5e5e5}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.start:hover{border-color:#bfbfbf}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.progress{border-color:#ccecff}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.progress:hover{border-color:#87d2ff}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.end{border-color:#cafac8}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.end:hover{border-color:#64d16d}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-item{align-items:center;cursor:move;display:flex;height:58px;line-height:58px;padding:8px}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu{align-items:center;border-radius:4px;display:inline-flex;font-size:14px;font-weight:400;height:36px;justify-content:center;line-height:32px;max-width:100%;overflow:hidden;padding:0 32px;position:relative;text-overflow:ellipsis;white-space:nowrap;width:200px}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu:hover{font-weight:700}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu.start{background:rgba(38,38,38,.05);color:#595959}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu.progress{background:rgba(27,154,238,.1);color:#0171c2}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu.end{background:rgba(21,173,49,.1);color:#038a24}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .more{align-items:center;bottom:0;cursor:pointer;display:flex;font-size:18px;font-weight:400!important;justify-content:center;opacity:.2;position:absolute;right:0;top:0;transition:opacity .3s;width:38px}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .more.opacity{opacity:1}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .more .more-icon{align-items:center;display:flex}.taskflow-config-more-dropdown-menu .users{display:flex;margin:0 -8px;overflow:auto;padding:6px 0}.taskflow-config-more-dropdown-menu .users .common-avatar{margin-right:-5px;max-width:100%}.taskflow-config-more-dropdown-menu .item{align-items:center;display:flex}.taskflow-config-more-dropdown-menu .delete{color:red}.task-add .head{align-items:center;display:flex;margin-bottom:20px;padding:8px 0;position:relative}.task-add .head .ivu-cascader .ivu-cascader-label{align-items:center;display:flex;font-size:15px;padding:0;width:auto}.task-add .head .ivu-cascader .ivu-cascader-label:after{content:"\f116";font-family:Ionicons,serif;opacity:1;padding:6px;transition:all .2s}.task-add .head .ivu-cascader .ivu-cascader-arrow{display:none}.task-add .head .ivu-cascader .ivu-input{border:0;box-shadow:none;font-size:15px;padding:4px 0}.task-add .head .ivu-cascader .ivu-cascader-not-found-tip{padding:6px 12px}.task-add .head.empty .ivu-cascader .ivu-cascader-label:after{opacity:0}.task-add .head.visible .ivu-cascader .ivu-cascader-label:after{transform:rotate(180deg)}.task-add .task-add-advanced .title .ivu-input,.task-add .task-add-form .title .ivu-input{border-color:transparent;font-size:24px;font-weight:500;line-height:1.4;padding:4px 0;resize:none}.task-add .task-add-advanced .title .ivu-input:focus,.task-add .task-add-form .title .ivu-input:focus{box-shadow:none}.task-add .task-add-advanced .desc,.task-add .task-add-form .desc{margin-top:24px;overflow:auto}.task-add .task-add-advanced .desc div[contenteditable=true],.task-add .task-add-form .desc div[contenteditable=true]{outline:none}.task-add .task-add-advanced .desc .mce-content-body img,.task-add .task-add-form .desc .mce-content-body img{max-width:100%}.task-add .task-add-advanced .desc .mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before,.task-add .task-add-form .desc .mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before{color:#bbb}.task-add .task-add-advanced .advanced-option,.task-add .task-add-form .advanced-option{align-items:center;display:flex;margin-top:42px;z-index:1}.task-add .task-add-advanced .advanced-option>button,.task-add .task-add-form .advanced-option>button{transition:margin .2s}.task-add .task-add-advanced .advanced-option>button.advanced,.task-add .task-add-form .advanced-option>button.advanced{margin-left:24px}.task-add .task-add-advanced .advanced-option>button:focus,.task-add .task-add-form .advanced-option>button:focus{box-shadow:none}.task-add .task-add-advanced .advanced-option .advanced-priority,.task-add .task-add-form .advanced-option .advanced-priority{align-items:center;display:flex;height:34px;margin-left:24px}.task-add .task-add-advanced .advanced-option .advanced-priority>li,.task-add .task-add-form .advanced-option .advanced-priority>li{list-style:none;margin-left:3px}.task-add .task-add-advanced .advanced-option .advanced-priority>li .taskfont,.task-add .task-add-form .advanced-option .advanced-priority>li .taskfont{cursor:pointer;font-size:34px}.task-add .task-add-advanced .advanced-option .advanced-time,.task-add .task-add-form .advanced-option .advanced-time{align-items:center;cursor:pointer;display:flex;margin-left:20px;position:relative}.task-add .task-add-advanced .advanced-option .advanced-time .ivu-icon,.task-add .task-add-form .advanced-option .advanced-time .ivu-icon{font-size:32px}.task-add .task-add-advanced .advanced-option .advanced-time>em,.task-add .task-add-form .advanced-option .advanced-time>em{background:#8bcf70;border-radius:10px;box-shadow:0 0 0 1px #fff;color:#fff;font-family:"Monospaced Number","serif";font-size:12px;font-style:normal;height:20px;left:16px;line-height:20px;min-width:20px;padding:0 6px;position:absolute;text-align:center;top:-5px;transform:scale(.8);white-space:nowrap}.task-add .task-add-advanced{border:1px solid #e8e8e8;border-radius:8px;margin:-16px 0 0;padding:46px 32px 6px}.task-add .task-add-advanced .subtasks{background-color:#f8f8f8;border-radius:6px;margin-bottom:24px;padding:12px 16px}.task-add .task-add-advanced .subtasks .enter-input.empty .ivu-input{background:transparent;border-color:transparent}.task-add .task-add-advanced .subtasks .enter-input.empty .ivu-input:focus,.task-add .task-add-advanced .subtasks .enter-input.empty .ivu-input:hover{box-shadow:none}.task-add .task-add-advanced .subtasks .sublist .ivu-row{margin-bottom:12px}.task-add .task-add-advanced .subtasks .sublist .ivu-row>div{padding-right:7px}.task-add .task-add-advanced .subtasks .sublist .ivu-row>div:last-child{padding-right:0}.task-add .task-add-advanced .ivu-date-picker{width:100%}.task-add .task-add-assist{align-items:center;display:flex;justify-content:flex-end;margin-top:6px}.task-add .task-add-assist .ivu-icon{color:#999;font-size:16px}.task-add .ivu-modal-footer{padding:26px 0 22px!important}.task-add-simple{padding:12px}.task-add-simple .ivu-input-wrapper{display:none}.task-add-simple .add-placeholder{color:#888;cursor:pointer;margin:-12px;padding:12px}.task-add-simple .add-placeholder .ivu-icon{margin-right:4px}.task-add-simple .add-placeholder:hover{color:#666}.task-add-simple .priority{align-items:center;display:none;margin-bottom:-3px;margin-top:10px;min-height:22px}.task-add-simple .priority>ul{align-items:center;display:flex;flex:1}.task-add-simple .priority>ul>li{list-style:none;margin-right:3px}.task-add-simple .priority>ul>li .taskfont{cursor:pointer;font-size:22px}.task-add-simple .priority .ivu-icon{cursor:pointer;font-size:16px}.task-add-simple.active .ivu-input-wrapper{display:block}.task-add-simple.active .add-placeholder{display:none}.task-add-simple.active .priority{display:flex}.task-add-row{background-color:#fff;border-bottom:1px solid #f4f4f5;position:relative}.task-add-row>div{border-right:1px solid #f4f4f5;display:flex;padding:8px 12px}.task-add-row>div:last-child{border-right:0}.task-add-row>div.row-add{display:flex;flex-direction:column;justify-content:center;min-height:48px;padding-left:34px}.task-add-row>div.row-add .add-btn{cursor:pointer;display:block;opacity:.5;transition:opacity .3s}.task-add-row>div.row-add .add-btn .add-icon{font-size:16px;margin-right:8px}.task-add-row>div.row-add .add-btn:hover{opacity:1}.task-add-row>div.row-add .add-input{align-items:flex-start;background-color:#fff;border:1px solid #dcdee2;border-radius:4px;color:#606266;display:none}.task-add-row>div.row-add .add-input:hover{border-color:#57a3f3}.task-add-row>div.row-add .add-input textarea{border-color:transparent;resize:none}.task-add-row>div.row-add .add-input textarea:focus{box-shadow:none}.task-add-row>div.row-add .add-input .priority{align-items:center;display:flex;height:31px;margin:0 4px}.task-add-row>div.row-add .add-input .priority>ul{align-items:center;display:flex;flex:1}.task-add-row>div.row-add .add-input .priority>ul>li{list-style:none;margin-right:4px}.task-add-row>div.row-add .add-input .priority>ul>li .taskfont{cursor:pointer;font-size:17px}.task-add-row>div.row-add .add-input .priority .ivu-icon{cursor:pointer;font-size:15px;margin:0 5px 0 3px}.task-add-row>div.row-add.active{padding-bottom:7px;padding-top:7px}.task-add-row>div.row-add.active .add-btn{display:none}.task-add-row>div.row-add.active .add-input{display:flex}.task-archived{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.task-archived .archived-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.task-archived .archived-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.task-archived .archived-title .title-icon>i{cursor:pointer}.task-detail{display:flex;flex-direction:column;margin:0 -32px 12px -10px;min-height:120px;overflow:auto;padding:0 22px 12px 0}.task-detail .task-info{display:flex;flex:3;flex-direction:column;position:relative}.task-detail .task-info .head{align-items:center;color:#888;display:flex;height:42px;padding-bottom:10px;position:relative}.task-detail .task-info .head:before{background-color:#f4f5f5;bottom:0;content:"";height:1px;left:36px;position:absolute;right:0}.task-detail .task-info .head .icon{margin-right:18px}.task-detail .task-info .head .icon .task-menu-icon{align-items:center;display:flex}.task-detail .task-info .head .icon .task-menu-icon .ivu-icon{font-size:18px}.task-detail .task-info .head .icon .task-menu-icon .loading{height:18px;width:18px}.task-detail .task-info .head .icon .task-menu-icon .loading .common-loading{height:16px;width:16px}.task-detail .task-info .head .icon .task-menu-icon .uncomplete{color:#888}.task-detail .task-info .head .flow{margin-right:10px}.task-detail .task-info .head .flow>span{border:1px solid #8bcf70;border-radius:4px;color:#8bcf70;cursor:pointer;display:inline-block;font-size:14px;height:26px;line-height:24px;padding:0 8px;text-align:center}.task-detail .task-info .head .flow>span.archived,.task-detail .task-info .head .flow>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.task-detail .task-info .head .flow>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.task-detail .task-info .head .flow>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.task-detail .task-info .head .nav{align-items:center;display:flex;flex:1;font-size:12px;height:40px;overflow:auto;width:0}.task-detail .task-info .head .nav::-webkit-scrollbar{display:none}.task-detail .task-info .head .nav>p{align-items:center;display:flex;padding-right:5px}.task-detail .task-info .head .nav>p>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail .task-info .head .nav>p:after{content:"/";padding-left:5px}.task-detail .task-info .head .nav>p:last-child:after{display:none}.task-detail .task-info .head .function{align-items:center;display:flex;margin:0 32px}.task-detail .task-info .head .function .pick{margin-left:12px;margin-right:10px}.task-detail .task-info .head .function .open{cursor:pointer;font-size:22px;margin-left:12px;margin-top:-2px}.task-detail .task-info .head .function .menu{align-items:center;display:flex;margin-left:12px}.task-detail .task-info .head .function .menu .ivu-icon{color:#606266;font-size:22px}.task-detail .task-info .scroller{margin-left:28px;overflow-x:hidden;overflow-y:auto;padding-left:8px;padding-right:36px}.task-detail .task-info .scroller .title{margin-top:18px}.task-detail .task-info .scroller .title .ivu-input{border-color:transparent;font-size:24px;font-weight:500;line-height:1.4;padding:4px 0;resize:none}.task-detail .task-info .scroller .title .ivu-input:focus{box-shadow:none}.task-detail .task-info .scroller .desc{margin-top:10px}.task-detail .task-info .scroller .desc div[contenteditable=true]{outline:none}.task-detail .task-info .scroller .desc .mce-content-body img{max-width:100%}.task-detail .task-info .scroller .desc .mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before{color:#bbb}.task-detail .task-info .scroller .items{margin-top:12px}.task-detail .task-info .scroller .items .ivu-form-item{margin-bottom:10px}.task-detail .task-info .scroller .items .item-label{align-items:center;color:#bbb;display:flex}.task-detail .task-info .scroller .items .item-label .taskfont{margin-right:4px}.task-detail .task-info .scroller .items .item-content{margin-left:12px;margin-top:5px}.task-detail .task-info .scroller .items .item-content>li{align-items:center;display:flex;line-height:26px;list-style:none}.task-detail .task-info .scroller .items .item-content>li .el-dropdown{cursor:pointer;display:flex}.task-detail .task-info .scroller .items .item-content>li .task-priority{padding:0 7px}.task-detail .task-info .scroller .items .item-content>li .picker-time{align-items:center;display:flex;line-height:26px}.task-detail .task-info .scroller .items .item-content>li .picker-time .time{cursor:pointer}.task-detail .task-info .scroller .items .item-content>li .picker-time .ivu-tag{flex-shrink:0;height:20px;line-height:18px;margin-left:10px;padding:0 4px}.task-detail .task-info .scroller .items .item-content>li .picker-time .ivu-tag .ivu-tag-text{align-items:center;display:flex}.task-detail .task-info .scroller .items .item-content>li .picker-time .ivu-tag .ivu-tag-text .taskfont{font-size:14px;padding-right:3px;transform:scale(.9)}.task-detail .task-info .scroller .items .item-content.user{cursor:pointer;margin-top:1px}.task-detail .task-info .scroller .items .item-content.user .user-list{align-items:center;display:flex}.task-detail .task-info .scroller .items .item-content.user .user-list>div{margin-right:6px}.task-detail .task-info .scroller .items .item-content.file{margin-bottom:-3px}.task-detail .task-info .scroller .items .item-content.file>li{margin-bottom:2px}.task-detail .task-info .scroller .items .item-content.file>li .file-load{height:16px;margin:0;padding:2px;width:16px}.task-detail .task-info .scroller .items .item-content.file>li .file-ext{width:16px}.task-detail .task-info .scroller .items .item-content.file>li .file-name{color:#606266;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.task-detail .task-info .scroller .items .item-content.file>li .file-size{color:#bbb;flex-shrink:0;font-size:12px;height:24px;padding-left:10px}.task-detail .task-info .scroller .items .item-content.file>li .file-menu{align-items:center;display:flex;opacity:0;padding-left:12px;transition:all .3s}.task-detail .task-info .scroller .items .item-content.file>li .file-menu.show{opacity:1}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i{color:#aaa;cursor:pointer;font-size:14px;padding:0 4px;transition:color .3s}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i:hover{color:#777}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i.del{font-size:13px}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i.del:hover{color:red}.task-detail .task-info .scroller .items .item-content.file>li:hover .file-name{color:#303133}.task-detail .task-info .scroller .items .item-content.file>li:hover .file-menu{opacity:1}.task-detail .task-info .scroller .items .item-content.subtask>li{align-items:flex-start;margin-bottom:4px}.task-detail .task-info .scroller .items .item-content.subtask>li:last-child{margin-bottom:-6px}.task-detail .task-info .scroller .items .item-content.subtask>li:hover .subtask-time .clock{opacity:.7;transform:translateX(0)}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-icon{align-items:center;cursor:pointer;display:flex;height:26px;line-height:26px;margin-right:6px;padding-top:1px;width:16px}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;cursor:pointer;display:inline-block;font-size:12px;height:18px;line-height:16px;margin-right:3px;min-width:20px;padding:0 2px;text-align:center}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-name{display:flex;flex:1;margin-right:8px}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-name .ivu-input{border-color:transparent;line-height:20px;margin:-2px 0;padding:4px 0;resize:none}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-name .ivu-input:focus{box-shadow:none}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time{margin-right:8px}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .time{cursor:pointer;font-size:13px;height:26px;line-height:26px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .time.overdue{color:#ed4014;font-weight:600}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .time.today{color:#f90;font-weight:500}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .clock{font-size:20px;margin:3px 2px;opacity:0;transform:translateX(50%);transition:all .2s}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-avatar{cursor:pointer;height:20px;margin-top:3px}.task-detail .task-info .scroller .items .item-content.subtask>li .ivu-icon-ios-loading{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}.task-detail .task-info .scroller .items .item-content.nosub{margin-top:0}.task-detail .task-info .scroller .items .item-content.nosub>li .add-button,.task-detail .task-info .scroller .items .item-content.nosub>li .add-input{margin-top:-2px}.task-detail .task-info .scroller .add{margin-bottom:10px;margin-top:12px}.task-detail .task-info .scroller .add-input{margin-top:6px}.task-detail .task-info .scroller .add-input.loading .ivu-icon-ios-loading{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}.task-detail .task-info .scroller .add-button{align-items:center;color:#bbb;cursor:pointer;display:flex;height:32px;margin-top:6px}.task-detail .task-info .scroller .add-button>i{font-size:14px;padding-right:8px}.task-detail .task-info .scroller .add-button>em{font-style:normal;padding-left:4px}.task-detail .task-info .scroller .add-button>em:after{content:"/";padding-left:4px}.task-detail .task-info .scroller .add-button>em:last-child:after{display:none}.task-detail .task-info .scroller .add-button:hover{color:#999}.task-detail .task-info .upload{display:none}.task-detail .task-dialog{display:flex;flex:2;flex-direction:column;flex-shrink:0;margin-top:22px;position:relative}.task-detail .task-dialog .head{align-items:center;color:#888;display:flex;height:40px;padding-bottom:10px;position:relative}.task-detail .task-dialog .head:before{background-color:#f4f5f5;bottom:0;content:"";height:1px;left:36px;position:absolute;right:0}.task-detail .task-dialog .head .icon{font-size:18px;width:18px}.task-detail .task-dialog .head .nav{align-items:center;color:#666;display:flex;flex:1;font-weight:500;padding-left:18px}.task-detail .task-dialog .head .nav>p{align-items:center;cursor:pointer;display:flex;margin-right:24px}.task-detail .task-dialog .head .nav>p.active{color:#555;cursor:default;font-size:16px;font-weight:600;margin-top:-2px}.task-detail .task-dialog .head .nav .refresh{align-items:center;display:flex;margin-left:-18px}.task-detail .task-dialog .head .nav .refresh>i{cursor:pointer;font-size:18px;opacity:.8;transition:opacity .2s}.task-detail .task-dialog .head .nav .refresh>i:hover{opacity:1}.task-detail .task-dialog .head .nav .refresh .common-loading{height:12px;margin:3px;width:12px}.task-detail .task-dialog .no-dialog{display:flex;flex:1;flex-direction:column;position:relative}.task-detail .task-dialog .no-dialog .no-tip{display:none;flex:1;margin-left:36px}.task-detail .task-dialog .no-dialog .no-input{align-items:center;background-color:#f4f5f7;border-radius:10px;display:flex;margin:22px 0 0 36px;padding:10px 12px}.task-detail .task-dialog .no-dialog .no-input .ivu-input{background-color:transparent;border:0;resize:none}.task-detail .task-dialog .no-dialog .no-input .ivu-input:focus{box-shadow:none}.task-detail .task-dialog .no-dialog .no-input .no-send{display:none}.task-detail .task-dialog .no-dialog .drag-over{align-items:center;background-color:hsla(0,0%,100%,.78);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:3}.task-detail .task-dialog .no-dialog .drag-over:before{border:2px dashed #7b7b7b;border-radius:12px;bottom:0;content:"";left:36px;position:absolute;right:0;top:0}.task-detail .task-dialog .no-dialog .drag-over .drag-text{color:#666;font-size:18px;padding:12px}.task-detail .task-dialog .project-log{margin-left:36px}.task-detail .task-dialog .project-log .logs-activity{padding:22px 0 0}.task-detail .task-dialog .project-log .logs-activity>li{list-style:none;padding-top:0}.task-detail .task-dialog .project-log .logs-activity>li.logs-loading,.task-detail .task-dialog .project-log .logs-activity>li.logs-more,.task-detail .task-dialog .project-log .logs-activity>li.logs-none{height:59px;line-height:59px}.task-detail .task-dialog .project-log .logs-activity>li.logs-loading{align-items:center;display:flex}.task-detail .task-dialog .project-log .logs-activity>li.logs-loading .common-loading{height:22px;margin:0;width:22px}.task-detail .task-dialog .dialog-wrapper .dialog-scroller{padding:0 16px 0 32px}.task-detail .task-dialog .dialog-wrapper .dialog-footer{padding:0 14px 0 28px}.task-detail .task-load{display:flex;left:50%;margin-top:6px;position:absolute;top:50%;transform:translate(-50%,-50%)}.task-detail .task-load .common-loading{height:32px;width:32px}.task-detail.open-dialog{flex-direction:row}.task-detail.open-dialog .task-info{overflow:auto}.task-detail.open-dialog .task-info .head .function{margin-right:2px}.task-detail.open-dialog .task-dialog{margin:0 0 0 18px;max-width:450px;min-width:320px}.task-detail.open-dialog .task-dialog:before{background-color:#f4f5f5;bottom:0;content:"";left:0;position:absolute;top:0;width:1px;z-index:1}.task-detail.open-dialog .task-dialog .head:before{left:18px}.task-detail.open-dialog .task-dialog .head .icon:before{display:none}.task-detail.open-dialog .task-dialog .head .nav{padding-left:0}.task-detail.open-dialog .task-dialog .head .nav>p{margin-right:28px}.task-detail.open-dialog .task-dialog .head .nav>p.active{font-size:18px}.task-detail.open-dialog .task-dialog .no-dialog .no-tip{align-items:center;color:#999;display:flex;justify-content:center;margin-left:18px}.task-detail.open-dialog .task-dialog .no-dialog .no-input{margin:0 0 0 18px}.task-detail.open-dialog .task-dialog .dialog-wrapper{z-index:0}.task-detail.open-dialog .task-dialog .dialog-wrapper .dialog-footer{margin-bottom:0}.task-detail.open-dialog .task-dialog .project-log{background-color:#fff;bottom:0;left:0;margin-left:8px;overflow:auto;padding:8px;position:absolute;right:0;top:40px;z-index:1}.task-detail.open-dialog .task-dialog .project-log .logs-activity{padding:22px 0 0 10px}.task-detail.completed .task-info:before{color:#19be6b;content:"\f373";font-family:Ionicons,serif;font-size:72px;opacity:.2;pointer-events:none;position:absolute;right:13%;top:0;z-index:1}.task-detail-receive{padding:6px 6px 3px}.task-detail-receive .receive-title{font-size:14px}.task-detail-receive .receive-title .ivu-icon{color:#f90;font-size:16px;line-height:18px}.task-detail-receive .receive-time{margin-top:10px}.task-detail-receive .receive-time .ivu-date-picker{width:280px}.task-detail-receive .receive-bottom{margin-top:12px;text-align:right}.task-detail-receive .receive-bottom>button+button{margin-left:4px}.task-detail-delete-file-popover{max-width:200px}.task-detail-delete-file-popover .buttons{margin-top:12px;text-align:right}.task-detail-delete-file-popover .buttons .ivu-btn-small{font-size:12px}.task-detail-user-popper .ivu-poptip-body-content{overflow:visible}.task-detail-avatar-buttons{margin-bottom:4px;margin-top:12px;position:absolute;right:14px;text-align:right;top:5px}.task-detail-avatar-buttons>button{font-size:12px;transform:scale(.9)}@media (max-width:768px){.task-detail .task-info .scroller{overflow-x:auto}.task-detail .task-dialog .no-dialog .no-input{padding-right:52px;position:relative}.task-detail .task-dialog .no-dialog .no-input .no-send{align-items:center;bottom:0;display:flex;font-size:18px;justify-content:center;position:absolute;right:0;top:0;width:46px}.task-detail .task-dialog .no-dialog .no-input .no-send .common-loading{height:20px;width:20px}}.task-menu-icon{position:relative}.task-menu-icon .loading{align-items:center;display:flex;height:16px;justify-content:center;width:16px}.task-menu-icon .loading .common-loading{height:14px;margin:0;width:14px}.task-menu-icon .ivu-icon{color:#ccc;cursor:pointer;font-size:16px}.task-menu-icon .ivu-icon.completed{color:#8bcf70}.task-menu-more-dropdown>li.task-menu-more-warp{list-style:none}.task-menu-more-dropdown>li.task-menu-more-warp>ul{max-height:320px;overflow:auto}.task-menu-more-dropdown>li.task-menu-more-warp>ul::-webkit-scrollbar{display:none}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .item{align-items:center;display:flex}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .item>i{color:#bbb;flex-shrink:0;font-size:18px;height:18px;line-height:18px;margin-right:8px;padding:0;width:18px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .item>i.ivu-icon{font-size:16px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow{padding:4px 0}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow>i{margin-right:3px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow>i.check{color:#8bcf70}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name{background:#f4f4f4;border-radius:4px;color:#595959;font-size:12px;height:20px;line-height:20px;padding:0 5px;white-space:nowrap}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li.load-flow{align-items:center;display:flex;justify-content:center;padding:8px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li.load-flow .load-flow-warp{height:20px;width:20px}.task-menu-more-dropdown>li.task-menu-more-warp.medium>ul>li .flow .flow-name{height:24px;line-height:24px;padding:0 7px}.task-menu-more-dropdown>li.task-menu-more-warp.large>ul>li .flow .flow-name{font-size:13px;height:30px;line-height:30px;padding:0 8px}.task-priority{background:transparent;border:1px solid transparent;border-radius:3px;display:inline-block;font-size:13px;max-width:100%;overflow:hidden;padding:2px 5px;text-overflow:ellipsis;white-space:nowrap}.team-management{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.team-management .management-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.team-management .management-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.team-management .management-title .title-icon>i{cursor:pointer}.team-management .team-email{align-items:center;display:flex}.team-management .team-email .ivu-tag{flex-shrink:0;height:18px;line-height:18px;overflow:hidden;padding:0 4px;text-overflow:ellipsis;transform:scale(.8);transform-origin:right center;white-space:nowrap}body.dark-mode-reverse .common-right-bottom .common-right-bottom-link,body.dark-mode-reverse .ivu-badge-count,body.dark-mode-reverse .ivu-btn-primary{color:#000}body.dark-mode-reverse .ivu-modal-mask{background-color:hsla(0,0%,90%,.6)}body.dark-mode-reverse .ivu-modal-content{box-shadow:0 4px 12px hsla(0,0%,100%,.15)}body.dark-mode-reverse .ivu-message-notice-content{border:1px solid #e3e8ed;box-shadow:0 1px 6px hsla(0,0%,100%,.2)}body.dark-mode-reverse .ivu-notice-notice,body.dark-mode-reverse .ivu-poptip-inner,body.dark-mode-reverse .ivu-select-dropdown,body.dark-mode-reverse .ivu-tooltip-inner{border:1px solid #e3e8ed;box-shadow:none}body.dark-mode-reverse .el-dropdown-menu{border-color:#e3e8ed;box-shadow:0 2px 12px 0 hsla(0,0%,100%,.1)}body.dark-mode-reverse .el-tooltip__popper.is-light{border:1px solid #e3e8ed;box-shadow:0 1px 6px hsla(0,0%,100%,.2)}body.dark-mode-reverse .drawer-overlay{background:hsla(0,0%,90%,.6)}body.dark-mode-reverse .drawer-overlay .overlay-body .overlay-close>a{color:#323232}body.dark-mode-reverse .drawer-overlay .overlay-body .overlay-close>a:hover{color:#000}body.dark-mode-reverse .file-content .content-body .tox .tox-edit-area__iframe,body.dark-mode-reverse .file-preview .content-body .tox .tox-edit-area__iframe{background-color:#000}body.dark-mode-reverse .file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap,body.dark-mode-reverse .file-preview .content-body .teditor-loadedstyle .tox-sidebar-wrap{box-shadow:none}body.dark-mode-reverse .minder-editor-container .quickbar{border:1px solid #e3e8ed!important;box-shadow:3px 3px 10px hsla(0,0%,100%,.2)!important}body.dark-mode-reverse .project-list .project-head .project-titbox .project-icons>li.project-icon.active{color:#000}body.dark-mode-reverse .project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.overdue{background-color:transparent;color:#ed4014}body.dark-mode-reverse .project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.today{background-color:transparent;color:#f90}body.dark-mode-reverse .project-list .project-table .project-table-body .task-row>div.row-time .task-time.overdue{background-color:transparent;color:#ed4014}body.dark-mode-reverse .project-list .project-table .project-table-body .task-row>div.row-time .task-time.today{background-color:transparent;color:#f90}body.dark-mode-reverse .dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-content{background-color:#e1e1e1}body.dark-mode-reverse .dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-content .content-text{color:#fff}body.dark-mode-reverse .dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-content{background-color:#8bcf70}body.dark-mode-reverse .file-icon:before{background-image:url(../images/file/dark/other.svg)}body.dark-mode-reverse .file-icon.archive:before{background-image:url(../images/file/dark/archive.svg)}body.dark-mode-reverse .file-icon.cad:before{background-image:url(../images/file/dark/cad.svg)}body.dark-mode-reverse .file-icon.code:before{background-image:url(../images/file/dark/code.svg)}body.dark-mode-reverse .file-icon.document:before{background-image:url(../images/file/dark/document.svg)}body.dark-mode-reverse .file-icon.drawio:before{background-image:url(../images/file/dark/drawio.svg)}body.dark-mode-reverse .file-icon.excel:before{background-image:url(../images/file/dark/excel.svg)}body.dark-mode-reverse .file-icon.flow:before{background-image:url(../images/file/dark/flow.svg)}body.dark-mode-reverse .file-icon.folder:before{background-image:url(../images/file/dark/folder.svg)}body.dark-mode-reverse .file-icon.media:before{background-image:url(../images/file/dark/media.svg)}body.dark-mode-reverse .file-icon.mind:before{background-image:url(../images/file/dark/mind.svg)}body.dark-mode-reverse .file-icon.ofd:before{background-image:url(../images/file/dark/ofd.svg)}body.dark-mode-reverse .file-icon.pdf:before{background-image:url(../images/file/dark/pdf.svg)}body.dark-mode-reverse .file-icon.picture:before{background-image:url(../images/file/dark/picture.svg)}body.dark-mode-reverse .file-icon.ppt:before{background-image:url(../images/file/dark/ppt.svg)}body.dark-mode-reverse .file-icon.sheet:before{background-image:url(../images/file/dark/sheet.svg)}body.dark-mode-reverse .file-icon.tif:before{background-image:url(../images/file/dark/tif.svg)}body.dark-mode-reverse .file-icon.txt:before{background-image:url(../images/file/dark/txt.svg)}body.dark-mode-reverse .file-icon.updir:before{background-image:url(../images/file/dark/updir.svg)}body.dark-mode-reverse .file-icon.upload:before{background-image:url(../images/file/dark/upload.svg)}body.dark-mode-reverse .file-icon.word:before{background-image:url(../images/file/dark/word.svg)}body.dark-mode-reverse .file-icon.wps:before{background-image:url(../images/file/dark/wps.svg)}body.dark-mode-reverse .page-login .login-body .login-box{box-shadow:none}body.dark-mode-reverse .page-manage .manage-box-menu .manage-box-dropdown .manage-box-title.menu-visible{box-shadow:0 1px 6px hsla(0,0%,100%,.2)}body.dark-mode-reverse .page-dashboard .dashboard-wrapper .dashboard-block>li .block-title{color:rgba(0,0,0,.6);font-size:12px}body.dark-mode-reverse .page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .block-num{color:#000}body.dark-mode-reverse .page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .taskfont{color:rgba(0,0,0,.7)}body.dark-mode-reverse .page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar{color:#1c1917}body.dark-mode-reverse .page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-text{color:#555}body.dark-mode-reverse .page-file .file-wrapper .file-navigator .ivu-btn{color:#000} +@charset "UTF-8";.file-icon:before{background-image:url(../images/file/light/other.svg);background-repeat:no-repeat;background-size:contain;content:""}.file-icon.archive:before{background-image:url(../images/file/light/archive.svg)}.file-icon.cad:before{background-image:url(../images/file/light/cad.svg)}.file-icon.code:before{background-image:url(../images/file/light/code.svg)}.file-icon.document:before{background-image:url(../images/file/light/document.svg)}.file-icon.drawio:before{background-image:url(../images/file/light/drawio.svg)}.file-icon.excel:before{background-image:url(../images/file/light/excel.svg)}.file-icon.flow:before{background-image:url(../images/file/light/flow.svg)}.file-icon.folder:before{background-image:url(../images/file/light/folder.svg)}.file-icon.media:before{background-image:url(../images/file/light/media.svg)}.file-icon.mind:before{background-image:url(../images/file/light/mind.svg)}.file-icon.ofd:before{background-image:url(../images/file/light/ofd.svg)}.file-icon.pdf:before{background-image:url(../images/file/light/pdf.svg)}.file-icon.picture:before{background-image:url(../images/file/light/picture.svg)}.file-icon.ppt:before{background-image:url(../images/file/light/ppt.svg)}.file-icon.sheet:before{background-image:url(../images/file/light/sheet.svg)}.file-icon.tif:before{background-image:url(../images/file/light/tif.svg)}.file-icon.txt:before{background-image:url(../images/file/light/txt.svg)}.file-icon.updir:before{background-image:url(../images/file/light/updir.svg)}.file-icon.upload:before{background-image:url(../images/file/light/upload.svg)}.file-icon.word:before{background-image:url(../images/file/light/word.svg)}.file-icon.wps:before{background-image:url(../images/file/light/wps.svg)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:opacity .2s linear}.fade-in-linear-enter,.fade-in-linear-leave,.fade-in-linear-leave-active{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:opacity .2s linear}.el-fade-in-linear-enter,.el-fade-in-linear-leave,.el-fade-in-linear-leave-active{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all .3s cubic-bezier(.55,0,.1,1)}.el-fade-in-enter,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all .3s cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transform:scaleY(1);transform-origin:center top;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1)}.el-zoom-in-top-enter,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transform:scaleY(1);transform-origin:center bottom;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1)}.el-zoom-in-bottom-enter,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transform:scale(1);transform-origin:top left;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1)}.el-zoom-in-left-enter,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:height .3s ease-in-out,padding-top .3s ease-in-out,padding-bottom .3s ease-in-out}.horizontal-collapse-transition{transition:width .3s ease-in-out,padding-left .3s ease-in-out,padding-right .3s ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter,.el-list-leave-active{opacity:0;transform:translateY(-30px)}.el-opacity-transition{transition:opacity .3s cubic-bezier(.55,0,.1,1)}@font-face{font-display:"auto";font-family:element-icons;font-style:normal;font-weight:400;src:url(fonts/element-icons.woff) format("woff"),url(fonts/element-icons.ttf) format("truetype")}[class*=" el-icon-"],[class^=el-icon-]{speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:element-icons!important;font-style:normal;font-variant:normal;font-weight:400;line-height:1;text-transform:none;vertical-align:baseline}.el-icon-ice-cream-round:before{content:"\e6a0"}.el-icon-ice-cream-square:before{content:"\e6a3"}.el-icon-lollipop:before{content:"\e6a4"}.el-icon-potato-strips:before{content:"\e6a5"}.el-icon-milk-tea:before{content:"\e6a6"}.el-icon-ice-drink:before{content:"\e6a7"}.el-icon-ice-tea:before{content:"\e6a9"}.el-icon-coffee:before{content:"\e6aa"}.el-icon-orange:before{content:"\e6ab"}.el-icon-pear:before{content:"\e6ac"}.el-icon-apple:before{content:"\e6ad"}.el-icon-cherry:before{content:"\e6ae"}.el-icon-watermelon:before{content:"\e6af"}.el-icon-grape:before{content:"\e6b0"}.el-icon-refrigerator:before{content:"\e6b1"}.el-icon-goblet-square-full:before{content:"\e6b2"}.el-icon-goblet-square:before{content:"\e6b3"}.el-icon-goblet-full:before{content:"\e6b4"}.el-icon-goblet:before{content:"\e6b5"}.el-icon-cold-drink:before{content:"\e6b6"}.el-icon-coffee-cup:before{content:"\e6b8"}.el-icon-water-cup:before{content:"\e6b9"}.el-icon-hot-water:before{content:"\e6ba"}.el-icon-ice-cream:before{content:"\e6bb"}.el-icon-dessert:before{content:"\e6bc"}.el-icon-sugar:before{content:"\e6bd"}.el-icon-tableware:before{content:"\e6be"}.el-icon-burger:before{content:"\e6bf"}.el-icon-knife-fork:before{content:"\e6c1"}.el-icon-fork-spoon:before{content:"\e6c2"}.el-icon-chicken:before{content:"\e6c3"}.el-icon-food:before{content:"\e6c4"}.el-icon-dish-1:before{content:"\e6c5"}.el-icon-dish:before{content:"\e6c6"}.el-icon-moon-night:before{content:"\e6ee"}.el-icon-moon:before{content:"\e6f0"}.el-icon-cloudy-and-sunny:before{content:"\e6f1"}.el-icon-partly-cloudy:before{content:"\e6f2"}.el-icon-cloudy:before{content:"\e6f3"}.el-icon-sunny:before{content:"\e6f6"}.el-icon-sunset:before{content:"\e6f7"}.el-icon-sunrise-1:before{content:"\e6f8"}.el-icon-sunrise:before{content:"\e6f9"}.el-icon-heavy-rain:before{content:"\e6fa"}.el-icon-lightning:before{content:"\e6fb"}.el-icon-light-rain:before{content:"\e6fc"}.el-icon-wind-power:before{content:"\e6fd"}.el-icon-baseball:before{content:"\e712"}.el-icon-soccer:before{content:"\e713"}.el-icon-football:before{content:"\e715"}.el-icon-basketball:before{content:"\e716"}.el-icon-ship:before{content:"\e73f"}.el-icon-truck:before{content:"\e740"}.el-icon-bicycle:before{content:"\e741"}.el-icon-mobile-phone:before{content:"\e6d3"}.el-icon-service:before{content:"\e6d4"}.el-icon-key:before{content:"\e6e2"}.el-icon-unlock:before{content:"\e6e4"}.el-icon-lock:before{content:"\e6e5"}.el-icon-watch:before{content:"\e6fe"}.el-icon-watch-1:before{content:"\e6ff"}.el-icon-timer:before{content:"\e702"}.el-icon-alarm-clock:before{content:"\e703"}.el-icon-map-location:before{content:"\e704"}.el-icon-delete-location:before{content:"\e705"}.el-icon-add-location:before{content:"\e706"}.el-icon-location-information:before{content:"\e707"}.el-icon-location-outline:before{content:"\e708"}.el-icon-location:before{content:"\e79e"}.el-icon-place:before{content:"\e709"}.el-icon-discover:before{content:"\e70a"}.el-icon-first-aid-kit:before{content:"\e70b"}.el-icon-trophy-1:before{content:"\e70c"}.el-icon-trophy:before{content:"\e70d"}.el-icon-medal:before{content:"\e70e"}.el-icon-medal-1:before{content:"\e70f"}.el-icon-stopwatch:before{content:"\e710"}.el-icon-mic:before{content:"\e711"}.el-icon-copy-document:before{content:"\e718"}.el-icon-full-screen:before{content:"\e719"}.el-icon-switch-button:before{content:"\e71b"}.el-icon-aim:before{content:"\e71c"}.el-icon-crop:before{content:"\e71d"}.el-icon-odometer:before{content:"\e71e"}.el-icon-time:before{content:"\e71f"}.el-icon-bangzhu:before{content:"\e724"}.el-icon-close-notification:before{content:"\e726"}.el-icon-microphone:before{content:"\e727"}.el-icon-turn-off-microphone:before{content:"\e728"}.el-icon-position:before{content:"\e729"}.el-icon-postcard:before{content:"\e72a"}.el-icon-message:before{content:"\e72b"}.el-icon-chat-line-square:before{content:"\e72d"}.el-icon-chat-dot-square:before{content:"\e72e"}.el-icon-chat-dot-round:before{content:"\e72f"}.el-icon-chat-square:before{content:"\e730"}.el-icon-chat-line-round:before{content:"\e731"}.el-icon-chat-round:before{content:"\e732"}.el-icon-set-up:before{content:"\e733"}.el-icon-turn-off:before{content:"\e734"}.el-icon-open:before{content:"\e735"}.el-icon-connection:before{content:"\e736"}.el-icon-link:before{content:"\e737"}.el-icon-cpu:before{content:"\e738"}.el-icon-thumb:before{content:"\e739"}.el-icon-female:before{content:"\e73a"}.el-icon-male:before{content:"\e73b"}.el-icon-guide:before{content:"\e73c"}.el-icon-news:before{content:"\e73e"}.el-icon-price-tag:before{content:"\e744"}.el-icon-discount:before{content:"\e745"}.el-icon-wallet:before{content:"\e747"}.el-icon-coin:before{content:"\e748"}.el-icon-money:before{content:"\e749"}.el-icon-bank-card:before{content:"\e74a"}.el-icon-box:before{content:"\e74b"}.el-icon-present:before{content:"\e74c"}.el-icon-sell:before{content:"\e6d5"}.el-icon-sold-out:before{content:"\e6d6"}.el-icon-shopping-bag-2:before{content:"\e74d"}.el-icon-shopping-bag-1:before{content:"\e74e"}.el-icon-shopping-cart-2:before{content:"\e74f"}.el-icon-shopping-cart-1:before{content:"\e750"}.el-icon-shopping-cart-full:before{content:"\e751"}.el-icon-smoking:before{content:"\e752"}.el-icon-no-smoking:before{content:"\e753"}.el-icon-house:before{content:"\e754"}.el-icon-table-lamp:before{content:"\e755"}.el-icon-school:before{content:"\e756"}.el-icon-office-building:before{content:"\e757"}.el-icon-toilet-paper:before{content:"\e758"}.el-icon-notebook-2:before{content:"\e759"}.el-icon-notebook-1:before{content:"\e75a"}.el-icon-files:before{content:"\e75b"}.el-icon-collection:before{content:"\e75c"}.el-icon-receiving:before{content:"\e75d"}.el-icon-suitcase-1:before{content:"\e760"}.el-icon-suitcase:before{content:"\e761"}.el-icon-film:before{content:"\e763"}.el-icon-collection-tag:before{content:"\e765"}.el-icon-data-analysis:before{content:"\e766"}.el-icon-pie-chart:before{content:"\e767"}.el-icon-data-board:before{content:"\e768"}.el-icon-data-line:before{content:"\e76d"}.el-icon-reading:before{content:"\e769"}.el-icon-magic-stick:before{content:"\e76a"}.el-icon-coordinate:before{content:"\e76b"}.el-icon-mouse:before{content:"\e76c"}.el-icon-brush:before{content:"\e76e"}.el-icon-headset:before{content:"\e76f"}.el-icon-umbrella:before{content:"\e770"}.el-icon-scissors:before{content:"\e771"}.el-icon-mobile:before{content:"\e773"}.el-icon-attract:before{content:"\e774"}.el-icon-monitor:before{content:"\e775"}.el-icon-search:before{content:"\e778"}.el-icon-takeaway-box:before{content:"\e77a"}.el-icon-paperclip:before{content:"\e77d"}.el-icon-printer:before{content:"\e77e"}.el-icon-document-add:before{content:"\e782"}.el-icon-document:before{content:"\e785"}.el-icon-document-checked:before{content:"\e786"}.el-icon-document-copy:before{content:"\e787"}.el-icon-document-delete:before{content:"\e788"}.el-icon-document-remove:before{content:"\e789"}.el-icon-tickets:before{content:"\e78b"}.el-icon-folder-checked:before{content:"\e77f"}.el-icon-folder-delete:before{content:"\e780"}.el-icon-folder-remove:before{content:"\e781"}.el-icon-folder-add:before{content:"\e783"}.el-icon-folder-opened:before{content:"\e784"}.el-icon-folder:before{content:"\e78a"}.el-icon-edit-outline:before{content:"\e764"}.el-icon-edit:before{content:"\e78c"}.el-icon-date:before{content:"\e78e"}.el-icon-c-scale-to-original:before{content:"\e7c6"}.el-icon-view:before{content:"\e6ce"}.el-icon-loading:before{content:"\e6cf"}.el-icon-rank:before{content:"\e6d1"}.el-icon-sort-down:before{content:"\e7c4"}.el-icon-sort-up:before{content:"\e7c5"}.el-icon-sort:before{content:"\e6d2"}.el-icon-finished:before{content:"\e6cd"}.el-icon-refresh-left:before{content:"\e6c7"}.el-icon-refresh-right:before{content:"\e6c8"}.el-icon-refresh:before{content:"\e6d0"}.el-icon-video-play:before{content:"\e7c0"}.el-icon-video-pause:before{content:"\e7c1"}.el-icon-d-arrow-right:before{content:"\e6dc"}.el-icon-d-arrow-left:before{content:"\e6dd"}.el-icon-arrow-up:before{content:"\e6e1"}.el-icon-arrow-down:before{content:"\e6df"}.el-icon-arrow-right:before{content:"\e6e0"}.el-icon-arrow-left:before{content:"\e6de"}.el-icon-top-right:before{content:"\e6e7"}.el-icon-top-left:before{content:"\e6e8"}.el-icon-top:before{content:"\e6e6"}.el-icon-bottom:before{content:"\e6eb"}.el-icon-right:before{content:"\e6e9"}.el-icon-back:before{content:"\e6ea"}.el-icon-bottom-right:before{content:"\e6ec"}.el-icon-bottom-left:before{content:"\e6ed"}.el-icon-caret-top:before{content:"\e78f"}.el-icon-caret-bottom:before{content:"\e790"}.el-icon-caret-right:before{content:"\e791"}.el-icon-caret-left:before{content:"\e792"}.el-icon-d-caret:before{content:"\e79a"}.el-icon-share:before{content:"\e793"}.el-icon-menu:before{content:"\e798"}.el-icon-s-grid:before{content:"\e7a6"}.el-icon-s-check:before{content:"\e7a7"}.el-icon-s-data:before{content:"\e7a8"}.el-icon-s-opportunity:before{content:"\e7aa"}.el-icon-s-custom:before{content:"\e7ab"}.el-icon-s-claim:before{content:"\e7ad"}.el-icon-s-finance:before{content:"\e7ae"}.el-icon-s-comment:before{content:"\e7af"}.el-icon-s-flag:before{content:"\e7b0"}.el-icon-s-marketing:before{content:"\e7b1"}.el-icon-s-shop:before{content:"\e7b4"}.el-icon-s-open:before{content:"\e7b5"}.el-icon-s-management:before{content:"\e7b6"}.el-icon-s-ticket:before{content:"\e7b7"}.el-icon-s-release:before{content:"\e7b8"}.el-icon-s-home:before{content:"\e7b9"}.el-icon-s-promotion:before{content:"\e7ba"}.el-icon-s-operation:before{content:"\e7bb"}.el-icon-s-unfold:before{content:"\e7bc"}.el-icon-s-fold:before{content:"\e7a9"}.el-icon-s-platform:before{content:"\e7bd"}.el-icon-s-order:before{content:"\e7be"}.el-icon-s-cooperation:before{content:"\e7bf"}.el-icon-bell:before{content:"\e725"}.el-icon-message-solid:before{content:"\e799"}.el-icon-video-camera:before{content:"\e772"}.el-icon-video-camera-solid:before{content:"\e796"}.el-icon-camera:before{content:"\e779"}.el-icon-camera-solid:before{content:"\e79b"}.el-icon-download:before{content:"\e77c"}.el-icon-upload2:before{content:"\e77b"}.el-icon-upload:before{content:"\e7c3"}.el-icon-picture-outline-round:before{content:"\e75f"}.el-icon-picture-outline:before{content:"\e75e"}.el-icon-picture:before{content:"\e79f"}.el-icon-close:before{content:"\e6db"}.el-icon-check:before{content:"\e6da"}.el-icon-plus:before{content:"\e6d9"}.el-icon-minus:before{content:"\e6d8"}.el-icon-help:before{content:"\e73d"}.el-icon-s-help:before{content:"\e7b3"}.el-icon-circle-close:before{content:"\e78d"}.el-icon-circle-check:before{content:"\e720"}.el-icon-circle-plus-outline:before{content:"\e723"}.el-icon-remove-outline:before{content:"\e722"}.el-icon-zoom-out:before{content:"\e776"}.el-icon-zoom-in:before{content:"\e777"}.el-icon-error:before{content:"\e79d"}.el-icon-success:before{content:"\e79c"}.el-icon-circle-plus:before{content:"\e7a0"}.el-icon-remove:before{content:"\e7a2"}.el-icon-info:before{content:"\e7a1"}.el-icon-question:before{content:"\e7a4"}.el-icon-warning-outline:before{content:"\e6c9"}.el-icon-warning:before{content:"\e7a3"}.el-icon-goods:before{content:"\e7c2"}.el-icon-s-goods:before{content:"\e7b2"}.el-icon-star-off:before{content:"\e717"}.el-icon-star-on:before{content:"\e797"}.el-icon-more-outline:before{content:"\e6cc"}.el-icon-more:before{content:"\e794"}.el-icon-phone-outline:before{content:"\e6cb"}.el-icon-phone:before{content:"\e795"}.el-icon-user:before{content:"\e6e3"}.el-icon-user-solid:before{content:"\e7a5"}.el-icon-setting:before{content:"\e6ca"}.el-icon-s-tools:before{content:"\e7ac"}.el-icon-delete:before{content:"\e6d7"}.el-icon-delete-solid:before{content:"\e7c9"}.el-icon-eleme:before{content:"\e7c7"}.el-icon-platform-eleme:before{content:"\e7ca"}.el-icon-loading{-webkit-animation:rotating 2s linear infinite;animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@-webkit-keyframes rotating{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes rotating{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.el-avatar{background:#c0c4cc;box-sizing:border-box;color:#fff;display:inline-block;font-size:14px;height:40px;line-height:40px;overflow:hidden;text-align:center;width:40px}.el-avatar>img{display:block;height:100%;vertical-align:middle}.el-avatar--circle{border-radius:50%}.el-avatar--square{border-radius:4px}.el-avatar--icon{font-size:18px}.el-avatar--large{height:40px;line-height:40px;width:40px}.el-avatar--medium{height:36px;line-height:36px;width:36px}.el-avatar--small{height:28px;line-height:28px;width:28px}.el-tooltip:focus:hover,.el-tooltip:focus:not(.focusing){outline-width:0}.el-tooltip__popper{word-wrap:break-word;border-radius:4px;font-size:14px;line-height:1.2;min-width:10px;padding:10px;position:absolute;z-index:2000}.el-tooltip__popper .popper__arrow,.el-tooltip__popper .popper__arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.el-tooltip__popper .popper__arrow{border-width:6px}.el-tooltip__popper .popper__arrow:after{border-width:5px;content:" "}.el-tooltip__popper[x-placement^=top]{margin-bottom:12px}.el-tooltip__popper[x-placement^=top] .popper__arrow{border-bottom-width:0;border-top-color:#585e6a;bottom:-6px}.el-tooltip__popper[x-placement^=top] .popper__arrow:after{border-bottom-width:0;border-top-color:#585e6a;bottom:1px;margin-left:-5px}.el-tooltip__popper[x-placement^=bottom]{margin-top:12px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow{border-bottom-color:#585e6a;border-top-width:0;top:-6px}.el-tooltip__popper[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#585e6a;border-top-width:0;margin-left:-5px;top:1px}.el-tooltip__popper[x-placement^=right]{margin-left:12px}.el-tooltip__popper[x-placement^=right] .popper__arrow{border-left-width:0;border-right-color:#585e6a;left:-6px}.el-tooltip__popper[x-placement^=right] .popper__arrow:after{border-left-width:0;border-right-color:#585e6a;bottom:-5px;left:1px}.el-tooltip__popper[x-placement^=left]{margin-right:12px}.el-tooltip__popper[x-placement^=left] .popper__arrow{border-left-color:#585e6a;border-right-width:0;right:-6px}.el-tooltip__popper[x-placement^=left] .popper__arrow:after{border-left-color:#585e6a;border-right-width:0;bottom:-5px;margin-left:-5px;right:1px}.el-tooltip__popper.is-dark{background:#585e6a;color:#fff}.el-tooltip__popper.is-light{background:#fff;border:1px solid #585e6a}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow:after{border-top-color:#fff}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#fff}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow:after{border-left-color:#fff}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:#585e6a}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow:after{border-right-color:#fff}.el-popover{background:#fff;border:1px solid #ebeef5;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);color:#606266;font-size:14px;line-height:1.4;min-width:150px;padding:12px;position:absolute;text-align:justify;word-break:break-all;z-index:2000}.el-popover--plain{padding:18px 20px}.el-popover__title{color:#303133;font-size:16px;line-height:1;margin-bottom:12px}.el-popover:focus,.el-popover:focus:active,.el-popover__reference:focus:hover,.el-popover__reference:focus:not(.focusing){outline-width:0}.el-button{-webkit-appearance:none;background:#fff;border:1px solid #dcdfe6;border-radius:4px;box-sizing:border-box;color:#606266;cursor:pointer;display:inline-block;font-size:14px;font-weight:500;line-height:1;margin:0;outline:none;padding:12px 20px;text-align:center;transition:.1s;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;white-space:nowrap}.el-button+.el-button{margin-left:10px}.el-button.is-round{padding:12px 20px}.el-button:focus,.el-button:hover{background-color:#ecf5ff;border-color:#c6e2ff;color:#409eff}.el-button:active{border-color:#3a8ee6;color:#3a8ee6;outline:none}.el-button::-moz-focus-inner{border:0}.el-button [class*=el-icon-]+span{margin-left:5px}.el-button.is-plain:focus,.el-button.is-plain:hover{background:#fff;border-color:#409eff;color:#409eff}.el-button.is-plain:active{background:#fff;outline:none}.el-button.is-active,.el-button.is-plain:active{border-color:#3a8ee6;color:#3a8ee6}.el-button.is-disabled,.el-button.is-disabled:focus,.el-button.is-disabled:hover{background-color:#fff;background-image:none;border-color:#ebeef5;color:#c0c4cc;cursor:not-allowed}.el-button.is-disabled.el-button--text{background-color:transparent}.el-button.is-disabled.is-plain,.el-button.is-disabled.is-plain:focus,.el-button.is-disabled.is-plain:hover{background-color:#fff;border-color:#ebeef5;color:#c0c4cc}.el-button.is-loading{pointer-events:none;position:relative}.el-button.is-loading:before{background-color:hsla(0,0%,100%,.35);border-radius:inherit;bottom:-1px;content:"";left:-1px;pointer-events:none;position:absolute;right:-1px;top:-1px}.el-button.is-round{border-radius:20px;padding:12px 23px}.el-button.is-circle{border-radius:50%;padding:12px}.el-button--primary{background-color:#409eff;border-color:#409eff;color:#fff}.el-button--primary:focus,.el-button--primary:hover{background:#66b1ff;border-color:#66b1ff;color:#fff}.el-button--primary:active{outline:none}.el-button--primary.is-active,.el-button--primary:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff}.el-button--primary.is-disabled,.el-button--primary.is-disabled:active,.el-button--primary.is-disabled:focus,.el-button--primary.is-disabled:hover{background-color:#a0cfff;border-color:#a0cfff;color:#fff}.el-button--primary.is-plain{background:#ecf5ff;border-color:#b3d8ff;color:#409eff}.el-button--primary.is-plain:focus,.el-button--primary.is-plain:hover{background:#409eff;border-color:#409eff;color:#fff}.el-button--primary.is-plain:active{background:#3a8ee6;border-color:#3a8ee6;color:#fff;outline:none}.el-button--primary.is-plain.is-disabled,.el-button--primary.is-plain.is-disabled:active,.el-button--primary.is-plain.is-disabled:focus,.el-button--primary.is-plain.is-disabled:hover{background-color:#ecf5ff;border-color:#d9ecff;color:#8cc5ff}.el-button--success{background-color:#67c23a;border-color:#67c23a;color:#fff}.el-button--success:focus,.el-button--success:hover{background:#85ce61;border-color:#85ce61;color:#fff}.el-button--success:active{outline:none}.el-button--success.is-active,.el-button--success:active{background:#5daf34;border-color:#5daf34;color:#fff}.el-button--success.is-disabled,.el-button--success.is-disabled:active,.el-button--success.is-disabled:focus,.el-button--success.is-disabled:hover{background-color:#b3e19d;border-color:#b3e19d;color:#fff}.el-button--success.is-plain{background:#f0f9eb;border-color:#c2e7b0;color:#67c23a}.el-button--success.is-plain:focus,.el-button--success.is-plain:hover{background:#67c23a;border-color:#67c23a;color:#fff}.el-button--success.is-plain:active{background:#5daf34;border-color:#5daf34;color:#fff;outline:none}.el-button--success.is-plain.is-disabled,.el-button--success.is-plain.is-disabled:active,.el-button--success.is-plain.is-disabled:focus,.el-button--success.is-plain.is-disabled:hover{background-color:#f0f9eb;border-color:#e1f3d8;color:#a4da89}.el-button--warning{background-color:#e6a23c;border-color:#e6a23c;color:#fff}.el-button--warning:focus,.el-button--warning:hover{background:#ebb563;border-color:#ebb563;color:#fff}.el-button--warning:active{outline:none}.el-button--warning.is-active,.el-button--warning:active{background:#cf9236;border-color:#cf9236;color:#fff}.el-button--warning.is-disabled,.el-button--warning.is-disabled:active,.el-button--warning.is-disabled:focus,.el-button--warning.is-disabled:hover{background-color:#f3d19e;border-color:#f3d19e;color:#fff}.el-button--warning.is-plain{background:#fdf6ec;border-color:#f5dab1;color:#e6a23c}.el-button--warning.is-plain:focus,.el-button--warning.is-plain:hover{background:#e6a23c;border-color:#e6a23c;color:#fff}.el-button--warning.is-plain:active{background:#cf9236;border-color:#cf9236;color:#fff;outline:none}.el-button--warning.is-plain.is-disabled,.el-button--warning.is-plain.is-disabled:active,.el-button--warning.is-plain.is-disabled:focus,.el-button--warning.is-plain.is-disabled:hover{background-color:#fdf6ec;border-color:#faecd8;color:#f0c78a}.el-button--danger{background-color:#f56c6c;border-color:#f56c6c;color:#fff}.el-button--danger:focus,.el-button--danger:hover{background:#f78989;border-color:#f78989;color:#fff}.el-button--danger:active{outline:none}.el-button--danger.is-active,.el-button--danger:active{background:#dd6161;border-color:#dd6161;color:#fff}.el-button--danger.is-disabled,.el-button--danger.is-disabled:active,.el-button--danger.is-disabled:focus,.el-button--danger.is-disabled:hover{background-color:#fab6b6;border-color:#fab6b6;color:#fff}.el-button--danger.is-plain{background:#fef0f0;border-color:#fbc4c4;color:#f56c6c}.el-button--danger.is-plain:focus,.el-button--danger.is-plain:hover{background:#f56c6c;border-color:#f56c6c;color:#fff}.el-button--danger.is-plain:active{background:#dd6161;border-color:#dd6161;color:#fff;outline:none}.el-button--danger.is-plain.is-disabled,.el-button--danger.is-plain.is-disabled:active,.el-button--danger.is-plain.is-disabled:focus,.el-button--danger.is-plain.is-disabled:hover{background-color:#fef0f0;border-color:#fde2e2;color:#f9a7a7}.el-button--info{background-color:#909399;border-color:#909399;color:#fff}.el-button--info:focus,.el-button--info:hover{background:#a6a9ad;border-color:#a6a9ad;color:#fff}.el-button--info:active{outline:none}.el-button--info.is-active,.el-button--info:active{background:#82848a;border-color:#82848a;color:#fff}.el-button--info.is-disabled,.el-button--info.is-disabled:active,.el-button--info.is-disabled:focus,.el-button--info.is-disabled:hover{background-color:#c8c9cc;border-color:#c8c9cc;color:#fff}.el-button--info.is-plain{background:#f4f4f5;border-color:#d3d4d6;color:#909399}.el-button--info.is-plain:focus,.el-button--info.is-plain:hover{background:#909399;border-color:#909399;color:#fff}.el-button--info.is-plain:active{background:#82848a;border-color:#82848a;color:#fff;outline:none}.el-button--info.is-plain.is-disabled,.el-button--info.is-plain.is-disabled:active,.el-button--info.is-plain.is-disabled:focus,.el-button--info.is-plain.is-disabled:hover{background-color:#f4f4f5;border-color:#e9e9eb;color:#bcbec2}.el-button--medium{border-radius:4px;font-size:14px;padding:10px 20px}.el-button--medium.is-round{padding:10px 20px}.el-button--medium.is-circle{padding:10px}.el-button--small{border-radius:3px;font-size:12px;padding:9px 15px}.el-button--small.is-round{padding:9px 15px}.el-button--small.is-circle{padding:9px}.el-button--mini{border-radius:3px;font-size:12px;padding:7px 15px}.el-button--mini.is-round{padding:7px 15px}.el-button--mini.is-circle{padding:7px}.el-button--text{background:transparent;border-color:transparent;color:#409eff;padding-left:0;padding-right:0}.el-button--text:focus,.el-button--text:hover{background-color:transparent;border-color:transparent;color:#66b1ff}.el-button--text:active{background-color:transparent;color:#3a8ee6}.el-button--text.is-disabled,.el-button--text.is-disabled:focus,.el-button--text.is-disabled:hover,.el-button--text:active{border-color:transparent}.el-button-group{display:inline-block;vertical-align:middle}.el-button-group:after,.el-button-group:before{content:"";display:table}.el-button-group:after{clear:both}.el-button-group>.el-button{float:left;position:relative}.el-button-group>.el-button+.el-button{margin-left:0}.el-button-group>.el-button.is-disabled{z-index:1}.el-button-group>.el-button:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.el-button-group>.el-button:last-child{border-bottom-left-radius:0;border-top-left-radius:0}.el-button-group>.el-button:first-child:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top-left-radius:4px;border-top-right-radius:4px}.el-button-group>.el-button:first-child:last-child.is-round{border-radius:20px}.el-button-group>.el-button:first-child:last-child.is-circle{border-radius:50%}.el-button-group>.el-button:not(:first-child):not(:last-child){border-radius:0}.el-button-group>.el-button:not(:last-child){margin-right:-1px}.el-button-group>.el-button.is-active,.el-button-group>.el-button:not(.is-disabled):active,.el-button-group>.el-button:not(.is-disabled):focus,.el-button-group>.el-button:not(.is-disabled):hover{z-index:1}.el-button-group>.el-dropdown>.el-button{border-bottom-left-radius:0;border-left-color:hsla(0,0%,100%,.5);border-top-left-radius:0}.el-button-group .el-button--primary:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--primary:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--success:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--warning:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--danger:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:first-child{border-right-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:last-child{border-left-color:hsla(0,0%,100%,.5)}.el-button-group .el-button--info:not(:first-child):not(:last-child){border-left-color:hsla(0,0%,100%,.5);border-right-color:hsla(0,0%,100%,.5)}.el-popper .popper__arrow,.el-popper .popper__arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.el-popper .popper__arrow{border-width:6px;filter:drop-shadow(0 2px 12px rgba(0,0,0,.03))}.el-popper .popper__arrow:after{border-width:6px;content:" "}.el-popper[x-placement^=top]{margin-bottom:12px}.el-popper[x-placement^=top] .popper__arrow{border-bottom-width:0;border-top-color:#ebeef5;bottom:-6px;left:50%;margin-right:3px}.el-popper[x-placement^=top] .popper__arrow:after{border-bottom-width:0;border-top-color:#fff;bottom:1px;margin-left:-6px}.el-popper[x-placement^=bottom]{margin-top:12px}.el-popper[x-placement^=bottom] .popper__arrow{border-bottom-color:#ebeef5;border-top-width:0;left:50%;margin-right:3px;top:-6px}.el-popper[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#fff;border-top-width:0;margin-left:-6px;top:1px}.el-popper[x-placement^=right]{margin-left:12px}.el-popper[x-placement^=right] .popper__arrow{border-left-width:0;border-right-color:#ebeef5;left:-6px;margin-bottom:3px;top:50%}.el-popper[x-placement^=right] .popper__arrow:after{border-left-width:0;border-right-color:#fff;bottom:-6px;left:1px}.el-popper[x-placement^=left]{margin-right:12px}.el-popper[x-placement^=left] .popper__arrow{border-left-color:#ebeef5;border-right-width:0;margin-bottom:3px;right:-6px;top:50%}.el-popper[x-placement^=left] .popper__arrow:after{border-left-color:#fff;border-right-width:0;bottom:-6px;margin-left:-6px;right:1px}.el-dropdown{color:#606266;display:inline-block;font-size:14px;position:relative}.el-dropdown .el-button-group{display:block}.el-dropdown .el-button-group .el-button{float:none}.el-dropdown .el-dropdown__caret-button{border-left:none;padding-left:5px;padding-right:5px;position:relative}.el-dropdown .el-dropdown__caret-button:before{background:hsla(0,0%,100%,.5);bottom:5px;content:"";display:block;left:0;position:absolute;top:5px;width:1px}.el-dropdown .el-dropdown__caret-button.el-button--default:before{background:rgba(220,223,230,.5)}.el-dropdown .el-dropdown__caret-button:hover:not(.is-disabled):before{bottom:0;top:0}.el-dropdown .el-dropdown__caret-button .el-dropdown__icon{padding-left:0}.el-dropdown__icon{font-size:12px;margin:0 3px}.el-dropdown .el-dropdown-selfdefine:focus:active,.el-dropdown .el-dropdown-selfdefine:focus:not(.focusing){outline-width:0}.el-dropdown [disabled]{color:#bbb;cursor:not-allowed}.el-dropdown-menu{background-color:#fff;border:1px solid #ebeef5;border-radius:4px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);left:0;margin:5px 0;padding:10px 0;position:absolute;top:0;z-index:10}.el-dropdown-menu__item{color:#606266;cursor:pointer;font-size:14px;line-height:36px;list-style:none;margin:0;outline:none;padding:0 20px}.el-dropdown-menu__item:focus,.el-dropdown-menu__item:not(.is-disabled):hover{background-color:#f4f5f7;color:#606266}.el-dropdown-menu__item i{margin-right:5px}.el-dropdown-menu__item--divided{border-top:1px solid #ebeef5;margin-top:6px;position:relative}.el-dropdown-menu__item--divided:before{background-color:#fff;content:"";display:block;height:6px;margin:0 -20px}.el-dropdown-menu__item.is-disabled{color:#bbb;cursor:default;pointer-events:none}.el-dropdown-menu--medium{padding:6px 0}.el-dropdown-menu--medium .el-dropdown-menu__item{font-size:14px;line-height:30px;padding:0 17px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:6px}.el-dropdown-menu--medium .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:6px;margin:0 -17px}.el-dropdown-menu--small{padding:6px 0}.el-dropdown-menu--small .el-dropdown-menu__item{font-size:13px;line-height:27px;padding:0 15px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:4px}.el-dropdown-menu--small .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:4px;margin:0 -15px}.el-dropdown-menu--mini{padding:3px 0}.el-dropdown-menu--mini .el-dropdown-menu__item{font-size:12px;line-height:24px;padding:0 10px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided{margin-top:3px}.el-dropdown-menu--mini .el-dropdown-menu__item.el-dropdown-menu__item--divided:before{height:3px;margin:0 -10px}.el-notification{background-color:#fff;border:1px solid #ebeef5;border-radius:8px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);box-sizing:border-box;display:flex;overflow:hidden;padding:14px 26px 14px 13px;position:fixed;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s;width:330px}.el-notification.right{right:16px}.el-notification.left{left:16px}.el-notification__group{margin-left:13px;margin-right:8px}.el-notification__title{color:#303133;font-size:16px;font-weight:700;margin:0}.el-notification__content{color:#606266;font-size:14px;line-height:21px;margin:6px 0 0;text-align:justify}.el-notification__content p{margin:0}.el-notification__icon{font-size:24px;height:24px;width:24px}.el-notification__closeBtn{color:#909399;cursor:pointer;font-size:16px;position:absolute;right:15px;top:18px}.el-notification__closeBtn:hover{color:#606266}.el-notification .el-icon-success{color:#67c23a}.el-notification .el-icon-error{color:#f56c6c}.el-notification .el-icon-info{color:#909399}.el-notification .el-icon-warning{color:#e6a23c}.el-notification-fade-enter.right{right:0;transform:translateX(100%)}.el-notification-fade-enter.left{left:0;transform:translateX(-100%)}.el-notification-fade-leave-active{opacity:0}.el-dropdown-menu__item{min-width:100px}.el-dropdown-menu__item .item.red,.el-dropdown-menu__item .item.red>i{color:red!important}.el-dropdown-menu__item--divided:before{height:5px}.el-tooltip__popper.is-light{border-width:0;box-shadow:0 1px 6px rgba(0,0,0,.2)}.el-tooltip__popper.is-light[x-placement^=top] .popper__arrow{border-top-color:hsla(0,0%,85%,.5)}.el-tooltip__popper.is-light[x-placement^=bottom] .popper__arrow{border-bottom-color:hsla(0,0%,85%,.5)}.el-tooltip__popper.is-light[x-placement^=left] .popper__arrow{border-left-color:hsla(0,0%,85%,.5)}.el-tooltip__popper.is-light[x-placement^=right] .popper__arrow{border-right-color:hsla(0,0%,85%,.5)}.el-popover{border-width:0;box-shadow:0 1px 6px rgba(0,0,0,.2)}@font-face{font-family:zenicon;src:url(../css/fonts/zenicon.woff2) format("woff2")}.ft.icon{word-wrap:normal;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;speak:none;-webkit-font-feature-settings:"liga";direction:ltr;font-family:zenicon,serif;letter-spacing:normal;line-height:1;padding-left:1px;text-transform:none;transform:scale(1.2);transform-origin:50% 0;white-space:nowrap}.ft+.el-el-button,.ft+.ft,.ft+.z-confirm,.ft+.z-execute,.ft+.z-link,.ft+a{margin-left:.6rem}.ft.l12{margin-left:12px}.ft.r12{margin-right:12px}.ft.hover{cursor:pointer}.ft.hover:hover{color:#0285d7}.ft.dark{color:#0d0d0d}.ft.gray{color:#666}.ft.yellow{color:#f90}.ft.red{color:#ed3f14}.ft.green{color:#19be6b}.ft.blue{color:#2d8cf0}.ft.center{text-align:center}.ft.right{text-align:right}.ft.bold{font-weight:700}.ft.underline{text-decoration:underline}.ft.through{text-decoration:line-through}.ft.italic{font-style:italic}.ft.cursor{cursor:pointer}.ft.h1{font-size:1.3rem}.ft.h2{font-size:1.2rem}.ft.h3{font-size:1.1rem}.ft.h4{font-size:.9rem}.ft.h5{font-size:.8rem}@font-face{font-family:taskfont;src:url(../css/fonts/taskfont.woff2) format("woff2"),url(../css/fonts/taskfont.woff) format("woff"),url(../css/fonts/taskfont.ttf) format("truetype")}.taskfont{-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px;-moz-osx-font-smoothing:grayscale;font-family:taskfont,"serif"!important;font-size:16px;font-style:normal}.app-view-loading{align-items:center;background-color:hsla(0,0%,100%,.7);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:99999}.app-view-loading>div{text-align:center}.app-view-loading>div>div{color:#ccc;font:11px verdana;letter-spacing:1px;line-height:16px;margin:0;text-transform:uppercase}.app-view-loading>div>span{-webkit-animation:app-view-loadanim 1s infinite alternate;animation:app-view-loadanim 1s infinite alternate;background:#007db6;border-radius:8px;display:inline-block;height:8px;margin:2px;vertical-align:middle;width:8px}.app-view-loading>div>span:nth-of-type(2){-webkit-animation-delay:.2s;animation-delay:.2s;background:#008fb2}.app-view-loading>div>span:nth-of-type(3){-webkit-animation-delay:.4s;animation-delay:.4s;background:#009b9e}.app-view-loading>div>span:nth-of-type(4){-webkit-animation-delay:.6s;animation-delay:.6s;background:#00a77d}.app-view-loading>div>span:nth-of-type(5){-webkit-animation-delay:.8s;animation-delay:.8s;background:#00b247}.app-view-loading>div>span:nth-of-type(6){-webkit-animation-delay:1s;animation-delay:1s;background:#5ab027}.app-view-loading>div>span:nth-of-type(7){-webkit-animation-delay:1.2s;animation-delay:1.2s;background:#a0b61e}@-webkit-keyframes app-view-loadanim{0%{opacity:0}to{opacity:1}}@keyframes app-view-loadanim{0%{opacity:0}to{opacity:1}}.overlay-y{overflow-y:overlay!important}.overlay-y::-webkit-scrollbar{height:10px;width:10px}.overlay-y::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}.overlay-y::-webkit-scrollbar-thumb:active{background:rgba(0,0,0,.5);border-radius:10px}.overlay-y:hover::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);background-clip:content-box;border:2px solid transparent}.overlay-y:hover::-webkit-scrollbar-thumb:hover{border-bottom-width:0;border-top-width:0}.overlay-y::-webkit-scrollbar-track{background:transparent;border-radius:10px}.common-auto-tip{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.common-circle{border-radius:50%}.common-circle .common-circle-path{fill:transparent}.common-circle .common-circle-g-path-ring{stroke:#8bcf70}.common-circle .common-circle-g-path-core{fill:#8bcf70;transform:scale(.56);transform-origin:50%}.drawer-overlay{background:hsla(0,0%,4%,.76);box-sizing:border-box;display:flex;flex-direction:column;height:0;justify-content:flex-end;left:0;opacity:0;outline:none;pointer-events:none;position:fixed;top:0;width:0;z-index:1000}.drawer-overlay .overlay-mask{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.drawer-overlay .overlay-body{display:flex;flex-direction:column;height:100%;max-height:100%;max-width:100%;width:100%;z-index:2}.drawer-overlay .overlay-body .overlay-close{align-items:flex-end;display:flex;flex-shrink:0;justify-content:flex-end}.drawer-overlay .overlay-body .overlay-close>a{align-items:center;color:#dbdbde;display:flex;height:40px;justify-content:center;width:40px}.drawer-overlay .overlay-body .overlay-close>a .icon{height:24px;width:24px}.drawer-overlay .overlay-body .overlay-close>a>svg{transition:all .3s}.drawer-overlay .overlay-body .overlay-close>a:hover{color:#fff}.drawer-overlay .overlay-body .overlay-close>a:hover>svg{transform:rotate(-90deg)}.drawer-overlay .overlay-body .overlay-resize{height:5px;margin-bottom:-5px;width:100%;z-index:1}.drawer-overlay .overlay-body .overlay-content{background:#fff;border-radius:18px 18px 0 0;cursor:default;flex:1;opacity:0;position:relative;transform:translateY(15%) scale(.98)}.drawer-overlay.overlay-visible{height:100%;opacity:1;pointer-events:auto;transition:opacity .2s ease;width:100%}.drawer-overlay.overlay-visible .overlay-body .overlay-content{opacity:1;transform:translate(0) scale(1);transition:opacity .2s ease,transform .3s ease}.drawer-overlay.overlay-hide{height:100%;transition:opacity .2s ease;width:100%}.drawer-overlay.overlay-hide .overlay-body .overlay-content{transform:translateY(15%) scale(.98);transition:opacity .2s ease,transform .2s ease}.drawer-overlay.right{flex-direction:row;justify-content:flex-end}.drawer-overlay.right .overlay-body{flex-direction:row}.drawer-overlay.right .overlay-body .overlay-close{align-items:flex-start}.drawer-overlay.right .overlay-body .overlay-resize{height:100%;margin-right:-5px;width:5px;z-index:1}.drawer-overlay.right .overlay-body .overlay-content{border-radius:18px 0 0 18px;transform:translate(15%) scale(.98)}.drawer-overlay.right.overlay-visible .overlay-body .overlay-content{transform:translate(0) scale(1)}.drawer-overlay.right.overlay-hide .overlay-body .overlay-content{transform:translate(15%) scale(.98)}.img-upload-modal .ivu-modal-mask{z-index:1001}.img-upload-modal .ivu-modal-no-mask{background-color:rgba(55,55,55,.2)}.img-upload-modal .ivu-modal-wrap{z-index:1001}.imgcomp-upload-list{background:#fff;border:1px solid transparent;border-radius:4px;box-shadow:0 1px 1px rgba(0,0,0,.2);display:inline-block;height:60px;line-height:60px;margin-right:4px;overflow:hidden;position:relative;text-align:center;vertical-align:top;width:60px}.imgcomp-upload-list .imgcomp-upload-img{background-position:50%;background-size:cover;height:100%;left:0;position:absolute;top:0;width:100%}.imgcomp-upload-list .imgcomp-upload-list-cover{background:rgba(0,0,0,.6);bottom:0;display:none;left:0;position:absolute;right:0;top:0}.imgcomp-upload-list .imgcomp-upload-list-cover i{color:#fff;cursor:pointer;font-size:24px;margin:0;transition:all .2s;vertical-align:middle}.imgcomp-upload-list .imgcomp-upload-list-cover i:hover{font-size:28px}.imgcomp-upload-list .ivu-progress{height:100%}.imgcomp-upload-list .ivu-progress .ivu-progress-outer{background-color:rgba(0,0,0,.68);height:100%}.imgcomp-upload-list .ivu-progress .ivu-progress-outer .ivu-progress-inner{margin:0 auto;width:88%}.imgcomp-upload-list:hover .imgcomp-upload-list-cover{display:block}.img-upload-foot,.img-upload-foot .img-upload-foot-input{align-items:center;display:flex;justify-content:flex-end}.img-upload-foot .img-upload-foot-input{flex:1;text-align:left}.img-upload-foot .img-upload-foot-input .img-upload-foot-httptitle{cursor:pointer;margin-right:22px;padding-left:3px}.add-box{background:#fff;border:1px dashed #dddee1;border-radius:4px;display:inline-block;height:60px;line-height:60px;overflow:hidden;position:relative;text-align:center;vertical-align:top;width:60px}.add-box .add-box-icon i{padding-bottom:2px;vertical-align:middle}.add-box .add-box-upload{background:rgba(0,0,0,.6);color:#fff;display:none;height:100%;left:0;padding-top:9px;position:absolute;top:0;width:100%}.add-box .add-box-upload .add-box-item{cursor:pointer;height:22px;line-height:22px}.add-box .add-box-upload .add-box-item .ivu-upload-drag,.add-box .add-box-upload .add-box-item .ivu-upload-drag:hover{background:transparent;border:0;border-radius:0}.add-box .add-box-upload .add-box-item span{font-size:12px;transition:all .2s}.add-box .add-box-upload .add-box-item:hover span{font-size:14px}.add-box em{font-style:normal}.add-box:hover{border-color:rgba(0,0,0,.6)}.add-box:hover .add-box-upload{display:block}.callback-add-box{background:transparent;border:0;display:block;height:25px;line-height:25px;width:auto}.callback-add-box .add-box-icon{display:none}.callback-add-box .add-box-upload{background:transparent;color:#333;display:block;padding:0;width:auto}.callback-add-box .add-box-upload>div{display:inline-block;padding-right:10px}.browse-load{margin:20px;text-align:center}.browse-list{max-height:540px;overflow:auto}.browse-list .browse-item{cursor:pointer;display:inline-block;margin:10px 15px;position:relative;text-align:center}.browse-list .browse-item .browse-img{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKoAAABxCAAAAABg5GeyAAACW0lEQVR4Ae3XVRLjMBAE0L3/rSwKM3OcSNPyLVYOLvM6UD0Bd03LVe9XH+RlhlRSSSWVVFJJJZVUUkkllVRSSSWVVFJJJZVUUkl9WyqppJJKKqmkkgpURP17xngOAR5NxW5wlJ9MaLQh83F4NHWmd/gZtdVBaOldfDB1bq5UpJFbFOC6LKnYrkRO209PAw+hIuzWB8Ep5es8HvYo4z4tE1X8UeRwlMM2D5Bzkc7kj6Bi3VTKDDwEeUcrMxrUvGDXTnHa6kK69SDN9sgq1clxKSbNHqqnYmdri81Q9QHf1JPt1Frncaib2XbiTKL2GkHaurnY9LOulMV0O7G6Kw+g9sw2ohhm62KezVJaaufjWC1TnOkr1exilJ7Ji0vxCCqO9V4UwV4PYr9+apouhGYLKfnahdpqegjmeoXOpXgANe70pKT6Zhu19qkY2nC0PZS527lQOyInqr8Uvc5jqfUb1X+PGh5IhW90S2quh3FQC2XRcF66TUkTXPcLKm5FtdR9RJq+2hWII7UpFtmsQLEyzsdJtkxxpr6gLotbUSlV9yeT0Trmzk2XPdUThLYarUbWOY9j04xXQ2u+pMZLYSumGmNUH3HbM9qOAwSHodN2Pks25F2j3aI7+IxqNsB+YLWb16ukSjiW4xNB0gMoMfApBS/XZQgi3p9/5RsiKNKZEOwYFVIF5VyTyD19sbyjIJiNJRZxpNbx2S8sGKvGZNHJBniBu9Wy5WxjGuQFqIAcBHiRGyt4ua5gSCWVVFJJJZVUUkkllVRSSSWVVFJJJZVUUkkllVRSSSWVVFI/AgO0SXIVYHeGAAAAAElFTkSuQmCC);background-position:50%;background-repeat:no-repeat;background-size:cover;height:64px;width:64px}.browse-list .browse-item .browse-title{display:block;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:64px}.browse-list .browse-item .browse-icon{background-color:rgba(0,0,0,.5);color:#fff;font-size:36px;height:64px;left:0;padding-top:15px;position:absolute;top:0;width:100%}.browse-list-disabled{position:relative}.browse-list-disabled:after{background-color:hsla(0,0%,100%,.9);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.common-loading{-webkit-animation:rotate 2s linear infinite;animation:rotate 2s linear infinite;height:30px;margin:auto;max-height:100%;max-width:100%;overflow:hidden;transform-origin:center center;width:30px}.common-loading .common-path{stroke-dasharray:1,200;stroke-dashoffset:0;stroke-linecap:round;-webkit-animation:dash 1.5s ease-in-out infinite,color 6s ease-in-out infinite;animation:dash 1.5s ease-in-out infinite,color 6s ease-in-out infinite}@-webkit-keyframes rotate{to{transform:rotate(1turn)}}@keyframes rotate{to{transform:rotate(1turn)}}@-webkit-keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}@keyframes dash{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35}to{stroke-dasharray:89,200;stroke-dashoffset:-124}}@-webkit-keyframes color{0%,to{stroke:#d62d20}40%{stroke:#0057e7}66%{stroke:#008744}80%,90%{stroke:#ffa700}}@keyframes color{0%,to{stroke:#d62d20}40%{stroke:#0057e7}66%{stroke:#008744}80%,90%{stroke:#ffa700}}.app-scroller-y{-webkit-overflow-scrolling:touch;bottom:0;left:0;overflow-x:hidden;overflow-y:auto;position:absolute;right:0;top:0}.app-scroller-y .app-scroller-bottom{height:0;margin:0;padding:0}.app-scroller-y.static{flex:1;position:static}.common-spinner{bottom:20px;display:none;height:30px;margin:0 auto;position:fixed;right:20px;width:30px;z-index:9999}.common-spinner .common-circular{bottom:0;height:100%;left:0;position:absolute;right:0;top:0;width:100%}.teditor-box .tox.tox-silver-sink,.teditor-transfer .tox.tox-silver-sink{z-index:13000}.teditor-box{min-height:22px;position:relative}.teditor-box .icon-inline{color:#bbb;left:0;position:absolute;top:0}.teditor-box textarea{opacity:0}.teditor-box .tox-tinymce{border-color:#dddee1;border-radius:4px;box-shadow:none;box-sizing:border-box;overflow:hidden}.teditor-box .tox-tinymce .tox-statusbar span.tox-statusbar__branding a{display:none}.teditor-box .tox-tinymce .tox-tbtn--bespoke .tox-tbtn__select-label{width:auto}.teditor-transfer{background-color:#fff}.teditor-transfer .tox-toolbar>div:last-child>button:last-child{margin-right:64px}.teditor-transfer .ivu-modal-header{display:none}.teditor-transfer .ivu-modal-close{top:7px;z-index:2}.teditor-transfer .teditor-transfer-body{height:100%;left:0;margin:0;padding:0;position:absolute;top:0;width:100%}.teditor-transfer .teditor-transfer-body textarea{opacity:0}.teditor-transfer .teditor-transfer-body .tox-tinymce{border:0}.teditor-transfer .teditor-transfer-body .tox-tinymce .tox-statusbar span.tox-statusbar__branding a{display:none}.teditor-loadstyle{height:180px;overflow:hidden;position:relative;width:100%}.teditor-loadedstyle{max-height:inherit;overflow:inherit;position:relative;width:100%}.upload-control{display:none;height:0;overflow:hidden;width:0}.tox-tinymce-inline{z-index:100000}.quick-edit{align-items:center;display:flex;max-width:100%}.quick-edit .quick-input{flex:1;max-width:100%;position:relative}.quick-edit .quick-input .quick-loading{align-items:center;bottom:0;display:flex;position:absolute;right:8px;top:0}.quick-edit .quick-input .quick-loading .common-loading{height:14px;margin:0;width:14px}.quick-edit .quick-text{align-items:center;height:20px;line-height:20px;margin-right:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-edit .quick-icon{cursor:pointer;display:none;font-size:16px}.quick-edit.quick-always .quick-icon{display:inline-block;opacity:.3;transition:opacity .2s}.ivu-table-row-hover .quick-edit .quick-icon,.quick-edit:hover .quick-icon{display:inline-block;opacity:1}.common-tag-input{background:#fff;border:1px solid #dddee1;border-radius:4px;color:#495060;cursor:text;display:inline-block;line-height:normal;min-height:32px;padding:2px 7px;position:relative;transition:all .2s;vertical-align:middle;width:100%}.common-tag-input:hover{border-color:#a2d98d}.common-tag-input.focus{border-color:#a2d98d;box-shadow:0 0 0 2px rgba(139,207,112,.2)}.common-tag-input .tags-input,.common-tag-input .tags-item{background-color:#f1f8ff;border-radius:3px;color:#495060;float:left;line-height:22px;margin:2px 6px 2px 0;padding:0 20px 0 6px;position:relative}.common-tag-input .tags-input .tags-content,.common-tag-input .tags-item .tags-content{line-height:22px}.common-tag-input .tags-input .tags-del,.common-tag-input .tags-item .tags-del{cursor:pointer;height:22px;position:absolute;right:0;text-align:center;top:-1px;width:20px}.common-tag-input .tags-input{-webkit-appearance:none;background-color:inherit;border:none;color:inherit;height:22px;line-height:22px;max-width:80%;outline:none;overflow:hidden;padding:0;resize:none}.common-tag-input .tags-input::-moz-placeholder{color:#bbb}.common-tag-input .tags-input:-ms-input-placeholder{color:#bbb}.common-tag-input .tags-input::placeholder{color:#bbb}.common-tag-input .tags-placeholder{color:hsla(0,0%,100%,0);left:0;position:absolute;top:0;z-index:-1}.common-tag-input:after{clear:both;content:"";display:block;height:0}.ivu-form-item-error .common-tag-input,.ivu-form-item-error .common-tag-input:hover{border-color:#ed4014}.ivu-form-item-error .common-tag-input.focus{border-color:#ed4014;box-shadow:0 0 0 2px rgba(237,64,20,.2)}.common-avatar{position:relative}.common-avatar.avatar-wrapper{align-items:center;display:flex}.common-avatar.avatar-wrapper .avatar-box{align-items:center;border-radius:50%;display:flex;position:relative}.common-avatar.avatar-wrapper .avatar-box .avatar-default{background-color:transparent}.common-avatar.avatar-wrapper .avatar-box .avatar-text{background-color:#8bcf70}.common-avatar.avatar-wrapper .avatar-box .avatar-text>span{display:inline-block;font-size:15px;line-height:1}.common-avatar.avatar-wrapper .avatar-box>em{background-color:#f90;border:1px solid #fff;border-radius:50%;bottom:0;height:8px;position:absolute;right:0;transform-origin:right bottom;width:8px;z-index:1}.common-avatar.avatar-wrapper .avatar-box.online>em{background-color:#8bcf70}.common-avatar.avatar-wrapper .avatar-name{overflow:hidden;padding-left:6px;text-overflow:ellipsis;white-space:nowrap}.common-avatar-transfer{line-height:1.5;padding:4px 2px}.common-avatar-transfer>p{padding:1px 2px}.common-avatar-transfer .avatar-icons{align-items:center;border-top:1px solid hsla(240,5%,96%,.5);display:flex;margin-top:12px;padding:8px 0 2px}.common-avatar-transfer .avatar-icons>i{color:#f4f4f5;cursor:pointer;font-size:22px;margin-right:12px}.common-avatar-transfer .avatar-icons>i:last-child{margin-right:0}.common-avatar-transfer .avatar-icons>i:hover{color:#fff}.common-user{position:relative;white-space:normal}.common-user .common-user-loading{align-items:center;bottom:0;display:flex;position:absolute;right:10px;top:2px}.common-user .common-user-loading .common-loading{height:14px;width:14px}.common-user.hidden-input .ivu-select-selection{padding:0 4px}.common-user.hidden-input .ivu-select-selection .ivu-select-input{display:none}.common-user-transfer .user-input-option,.common-user-transfer .user-input-option .user-input-avatar{align-items:center;display:flex}.common-user-transfer .user-input-option .user-input-avatar .avatar{height:26px;line-height:26px;width:26px}.common-user-transfer .user-input-option .user-input-nickname{flex:1;margin-left:10px}.common-user-transfer .user-input-option .user-input-userid{color:#ccc;font-size:12px;margin-left:10px;transition:margin .1s}.common-user-transfer .ivu-select-item.ivu-select-item-selected:after{top:8px}.common-user-transfer .ivu-select-item.ivu-select-item-selected .user-input-option .user-input-userid{margin-right:16px}.common-user-transfer .user-drop-prepend{border-bottom:1px solid #f1f1f1;color:#c5c8ce;font-size:12px;line-height:20px;margin-bottom:5px;padding-bottom:5px;text-align:center}.report{height:100%;padding:10px 20px}.report .report-list-wrap{display:flex;flex-direction:column;height:100%;padding-top:53px;position:absolute;top:0;width:100%}.report .report-list-wrap .report-row-foot{flex:0 0 auto}.report .report-list-wrap .report-row-content{flex:1 1 auto;overflow-y:auto}.report .report-list-wrap .report-row-content .ivu-table .ivu-table-body{height:100%;overflow-y:auto;padding-bottom:50px}.report .manage-box-report{margin-left:4px;transform:scale(.8);vertical-align:top}.report .page-box{margin-top:15px;text-align:center}.report .ivu-tabs{height:100%;position:relative}.report .ivu-tabs .ivu-tabs-bar{background:#fff;position:relative;z-index:2}.report .ivu-tabs .ivu-tabs-content{height:100%;margin-top:-53px;padding-top:53px;width:100%}.report-detail{display:flex;flex-direction:column;height:100%}.report-detail .report-title{border-bottom:1px solid #eee;flex-shrink:0;font-size:16px;font-weight:700;margin-bottom:12px;padding:20px 24px}.report-detail .report-detail-context{display:flex;flex:1;flex-direction:column;height:0;padding:12px 0 12px 24px}.report-detail .report-detail-context .report-main{flex:1;margin-top:12px;overflow:auto}.report-detail .report-detail-context .report-submitter p{opacity:.8}.report-detail .report-profile{font-size:14px;padding-right:24px}.report-detail .report-submitter{display:flex;flex-wrap:wrap;height:28px;line-height:28px}.report-detail .report-submitter p{display:block;padding-right:12px;text-align:justify;width:100%}.report-detail .report-submitter p:after{content:"";display:inline-block;width:100%}.report-detail .report-submitter>div{margin-right:8px}.report-detail .ivu-col{margin-bottom:12px}.report-detail .report-content{width:100%}.report-detail .report-content h2{margin-bottom:10px}.report-detail .report-content ol{margin-bottom:20px;padding-left:18px}.report-detail .report-content ol li{font-size:14px;line-height:24px}.report-detail .report-content img{max-width:100%}.report-box{display:flex;flex-direction:column;height:100%;padding:24px}.report-box .report-row-foot{flex:0 0 auto}.report-box .report-row-content{flex:1 1 auto;overflow-y:auto}.report-box .report-row-content .report-row-content-editor{height:100%}.report-box .report-row-content .report-row-content-editor .ivu-form-item-content{display:flex;height:100%}.report-box .report-row-content .report-row-content-editor .ivu-form-item-content .teditor-wrapper{display:flex;flex:1}.report-box .report-row-foot{margin-bottom:0}.report-box .report-titles{line-height:32px}.report-box .report-poptip .ivu-tooltip-inner{font-size:12px!important;min-width:60px!important}.report-box .report-users{align-items:center;display:flex}.report-box .report-users .common-user{flex:1;margin-right:12px}.report-box .report-users .report-row-a{flex-shrink:0}.report-box .report-radiogroup{background:#f4f5f7!important;border-radius:4px!important;padding:2px!important}.report-box .report-radiogroup .ivu-radio-wrapper{background:#f4f5f7!important;border:none!important;box-shadow:none!important;color:#515a6e!important;padding:0 30px!important}.report-box .report-radiogroup .ivu-radio-wrapper:after,.report-box .report-radiogroup .ivu-radio-wrapper:before{width:0!important}.report-box .report-radiogroup .ivu-radio-focus{border:none!important;box-shadow:none!important}.report-box .report-radiogroup .ivu-radio-focus:after{background:none!important}.report-box .report-radiogroup .ivu-radio-wrapper-checked:not(.ivu-radio-wrapper-disabled){background:#fff!important;border:none!important;border-radius:4px!important;box-shadow:none!important;color:#8bcf70!important}.report-box .report-buttongroup{background:#f4f5f7!important;border-radius:4px;margin-left:20px}.report-box .report-buttongroup .report-buttongroup-vertical{background-color:#e5e5e5;height:23px;left:47px;position:absolute;top:5px;width:1px}.report-box .report-buttongroup .ivu-btn-primary{background:#f4f5f7!important;border:none!important;box-shadow:none!important;color:#8bcf70!important;height:36px;line-height:34px}.report-box .report-buttongroup .ivu-btn-primary[disabled]{color:#515a6e!important}.report-row{margin-bottom:20px}.report-row .report-row-a{float:right;line-height:32px}.report-row .report-row-a .report-row-a-icon{font-size:16px;margin-right:2px;transform:rotate(-90deg)}.report-row .report-bottom{height:38px;line-height:36px;min-width:120px}.report-row .ivu-input[disabled]{color:#666}.common-right-bottom{align-items:flex-end;bottom:22px;display:flex;flex-direction:column;position:absolute;right:26px;transition:bottom .3s;z-index:1}.common-right-bottom .common-right-bottom-link{background-color:#8bcf70;border-color:#8bcf70;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;height:32px;line-height:32px;margin:4px 0;padding:0 15px}.common-right-bottom .common-right-bottom-link:hover{color:#fff;opacity:.9}.common-right-bottom-notification .notification-head{align-items:center;display:flex}.common-right-bottom-notification .notification-head .notification-title{color:#303133;display:inline-block;font-size:18px;font-weight:500;margin-right:6px;vertical-align:middle}.common-right-bottom-notification .notification-body{margin:18px 0;max-height:210px;overflow-x:hidden;overflow-y:auto}.common-right-bottom-notification .notification-body .markdown-preview{margin:-20px -12px}.common-right-bottom-notification .notification-body .markdown-preview h2{font-size:18px!important;padding-top:2px!important}.common-right-bottom-notification .notification-body .markdown-preview ul li{padding:2px 0 2px 2px!important}.common-right-bottom-notification .notification-body .markdown-preview ul li:after{height:6px!important;top:10px!important;width:6px!important}.common-right-bottom-notification .notification-link{margin-top:20px;text-align:right}.common-right-bottom-notification .notification-link>button+button{margin-left:6px}body{overflow:hidden}body .form-tip{color:#999;line-height:22px;padding:5px 0}body .ivu-input,body .ivu-select-selection{border-color:#e8e8e8}body .ivu-select-dropdown{max-height:360px}body .ivu-select-dropdown.select-node .ivu-select-item{align-items:center;display:flex;justify-content:space-between}body .ivu-select-dropdown.select-node .ivu-select-item .option-title{flex:1}body .ivu-select-dropdown.select-node .ivu-select-item .ivu-tag{flex-shrink:0;margin-left:18px;margin-right:0;transform:scale(.9);transform-origin:right center}body .ivu-select-dropdown.ivu-date-picker-transfer{max-width:98%;overflow:auto}body .ivu-tooltip-popper .ivu-tooltip-inner{white-space:normal}body .ivu-table table{width:100%!important}body .ivu-table table .ivu-table-cell{padding-left:12px;padding-right:12px}body .ivu-table table thead .ivu-table-cell{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .ivu-table table tbody .tree-icon-loading .ivu-table-cell{align-items:center;display:flex}body .ivu-table table tbody .tree-icon-loading .ivu-table-cell .ivu-table-cell-tree{margin-right:6px}body .ivu-table .td-ellipsis{align-items:center;display:flex;max-width:100%}body .ivu-table .td-ellipsis .remark-text{align-items:center;height:20px;line-height:20px;margin-right:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .ivu-table .td-ellipsis .remark-icon{cursor:pointer;display:none;font-size:16px}body .ivu-table .td-ellipsis .remark-tag{background:#f7f7f7;border:1px solid #e8eaec;border-radius:3px;color:#606266;display:inline-block;font-size:12px;height:22px;line-height:22px;margin:2px 4px 2px 0;opacity:1;overflow:visible;padding:0 4px;vertical-align:middle;white-space:nowrap}body .ivu-table .td-ellipsis .remark-tag.pointer-tag{background:#e6f7ff;border-color:#91d5ff;color:#1890ff;cursor:pointer}body .ivu-table .td-action,body .ivu-table .td-ellipsis .icon-tooltip .ivu-tooltip-rel{align-items:center;display:flex}body .ivu-table .td-action{justify-content:center;max-width:100%}body .ivu-table .td-action .td-action-container{flex-shrink:0}body .ivu-table .td-action .td-action-container a{font-size:12px;padding:0 5px}body .ivu-table .td-action .td-action-container.td-action-menu{align-items:center;display:flex}body .ivu-table .td-action .td-action-container.td-action-menu .menu-dropdown{display:flex}body .ivu-table .td-action .td-action-container.td-action-menu .menu-icon{cursor:pointer;font-size:21px;padding:0 6px}body .ivu-table .ivu-table-row-hover:hover .td-ellipsis .remark-icon{display:inline-block}body .ivu-table:before{background-color:#efefef}body .ivu-modal-wrap{overflow:overlay}body .ivu-modal-wrap .ivu-modal{padding-bottom:100px;top:100px}@media (max-height:900px){body .ivu-modal-wrap .ivu-modal{padding-bottom:35px;top:35px}}body .ivu-modal-wrap .ivu-modal.ivu-modal-fullscreen{top:0}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer,body .ivu-modal-wrap .ivu-modal .ivu-modal-header{border-color:transparent}body .ivu-modal-wrap .ivu-modal .ivu-modal-header{padding:22px 24px 20px}body .ivu-modal-wrap .ivu-modal .ivu-modal-header .ivu-modal-header-inner{font-size:18px}body .ivu-modal-wrap .ivu-modal .ivu-modal-body{padding:16px 32px 2px}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer{padding:20px 30px 22px}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .ivu-btn{height:34px;line-height:32px;min-width:94px}@media (max-width:576px){body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption{align-items:center;display:flex}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption>.ivu-btn{padding:0}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption>.ivu-btn>span{padding:0 15px}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn{height:38px;line-height:36px;min-width:auto}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn,body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn-group,body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-poptip{flex:1}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-btn-group,body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-poptip{align-items:center;display:flex}body .ivu-modal-wrap .ivu-modal .ivu-modal-footer .adaption .ivu-poptip .ivu-poptip-rel{align-items:center;display:flex;flex:1}}body .ivu-modal-wrap .ivu-modal .ivu-modal-content{border-radius:18px}body .ivu-modal-wrap .ivu-modal .ivu-modal-content .ivu-modal-close .ivu-icon-ios-close{font-size:38px;right:2px;top:3px;transition:all .2s}body .ivu-modal-wrap .ivu-modal .ivu-modal-content .ivu-modal-close:hover .ivu-icon-ios-close{transform:rotate(-90deg)}body .ivu-modal-wrap .ivu-modal-confirm{padding:6px 0 20px}body .ivu-modal-wrap .ivu-modal-confirm .ivu-modal-confirm-body>div{word-break:break-all}body .ivu-modal-wrap .form-network-add-tabs .ivu-tabs-tabpane{padding:10px 6px 0}body .ivu-modal-wrap .form-network-add-in-out{padding:0 6px}body .ivu-modal-wrap .form-network-add-in-out .select-in-type span.ivu-radio{display:none}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item-checked{border:1px solid #8bcf70!important;color:#8bcf70}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item{align-items:center;border:1px solid #e8ebee;border-radius:4px;display:flex;margin:0 8px 0 0;min-width:90px;padding:0 12px}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item>span{flex:1}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item:hover{cursor:pointer}body .ivu-modal-wrap .form-network-add-in-out .select-in-type .select-in-type-item .select-in-type-icon{margin-left:12px}body .ivu-modal-wrap .form-network-add-in-out .select-in-node{margin-top:18px}body .ivu-progress,body .ivu-progress .ivu-progress-outer{align-items:center;display:flex}body .ivu-progress.ivu-progress-show-info .ivu-progress-outer{margin:0;padding:0}body .ivu-progress.ivu-progress-show-info .ivu-progress-text{flex-shrink:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body .ivu-drawer-right .ivu-drawer-content{border-radius:18px 0 0 18px}body .ivu-drawer-right .ivu-drawer-content .ivu-drawer-header{border-bottom:1px solid transparent;padding-bottom:6px;padding-top:16px}body .ivu-drawer-right .ivu-drawer-content .ivu-drawer-header .ivu-drawer-header-inner{font-size:18px;height:32px;line-height:32px;padding:0 4px}body .ivu-drawer-right .ivu-drawer-content .ivu-drawer-body{padding:10px 20px}body .ivu-drawer-bottom .ivu-drawer-content{border-radius:18px 18px 0 0}body .ivu-drawer-bottom .ivu-drawer-content .ivu-drawer-close{top:-40px}body .ivu-drawer-bottom .ivu-drawer-content .ivu-drawer-close .ivu-icon{color:#fff;font-size:40px}[hidden=hidden]{display:none!important}.clearfix{*zoom:1}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}.page-container{padding:20px 0;text-align:center}.search-container{margin-bottom:12px}.search-container>ul{align-items:flex-end;display:flex;flex-wrap:wrap}.search-container>ul>li{display:flex;flex:1;flex-direction:column;flex-shrink:0;list-style:none;margin-bottom:12px;margin-right:12px}.search-container>ul>li:last-child{margin-right:0}.search-container>ul>li .search-label{font-weight:600}.search-container>ul>li .search-content{margin-top:6px}.search-container>ul>li.search-button{align-items:center;display:flex;flex:none;flex-direction:row}.search-container>ul>li.search-button>button+button{margin-left:8px}.search-container.lr>ul>li:not(.search-button){align-items:center;flex:none;flex-direction:row;margin-right:18px}.search-container.lr>ul>li:not(.search-button) .search-label{flex-shrink:0}.search-container.lr>ul>li:not(.search-button) .search-content{margin-left:6px;margin-top:0}.search-container.lr>ul>li:not(.search-button) .search-content .ivu-input-wrapper,.search-container.lr>ul>li:not(.search-button) .search-content .ivu-select{max-width:100%;width:168px}.search-container.auto>ul>li:not(.search-button){flex:none}.search-container.auto>ul>li:not(.search-button) .search-content{margin-left:6px;margin-top:0}.search-container.auto>ul>li:not(.search-button) .search-content .ivu-input-wrapper,.search-container.auto>ul>li:not(.search-button) .search-content .ivu-select{max-width:100%;width:150px}.search-expand{align-items:flex-end;display:flex}.search-expand .search-container{flex:1}.search-expand .expand-button-group{flex-shrink:0;margin-bottom:24px;margin-left:24px}.search-button-clear .ivu-tooltip-inner{align-items:center;display:flex;padding:0}.search-button-clear .ivu-tooltip-inner .ivu-btn{font-size:13px;min-width:80px}.icon-loading{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}@-webkit-keyframes icon-loading-load{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes icon-loading-load{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.page-calendar{display:flex;flex-direction:column}.page-calendar .calendar-head{align-items:flex-start;border-bottom:1px solid #f4f4f5;display:flex;flex-shrink:0;margin:32px 32px 16px}.page-calendar .calendar-head .calendar-titbox{align-items:center;display:flex;flex:1;margin-bottom:16px}.page-calendar .calendar-head .calendar-titbox .calendar-title{align-items:center;display:flex;margin-right:36px}.page-calendar .calendar-head .calendar-titbox .calendar-title>h1{color:#333;font-size:28px;font-weight:600}.page-calendar .calendar-head .calendar-titbox .calendar-arrow{margin-right:12px}.page-calendar .calendar-head .calendar-titbox .calendar-arrow>button{color:#888;font-size:12px}.page-calendar .calendar-head .calendar-titbox .calendar-arrow>button:focus{box-shadow:none}.page-calendar .calendar-head .calendar-titbox .calendar-view{display:flex;flex:1;justify-content:flex-end}.page-calendar .calendar-head .calendar-titbox .calendar-view>button:focus{box-shadow:none}.page-calendar .calendar-box{display:flex;flex:1;flex-direction:column;overflow:hidden;padding:0 48px 6px}.page-calendar .calendar-box .calendar-wrapper{flex:1;position:relative}.page-calendar .calendar-box .calendar-wrapper:before{background-color:#fff;content:"";height:2px;left:0;position:absolute;right:0;top:0;z-index:1}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup{box-shadow:none}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup .tui-full-calendar-section-header .tui-full-calendar-ic-checkbox-checked{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAhFBMVEUAAACLz3CLz3CLz3CKzm6Gy2+Lz3CLz3CL0HCLz3CLz3CLz3CLz3CMz3GLz3CKz3CLz3CL0HCJ0G+KznCN0HCL0HCLz3CKz3CLz3CLz3CLz3CMz3CLz3CLz3GL0XCL0HCN0XKLz3CLz3CMz3CLz3CM0HCM0G+FzHCLz3CKz3CMz3CLz3Bod5CFAAAAK3RSTlMA18RAOQ3s8+Pc0rmyq3tpiUwTgBnovyDMjmNSRjUvJQX5yKB0WisKppuUFLaY7gAAAotJREFUeNrtm+FymkAUhc8KqIAgSkyUtkmsmqa97/9+HWeSudpCd8qZ7E0m+73A9/1gxmXx4IK0nbipvDFTN2lT9JDVToLh6gx/sHQSFLfEFZUEp8IFczFgrv5CTChe/TsxYvfy/IkZy7M/c2KGywDUYkgNIBdDciARUxI0YkqDiZgygRNTHKZiyhRiTAyIATEgBsSAGBADYsAnCJgdmtIywKUAOrsA94QzJyKA95/pbALcPV7piADGryzDB+Rnv3IkAhi/UhMBjF9pQwbk3/A3JRXA+7GjAng/DqEC5v3+dMYE8P6nQsIEzFOPnw7g/QpC+R8K4QJ4f5iAzaA/TMAm6fdvZQgY+wW2fn9A0a66Bee/2xLH8kp/Rr1MB/3jAxaP0ALCPzagzPBCM9r/XcYH3K4BLfD4vw75xwdMbqB4CmaD/vEB2ztc0RD+MQHFg+c85fffDPv9AbPUd6Lz+ydCBDyjh1//6WcCGngK1L8a8lMBJTwFfj8XIC16+SnX7Af9bIDUngLSrwFEwaD/VogA5YheDj7/Wv1MgL9g/8XjpwNk+c8Cyq8BYwqePX46QOkGCmi/BowrqFi/Bvg4wYv6y7e4Kz4Rfj5AnzY/WSlcwHAB5+cD9ivKzwfIbEX4qQA99RB+NkDfO4b5sRAigHjzpP0C6u6D9wuo2z/eL+DvXx8Zv4C4gVd/qABxCeFnApQT5+cDpOP8fICcLv2VxbfjlQZUNh+vU/XbBIj6jQLm9wDWlZgFyOaYHJ3Ix/gDQwyIATEgBsSAGODBfuBgPvEwH7m0YkqLVExJYfsQuPcwdjOf+5kPHoFKjKio0e3Hn90WUCyGt7v3Nf0GsjqXYOR1hh6SJsz8v0mg/AZRXmaRKXtJBwAAAABJRU5ErkJggg==)}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup .tui-full-calendar-popup-container{border:0;border-radius:6px;box-shadow:0 1px 6px rgba(0,0,0,.2)}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup .tui-full-calendar-arrow-top .tui-full-calendar-popup-arrow-border{border-bottom-color:hsla(0,0%,85%,.5);top:-8px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-dropdown-menu{border-color:#e8e8e8;width:calc(100% - 14px)}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-icon.tui-full-calendar-calendar-dot,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-icon.tui-full-calendar-ic-title{display:none}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-icon.tui-full-calendar-ic-date{background-image:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTk2MCAxMjhIODMzYzAtNTMtNDMtOTYtOTYtOTZoLTE2Yy01MyAwLTk2IDQzLTk2IDk2SDQwMGMwLTI2LjUtMTAuNy01MC41LTI4LjEtNjcuOUMzNTQuNSA0Mi43IDMzMC41IDMyIDMwNCAzMmgtMTZjLTUzIDAtOTYgNDMtOTYgOTZINjRjLTM1LjMgMC02NCAyOC42LTY0IDY0djczNmMwIDM1LjMgMjguNyA2NCA2NCA2NGg4OTZjMzUuMyAwIDY0LTI4LjcgNjQtNjRWMTkyYzAtMzUuNC0yOC43LTY0LTY0LTY0em0tMjcxIDhjMC0yMi4xIDE3LjktNDAgNDAtNDBzNDAgMTcuOSA0MCA0MHY4MGMwIDIyLjEtMTcuOSA0MC00MCA0MC0xMSAwLTIxLTQuNS0yOC4zLTExLjdDNjkzLjUgMjM3IDY4OSAyMjcgNjg5IDIxNnYtODB6bS00MzMgMGMwLTIyLjEgMTcuOS00MCA0MC00MHM0MCAxNy45IDQwIDQwdjgwYzAgMjIuMS0xNy45IDQwLTQwIDQwLTExIDAtMjEtNC41LTI4LjMtMTEuN0MyNjAuNSAyMzcgMjU2IDIyNyAyNTYgMjE2di04MHptNzA0IDc2MGMwIDE3LjctMTQuMyAzMi0zMiAzMkg5NmMtMTcuNyAwLTMyLTE0LjMtMzItMzJWNDQ4aDg5NnY0NDh6IiBmaWxsPSIjNTE1MTUxIi8+PC9zdmc+");background-size:contain}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-content{padding-left:0}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-section{display:flex;justify-content:space-between;margin-bottom:10px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-section .tui-full-calendar-popup-section-item{border-color:#e8e8e8;border-radius:4px;height:36px;line-height:34px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-section .tui-full-calendar-popup-section-item input{height:34px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-title,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-title input{width:100%}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-end-date,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-start-date{width:210px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-end-date .tui-full-calendar-content,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-start-date .tui-full-calendar-content{padding-left:8px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-popup-location,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-allday,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-private,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-creation .tui-full-calendar-section-state{display:none}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .priority{border-radius:4px;color:#fff;margin-right:6px;padding:2px 4px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .overdue{background:#fff1f0;border:1px solid #ffa39e;border-radius:4px;color:#f5222d;margin-right:6px;padding:1px 3px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-calendar-dot,.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-ic-priority{opacity:0}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-ic-edit{background-image:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTgzMy40MjkgNjJIMTkwLjU3QTEyOC41NzEgMTI4LjU3MSAwIDAgMCA2MiAxOTAuNTcxVjgzMy40M0ExMjguNTcxIDEyOC41NzEgMCAwIDAgMTkwLjU3MSA5NjJIODMzLjQzQTEyOC41NzEgMTI4LjU3MSAwIDAgMCA5NjIgODMzLjQyOVYxOTAuNTdBMTI4LjU3MSAxMjguNTcxIDAgMCAwIDgzMy40MjkgNjJ6bTY0LjI4NSA3NzEuNDI5YTY0LjI4NiA2NC4yODYgMCAwIDEtNjQuMjg1IDY0LjI4NUgxOTAuNTdhNjQuMjg2IDY0LjI4NiAwIDAgMS02NC4yODUtNjQuMjg1VjE5MC41N2E2NC4yODYgNjQuMjg2IDAgMCAxIDY0LjI4NS02NC4yODVIODMzLjQzYTY0LjI4NiA2NC4yODYgMCAwIDEgNjQuMjg1IDY0LjI4NXoiIGZpbGw9IiM1MTUxNTEiLz48cGF0aCBkPSJNMTkwLjU3MSAyNTQuODU3aDY0LjI4NnY2NC4yODZoLTY0LjI4NnptMTI4LjU3MiAwaDQ1MHY2NC4yODZoLTQ1MHpNMTkwLjU3IDQ0Ny43MTRoNjQuMjg2VjUxMmgtNjQuMjg2em0xMjguNTcyIDBoNDUwVjUxMmgtNDUwek0xOTAuNTcgNjQwLjU3MWg2NC4yODZ2NjQuMjg2aC02NC4yODZ6bTEyOC41NzIgMEg2NDAuNTd2NjQuMjg2SDMxOS4xNDN6IiBmaWxsPSIjNTE1MTUxIi8+PC9zdmc+");top:-2px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-ic-delete{background-image:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iMjAwIiBoZWlnaHQ9IjIwMCI+PHBhdGggZD0iTTg5Mi4yODggMjU2SDcwMS4xMkEyMDIuMjQgMjAyLjI0IDAgMCAwIDUwOS42MzIgNjIuMDggMjAxLjIxNiAyMDEuMjE2IDAgMCAwIDMxOC44NDggMjU2SDEyOGMtMTguNjg4IDAtNjYuMDQ4LTQuMjI0LTY2LjA0OCAyNC43NjhDNjEuOTUyIDMyNy43NDQgMTA5LjM3NiAzMjAgMTI4IDMyMGg2NHY1MTJhMTQ2LjQ5NiAxNDYuNDk2IDAgMCAwIDEyNy40MjQgMTI4aDM4Mi4yNzJBMTUwLjAxNiAxNTAuMDE2IDAgMCAwIDgzMiA4MzJsLTMuMzkyLTUxMmg2NGMxOC4zNjggMCA2NS4wMjQgMS40NzIgNjUuMDI0LTM5Ljc0NEE3Mi4zODQgNzIuMzg0IDAgMCAwIDg5Mi4yODggMjU2ek01MDkuNjMyIDEyOC41MTJBMTM4LjE3NiAxMzguMTc2IDAgMCAxIDYzNy40NCAyNTZIMzgyLjU5MmExMzcuOTIgMTM3LjkyIDAgMCAxIDEyNy4wNC0xMjcuNDg4ek03NjggODMyYTk3Ljk4NCA5Ny45ODQgMCAwIDEtNjYuODggNjRIMzE4Ljg0OGE5My41NjggOTMuNTY4IDAgMCAxLTY0LTY0VjMyMEg3Njh2NTEyem0tMzg1LjQwOC02NFY1MTJjMC0xOC40OTYuOTYtNjAuOTkyIDM2LjczNi02MC45OTIgMjcuMzI4IDAgMjYuNDk2IDQzLjAwOCAyNi45NDQgNjAuOTkydjI1NmMwIDE4LjQ5Ni02LjQgMjAuMDMyLTI0Ljk2IDIwLjAzMnMtMzguNzItMS41MzYtMzguNzItMjAuMDMyem0xOTEuMTY4IDBWNTEyYTY0IDY0IDAgMCAxIDIzLjgwOC02MC45OTJjNDIuNDMyIDAgMzkuMzYgNDMuMDA4IDM5Ljg3MiA2MC45OTJ2MjU2YzAgMTguNDk2LTE5LjU4NCAyMC4wMzItMzcuOTUyIDIwLjAzMnMtMjUuNzkyLTEuNTM2LTI1Ljc5Mi0yMC4wMzJ6IiBmaWxsPSIjNTE1MTUxIi8+PC9zdmc+");top:-2px}.page-calendar .calendar-box .calendar-wrapper .tui-full-calendar-popup-task .tui-full-calendar-popup-detail-item-separate{padding-left:22px}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker{border-color:#e8e8e8}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar td,.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar th{height:32px}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar .tui-calendar-next-month.tui-calendar-date,.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-calendar .tui-calendar-prev-month.tui-calendar-date{visibility:visible}.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-datepicker-body .tui-timepicker,.page-calendar .calendar-box .calendar-wrapper .tui-datepicker .tui-datepicker-footer .tui-timepicker{padding:16px 46px 16px 47px}.page-calendar .calendar-menu{opacity:0;position:absolute;right:2px;top:2px;z-index:-1}@media (max-width:768px){.page-calendar .calendar-head .calendar-titbox .calendar-title{flex:1}.page-calendar .calendar-head .calendar-titbox .calendar-arrow{margin-left:12px;margin-right:0}.page-calendar .calendar-head .calendar-titbox .calendar-view{display:none}.page-calendar .calendar-box{padding:0 24px 5px}}.page-dashboard{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;width:100%}.page-dashboard .dashboard-wrapper{display:flex;flex-direction:column;margin-bottom:2%;max-height:80%;max-width:80%;width:664px}.page-dashboard .dashboard-wrapper .dashboard-hello{word-wrap:break-word;color:#333;font-size:24px;font-weight:600;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-desc{color:#888;font-size:13px;margin-top:18px;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-block{display:flex;margin-top:18px;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-block>li{background-color:#fa8e8c;border-radius:8px;cursor:pointer;display:flex;flex:1;flex-direction:column;flex-shrink:0;justify-content:center;list-style:none;margin-right:24px;padding:16px 24px;transition:box-shadow .3s}.page-dashboard .dashboard-wrapper .dashboard-block>li:hover{box-shadow:0 0 10px #ccc}.page-dashboard .dashboard-wrapper .dashboard-block>li:first-child{background-color:#6f9ef6}.page-dashboard .dashboard-wrapper .dashboard-block>li:last-child{background-color:#98de6e;box-shadow:none;cursor:default;margin-right:0}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-title{color:hsla(0,0%,100%,.6);font-size:12px}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-data{align-items:center;display:flex;line-height:1;padding-top:10px}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .block-num{color:#fff;flex:1;font-size:32px;font-weight:600}.page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .taskfont{color:hsla(0,0%,100%,.7);font-size:20px}.page-dashboard .dashboard-wrapper .dashboard-title{font-size:15px;font-weight:600;margin-top:60px;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-list{margin-top:4px;overflow:auto;padding:0 12px}.page-dashboard .dashboard-wrapper .dashboard-list>li{background:#f9fafb;border-radius:6px;cursor:pointer;display:flex;list-style:none;margin-top:12px;padding:8px 12px;position:relative;transition:box-shadow .3s}.page-dashboard .dashboard-wrapper .dashboard-list>li:hover{box-shadow:0 0 6px #dfdfdf}.page-dashboard .dashboard-wrapper .dashboard-list>li:last-child{margin-bottom:12px}.page-dashboard .dashboard-wrapper .dashboard-list>li.complete .item-title{opacity:.5;text-decoration:line-through}.page-dashboard .dashboard-wrapper .dashboard-list>li.complete .item-icon{display:none}.page-dashboard .dashboard-wrapper .dashboard-list>li .priority-color{height:12px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:2px}.page-dashboard .dashboard-wrapper .dashboard-list>li .el-dropdown{flex-shrink:0;height:22px;line-height:22px;width:22px}.page-dashboard .dashboard-wrapper .dashboard-list>li .el-dropdown .taskfont{color:#bbb;font-size:18px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title{flex:1;line-height:22px;padding-left:6px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;display:inline-block;font-size:12px;height:18px;line-height:16px;margin-right:3px;margin-top:3px;min-width:20px;padding:0 2px;text-align:center;vertical-align:top}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon{align-items:center;color:#aaa;cursor:pointer;display:flex;font-size:13px;height:22px;margin-left:16px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon .taskfont{font-size:13px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon>em{font-style:normal;margin-left:4px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon.overdue{color:#ed4014}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-icon.today{color:#f90}.page-dashboard .nopage{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;width:100%}.page-dashboard .nopage .nopage-icon{background-color:#f4f5f7;border-radius:50%;padding:20px}.page-dashboard .nopage .nopage-icon .ivu-icon{color:#d1d8dd;font-size:46px}.page-dashboard .nopage .nopage-text{background-color:#f4f5f7;border-radius:14px;color:#bec6cc;margin-top:16px;padding:4px 15px}@media (max-width:768px){.page-dashboard .dashboard-wrapper{display:block;max-height:86%;max-width:86%}.page-dashboard .dashboard-wrapper .dashboard-block{display:block;margin-top:10px}.page-dashboard .dashboard-wrapper .dashboard-block>li{margin:0 0 10px;padding:8px 12px}.page-dashboard .dashboard-wrapper .dashboard-title{margin-top:36px}.page-dashboard .dashboard-wrapper .dashboard-list{padding-bottom:22px}.page-dashboard .dashboard-wrapper .dashboard-list>li .item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.page-file{display:flex;flex-direction:column;height:100%;width:100%}.page-file .file-wrapper{display:flex;flex:1;flex-direction:column;height:0;position:relative}.page-file .file-wrapper .file-head{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;margin:32px 32px 16px;padding-bottom:16px}.page-file .file-wrapper .file-head .file-nav{align-items:center;display:flex;flex:1}.page-file .file-wrapper .file-head .file-nav>h1{color:#333;font-size:28px;font-weight:600}.page-file .file-wrapper .file-head .file-nav .file-refresh{cursor:pointer;display:none;margin-left:12px}.page-file .file-wrapper .file-head .file-nav .file-refresh>i{font-size:18px}.page-file .file-wrapper .file-head .file-nav:hover .file-refresh{display:block}.page-file .file-wrapper .file-head .file-status{align-items:center;cursor:pointer;display:flex;flex-shrink:0;margin-left:22px}.page-file .file-wrapper .file-head .file-status>button{background:#8bcf70;border-color:#8bcf70;color:#fff}.page-file .file-wrapper .file-head .file-search{cursor:pointer;flex-shrink:0;margin-left:22px}.page-file .file-wrapper .file-head .file-search .ivu-input-wrapper{transform:translateZ(0);width:auto}.page-file .file-wrapper .file-head .file-search .ivu-input-wrapper .ivu-input{border-color:#dcdee2;border-radius:16px;padding-left:0;padding-right:30px;transition:all .3s;width:0}.page-file .file-wrapper .file-head .file-search .ivu-input-wrapper .ivu-input-suffix i{color:#606266}.page-file .file-wrapper .file-head .file-search.has-value .ivu-input-wrapper .ivu-input,.page-file .file-wrapper .file-head .file-search:hover .ivu-input-wrapper .ivu-input{padding-left:14px;width:160px}.page-file .file-wrapper .file-head .file-add{cursor:pointer;flex-shrink:0;margin-left:18px}.page-file .file-wrapper .file-head .file-add .taskfont{font-size:18px}.page-file .file-wrapper .file-no{align-items:center;display:flex;flex:1;flex-direction:column;justify-content:center;margin-bottom:5%;opacity:.8}.page-file .file-wrapper .file-no>i{font-size:64px}.page-file .file-wrapper .file-no>p{font-size:14px;font-weight:500;line-height:1;margin-top:18px}.page-file .file-wrapper .file-navigator{align-items:center;display:flex;height:24px;line-height:24px;margin:0 32px}.page-file .file-wrapper .file-navigator>ul{align-items:center;display:flex;overflow:auto}.page-file .file-wrapper .file-navigator>ul>li{align-items:center;color:#8bcf70;cursor:pointer;display:flex;font-size:14px;list-style:none;padding-left:8px}.page-file .file-wrapper .file-navigator>ul>li:last-child{color:#606266;cursor:default}.page-file .file-wrapper .file-navigator>ul>li+li:before{color:#606266;content:"›";font-family:system-ui,sans-serif;font-size:16px;font-weight:500;line-height:1;margin-top:-2px;padding-right:8px}.page-file .file-wrapper .file-navigator>ul>li .taskfont{padding-right:2px}.page-file .file-wrapper .file-navigator>ul>li>span{display:inline-block;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-file .file-wrapper .file-navigator>ul>li>span.readonly{background:#f7f7f7;border:1px solid #e8eaec;border-radius:2px;color:#606266;font-size:12px;line-height:20px;padding:0 5px;transform:scale(.8);transform-origin:right center}.page-file .file-wrapper .file-navigator .nav-load{align-items:center;display:flex;height:24px;justify-content:center;margin-left:8px;width:24px}.page-file .file-wrapper .file-navigator .nav-load .common-loading{height:12px;width:12px}.page-file .file-wrapper .file-navigator .nav-refresh{margin-left:8px}.page-file .file-wrapper .file-navigator .ivu-btn{font-size:12px;margin-left:12px}.page-file .file-wrapper .file-navigator .file-shear{align-items:center;display:flex}.page-file .file-wrapper .file-navigator .file-shear>span{padding-right:3px}.page-file .file-wrapper .file-navigator .file-shear>em{display:inline-block;font-style:normal;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-file .file-wrapper .file-navigator .flex-full{flex:1}.page-file .file-wrapper .file-navigator .switch-button{align-items:center;background-color:#fff;border-radius:6px;display:flex;position:relative;transition:box-shadow .2s}.page-file .file-wrapper .file-navigator .switch-button:hover{box-shadow:0 0 10px #e6ecfa}.page-file .file-wrapper .file-navigator .switch-button:before{background-color:rgba(139,207,112,.1);border:1px solid #8bcf70;border-radius:6px;color:#8bcf70;content:"";height:100%;left:0;position:absolute;top:0;transition:left .2s;width:50%;z-index:0}.page-file .file-wrapper .file-navigator .switch-button>div{align-items:center;border-radius:6px;color:#606266;cursor:pointer;display:flex;height:30px;justify-content:center;width:32px;z-index:1}.page-file .file-wrapper .file-navigator .switch-button>div>i{font-size:17px}.page-file .file-wrapper .file-navigator .switch-button>div:first-child{color:#8bcf70}.page-file .file-wrapper .file-navigator .switch-button.table:before{left:50%}.page-file .file-wrapper .file-navigator .switch-button.table>div:first-child{color:#606266}.page-file .file-wrapper .file-navigator .switch-button.table>div:last-child{color:#8bcf70}.page-file .file-wrapper .file-table{cursor:default;flex:1;margin:16px 32px 32px}.page-file .file-wrapper .file-table .ivu-table:before{display:none}.page-file .file-wrapper .file-table .ivu-table .ivu-table-tip{opacity:.8}.page-file .file-wrapper .file-table .ivu-table .ivu-table-tip span{font-size:14px;font-weight:500;line-height:1.8}.page-file .file-wrapper .file-table .ivu-table .ivu-table-tip span:before{-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px;content:"\e60b";display:block;font-family:taskfont,"serif"!important;font-size:64px;font-style:normal}.page-file .file-wrapper .file-table .file-nbox{align-items:center;display:flex;position:relative}.page-file .file-wrapper .file-table .file-nbox.shear{opacity:.38}.page-file .file-wrapper .file-table .file-nbox .file-name{align-items:center;display:flex;flex:1;margin-right:46px;position:relative;width:0}.page-file .file-wrapper .file-table .file-nbox .file-name:before{content:"";flex-shrink:0;height:22px;margin-right:8px;width:22px}.page-file .file-wrapper .file-table .file-nbox .permission{font-size:13px;padding-left:6px}.page-file .file-wrapper .file-table .file-nbox .taskfont{color:#aaa;font-size:16px;margin:0 3px}.page-file .file-wrapper .file-list{flex:1;margin-top:16px;overflow:auto;padding:0 20px 20px}.page-file .file-wrapper .file-list>ul{margin-top:-12px}.page-file .file-wrapper .file-list>ul>li{align-items:center;border-radius:5px;cursor:pointer;display:flex;flex-direction:column;float:left;height:110px;justify-content:space-between;list-style:none;margin:12px;position:relative;width:100px}.page-file .file-wrapper .file-list>ul>li .file-input{margin:0 4px 4px;position:relative}.page-file .file-wrapper .file-list>ul>li .file-input input{font-size:13px;margin:0;padding:1px 5px}.page-file .file-wrapper .file-list>ul>li .file-input .file-load{bottom:0;display:flex;position:absolute;right:6px;top:0}.page-file .file-wrapper .file-list>ul>li .file-input .file-load .common-loading{height:10px;width:10px}.page-file .file-wrapper .file-list>ul>li .file-name{color:#606266;display:block;font-size:12px;height:20px;line-height:20px;margin-bottom:5px;overflow:hidden;padding:0 6px;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.page-file .file-wrapper .file-list>ul>li .file-check{left:4px;opacity:0;position:absolute;top:1px;transition:opacity .2s}.page-file .file-wrapper .file-list>ul>li .file-check.file-checked{opacity:1}.page-file .file-wrapper .file-list>ul>li .file-menu{display:flex;opacity:0;position:absolute;right:2px;top:2px;transition:opacity .2s}.page-file .file-wrapper .file-list>ul>li .file-menu .ivu-icon{color:#aaa;font-size:16px;padding:2px 5px;transition:color .2s}.page-file .file-wrapper .file-list>ul>li .file-menu .ivu-icon:hover{color:#606266}.page-file .file-wrapper .file-list>ul>li .file-icon{display:inline-block;height:64px;margin-top:12px;position:relative;width:64px}.page-file .file-wrapper .file-list>ul>li .file-icon:before{bottom:0;left:0;position:absolute;right:0;top:0}.page-file .file-wrapper .file-list>ul>li .file-icon .share-avatar,.page-file .file-wrapper .file-list>ul>li .file-icon .share-icon{align-items:center;background-color:#9acd7b;border-radius:50%;bottom:0;display:flex;height:20px;justify-content:center;position:absolute;right:0;transform:scale(.9);width:20px}.page-file .file-wrapper .file-list>ul>li .file-icon .share-avatar .taskfont,.page-file .file-wrapper .file-list>ul>li .file-icon .share-icon .taskfont{color:#fff;font-size:18px}.page-file .file-wrapper .file-list>ul>li.shear{opacity:.38}.page-file .file-wrapper .file-list>ul>li.highlight,.page-file .file-wrapper .file-list>ul>li:hover{background-color:#f4f5f7}.page-file .file-wrapper .file-list>ul>li:hover .file-check,.page-file .file-wrapper .file-list>ul>li:hover .file-menu{opacity:1}.page-file .file-wrapper .file-menu{position:absolute}.page-file .file-upload-list{background-color:#fff;border:1px solid #ebeef5;border-radius:8px;bottom:16px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1);display:flex;overflow:hidden;padding:14px 26px 14px 13px;position:fixed;right:16px;transition:opacity .3s,transform .3s,left .3s,right .3s,top .4s,bottom .3s;width:380px}.page-file .file-upload-list .upload-wrap{flex:1;margin-left:13px;margin-right:8px}.page-file .file-upload-list .upload-wrap .title{color:#303133;font-size:16px;font-weight:700;margin:0}.page-file .file-upload-list .upload-wrap .title>em{color:#2b85e4;cursor:pointer;font-size:12px;font-style:normal;font-weight:400;padding-left:4px}.page-file .file-upload-list .upload-wrap .content{color:#606266;font-size:14px;line-height:21px;margin:12px -16px 0 0;max-height:500px;overflow:auto}.page-file .file-upload-list .upload-wrap .content>li{list-style:none;padding:4px 16px 4px 0;position:relative}.page-file .file-upload-list .upload-wrap .content>li .file-name{line-height:18px}.page-file .file-upload-list .upload-wrap .content>li .file-error{color:red;font-size:12px}.page-file .file-upload-list .upload-wrap .content>li .file-close{cursor:pointer;display:none;position:absolute;right:0;top:7px}.page-file .file-upload-list .upload-wrap .content>li:hover .file-close{display:block}.page-file .file-upload-list .upload-wrap .close{color:#909399;cursor:pointer;font-size:16px;position:absolute;right:15px;top:18px}.page-file-dropdown-menu{max-height:none!important}.page-file-dropdown-menu .ivu-dropdown{width:100%}.page-file-dropdown-menu .ivu-dropdown .arrow-forward-item{align-items:center;display:flex;justify-content:space-between;margin-right:-6px;min-width:90px}.page-file-dropdown-menu .ivu-dropdown .arrow-forward-item .ivu-icon{opacity:.7}.page-file-dropdown-menu .file-item{align-items:center;display:flex;position:relative}.page-file-dropdown-menu .file-item:before{content:"";flex-shrink:0;height:20px;margin-right:8px;width:20px}.page-file-share-form{display:flex;margin-bottom:12px}.page-file-share-form .share-userid{flex:1}.page-file-share-form>div{flex-shrink:0}.page-file-share-form>div:last-child{margin-right:0}.page-file-share-title{margin-bottom:14px;margin-top:-8px;padding:0 2px}.page-file-share-list{margin-bottom:24px;max-height:500px}.page-file-share-list>li{align-items:center;display:flex;margin-bottom:12px}.page-file-share-list>li .common-avatar{flex:1}.page-file-share-list>li .all-avatar{align-items:center;display:flex;flex:1}.page-file-share-list>li .all-avatar .avatar-text{height:32px;line-height:32px;width:32px}.page-file-share-list>li .all-avatar .avatar-name{overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.page-file-share-list>li .ivu-select{flex-shrink:0;width:auto}.page-file-share-list>li .delete{color:red}.page-file-drawer .overlay-content{border-radius:20px 20px 0 0!important}@media (max-width:768px){.page-file .file-wrapper .file-head{margin:24px 24px 16px}.page-file .file-wrapper .file-navigator{margin:0 24px}.page-file .file-wrapper .file-table{margin:16px 24px 24px}}.page-login{align-items:center;background-color:#f3f6fe;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.page-login .login-body{align-items:center;display:flex;flex-direction:column;max-height:100%;overflow:auto;padding:32px 0;width:100%}.page-login .login-body .login-logo{background:url(../images/logo.svg) no-repeat 50%;background-size:contain;flex-shrink:0;height:68px;width:68px}.page-login .login-body .login-box{background-color:#fff;border-radius:12px;box-shadow:0 0 10px #e6ecfa;margin-top:32px;width:400px}.page-login .login-body .login-box .login-title{font-size:24px;font-weight:600;margin-top:36px;text-align:center}.page-login .login-body .login-box .login-subtitle{color:#aaa;font-size:14px;margin-top:12px;padding:0 12px;text-align:center}.page-login .login-body .login-box .login-input{margin:32px 40px}.page-login .login-body .login-box .login-input>*{margin-top:26px}.page-login .login-body .login-box .login-input .ivu-input{border-color:#f1f1f1}.page-login .login-body .login-box .login-input .ivu-input[readonly=readonly]{background-color:#f5f5f5}.page-login .login-body .login-box .login-input .ivu-input-large{font-size:15px}.page-login .login-body .login-box .login-input .login-code .ivu-input-group-append,.page-login .login-body .login-box .login-input .login-code .ivu-input-group-prepend{background:transparent;border-color:#f1f1f1;font-size:14px}.page-login .login-body .login-box .login-input .login-code .ivu-input{border-left-color:transparent}.page-login .login-body .login-box .login-input .login-code .login-code-end{cursor:pointer;height:38px;margin:-6px -7px;overflow:hidden}.page-login .login-body .login-box .login-input .login-code .login-code-end img{height:100%}.page-login .login-body .login-box .login-input .login-switch{color:#aaa}.page-login .login-body .login-box .login-input .login-input-tips-box{position:relative}.page-login .login-body .login-box .login-input .login-input-tips-box .login-input-tips{bottom:-20px;color:#c7c7c7;font-size:12px;left:0;position:absolute}.page-login .login-body .login-box .login-input>.ivu-poptip,.page-login .login-body .login-box .login-input>.ivu-poptip>.ivu-poptip-rel{width:100%}.page-login .login-body .login-bottom{align-items:center;display:flex;margin-top:18px;width:388px}.page-login .login-body .login-bottom .login-setting{align-items:center;color:#666;cursor:pointer;display:flex;flex-shrink:0}.page-login .login-body .login-bottom .login-setting .taskfont{font-size:12px;margin-left:3px;margin-top:1px;transform:scale(.8)}.page-login .login-body .login-bottom .login-setting-menu{display:flex;flex-direction:column}.page-login .login-body .login-bottom .login-setting-item{align-items:center;display:flex;justify-content:space-between}.page-login .login-body .login-bottom .login-setting-item .ivu-icon{color:#666;margin-right:-6px;padding-left:6px}.page-login .login-body .login-bottom .login-forgot{color:#aaa;flex:1;padding-left:24px;text-align:right}.page-manage{bottom:0;display:flex;left:0;position:absolute;right:0;top:0}.page-manage .manage-box-menu{align-items:center;background:#f4f5f7;display:flex;flex-direction:column;flex-grow:0;flex-shrink:0;height:100%;position:relative;transition:all .2s;width:255px}.page-manage .manage-box-menu .manage-box-dropdown{flex-shrink:0;width:86%}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown{padding:7px 0}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown .ivu-dropdown-item{padding:9px 16px}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown .ivu-dropdown-item-divided{margin-top:7px}.page-manage .manage-box-menu .manage-box-dropdown .ivu-select-dropdown .ivu-dropdown-item-divided:before{top:-9px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title{align-items:center;background-color:#fff;border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;margin-top:27px;padding:6px 10px;transition:box-shadow .3s}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title.menu-visible{box-shadow:0 1px 6px rgba(0,0,0,.2)}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-avatar{height:36px;width:36px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title>span{flex:1;font-size:16px;font-weight:600;overflow:hidden;padding-left:12px;text-overflow:ellipsis;white-space:nowrap}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-arrow{align-items:center;display:flex;flex-direction:column;justify-content:center;padding-left:16px;padding-right:2px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-arrow>i{font-size:12px;margin:-1px}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-top-report{align-items:center;flex:0 0 auto;flex-direction:column;justify-content:center;margin-right:-6px;overflow:unset}.page-manage .manage-box-menu .manage-box-dropdown .manage-box-title .manage-box-top-report>i{font-size:12px;margin:-1px}.page-manage .manage-box-menu .manage-box-dropdown .manage-menu-report-badge{margin-left:6px;transform:scale(.9);vertical-align:top}.page-manage .manage-box-menu .manage-box-dropdown .manage-menu-language{align-items:center;display:flex;justify-content:space-between}.page-manage .manage-box-menu .manage-box-dropdown .manage-menu-language .ivu-icon{color:#666}.page-manage .manage-box-menu>ul{flex:1;margin-top:16px;overflow:auto;width:100%}.page-manage .manage-box-menu>ul>li{align-items:center;border-radius:4px;color:#6b6e72;cursor:pointer;display:flex;height:38px;margin:8px auto;max-width:100%;padding:0 4%;position:relative;width:80%}.page-manage .manage-box-menu>ul>li>i{font-size:20px;margin-right:10px;opacity:.3}.page-manage .manage-box-menu>ul>li .menu-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-manage .manage-box-menu>ul>li .menu-badge{margin-left:12px;transform:scale(.9)}.page-manage .manage-box-menu>ul>li.menu-project{align-items:center;cursor:default;display:flex;flex-direction:column;height:auto;padding:14px 0 0}.page-manage .manage-box-menu>ul>li.menu-project>ul{width:100%}.page-manage .manage-box-menu>ul>li.menu-project>ul>li{cursor:pointer;display:flex;flex-direction:column;list-style:none;margin:4px auto}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1{align-items:center;border-radius:4px;display:flex;justify-content:space-between;padding:0 8px 0 30px;position:relative}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1>em{align-items:center;cursor:pointer;display:flex;height:24px;justify-content:center;left:2px;position:absolute;top:50%;transform:translateY(-50%);width:24px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1>em:before{background:url("data:image/svg+xml;base64,PHN2ZyBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB3aWR0aD0iNDgiIGhlaWdodD0iNDgiPjxwYXRoIGQ9Im0zNjYuMTgyIDEwOC4yMzcgNDQ1Ljg1IDMxOS43OTVhMTAyLjQgMTAyLjQgMCAwIDEgMCAxNjYuNTAyTDM2Ni4xODIgOTE0LjMzYTEwMi40IDEwMi40IDAgMCAxLTE2Mi4wOTktODMuMjUydi02MzkuNTlhMTAyLjQgMTAyLjQgMCAwIDEgMTYyLjEtODMuMjUxeiIgZmlsbD0iIzk5OSIvPjwvc3ZnPg==") no-repeat 50%;background-size:contain;content:"";height:12px;transition:transform .2s;width:12px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1 .title{color:#333;flex:1;height:38px;line-height:38px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h1 .num{font-size:12px;padding-left:16px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2{cursor:default;display:none;margin:16px 4px;padding:0 8px 0 26px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p{align-items:center;display:flex;height:36px;padding:4px 0}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p em,.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p span{flex-shrink:0;font-size:12px;font-style:normal;padding-right:6px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p .ivu-progress{margin-right:-18px}.page-manage .manage-box-menu>ul>li.menu-project>ul>li .project-h2>p .ivu-progress .ivu-progress-inner{background-color:#e4e4e4}.page-manage .manage-box-menu>ul>li.menu-project>ul>li.active .project-h1{background-color:#fff}.page-manage .manage-box-menu>ul>li.menu-project>ul>li.open-menu .project-h1>em:before{transform:rotate(90deg)}.page-manage .manage-box-menu>ul>li.menu-project>ul>li.open-menu .project-h2{display:block}.page-manage .manage-box-menu>ul>li.menu-project .common-loading{height:22px;margin:6px;width:22px}.page-manage .manage-box-menu>ul>li.active{background-color:#fff}.page-manage .manage-box-menu .manage-project-search{background-color:#fff;border-radius:12px;margin:12px 0 -2px;overflow:hidden;padding:0 3px;width:80%}.page-manage .manage-box-menu .manage-project-search .ivu-input{background-color:transparent;border-color:transparent;padding-left:30px}.page-manage .manage-box-menu .manage-project-search .ivu-input:focus,.page-manage .manage-box-menu .manage-project-search .ivu-input:hover{box-shadow:none}.page-manage .manage-box-menu .manage-project-search.loading .ivu-icon-ios-search{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}.page-manage .manage-box-menu .manage-project-search.loading .ivu-icon-ios-search:before{content:"\f45b"}.page-manage .manage-box-menu .manage-box-new-group{align-items:center;display:flex;margin-bottom:20px;margin-top:16px;width:80%}.page-manage .manage-box-menu .manage-box-new-group .manage-box-new{flex:1}.page-manage .manage-box-menu .manage-box-new-group .ivu-btn{height:38px}.page-manage .manage-box-menu .manage-box-new-group .ivu-dropdown .ivu-btn{border-radius:0 4px 4px 0;min-width:auto!important;padding:0 4px}.page-manage .manage-box-main{flex:1;position:relative}.page-manage .manage-box-main .manage-box-view{bottom:0;left:0;overflow:auto;position:absolute;right:0;top:0}.page-manage .manage-mini-menu{display:none;position:relative}.page-manage .manage-mini-menu .ivu-badge{left:30px;position:absolute;top:-6px;transform:scale(.9)}.page-manage-task-modal{display:flex;flex-direction:column}.page-manage-add-task-button-group{margin-left:8px!important}.page-manage-add-task-button-group .ivu-dropdown .ivu-btn{border-radius:0 4px 4px 0;min-width:auto!important;padding:0 4px}@media (max-width:768px){.page-manage .manage-box-menu{bottom:0;left:0;position:fixed;top:0;transform:translateX(-120%);width:100%;z-index:49}.page-manage .manage-box-menu.show768-menu{transform:translateX(0)}.page-manage .manage-mini-menu{align-items:center;background-color:#fff;border-radius:4px;box-shadow:0 0 50px rgba(0,0,0,.3);cursor:pointer;display:flex;font-size:22px;height:42px;justify-content:center;white-space:nowrap;width:46px}}.page-messenger{display:flex}.page-messenger .messenger-wrapper{align-items:flex-start;display:flex;flex:1}.page-messenger .messenger-wrapper .messenger-select{display:flex;flex-direction:column;flex-shrink:0;height:100%;max-width:320px;min-width:240px;position:relative;width:30%}.page-messenger .messenger-wrapper .messenger-select:after{background-color:#f4f5f5;content:"";height:100%;position:absolute;right:0;top:0;width:1px}.page-messenger .messenger-wrapper .messenger-select .messenger-search{align-items:center;display:flex;flex-shrink:0;height:54px;justify-content:center;padding:0 12px}.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper{background-color:#f7f7f7;border-radius:12px;flex:1;margin:0 4px;overflow:hidden;padding:0 8px}.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper .ivu-input{background-color:transparent;border-color:transparent}.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper .ivu-input:focus,.page-messenger .messenger-wrapper .messenger-select .messenger-search .search-wrapper .ivu-input:hover{box-shadow:none}.page-messenger .messenger-wrapper .messenger-select .messenger-nav{align-items:center;display:flex;justify-content:space-evenly;padding:2px 0 12px}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p{color:#888;cursor:pointer;line-height:1;padding:0 6px;position:relative}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p .nav-num{position:absolute;right:-8px;top:-12px;transform:scale(.7)}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p.active{color:#555;font-weight:500}.page-messenger .messenger-wrapper .messenger-select .messenger-nav>p:hover{color:#777}.page-messenger .messenger-wrapper .messenger-select .messenger-list{flex:1;height:0;overflow-x:hidden;overflow-y:auto;width:100%}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li{align-items:flex-start;border:2px solid transparent;cursor:pointer;display:flex;flex-direction:row;list-style:none;margin-right:1px;padding:14px 10px;position:relative}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar,.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .user-avatar{flex-grow:0;flex-shrink:0;height:42px;margin:2px;width:42px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar{align-items:center;background-color:#61b2f9;border-radius:50%;color:#fff;display:flex;font-size:26px;justify-content:center}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar.project{background-color:#6e99eb}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar.task{background-color:#9b96df;font-size:24px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar.completed:after{bottom:0;color:#19be6b;content:"\f373";font-family:Ionicons,serif;font-size:32px;opacity:.2;pointer-events:none;position:absolute;right:12px;z-index:1}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box{display:flex;flex:1;flex-direction:column;padding-left:12px;width:0}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title{align-items:center;display:flex;flex-direction:row;justify-content:space-between;line-height:24px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title .ivu-tag{margin:0 4px 0 0;padding:0 5px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title .ivu-tag.ivu-tag-success{padding:0 6px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>span{color:#333;flex:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>i{color:#8bcf70;flex-shrink:0;font-size:12px;margin-left:8px;transform:scale(.9)}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>i.completed{font-size:18px;margin:0 4px 0 0;transform:scale(1)}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-title>em{color:#999;flex-shrink:0;font-size:12px;font-style:normal;margin-left:8px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-text{color:#999;font-size:12px;line-height:24px;max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-num{left:42px;position:absolute;top:10px;transform:scale(.8)}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.top{background-color:#f1f6fb}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.active{background-color:#f4f5f7}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.operate{border-color:#8bcf70}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.loading{align-items:center;display:flex;height:52px;justify-content:center;margin:0}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li.loading .common-loading{height:20px;margin:0;width:20px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li{list-style:none;margin-left:24px;position:relative}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li .label{border-bottom:1px solid #efefef;height:34px;line-height:34px;margin-bottom:6px;margin-top:6px;padding-left:4px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loaded,.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loading{align-items:center;display:flex;height:52px;justify-content:center;margin:0}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loaded .common-loading,.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li.loading .common-loading{height:20px;margin:0;width:20px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li>ul>li{align-items:center;cursor:pointer;display:flex;flex-direction:row;height:52px;list-style:none}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li>ul>li .avatar{flex-grow:0;flex-shrink:0;height:30px;width:30px}.page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.contacts>li>ul>li .nickname{font-size:14px;overflow:hidden;padding:0 12px;text-overflow:ellipsis;white-space:nowrap}.page-messenger .messenger-wrapper .messenger-select .messenger-list .top-operate{display:flex;opacity:0;position:absolute;right:0;top:0}.page-messenger .messenger-wrapper .messenger-select .messenger-menu{align-items:center;border-top:1px solid #f4f5f5;display:flex;flex-shrink:0;height:52px;justify-content:center}.page-messenger .messenger-wrapper .messenger-select .messenger-menu>i{color:#aaa;cursor:pointer;font-size:24px;margin:0 24px;opacity:.9}.page-messenger .messenger-wrapper .messenger-select .messenger-menu>i.active{color:#8bcf70;opacity:1}.page-messenger .messenger-wrapper .messenger-select .messenger-menu>i:hover{opacity:1}.page-messenger .messenger-wrapper .messenger-msg{display:flex;flex:1;height:100%;position:relative;width:0}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer .dialog-back{display:none}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg{align-items:center;bottom:0;display:flex;flex:1;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:0}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg .msg-dialog-bg-icon{background-color:#f4f5f7;border-radius:50%;padding:20px}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg .msg-dialog-bg-icon .ivu-icon{color:#d1d8dd;font-size:46px}.page-messenger .messenger-wrapper .messenger-msg .msg-dialog-bg .msg-dialog-bg-text{background-color:#f4f5f7;border-radius:14px;color:#bec6cc;margin-top:16px;padding:4px 15px}@media (max-width:768px){.page-messenger .messenger-wrapper .messenger-select{background-color:#fff;height:100%;left:0;max-width:none;position:fixed;top:0;transform:translateX(-120%);transition:all .2s;width:100%;z-index:48}.page-messenger .messenger-wrapper .messenger-select.show768-menu{transform:translateX(0)}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-title{align-items:center;height:54px}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer{position:relative}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer .dialog-back{align-items:center;bottom:0;display:flex;font-size:26px;height:49px;justify-content:center;left:0;position:absolute;width:64px;z-index:1}.page-messenger .messenger-wrapper .messenger-msg .dialog-wrapper .dialog-footer .dialog-input{width:calc(100% - 44px)}}.page-project{align-items:flex-start;display:flex;flex:1}.page-project .project-list{background-color:#fafafa;flex:1;height:100%;width:0}.page-project .project-dialog{flex-shrink:0;height:100%;max-width:520px;min-width:320px;position:relative;width:35%}@media (max-width:768px){.page-project .project-list{height:auto}.page-project .project-dialog{height:100%;left:0;max-width:none;position:absolute;top:0;width:100%}}.page-setting{display:flex;flex-direction:column}.page-setting .setting-head{align-items:center;border-bottom:1px solid #f4f4f5;display:flex;margin:32px 32px 16px}.page-setting .setting-head .setting-titbox{flex:1;margin-bottom:16px}.page-setting .setting-head .setting-titbox .setting-title{align-items:center;display:flex}.page-setting .setting-head .setting-titbox .setting-title>h1{color:#333;flex:1;font-size:28px;font-weight:600}.page-setting .setting-head .setting-titbox .setting-title .setting-more{display:none}.page-setting .setting-box{display:flex;flex:1;height:0;padding-bottom:16px}.page-setting .setting-box .setting-menu{border-right:1px solid #f4f4f5;flex-shrink:0;overflow:auto;width:200px}.page-setting .setting-box .setting-menu>ul{padding:12px 0 0 32px}.page-setting .setting-box .setting-menu>ul>li{align-items:center;color:#6b6e72;cursor:pointer;display:flex;line-height:42px;list-style:none;margin:5px 0;padding:0 20px;position:relative}.page-setting .setting-box .setting-menu>ul>li .ivu-badge{transform:scale(.8);transform-origin:right center}.page-setting .setting-box .setting-menu>ul>li.active,.page-setting .setting-box .setting-menu>ul>li:hover{background-color:#f4f5f7}.page-setting .setting-box .setting-menu>ul>li.version{cursor:default}.page-setting .setting-box .setting-menu>ul>li.version:hover{background-color:transparent}.page-setting .setting-box .setting-menu>ul>li.divided{margin-top:10px;padding-top:10px;position:relative}.page-setting .setting-box .setting-menu>ul>li.divided:before{background-color:#f4f4f5;content:"";height:1px;left:0;position:absolute;right:0;top:0;z-index:1}.page-setting .setting-box .setting-menu>ul>li.divided:after{background-color:#fff;content:"";height:9px;left:0;position:absolute;right:0;top:1px;z-index:2}.page-setting .setting-box .setting-content{display:flex;flex:1;flex-direction:column;overflow:auto;position:relative}.page-setting .setting-box .setting-content .setting-content-title{font-size:20px;font-weight:500;padding:12px 32px}.page-setting .setting-box .setting-content .setting-content-view{flex:1;position:relative}.page-setting .setting-box .setting-content .setting-content-view .setting-router-view{padding:24px 40px}.page-setting .setting-item .ivu-input,.page-setting .setting-item .ivu-select-selection{max-width:460px}.page-setting .setting-item .ivu-form{overflow:auto}.page-setting .setting-item .setting-color,.page-setting .setting-item .setting-template{margin-bottom:12px;max-width:600px;min-width:400px}.page-setting .setting-item .setting-color>div,.page-setting .setting-item .setting-template>div{padding-right:12px;text-align:center}.page-setting .setting-item .setting-color>div:first-child,.page-setting .setting-item .setting-template>div:first-child{text-align:left}.page-setting .setting-item .setting-color>div:last-child,.page-setting .setting-item .setting-template>div:last-child{flex:auto;flex-shrink:0;padding-right:0;width:60px}.page-setting .setting-item .setting-color>div .ivu-color-picker,.page-setting .setting-item .setting-template>div .ivu-color-picker{width:100%}.page-setting .setting-item .setting-color .information,.page-setting .setting-item .setting-template .information{color:#999}.page-setting .setting-item .setting-template>div{flex-shrink:0;text-align:left}.page-setting .setting-item .setting-template>div:last-child{flex:1;max-width:none;width:auto}.page-setting .setting-item .setting-footer>button{height:34px;line-height:32px;min-width:94px}.page-setting .setting-item .setting-auto-day{display:block;line-height:32px;margin-bottom:-10px;margin-top:12px;width:110px}.page-setting .setting-item.submit{bottom:0;display:flex;flex-direction:column;left:0;padding:0!important;position:absolute;right:0;top:0}.page-setting .setting-item.submit .ivu-form{flex:1;overflow:auto;padding:24px 40px}.page-setting .setting-item.submit .ivu-tabs{display:flex;flex:1;flex-direction:column;padding:16px 32px 0}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content{flex:1;height:0}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane{position:relative}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane .setting-system-item{bottom:0;display:flex;flex:1;flex-direction:column;left:0;position:absolute;right:0;top:0}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane .setting-system-item .ivu-form{padding:8px 12px}.page-setting .setting-item.submit .ivu-tabs .ivu-tabs-content .ivu-tabs-tabpane .setting-system-item .setting-footer{margin:0 -32px}.page-setting .setting-item.submit .setting-footer{border-top:1px solid #f4f4f5;flex-shrink:0;padding:16px 24px 0;position:static}@media (max-width:768px){.page-setting .setting-head .setting-titbox .setting-title .setting-more{align-items:center;display:flex;font-size:24px;height:42px;justify-content:center;width:42px}.page-setting .setting-box{position:relative}.page-setting .setting-box .setting-menu{background-color:#fff;height:100%;left:0;position:absolute;top:0;transform:translateX(-120%);transition:all .2s;width:100%;z-index:9}.page-setting .setting-box .setting-menu.show768-menu{transform:translateX(0)}.page-setting .setting-box .setting-menu>ul{padding:12px 32px}}.dialog-wrapper{background-color:#fff;bottom:0;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:0;z-index:1}.dialog-wrapper .dialog-title{display:flex;flex-direction:column;height:68px;justify-content:center;padding:0 30px;position:relative}.dialog-wrapper .dialog-title:before{background-color:#f4f5f5;bottom:0;content:"";height:1px;left:0;position:absolute;width:100%}.dialog-wrapper .dialog-title.completed:after{color:#19be6b;content:"\f373";font-family:Ionicons,serif;font-size:52px;opacity:.2;pointer-events:none;position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:1}.dialog-wrapper .dialog-title .main-title{align-items:center;display:flex;line-height:22px;max-width:100%}.dialog-wrapper .dialog-title .main-title .ivu-tag{flex-shrink:0;margin:0 6px 0 0;padding:0 5px}.dialog-wrapper .dialog-title .main-title .ivu-tag.ivu-tag-success{padding:0 6px}.dialog-wrapper .dialog-title .main-title .ivu-icon{font-size:18px;margin-right:6px}.dialog-wrapper .dialog-title .main-title .ivu-icon.completed{color:#8bcf70}.dialog-wrapper .dialog-title .main-title>h2{font-size:17px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-wrapper .dialog-title .main-title>em{font-size:17px;font-style:normal;font-weight:500;padding-left:6px}.dialog-wrapper .dialog-title .sub-title{color:#aaa;flex-shrink:0;font-size:12px;line-height:20px}.dialog-wrapper .dialog-title .sub-title.pointer{cursor:pointer}.dialog-wrapper .dialog-title .sub-title.pointer:hover{color:#888}.dialog-wrapper .dialog-scroller{flex:1;overflow:auto;padding:0 32px;position:relative}.dialog-wrapper .dialog-scroller .dialog-list>ul>li{align-items:flex-end;display:flex;flex-direction:row;list-style:none;margin-bottom:16px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li:first-child{margin-top:16px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-avatar{flex-shrink:0;height:30px;margin-bottom:20px;position:relative;width:30px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view{align-items:flex-start;display:flex;flex-direction:column;margin:0 0 0 8px;position:relative}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view.text{max-width:70%}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view:hover .dialog-head .dialog-menu{opacity:1}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head{align-items:flex-start;display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content{align-items:flex-start;background-color:#f4f5f7;border-radius:6px 6px 6px 0;display:flex;min-width:32px;padding:8px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-text{color:#333}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-text>pre{word-wrap:break-word;display:block;line-height:1.5;margin:0;padding:0;white-space:pre-wrap;word-break:break-word}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file{display:inline-block}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box{align-items:center;background-color:#fff;border-radius:3px;display:flex;padding:10px 14px;width:220px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-thumb{width:36px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-info{display:flex;flex-direction:column;justify-content:center;margin-left:12px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-info .file-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#333;display:-webkit-box;font-size:14px;line-height:18px;overflow:hidden;text-overflow:ellipsis;word-break:break-all}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.file .file-box .file-info .file-size{color:#666;font-size:14px;padding-top:4px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.img{background-color:transparent;border-radius:6px;display:flex;max-height:220px;max-width:220px;overflow:hidden;padding:0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-file.img .file-img{cursor:pointer;display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-loading{display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-loading .common-loading{height:20px;margin:4px;width:20px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-content .content-unknown{text-decoration:underline}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu{margin-left:6px;opacity:0;transition:all .3s}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon{align-items:center;background-color:#fff;border:1px solid #ddd;border-radius:4px;display:flex}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon>i{color:#999;cursor:pointer;display:inline-block;flex:1;font-size:13px;padding:4px 6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon>i+i{border-left:1px solid #ddd}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-head .dialog-menu .menu-icon>i:hover{color:#777}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot{align-items:center;display:flex;height:21px;line-height:1;padding-top:4px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .common-loading{height:10px;margin:0 2px;width:10px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .time{color:#bbb;font-size:12px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .done{color:#8bcf70;display:none;font-size:12px;margin-left:4px;transform:scale(.9)}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-foot .percent{cursor:pointer;display:none;margin-left:4px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-action{align-items:flex-start;align-self:flex-start;display:flex;height:100%}.dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-action>*{margin:0 5px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history{cursor:pointer;font-size:13px;justify-content:center;margin:12px 0;opacity:.6;padding:3px 0;transition:opacity .2s}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history:hover{opacity:1}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history-tip{padding-top:60px;position:relative}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.history-tip .history-text{background:#f5f5f5;border-radius:2px;font-size:12px;font-style:normal;height:22px;left:50%;line-height:22px;padding:0 48px;position:absolute;text-align:center;top:10px;transform:translateX(-50%)}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.loading{justify-content:center;padding:12px 0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.loading .common-loading{height:18px;margin:0;width:18px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.nothing{color:#999;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.bottom{height:0;margin:0;padding:0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self{flex-direction:row-reverse}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view{align-items:flex-end;margin:0 8px 0 0}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head{flex-direction:row-reverse}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content{background-color:#8bcf70;border-radius:6px 6px 0 6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content .content-text{color:#fff}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content .content-file.file{background-color:#f4f5f7}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-content .content-file.img{background-color:transparent;border-radius:6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-head .dialog-menu{margin-left:0;margin-right:6px}.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-foot .done,.dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-foot .percent{display:inline-block}.dialog-wrapper .dialog-footer{align-items:flex-end;display:flex;flex-direction:column;margin-bottom:20px;padding:0 28px;position:relative}.dialog-wrapper .dialog-footer .dialog-newmsg{background-color:rgba(0,0,0,.6);border-radius:16px;color:#fff;cursor:pointer;display:none;font-size:12px;height:30px;line-height:30px;margin-bottom:20px;margin-right:10px;padding:0 12px;z-index:2}.dialog-wrapper .dialog-footer .dialog-input{background-color:#f4f5f7;border-radius:10px;padding:10px 52px 10px 12px}.dialog-wrapper .dialog-footer .dialog-input .ivu-input{background-color:transparent;border:0;resize:none}.dialog-wrapper .dialog-footer .dialog-input .ivu-input:focus{box-shadow:none}.dialog-wrapper .dialog-footer .dialog-send{align-items:center;bottom:0;display:flex;font-size:18px;justify-content:center;position:absolute;right:28px;top:0;width:46px}.dialog-wrapper .dialog-footer .chat-upload{display:none;height:0;overflow:hidden;width:0}.dialog-wrapper .dialog-footer.newmsg{margin-top:-50px}.dialog-wrapper .dialog-footer.newmsg .dialog-newmsg{display:block}.dialog-wrapper .drag-over{align-items:center;background-color:hsla(0,0%,100%,.78);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:3}.dialog-wrapper .drag-over:before{border:2px dashed #7b7b7b;border-radius:12px;bottom:16px;content:"";left:16px;position:absolute;right:16px;top:16px}.dialog-wrapper .drag-over .drag-text{color:#666;font-size:18px;padding:12px}.dialog-wrapper-read-poptip-content{display:flex;position:relative}.dialog-wrapper-read-poptip-content .read,.dialog-wrapper-read-poptip-content .unread{flex:1;max-height:300px;overflow:auto}.dialog-wrapper-read-poptip-content .read>li,.dialog-wrapper-read-poptip-content .unread>li{list-style:none;margin-bottom:12px}.dialog-wrapper-read-poptip-content .read>li .common-avatar,.dialog-wrapper-read-poptip-content .unread>li .common-avatar{width:100%}.dialog-wrapper-read-poptip-content .read>li:last-child,.dialog-wrapper-read-poptip-content .unread>li:last-child{margin-bottom:6px}.dialog-wrapper-read-poptip-content .read>li.read-title>em,.dialog-wrapper-read-poptip-content .unread>li.read-title>em{font-size:18px;font-style:normal;font-weight:600;padding-right:6px}.dialog-wrapper-read-poptip-content .unread>li{padding-left:16px}.dialog-wrapper-read-poptip-content:before{background-color:#f4f4f5;bottom:0;content:"";left:50%;position:absolute;top:0;width:1px}.dialog-wrapper-paste{margin-top:-4px}.dialog-wrapper-paste img{max-height:1000px;max-width:100%}.dialog-wrapper-paste>div,.dialog-wrapper-paste>img{display:flex;flex-direction:column;margin:4px 0;padding:0}@media (max-width:768px){.dialog-wrapper .dialog-footer{margin-bottom:16px;padding:0 20px}.dialog-wrapper .dialog-footer .dialog-send{right:20px}}.file-content,.file-preview{border-radius:18px 18px 0 0;bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:absolute;right:0;top:0}.file-content .preview-iframe,.file-preview .preview-iframe{background:0 0;border:0;float:none;height:100%;left:0;margin:-1px 0 0;max-width:none;outline:0;padding:0;position:absolute;top:0;width:100%}.file-content .edit-header,.file-preview .edit-header{align-items:center;background-color:#fff;box-shadow:0 1px 5px 0 rgba(0,0,0,.05);display:flex;flex-direction:row;height:42px;position:relative;width:100%;z-index:99}.file-content .edit-header .header-title,.file-preview .edit-header .header-title{color:#333;flex:1;font-size:16px;line-height:24px;overflow:hidden;padding-left:24px;padding-right:24px;text-overflow:ellipsis;white-space:nowrap}.file-content .edit-header .header-title .file-unsave-tip,.file-preview .edit-header .header-title .file-unsave-tip{color:#333;cursor:pointer;font-weight:500;padding-right:6px;transition:color .3s}.file-content .edit-header .header-title .file-unsave-tip:hover,.file-preview .edit-header .header-title .file-unsave-tip:hover{color:#000}.file-content .edit-header .header-user,.file-preview .edit-header .header-user{margin-right:24px}.file-content .edit-header .header-user>ul,.file-preview .edit-header .header-user>ul{align-items:center;display:flex}.file-content .edit-header .header-user>ul>li,.file-preview .edit-header .header-user>ul>li{list-style:none;margin-right:-4px}.file-content .edit-header .header-user>ul>li.more,.file-preview .edit-header .header-user>ul>li.more{background-color:#8bcf70;border:2px solid #fff;border-radius:50%;color:#fff;font-size:12px;height:28px;line-height:24px;text-align:center;width:28px;z-index:1}.file-content .edit-header .header-hint,.file-preview .edit-header .header-hint{color:#666;font-size:12px;padding-right:22px;white-space:nowrap}.file-content .edit-header .header-hint .ivu-btn,.file-preview .edit-header .header-hint .ivu-btn{font-size:12px;padding:0 10px}.file-content .edit-header .header-hint .ivu-dropdown-item,.file-preview .edit-header .header-hint .ivu-dropdown-item{font-size:12px!important}.file-content .edit-header .header-button,.file-preview .edit-header .header-button{font-size:12px;margin-right:24px}.file-content .content-body,.file-preview .content-body{display:flex;flex:1;position:relative}.file-content .content-body .mdeditor-wrapper,.file-content .content-body .teditor-wrapper,.file-preview .content-body .mdeditor-wrapper,.file-preview .content-body .teditor-wrapper{display:flex;flex:1}.file-content .content-body .mdeditor-box,.file-preview .content-body .mdeditor-box{position:relative;width:100%}.file-content .content-body .mdeditor-box .markdown,.file-preview .content-body .mdeditor-box .markdown{bottom:0;left:0;overflow:auto;position:absolute;right:0;top:0;transform:translateZ(0)}.file-content .content-body .mdeditor-box .markdown .markdown-toolbars,.file-preview .content-body .mdeditor-box .markdown .markdown-toolbars{border-bottom:1px solid #eee}.file-content .content-body .mdeditor-box .markdown.border,.file-preview .content-body .mdeditor-box .markdown.border{border:0!important}.file-content .content-body .teditor-loadedstyle,.file-preview .content-body .teditor-loadedstyle{height:100%}.file-content .content-body .teditor-loadedstyle .tox-tinymce,.file-preview .content-body .teditor-loadedstyle .tox-tinymce{border:0;border-radius:0}.file-content .content-body .teditor-loadedstyle .tox-mbtn,.file-preview .content-body .teditor-loadedstyle .tox-mbtn{height:36px}.file-content .content-body .teditor-loadedstyle .tox-menubar,.file-content .content-body .teditor-loadedstyle .tox-toolbar-overlord,.file-preview .content-body .teditor-loadedstyle .tox-menubar,.file-preview .content-body .teditor-loadedstyle .tox-toolbar-overlord{background:#fff;padding:0 12%}.file-content .content-body .teditor-loadedstyle .tox-toolbar__overflow,.file-content .content-body .teditor-loadedstyle .tox-toolbar__primary,.file-preview .content-body .teditor-loadedstyle .tox-toolbar__overflow,.file-preview .content-body .teditor-loadedstyle .tox-toolbar__primary{background:none!important;border-top:1px solid #eaeaea!important}.file-content .content-body .teditor-loadedstyle .tox-toolbar-overlord,.file-preview .content-body .teditor-loadedstyle .tox-toolbar-overlord{border-bottom:1px solid #e9e9e9!important}.file-content .content-body .teditor-loadedstyle .tox-toolbar__group:not(:last-of-type),.file-preview .content-body .teditor-loadedstyle .tox-toolbar__group:not(:last-of-type){border-right:1px solid #eaeaea!important}.file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap,.file-preview .content-body .teditor-loadedstyle .tox-sidebar-wrap{border:1px solid #e8e8e8;border-radius:2px;box-shadow:0 4px 8px 0 rgba(0,0,0,.08);margin:22px 12%}.file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap .tox-edit-area,.file-preview .content-body .teditor-loadedstyle .tox-sidebar-wrap .tox-edit-area{border-top:0}.file-content .content-body .teditor-loadedstyle .tox-statusbar,.file-preview .content-body .teditor-loadedstyle .tox-statusbar{border-top:1px solid #e9e9e9}.file-content .content-body .teditor-loadedstyle .tox-statusbar .tox-statusbar__resize-handle,.file-preview .content-body .teditor-loadedstyle .tox-statusbar .tox-statusbar__resize-handle{display:none}.file-content .content-load,.file-preview .content-load{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:42px;z-index:1000}.file-content .content-load .common-loading,.file-preview .content-load .common-loading{margin:0}.file-preview .edit-header .header-title{align-items:center;display:flex}.file-preview .edit-header .header-title .ivu-tag{line-height:20px;margin-left:6px;padding:0 6px}.file-preview .edit-header .header-title .refresh{align-items:center;display:flex;margin-left:6px}.file-preview .edit-header .header-title .refresh .common-loading{height:16px;margin:2px;width:16px}.file-preview .edit-header .header-title .refresh>i{cursor:pointer;font-size:20px;opacity:.6;transition:all .2s}.file-preview .edit-header .header-title .refresh>i:hover{opacity:1}.file-preview .content-body{overflow:hidden}.file-preview .content-body .markdown-preview-warp{flex:1;overflow:auto}@media (max-width:1200px){.file-content{overflow:auto}.file-content .content-body,.file-content .edit-header{min-width:768px;overflow-x:auto}.file-content .content-body .tox .tox-toolbar--scrolling,.file-content .edit-header .tox .tox-toolbar--scrolling{flex-wrap:wrap}.file-content .content-body .teditor-loadedstyle .tox-menubar,.file-content .content-body .teditor-loadedstyle .tox-toolbar-overlord,.file-content .edit-header .teditor-loadedstyle .tox-menubar,.file-content .edit-header .teditor-loadedstyle .tox-toolbar-overlord{padding:0}.file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap,.file-content .edit-header .teditor-loadedstyle .tox-sidebar-wrap{margin:0}}.project-archived{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.project-archived .archived-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.project-archived .archived-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.project-archived .archived-title .title-icon>i{cursor:pointer}.project-dialog{background-color:#fff;border-left:1px solid #f4f5f5;display:flex;flex-direction:column;position:relative;z-index:1}.project-dialog .project-dialog-wrapper .dialog-user{margin-top:36px;padding:0 32px}.project-dialog .project-dialog-wrapper .dialog-user .member-head{align-items:center;display:flex}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-title{flex:1;font-size:18px;font-weight:600}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-title>span{color:#8bcf70;padding-left:6px}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-view-all{color:#999;cursor:pointer;font-size:13px}.project-dialog .project-dialog-wrapper .dialog-user .member-head .member-view-all:hover{color:#777}.project-dialog .project-dialog-wrapper .dialog-user .member-list{align-items:center;display:flex;margin-top:14px;overflow:auto}.project-dialog .project-dialog-wrapper .dialog-user .member-list::-webkit-scrollbar{display:none}.project-dialog .project-dialog-wrapper .dialog-user .member-list>li{list-style:none;margin-bottom:8px;margin-right:14px;position:relative}.project-dialog .project-dialog-wrapper .dialog-user .member-list.member-all{display:block}.project-dialog .project-dialog-wrapper .dialog-user .member-list.member-all>li{display:inline-block}.project-dialog .project-dialog-wrapper .dialog-footer .dialog-back{display:none}@media (max-width:768px){.project-dialog .project-dialog-wrapper .dialog-user{margin-top:24px;padding:0 20px}.project-dialog .project-dialog-wrapper .dialog-scroller,.project-dialog .project-dialog-wrapper .dialog-title{padding:0 20px}.project-dialog .project-dialog-wrapper .dialog-footer{position:relative}.project-dialog .project-dialog-wrapper .dialog-footer .dialog-back{align-items:center;bottom:0;display:flex;font-size:26px;justify-content:center;left:0;position:absolute;top:0;width:64px;z-index:1}.project-dialog .project-dialog-wrapper .dialog-footer .dialog-input{width:calc(100% - 44px)}}.project-list,.project-list .project-head{display:flex;flex-direction:column}.project-list .project-head{align-items:flex-start;margin:32px 32px 0}.project-list .project-head .project-titbox{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:24px;width:100%}.project-list .project-head .project-titbox .project-title{align-items:center;display:flex}.project-list .project-head .project-titbox .project-title>h1{color:#333;font-size:28px;font-weight:600}.project-list .project-head .project-titbox .project-title .project-load{align-items:center;display:flex;margin-left:18px}.project-list .project-head .project-titbox .project-title .project-load .common-loading{height:22px;width:22px}.project-list .project-head .project-titbox .project-icons{align-items:center;display:flex;flex-shrink:0;margin-top:3px}.project-list .project-head .project-titbox .project-icons>li{align-items:center;border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;list-style:none;margin-left:16px;position:relative;transition:box-shadow .3s;width:36px}.project-list .project-head .project-titbox .project-icons>li:hover{box-shadow:0 0 6px #ccc}.project-list .project-head .project-titbox .project-icons>li.project-avatar{min-width:36px;width:auto}.project-list .project-head .project-titbox .project-icons>li.project-avatar:hover{box-shadow:none}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul{align-items:center;display:flex}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li{list-style:none;margin-left:-6px;transition:transform .2s}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li:hover{transform:scale(1.05)}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li:first-child{margin-left:0}.project-list .project-head .project-titbox .project-icons>li.project-avatar>ul>li.more{align-items:center;background-color:transparent;border-color:transparent;color:#aaa;display:flex;font-size:17px;height:32px;justify-content:center;transform:scale(1)!important;width:30px;z-index:1}.project-list .project-head .project-titbox .project-icons>li.project-icon{background-color:#f2f3f5;border-radius:50%}.project-list .project-head .project-titbox .project-icons>li.project-icon .menu-icon{font-size:20px;height:36px;line-height:36px;width:36px}.project-list .project-head .project-titbox .project-icons>li.project-icon .menu-badge{left:20px;position:absolute;top:-6px;transform:scale(.8)}.project-list .project-head .project-titbox .project-icons>li.project-icon .search-input{margin:2px 0;width:170px}.project-list .project-head .project-titbox .project-icons>li.project-icon.active{background-color:#8bcf70;color:#fff}.project-list .project-head .project-subbox{width:100%}.project-list .project-head .project-subbox .project-subtitle{color:#999;float:left;line-height:24px;padding:3px 0}.project-list .project-head .project-subbox .project-switch{align-items:flex-end;display:flex;float:right;margin-left:32px}.project-list .project-head .project-subbox .project-switch .project-checkbox{align-items:center;display:flex;height:30px;margin-right:14px;opacity:.9}.project-list .project-head .project-subbox .project-switch .project-checkbox .ivu-checkbox-focus{box-shadow:none}.project-list .project-head .project-subbox .project-switch .project-select{align-items:center;display:flex;height:30px;margin-right:14px;opacity:.9}.project-list .project-head .project-subbox .project-switch .project-select .project-flow{align-items:center;background:#f7f7f7;border:1px solid #e8eaec;border-radius:4px;cursor:pointer;display:flex;font-size:13px;height:28px;justify-content:center;line-height:26px;padding:0 8px}.project-list .project-head .project-subbox .project-switch .project-select .project-flow.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-list .project-head .project-subbox .project-switch .project-select .project-flow.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-list .project-head .project-subbox .project-switch .project-select .project-flow.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-list .project-head .project-subbox .project-switch .project-switch-button{align-items:center;background-color:#fff;border-radius:6px;display:flex;height:30px;position:relative;transition:box-shadow .2s}.project-list .project-head .project-subbox .project-switch .project-switch-button:hover{box-shadow:0 0 10px #e6ecfa}.project-list .project-head .project-subbox .project-switch .project-switch-button:before{background-color:rgba(139,207,112,.1);border:1px solid #8bcf70;border-radius:6px;color:#8bcf70;content:"";height:100%;left:0;position:absolute;top:0;transition:left .2s;width:50%;z-index:0}.project-list .project-head .project-subbox .project-switch .project-switch-button>div{align-items:center;border-radius:6px;color:#606266;cursor:pointer;display:flex;height:30px;justify-content:center;width:32px;z-index:1}.project-list .project-head .project-subbox .project-switch .project-switch-button>div>i{font-size:17px}.project-list .project-head .project-subbox .project-switch .project-switch-button>div:first-child{color:#8bcf70}.project-list .project-head .project-subbox .project-switch .project-switch-button.menu:before{left:50%}.project-list .project-head .project-subbox .project-switch .project-switch-button.menu>div:first-child{color:#606266}.project-list .project-head .project-subbox .project-switch .project-switch-button.menu>div:last-child{color:#8bcf70}.project-list .project-column{display:flex;height:100%;overflow-x:auto;overflow-y:hidden;padding-top:15px}.project-list .project-column>ul{align-items:flex-start;display:inline-flex;justify-content:space-between}.project-list .project-column>ul>li{display:flex;flex-direction:column;flex-shrink:0;height:100%;list-style:none;width:260px}.project-list .project-column>ul>li:first-child{margin-left:22px}.project-list .project-column>ul>li:last-child{margin-right:22px}.project-list .project-column>ul>li.add-column{background-color:#f2f3f5;border-radius:4px;color:#888;cursor:pointer;height:36px}.project-list .project-column>ul>li.add-column .add-column-text{align-items:center;display:flex;flex-direction:row;line-height:36px;padding:0 12px}.project-list .project-column>ul>li.add-column .add-column-text>i{font-size:16px;padding-right:8px}.project-list .project-column>ul>li.add-column .add-column-text:hover{color:#777}.project-list .project-column>ul>li.add-column .add-column-input{align-items:center;display:none;height:36px}.project-list .project-column>ul>li.add-column .add-column-input .ivu-input{height:36px;padding:4px 10px}.project-list .project-column>ul>li.add-column .add-column-input .ivu-input-icon{height:36px;line-height:36px;width:36px}.project-list .project-column>ul>li.add-column.show-input .add-column-text{display:none}.project-list .project-column>ul>li.add-column.show-input .add-column-input{display:flex}.project-list .project-column>ul>li .column-head{align-items:center;background-color:#f2f3f5;border-radius:4px;display:flex;margin:0 10px;padding:7px 10px}.project-list .project-column>ul>li .column-head .column-head-title{align-items:center;display:flex;flex:1;font-weight:500;width:0}.project-list .project-column>ul>li .column-head .column-head-title>span{font-size:15px}.project-list .project-column>ul>li .column-head .column-head-title>em{color:#888;font-size:14px;font-style:normal;padding-left:6px}.project-list .project-column>ul>li .column-head .column-head-icon{align-items:center;display:flex;margin-left:16px}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon,.project-list .project-column>ul>li .column-head .column-head-icon .loading{align-items:center;display:flex;height:24px;justify-content:center;padding-right:8px;width:24px}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon .common-loading,.project-list .project-column>ul>li .column-head .column-head-icon .loading .common-loading{height:16px;margin:0;width:16px}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon{color:#aaa;cursor:pointer;font-size:16px;font-weight:600;transition:color .3s}.project-list .project-column>ul>li .column-head .column-head-icon .ivu-icon:hover{color:#888}.project-list .project-column>ul>li .column-head .column-head-icon .last{padding-right:0}.project-list .project-column>ul>li .column-head.custom-color{color:#fff}.project-list .project-column>ul>li .column-head.custom-color .column-head-title>em{color:hsla(0,0%,100%,.6)}.project-list .project-column>ul>li .column-head.custom-color .ivu-icon{color:hsla(0,0%,100%,.5)}.project-list .project-column>ul>li .column-head.custom-color .ivu-icon:hover{color:hsla(0,0%,100%,.9)}.project-list .project-column>ul>li .column-task{display:flex;flex:1;flex-direction:column;overflow-x:hidden;overflow-y:auto}.project-list .project-column>ul>li .column-task .task-list>div:last-child{margin-bottom:16px}.project-list .project-column>ul>li .column-task .task-item{background-color:#fff;border-radius:12px;cursor:pointer;margin:16px 10px 0;padding:12px;position:relative;transition:box-shadow .3s,opacity .3s}.project-list .project-column>ul>li .column-task .task-item:hover{box-shadow:0 0 10px #e6ecfa}.project-list .project-column>ul>li .column-task .task-item .task-head{align-items:flex-start;display:flex}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title{flex:1;padding-top:1px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;float:left;font-size:12px;height:20px;line-height:18px;margin-right:4px;padding:0 3px;text-align:center}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-list .project-column>ul>li .column-task .task-item .task-head .task-title>pre{word-wrap:break-word;display:block;line-height:1.5;margin:0;padding:0;white-space:pre-wrap;word-break:break-word}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu{height:22px;margin-left:8px;width:22px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon,.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .loading{align-items:center;display:flex;height:22px;justify-content:center;width:22px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon .common-loading,.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .loading .common-loading{height:16px;margin:0;width:16px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon{font-size:22px}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon.uncomplete{color:#777}.project-list .project-column>ul>li .column-task .task-item .task-head .task-menu .ivu-icon.uncomplete:hover{color:#555}.project-list .project-column>ul>li .column-task .task-item .task-head.has-desc .task-title{font-weight:600}.project-list .project-column>ul>li .column-task .task-item .task-desc>pre{word-wrap:break-word;color:#999;line-height:20px;margin:10px 0 0;padding:0;white-space:pre-wrap;word-break:break-all}.project-list .project-column>ul>li .column-task .task-item .task-tags{margin-top:10px}.project-list .project-column>ul>li .column-task .task-item .task-users{align-items:center;display:flex;margin-top:10px}.project-list .project-column>ul>li .column-task .task-item .task-users>ul{align-items:center;display:flex;flex:1;margin-right:24px;overflow:auto;width:0}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li{height:32px;list-style:none;margin-left:-6px;width:32px}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li:first-child{margin-left:0}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li.no-owner{width:auto}.project-list .project-column>ul>li .column-task .task-item .task-users>ul>li.no-owner .ivu-btn-small{font-size:12px}.project-list .project-column>ul>li .column-task .task-item .task-users .task-icon{font-size:12px;margin-left:6px}.project-list .project-column>ul>li .column-task .task-item .task-users .task-icon .ivu-icon{font-size:14px;margin-left:1px}.project-list .project-column>ul>li .column-task .task-item .task-progress{align-items:center;display:flex;justify-content:flex-end;margin-top:10px}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-sub-num{color:#777;font-size:12px;margin-right:8px}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time{align-items:center;background-color:#eaedf2;border:1px solid #eaedf2;border-radius:3px;color:#777;display:flex;flex-shrink:0;font-size:12px;margin-left:18px;padding:0 3px}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.overdue,.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.today{color:#fff}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.overdue{background-color:#ed4014;border-color:#ed4014;font-weight:600}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.today{background-color:#f90;border-color:#f90;font-weight:500}.project-list .project-column>ul>li .column-task .task-item .task-progress .task-time .taskfont{font-size:12px;margin-right:3px}.project-list .project-column>ul>li .column-task .task-item .priority-color{border-radius:2px;height:42px;left:0;max-height:50%;position:absolute;top:12px;width:3px}.project-list .project-column>ul>li .column-task .task-item.additem{cursor:default;padding:0}.project-list .project-column>ul>li .column-task .task-item.complete{opacity:.5}.project-list .project-column>ul>li .column-task .task-item.complete:hover{opacity:.8}.project-list .project-column>ul>li .column-task .task-item.complete .task-head .task-title{text-decoration:line-through}.project-list .project-column>ul>li .column-task .task-item.complete .priority-color,.project-list .project-column>ul>li .column-task .task-item.complete .task-desc,.project-list .project-column>ul>li .column-task .task-item.complete .task-progress,.project-list .project-column>ul>li .column-task .task-item.complete .task-tags,.project-list .project-column>ul>li .column-task .task-item.complete .task-users,.project-list .project-column>ul>li .column-task .task-item.hidden{display:none}.project-list .project-table{height:100%;margin-top:18px;overflow:auto}.project-list .project-table .task-row{background-color:#fff;border-bottom:1px solid #f4f4f5;position:relative}.project-list .project-table .task-row>div{align-items:center;border-right:1px solid #f4f4f5;display:flex;padding:8px 12px}.project-list .project-table .task-row>div:first-child{padding-left:32px}.project-list .project-table .task-row>div:last-child{border-right:0}.project-list .project-table .task-row>div.complete .item-title{color:#aaa;text-decoration:line-through}.project-list .project-table .task-row .priority-color{bottom:-1px;left:0;position:absolute;top:0;width:3px}.project-list .project-table .project-table-body,.project-list .project-table .project-table-head{border:1px solid #f4f4f5;border-bottom:0;border-radius:5px;margin:0 32px 12px;min-width:800px;overflow:hidden}.project-list .project-table .project-table-body.project-table-hide .task-rows,.project-list .project-table .project-table-head.project-table-hide .task-rows{display:none}.project-list .project-table .project-table-body.project-table-hide .row-title .taskfont,.project-list .project-table .project-table-head.project-table-hide .row-title .taskfont{transform:rotate(-90deg)}.project-list .project-table .project-table-head .task-row>div{color:#888;font-size:13px;font-weight:500}.project-list .project-table .project-table-head .task-row>div .sort{align-items:center;cursor:pointer;display:flex}.project-list .project-table .project-table-head .task-row>div .task-sort{cursor:pointer;display:inline-block;height:12px;margin-left:1px;margin-top:-1px;overflow:hidden;position:relative;vertical-align:middle;width:14px}.project-list .project-table .project-table-head .task-row>div .task-sort>i{color:#c5c8ce;display:block;font-size:16px;height:6px;line-height:6px;overflow:hidden;position:absolute;transition:color .2s ease-in-out}.project-list .project-table .project-table-head .task-row>div .task-sort>i.on{color:#8bcf70}.project-list .project-table .project-table-head .task-row>div .task-sort>i:hover{color:inherit}.project-list .project-table .project-table-head .task-row>div .task-sort>i:first-child{top:0}.project-list .project-table .project-table-head .task-row>div .task-sort>i:last-child{bottom:0}.project-list .project-table .project-table-body{transition:box-shadow .3s}.project-list .project-table .project-table-body:hover{box-shadow:0 0 10px #e6ecfa}.project-list .project-table .project-table-body .task-row>div{padding:10px 12px}.project-list .project-table .project-table-body .task-row>div.row-title{color:#333;font-size:14px;font-weight:500;padding-left:14px}.project-list .project-table .project-table-body .task-row>div.row-title .taskfont{cursor:pointer;font-size:12px;transition:transform .3s}.project-list .project-table .project-table-body .task-row>div.row-title .row-h1{padding-left:18px}.project-list .project-table .project-table-body .task-row>div.row-title .row-num{color:#999;padding-left:6px}.project-list .project-table .project-table-body .task-row>div.row-name{align-items:flex-start;line-height:24px;padding:12px 12px 12px 34px}.project-list .project-table .project-table-body .task-row>div.row-name .loading{height:24px}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon{cursor:pointer;font-size:16px}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon.sub-icon{color:#cfcfcf;font-size:16px;height:16px;margin-left:-20px;margin-right:4px;margin-top:4px;transition:transform .2s;width:16px}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon.sub-icon.active{transform:rotate(90deg)}.project-list .project-table .project-table-body .task-row>div.row-name .ivu-icon.uncomplete{color:#ccc}.project-list .project-table .project-table-body .task-row>div.row-name .item-title{cursor:pointer;flex:1;padding:0 22px 0 8px}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;display:inline-block;font-size:12px;height:18px;line-height:16px;margin-right:3px;margin-top:3px;min-width:20px;padding:0 2px;text-align:center;vertical-align:top}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-list .project-table .project-table-body .task-row>div.row-name .item-title>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons{align-items:center;display:flex;flex-shrink:0;margin-left:4px}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons .item-icon{color:#aaa;cursor:pointer;display:flex;font-size:12px;margin-left:16px}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons .item-icon .taskfont{font-size:12px}.project-list .project-table .project-table-body .task-row>div.row-name .item-icons .item-icon>em{font-style:normal;margin-left:4px}.project-list .project-table .project-table-body .task-row>div.row-column .el-dropdown,.project-list .project-table .project-table-body .task-row>div.row-priority .el-dropdown{align-items:center;display:flex;overflow:hidden}.project-list .project-table .project-table-body .task-row>div.row-column .task-column,.project-list .project-table .project-table-body .task-row>div.row-column .task-priority,.project-list .project-table .project-table-body .task-row>div.row-priority .task-column,.project-list .project-table .project-table-body .task-row>div.row-priority .task-priority{cursor:pointer}.project-list .project-table .project-table-body .task-row>div.row-column .task-column{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list .project-table .project-table-body .task-row>div.row-user{padding:8px}.project-list .project-table .project-table-body .task-row>div.row-user>ul{align-items:center;cursor:pointer;display:flex;height:32px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list .project-table .project-table-body .task-row>div.row-user>ul>li{display:inline-block;list-style:none;margin-left:-6px;max-width:100%}.project-list .project-table .project-table-body .task-row>div.row-user>ul>li:first-child{margin-left:0}.project-list .project-table .project-table-body .task-row>div.row-user>ul>li.no-owner{align-items:center;display:flex;height:32px}.project-list .project-table .project-table-body .task-row>div.row-time .task-time{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list .project-table .project-table-body .task-row>div.row-time .task-time.overdue,.project-list .project-table .project-table-body .task-row>div.row-time .task-time.today{border:1px solid transparent;border-radius:3px;color:#fff;font-size:13px;padding:0 4px}.project-list .project-table .project-table-body .task-row>div.row-time .task-time.overdue{background-color:#ed4014;border-color:#ed4014;font-weight:600}.project-list .project-table .project-table-body .task-row>div.row-time .task-time.today{background-color:#f90;border-color:#f90;font-weight:500}.project-list .project-table .project-table-body .task-rows .task-rows{overflow:hidden;position:relative}.project-list .project-table .project-table-body .task-rows .task-rows:before{box-shadow:0 0 8px 1px rgba(0,0,0,.08);content:"";left:0;position:absolute;right:0;top:0;z-index:1}.project-list .project-table .project-table-body .task-rows .task-rows .task-row{background-color:#fcfcfd}.project-list .project-table .project-table-body .task-rows .task-rows .task-row .priority-color{display:none}.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-name{padding-left:56px}.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-name .item-title{color:#6b6e72}.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-column>div,.project-list .project-table .project-table-body .task-rows .task-rows .task-row>div.row-priority>div{display:none}.project-list .project-table .project-table-body .task-rows .task-rows .task-add-row{background-color:#fcfcfd}.project-list .project-table .project-table-body .task-rows .task-rows .task-add-row>div.row-add{padding-left:56px}.project-list-more-dropdown-menu>li .item{align-items:center;display:flex}.project-list-more-dropdown-menu>li .item>i{color:#bbb;font-size:18px;height:18px;line-height:18px;margin-right:8px;padding:0;width:18px}.project-list-more-dropdown-menu>li .item>i.ivu-icon{font-size:16px}.project-list-wait-remove{margin-top:6px}.project-list-wait-remove>li{align-items:center;display:flex;line-height:26px;list-style:none}.project-list-wait-remove>li:first-child{font-weight:600}.project-list-flow-cascader .ivu-cascader-menu-item{color:#606266!important}.project-list-flow-cascader .ivu-cascader-menu-item.start{color:#595959!important}.project-list-flow-cascader .ivu-cascader-menu-item.progress{color:#0171c2!important}.project-list-flow-cascader .ivu-cascader-menu-item.end{color:#038a24!important}.project-list-flow-cascader .ivu-cascader-menu-item.ivu-cascader-menu-item-active.project-list-flow-cascader-item.start,.project-list-flow-cascader .ivu-cascader-menu-item:hover.project-list-flow-cascader-item.start{background-color:rgba(38,38,38,.05)}.project-list-flow-cascader .ivu-cascader-menu-item.ivu-cascader-menu-item-active.project-list-flow-cascader-item.progress,.project-list-flow-cascader .ivu-cascader-menu-item:hover.project-list-flow-cascader-item.progress{background-color:rgba(27,154,238,.1)}.project-list-flow-cascader .ivu-cascader-menu-item.ivu-cascader-menu-item-active.project-list-flow-cascader-item.end,.project-list-flow-cascader .ivu-cascader-menu-item:hover.project-list-flow-cascader-item.end{background-color:rgba(21,173,49,.1)}@media (max-width:768px){.project-list .project-head{margin:24px 24px 0}.project-list .project-head .project-titbox{display:block}.project-list .project-head .project-titbox .project-title{float:left;padding-bottom:4px}.project-list .project-head .project-titbox .project-icons{float:right;justify-content:flex-end;margin-left:24px;margin-top:4px}.project-list .project-head .project-subbox{display:block}.project-list .project-head .project-subbox .project-subtitle{margin-bottom:6px}.project-list .project-head .project-subbox .project-switch{justify-content:flex-end;margin-left:0}.project-list .project-column>ul>li:first-child{margin-left:10px}.project-list .project-column>ul>li:last-child{margin-right:10px}.project-list .project-table{overflow-x:auto}.project-list .project-table .project-table-body,.project-list .project-table .project-table-head{margin:0 24px 12px;min-width:768px}}.project-log .log-title{display:none}.project-log.is-drawer{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.project-log.is-drawer .log-title{color:#333;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.project-log .logs-activity{padding:12px;position:relative;word-break:break-all}.project-log .logs-activity>li{list-style:none;padding-top:0}.project-log .logs-activity>li.logs-loading,.project-log .logs-activity>li.logs-more,.project-log .logs-activity>li.logs-none{height:22px;line-height:22px}.project-log .logs-activity>li.logs-loading{display:flex}.project-log .logs-activity>li.logs-loading .common-loading{margin:0}.project-log .logs-activity>li.logs-more{cursor:pointer}.project-log .logs-activity>li.logs-more:hover{color:#048be0}.project-log .logs-activity>li.logs-none{color:#bbb;cursor:pointer}.project-log .logs-activity>li .logs-date{color:rgba(0,0,0,.36);padding-bottom:14px}.project-log .logs-activity>li .logs-section{margin:4px}.project-log .logs-activity>li .logs-section .ivu-timeline>li{padding-bottom:8px}.project-log .logs-activity>li .logs-section .ivu-timeline>li:last-child{padding-bottom:0}.project-log .logs-activity>li .logs-section .ivu-timeline>li .ivu-timeline-item-head-custom{left:auto;margin-left:-13px;margin-right:6px;margin-top:8px;min-width:40px;position:static;width:auto}.project-log .logs-activity>li .logs-section .ivu-timeline>li .ivu-timeline-item-content{margin-top:-5px;padding-left:20px}.project-log .logs-activity>li .logs-dot{display:flex;height:18px;margin-left:10px;width:auto}.project-log .logs-activity>li .logs-dot .avatar-name.auto{color:#9599a1}.project-log .logs-activity>li .log-summary{padding:4px 0 4px 12px;position:relative}.project-log .logs-activity>li .log-summary>a,.project-log .logs-activity>li .log-summary>span{word-wrap:break-word;padding-right:6px;word-break:break-word}.project-log .logs-activity>li .log-summary .log-text{color:rgba(0,0,0,.72);display:inline-block}.project-log .logs-activity>li .log-summary .log-text .change-value:hover{border-bottom:1px dotted rgba(0,0,0,.3)}.project-log .logs-activity>li .log-summary .log-text .detail-user{display:inline-block;vertical-align:top}.project-log .logs-activity>li .log-summary .log-text .detail-user .detail-user-wrap{display:flex}.project-log .logs-activity>li .log-summary .log-text .detail-user .detail-user-wrap .common-avatar{margin:0 2px}.project-log .logs-activity>li .log-summary .log-operation>button{font-size:12px}.project-log .logs-activity>li .log-summary .log-operation>button+button{margin-left:4px}.project-log .logs-activity>li .log-summary .log-time{color:rgba(0,0,0,.3);font-size:12px}.project-log .logs-activity>li .log-task{cursor:pointer;margin-bottom:6px;margin-left:12px;opacity:.6}.project-log .logs-activity>li .log-task:hover{opacity:1}.project-log .logs-activity>li .log-task:hover>em{color:#8bcf70}.project-log .logs-activity>li .log-task>em{border-radius:5px;color:#999;display:inline-block;font-size:12px;font-style:normal;height:18px;line-height:18px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-management{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.project-management .management-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.project-management .management-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.project-management .management-title .title-icon>i{cursor:pointer}.project-management .project-name{align-items:center;display:flex}.project-management .project-name .ivu-tag{flex-shrink:0;height:18px;line-height:18px;overflow:hidden;padding:0 4px;text-overflow:ellipsis;transform:scale(.8);transform-origin:right center;white-space:nowrap}.project-management .project-percent{line-height:1}.project-management .project-percent .ivu-progress{margin-top:2px}.project-workflow{bottom:0;display:flex;flex-direction:column;left:0;position:absolute;right:0;top:0}.project-workflow .workflow-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;padding:20px 20px 24px}.project-workflow .workflow-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.project-workflow .workflow-title .title-icon>i{cursor:pointer}.project-workflow .workflow-content{flex:1;overflow:auto;padding:0 20px}.project-workflow .workflow-content .ivu-collapse-header{align-items:center;display:flex}.project-workflow .workflow-content .workflow-item{align-items:center;display:flex;flex:1}.project-workflow .workflow-content .workflow-item .workflow-name{flex-shrink:0;margin-right:24px}.project-workflow .workflow-content .workflow-item .workflow-status{align-items:center;display:flex;flex:1}.project-workflow .workflow-content .workflow-item .workflow-status>div{background:#f7f7f7;border:1px solid #e8eaec;border-radius:3px;font-size:12px;height:22px;line-height:22px;margin-right:8px;overflow:hidden;padding:0 8px;vertical-align:middle}.project-workflow .workflow-content .workflow-item .workflow-status>div.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.project-workflow .workflow-content .workflow-item .workflow-status>div.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.project-workflow .workflow-content .workflow-item .workflow-status>div.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.project-workflow .workflow-content .workflow-item .workflow-save{flex-shrink:0;margin:0 8px}.project-workflow .workflow-content .workflow-item .workflow-save>button{font-size:13px;height:26px;line-height:24px;margin-right:4px;padding:0 13px}.project-workflow .workflow-no{align-items:center;color:#999;display:flex;flex:1;flex-direction:column;justify-content:center;padding:0 20px}.project-workflow .workflow-no>button{margin-top:18px}.project-workflow .taskflow-config{display:flex;max-height:800px}.project-workflow .taskflow-config .taskflow-config-table{border-radius:4px;box-shadow:1px 0 3px rgba(0,0,0,.1);display:flex;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-left-container{-ms-overflow-style:none;flex-shrink:0;overflow-x:scroll;padding-bottom:16px;padding-top:16px;position:relative;width:246px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-left-container:after{border-right:1px solid #f4f4f5;bottom:0;content:"";position:absolute;right:0;top:0;z-index:1}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-column-header{font-size:16px;font-weight:700;height:58px;left:0;line-height:58px;padding:0 20px;position:absolute;right:0;top:0}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-column-header.left-header{top:16px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-column-body{height:calc(100% - 58px);margin-top:58px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block{padding:12px 0;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block.hr{position:relative}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block.hr:after{border-top:1px solid #f4f4f5;content:"";left:0;position:absolute;right:0;top:0;z-index:1}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-title{color:#8c8c8c;height:40px;line-height:40px;padding:0 20px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-radio-group{display:block;text-align:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-radio-group .ivu-radio-group-item{display:flex;flex-direction:column;height:58px;justify-content:center;padding:0 20px;position:relative;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-checkbox-group{display:block;text-align:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .ivu-checkbox-group .ivu-checkbox-group-item,.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item{display:flex;flex-direction:column;height:58px;justify-content:center;padding:0 20px;position:relative;width:100%}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item.with-indicator:before{border-radius:4px;content:"";height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:4px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item .title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item .subtitle{color:#8c8c8c;font-size:12px;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item.center{align-items:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item.radio-item>span{display:none}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-block .taskflow-config-table-block-item .transform-status-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-right-container{flex-direction:row;flex-grow:1;overflow-x:auto;overflow-y:hidden;padding-bottom:16px;padding-top:16px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-list-wrapper,.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-right-container{display:flex}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column{border-radius:4px;flex-shrink:0;height:100%;margin-bottom:16px;margin-right:16px;position:relative;width:210px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column:first-child{margin-left:20px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column:hover .status-label-with-menu .more{opacity:1}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.addnew{align-items:center;border:1px dashed #d9d9d9;color:#8c8c8c;cursor:pointer;display:flex;flex-direction:column;justify-content:center}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.addnew:hover{border-color:#bfbfbf;color:#777}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.column-border{border-style:solid;border-width:1px}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.start{border-color:#e5e5e5}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.start:hover{border-color:#bfbfbf}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.progress{border-color:#ccecff}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.progress:hover{border-color:#87d2ff}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.end{border-color:#cafac8}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-column.end:hover{border-color:#64d16d}.project-workflow .taskflow-config .taskflow-config-table .taskflow-config-table-status-item{align-items:center;cursor:move;display:flex;height:58px;line-height:58px;padding:8px}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu{align-items:center;border-radius:4px;display:inline-flex;font-size:14px;font-weight:400;height:36px;justify-content:center;line-height:32px;max-width:100%;overflow:hidden;padding:0 32px;position:relative;text-overflow:ellipsis;white-space:nowrap;width:200px}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu:hover{font-weight:700}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu.start{background:rgba(38,38,38,.05);color:#595959}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu.progress{background:rgba(27,154,238,.1);color:#0171c2}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu.end{background:rgba(21,173,49,.1);color:#038a24}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .more{align-items:center;bottom:0;cursor:pointer;display:flex;font-size:18px;font-weight:400!important;justify-content:center;opacity:.2;position:absolute;right:0;top:0;transition:opacity .3s;width:38px}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .more.opacity{opacity:1}.project-workflow .taskflow-config .taskflow-config-table .status-label-with-menu .more .more-icon{align-items:center;display:flex}.taskflow-config-more-dropdown-menu .users{display:flex;margin:0 -8px;overflow:auto;padding:6px 0}.taskflow-config-more-dropdown-menu .users .common-avatar{margin-right:-5px;max-width:100%}.taskflow-config-more-dropdown-menu .item{align-items:center;display:flex}.taskflow-config-more-dropdown-menu .delete{color:red}.task-add .head{align-items:center;display:flex;margin-bottom:20px;padding:8px 0;position:relative}.task-add .head .ivu-cascader .ivu-cascader-label{align-items:center;display:flex;font-size:15px;padding:0;width:auto}.task-add .head .ivu-cascader .ivu-cascader-label:after{content:"\f116";font-family:Ionicons,serif;opacity:1;padding:6px;transition:all .2s}.task-add .head .ivu-cascader .ivu-cascader-arrow{display:none}.task-add .head .ivu-cascader .ivu-input{border:0;box-shadow:none;font-size:15px;padding:4px 0}.task-add .head .ivu-cascader .ivu-cascader-not-found-tip{padding:6px 12px}.task-add .head.empty .ivu-cascader .ivu-cascader-label:after{opacity:0}.task-add .head.visible .ivu-cascader .ivu-cascader-label:after{transform:rotate(180deg)}.task-add .task-add-advanced .title .ivu-input,.task-add .task-add-form .title .ivu-input{border-color:transparent;font-size:24px;font-weight:500;line-height:1.4;padding:4px 0;resize:none}.task-add .task-add-advanced .title .ivu-input:focus,.task-add .task-add-form .title .ivu-input:focus{box-shadow:none}.task-add .task-add-advanced .desc,.task-add .task-add-form .desc{margin-top:24px;overflow:auto}.task-add .task-add-advanced .desc div[contenteditable=true],.task-add .task-add-form .desc div[contenteditable=true]{outline:none}.task-add .task-add-advanced .desc .mce-content-body img,.task-add .task-add-form .desc .mce-content-body img{max-width:100%}.task-add .task-add-advanced .desc .mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before,.task-add .task-add-form .desc .mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before{color:#bbb}.task-add .task-add-advanced .advanced-option,.task-add .task-add-form .advanced-option{align-items:center;display:flex;margin-top:42px;z-index:1}.task-add .task-add-advanced .advanced-option>button,.task-add .task-add-form .advanced-option>button{transition:margin .2s}.task-add .task-add-advanced .advanced-option>button.advanced,.task-add .task-add-form .advanced-option>button.advanced{margin-left:24px}.task-add .task-add-advanced .advanced-option>button:focus,.task-add .task-add-form .advanced-option>button:focus{box-shadow:none}.task-add .task-add-advanced .advanced-option .advanced-priority,.task-add .task-add-form .advanced-option .advanced-priority{align-items:center;display:flex;height:34px;margin-left:24px}.task-add .task-add-advanced .advanced-option .advanced-priority>li,.task-add .task-add-form .advanced-option .advanced-priority>li{list-style:none;margin-left:3px}.task-add .task-add-advanced .advanced-option .advanced-priority>li .taskfont,.task-add .task-add-form .advanced-option .advanced-priority>li .taskfont{cursor:pointer;font-size:34px}.task-add .task-add-advanced .advanced-option .advanced-time,.task-add .task-add-form .advanced-option .advanced-time{align-items:center;cursor:pointer;display:flex;margin-left:20px;position:relative}.task-add .task-add-advanced .advanced-option .advanced-time .ivu-icon,.task-add .task-add-form .advanced-option .advanced-time .ivu-icon{font-size:32px}.task-add .task-add-advanced .advanced-option .advanced-time>em,.task-add .task-add-form .advanced-option .advanced-time>em{background:#8bcf70;border-radius:10px;box-shadow:0 0 0 1px #fff;color:#fff;font-family:"Monospaced Number","serif";font-size:12px;font-style:normal;height:20px;left:16px;line-height:20px;min-width:20px;padding:0 6px;position:absolute;text-align:center;top:-5px;transform:scale(.8);white-space:nowrap}.task-add .task-add-advanced{border:1px solid #e8e8e8;border-radius:8px;margin:-16px 0 0;padding:46px 32px 6px}.task-add .task-add-advanced .subtasks{background-color:#f8f8f8;border-radius:6px;margin-bottom:24px;padding:12px 16px}.task-add .task-add-advanced .subtasks .enter-input.empty .ivu-input{background:transparent;border-color:transparent}.task-add .task-add-advanced .subtasks .enter-input.empty .ivu-input:focus,.task-add .task-add-advanced .subtasks .enter-input.empty .ivu-input:hover{box-shadow:none}.task-add .task-add-advanced .subtasks .sublist .ivu-row{margin-bottom:12px}.task-add .task-add-advanced .subtasks .sublist .ivu-row>div{padding-right:7px}.task-add .task-add-advanced .subtasks .sublist .ivu-row>div:last-child{padding-right:0}.task-add .task-add-advanced .ivu-date-picker{width:100%}.task-add .task-add-assist{align-items:center;display:flex;justify-content:flex-end;margin-top:6px}.task-add .task-add-assist .ivu-icon{color:#999;font-size:16px}.task-add .ivu-modal-footer{padding:26px 0 22px!important}.task-add-simple{padding:12px}.task-add-simple .ivu-input-wrapper{display:none}.task-add-simple .add-placeholder{color:#888;cursor:pointer;margin:-12px;padding:12px}.task-add-simple .add-placeholder .ivu-icon{margin-right:4px}.task-add-simple .add-placeholder:hover{color:#666}.task-add-simple .priority{align-items:center;display:none;margin-bottom:-3px;margin-top:10px;min-height:22px}.task-add-simple .priority>ul{align-items:center;display:flex;flex:1}.task-add-simple .priority>ul>li{list-style:none;margin-right:3px}.task-add-simple .priority>ul>li .taskfont{cursor:pointer;font-size:22px}.task-add-simple .priority .ivu-icon{cursor:pointer;font-size:16px}.task-add-simple.active .ivu-input-wrapper{display:block}.task-add-simple.active .add-placeholder{display:none}.task-add-simple.active .priority{display:flex}.task-add-row{background-color:#fff;border-bottom:1px solid #f4f4f5;position:relative}.task-add-row>div{border-right:1px solid #f4f4f5;display:flex;padding:8px 12px}.task-add-row>div:last-child{border-right:0}.task-add-row>div.row-add{display:flex;flex-direction:column;justify-content:center;min-height:48px;padding-left:34px}.task-add-row>div.row-add .add-btn{cursor:pointer;display:block;opacity:.5;transition:opacity .3s}.task-add-row>div.row-add .add-btn .add-icon{font-size:16px;margin-right:8px}.task-add-row>div.row-add .add-btn:hover{opacity:1}.task-add-row>div.row-add .add-input{align-items:flex-start;background-color:#fff;border:1px solid #dcdee2;border-radius:4px;color:#606266;display:none}.task-add-row>div.row-add .add-input:hover{border-color:#57a3f3}.task-add-row>div.row-add .add-input textarea{border-color:transparent;resize:none}.task-add-row>div.row-add .add-input textarea:focus{box-shadow:none}.task-add-row>div.row-add .add-input .priority{align-items:center;display:flex;height:31px;margin:0 4px}.task-add-row>div.row-add .add-input .priority>ul{align-items:center;display:flex;flex:1}.task-add-row>div.row-add .add-input .priority>ul>li{list-style:none;margin-right:4px}.task-add-row>div.row-add .add-input .priority>ul>li .taskfont{cursor:pointer;font-size:17px}.task-add-row>div.row-add .add-input .priority .ivu-icon{cursor:pointer;font-size:15px;margin:0 5px 0 3px}.task-add-row>div.row-add.active{padding-bottom:7px;padding-top:7px}.task-add-row>div.row-add.active .add-btn{display:none}.task-add-row>div.row-add.active .add-input{display:flex}.task-archived{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.task-archived .archived-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.task-archived .archived-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.task-archived .archived-title .title-icon>i{cursor:pointer}.task-detail{display:flex;flex-direction:column;margin:0 -32px 12px -10px;min-height:120px;overflow:auto;padding:0 22px 12px 0}.task-detail .task-info{display:flex;flex:3;flex-direction:column;position:relative}.task-detail .task-info .head{align-items:center;color:#888;display:flex;height:42px;padding-bottom:10px;position:relative}.task-detail .task-info .head:before{background-color:#f4f5f5;bottom:0;content:"";height:1px;left:36px;position:absolute;right:0}.task-detail .task-info .head .icon{margin-right:18px}.task-detail .task-info .head .icon .task-menu-icon{align-items:center;display:flex}.task-detail .task-info .head .icon .task-menu-icon .ivu-icon{font-size:18px}.task-detail .task-info .head .icon .task-menu-icon .loading{height:18px;width:18px}.task-detail .task-info .head .icon .task-menu-icon .loading .common-loading{height:16px;width:16px}.task-detail .task-info .head .icon .task-menu-icon .uncomplete{color:#888}.task-detail .task-info .head .flow{margin-right:10px}.task-detail .task-info .head .flow>span{border:1px solid #8bcf70;border-radius:4px;color:#8bcf70;cursor:pointer;display:inline-block;font-size:14px;height:26px;line-height:24px;padding:0 8px;text-align:center}.task-detail .task-info .head .flow>span.archived,.task-detail .task-info .head .flow>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.task-detail .task-info .head .flow>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.task-detail .task-info .head .flow>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.task-detail .task-info .head .nav{align-items:center;display:flex;flex:1;font-size:12px;height:40px;overflow:auto;width:0}.task-detail .task-info .head .nav::-webkit-scrollbar{display:none}.task-detail .task-info .head .nav>p{align-items:center;display:flex;padding-right:5px}.task-detail .task-info .head .nav>p>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail .task-info .head .nav>p:after{content:"/";padding-left:5px}.task-detail .task-info .head .nav>p:last-child:after{display:none}.task-detail .task-info .head .function{align-items:center;display:flex;margin:0 32px}.task-detail .task-info .head .function .pick{margin-left:12px;margin-right:10px}.task-detail .task-info .head .function .open{cursor:pointer;font-size:22px;margin-left:12px;margin-top:-2px}.task-detail .task-info .head .function .menu{align-items:center;display:flex;margin-left:12px}.task-detail .task-info .head .function .menu .ivu-icon{color:#606266;font-size:22px}.task-detail .task-info .scroller{margin-left:28px;overflow-x:hidden;overflow-y:auto;padding-left:8px;padding-right:36px}.task-detail .task-info .scroller .title{margin-top:18px}.task-detail .task-info .scroller .title .ivu-input{border-color:transparent;font-size:24px;font-weight:500;line-height:1.4;padding:4px 0;resize:none}.task-detail .task-info .scroller .title .ivu-input:focus{box-shadow:none}.task-detail .task-info .scroller .desc{margin-top:10px}.task-detail .task-info .scroller .desc div[contenteditable=true]{outline:none}.task-detail .task-info .scroller .desc .mce-content-body img{max-width:100%}.task-detail .task-info .scroller .desc .mce-content-body[data-mce-placeholder]:not(.mce-visualblocks):before{color:#bbb}.task-detail .task-info .scroller .items{margin-top:12px}.task-detail .task-info .scroller .items .ivu-form-item{margin-bottom:10px}.task-detail .task-info .scroller .items .item-label{align-items:center;color:#bbb;display:flex}.task-detail .task-info .scroller .items .item-label .taskfont{margin-right:4px}.task-detail .task-info .scroller .items .item-content{margin-left:12px;margin-top:5px}.task-detail .task-info .scroller .items .item-content>li{align-items:center;display:flex;line-height:26px;list-style:none}.task-detail .task-info .scroller .items .item-content>li .el-dropdown{cursor:pointer;display:flex}.task-detail .task-info .scroller .items .item-content>li .task-priority{padding:0 7px}.task-detail .task-info .scroller .items .item-content>li .picker-time{align-items:center;display:flex;line-height:26px}.task-detail .task-info .scroller .items .item-content>li .picker-time .time{cursor:pointer}.task-detail .task-info .scroller .items .item-content>li .picker-time .ivu-tag{flex-shrink:0;height:20px;line-height:18px;margin-left:10px;padding:0 4px}.task-detail .task-info .scroller .items .item-content>li .picker-time .ivu-tag .ivu-tag-text{align-items:center;display:flex}.task-detail .task-info .scroller .items .item-content>li .picker-time .ivu-tag .ivu-tag-text .taskfont{font-size:14px;padding-right:3px;transform:scale(.9)}.task-detail .task-info .scroller .items .item-content.user{cursor:pointer;margin-top:1px}.task-detail .task-info .scroller .items .item-content.user .user-list{align-items:center;display:flex}.task-detail .task-info .scroller .items .item-content.user .user-list>div{margin-right:6px}.task-detail .task-info .scroller .items .item-content.file{margin-bottom:-3px}.task-detail .task-info .scroller .items .item-content.file>li{margin-bottom:2px}.task-detail .task-info .scroller .items .item-content.file>li .file-load{height:16px;margin:0;padding:2px;width:16px}.task-detail .task-info .scroller .items .item-content.file>li .file-ext{width:16px}.task-detail .task-info .scroller .items .item-content.file>li .file-name{color:#606266;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.task-detail .task-info .scroller .items .item-content.file>li .file-size{color:#bbb;flex-shrink:0;font-size:12px;height:24px;padding-left:10px}.task-detail .task-info .scroller .items .item-content.file>li .file-menu{align-items:center;display:flex;opacity:0;padding-left:12px;transition:all .3s}.task-detail .task-info .scroller .items .item-content.file>li .file-menu.show{opacity:1}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i{color:#aaa;cursor:pointer;font-size:14px;padding:0 4px;transition:color .3s}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i:hover{color:#777}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i.del{font-size:13px}.task-detail .task-info .scroller .items .item-content.file>li .file-menu i.del:hover{color:red}.task-detail .task-info .scroller .items .item-content.file>li:hover .file-name{color:#303133}.task-detail .task-info .scroller .items .item-content.file>li:hover .file-menu{opacity:1}.task-detail .task-info .scroller .items .item-content.subtask>li{align-items:flex-start;margin-bottom:4px}.task-detail .task-info .scroller .items .item-content.subtask>li:last-child{margin-bottom:-6px}.task-detail .task-info .scroller .items .item-content.subtask>li:hover .subtask-time .clock{opacity:.7;transform:translateX(0)}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-icon{align-items:center;cursor:pointer;display:flex;height:26px;line-height:26px;margin-right:6px;padding-top:1px;width:16px}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span{border:1px solid #8bcf70;border-radius:3px;color:#8bcf70;cursor:pointer;display:inline-block;font-size:12px;height:18px;line-height:16px;margin-right:3px;min-width:20px;padding:0 2px;text-align:center}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-flow>span.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-name{display:flex;flex:1;margin-right:8px}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-name .ivu-input{border-color:transparent;line-height:20px;margin:-2px 0;padding:4px 0;resize:none}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-name .ivu-input:focus{box-shadow:none}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time{margin-right:8px}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .time{cursor:pointer;font-size:13px;height:26px;line-height:26px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .time.overdue{color:#ed4014;font-weight:600}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .time.today{color:#f90;font-weight:500}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-time .clock{font-size:20px;margin:3px 2px;opacity:0;transform:translateX(50%);transition:all .2s}.task-detail .task-info .scroller .items .item-content.subtask>li .subtask-avatar{cursor:pointer;height:20px;margin-top:3px}.task-detail .task-info .scroller .items .item-content.subtask>li .ivu-icon-ios-loading{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}.task-detail .task-info .scroller .items .item-content.nosub{margin-top:0}.task-detail .task-info .scroller .items .item-content.nosub>li .add-button,.task-detail .task-info .scroller .items .item-content.nosub>li .add-input{margin-top:-2px}.task-detail .task-info .scroller .add{margin-bottom:10px;margin-top:12px}.task-detail .task-info .scroller .add-input{margin-top:6px}.task-detail .task-info .scroller .add-input.loading .ivu-icon-ios-loading{-webkit-animation:icon-loading-load .6s linear infinite;animation:icon-loading-load .6s linear infinite}.task-detail .task-info .scroller .add-button{align-items:center;color:#bbb;cursor:pointer;display:flex;height:32px;margin-top:6px}.task-detail .task-info .scroller .add-button>i{font-size:14px;padding-right:8px}.task-detail .task-info .scroller .add-button>em{font-style:normal;padding-left:4px}.task-detail .task-info .scroller .add-button>em:after{content:"/";padding-left:4px}.task-detail .task-info .scroller .add-button>em:last-child:after{display:none}.task-detail .task-info .scroller .add-button:hover{color:#999}.task-detail .task-info .upload{display:none}.task-detail .task-dialog{display:flex;flex:2;flex-direction:column;flex-shrink:0;margin-top:22px;position:relative}.task-detail .task-dialog .head{align-items:center;color:#888;display:flex;height:40px;padding-bottom:10px;position:relative}.task-detail .task-dialog .head:before{background-color:#f4f5f5;bottom:0;content:"";height:1px;left:36px;position:absolute;right:0}.task-detail .task-dialog .head .icon{font-size:18px;width:18px}.task-detail .task-dialog .head .nav{align-items:center;color:#666;display:flex;flex:1;font-weight:500;padding-left:18px}.task-detail .task-dialog .head .nav>p{align-items:center;cursor:pointer;display:flex;margin-right:24px}.task-detail .task-dialog .head .nav>p.active{color:#555;cursor:default;font-size:16px;font-weight:600;margin-top:-2px}.task-detail .task-dialog .head .nav .refresh{align-items:center;display:flex;margin-left:-18px}.task-detail .task-dialog .head .nav .refresh>i{cursor:pointer;font-size:18px;opacity:.8;transition:opacity .2s}.task-detail .task-dialog .head .nav .refresh>i:hover{opacity:1}.task-detail .task-dialog .head .nav .refresh .common-loading{height:12px;margin:3px;width:12px}.task-detail .task-dialog .no-dialog{display:flex;flex:1;flex-direction:column;position:relative}.task-detail .task-dialog .no-dialog .no-tip{display:none;flex:1;margin-left:36px}.task-detail .task-dialog .no-dialog .no-input{align-items:center;background-color:#f4f5f7;border-radius:10px;display:flex;margin:22px 0 0 36px;padding:10px 12px}.task-detail .task-dialog .no-dialog .no-input .ivu-input{background-color:transparent;border:0;resize:none}.task-detail .task-dialog .no-dialog .no-input .ivu-input:focus{box-shadow:none}.task-detail .task-dialog .no-dialog .no-input .no-send{display:none}.task-detail .task-dialog .no-dialog .drag-over{align-items:center;background-color:hsla(0,0%,100%,.78);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:3}.task-detail .task-dialog .no-dialog .drag-over:before{border:2px dashed #7b7b7b;border-radius:12px;bottom:0;content:"";left:36px;position:absolute;right:0;top:0}.task-detail .task-dialog .no-dialog .drag-over .drag-text{color:#666;font-size:18px;padding:12px}.task-detail .task-dialog .project-log{margin-left:36px}.task-detail .task-dialog .project-log .logs-activity{padding:22px 0 0}.task-detail .task-dialog .project-log .logs-activity>li{list-style:none;padding-top:0}.task-detail .task-dialog .project-log .logs-activity>li.logs-loading,.task-detail .task-dialog .project-log .logs-activity>li.logs-more,.task-detail .task-dialog .project-log .logs-activity>li.logs-none{height:59px;line-height:59px}.task-detail .task-dialog .project-log .logs-activity>li.logs-loading{align-items:center;display:flex}.task-detail .task-dialog .project-log .logs-activity>li.logs-loading .common-loading{height:22px;margin:0;width:22px}.task-detail .task-dialog .dialog-wrapper .dialog-scroller{padding:0 16px 0 32px}.task-detail .task-dialog .dialog-wrapper .dialog-footer{padding:0 14px 0 28px}.task-detail .task-load{display:flex;left:50%;margin-top:6px;position:absolute;top:50%;transform:translate(-50%,-50%)}.task-detail .task-load .common-loading{height:32px;width:32px}.task-detail.open-dialog{flex-direction:row}.task-detail.open-dialog .task-info{overflow:auto}.task-detail.open-dialog .task-info .head .function{margin-right:2px}.task-detail.open-dialog .task-dialog{margin:0 0 0 18px;max-width:450px;min-width:320px}.task-detail.open-dialog .task-dialog:before{background-color:#f4f5f5;bottom:0;content:"";left:0;position:absolute;top:0;width:1px;z-index:1}.task-detail.open-dialog .task-dialog .head:before{left:18px}.task-detail.open-dialog .task-dialog .head .icon:before{display:none}.task-detail.open-dialog .task-dialog .head .nav{padding-left:0}.task-detail.open-dialog .task-dialog .head .nav>p{margin-right:28px}.task-detail.open-dialog .task-dialog .head .nav>p.active{font-size:18px}.task-detail.open-dialog .task-dialog .no-dialog .no-tip{align-items:center;color:#999;display:flex;justify-content:center;margin-left:18px}.task-detail.open-dialog .task-dialog .no-dialog .no-input{margin:0 0 0 18px}.task-detail.open-dialog .task-dialog .dialog-wrapper{z-index:0}.task-detail.open-dialog .task-dialog .dialog-wrapper .dialog-footer{margin-bottom:0}.task-detail.open-dialog .task-dialog .project-log{background-color:#fff;bottom:0;left:0;margin-left:8px;overflow:auto;padding:8px;position:absolute;right:0;top:40px;z-index:1}.task-detail.open-dialog .task-dialog .project-log .logs-activity{padding:22px 0 0 10px}.task-detail.completed .task-info:before{color:#19be6b;content:"\f373";font-family:Ionicons,serif;font-size:72px;opacity:.2;pointer-events:none;position:absolute;right:13%;top:0;z-index:1}.task-detail-receive{padding:6px 6px 3px}.task-detail-receive .receive-title{font-size:14px}.task-detail-receive .receive-title .ivu-icon{color:#f90;font-size:16px;line-height:18px}.task-detail-receive .receive-time{margin-top:10px}.task-detail-receive .receive-time .ivu-date-picker{width:280px}.task-detail-receive .receive-bottom{margin-top:12px;text-align:right}.task-detail-receive .receive-bottom>button+button{margin-left:4px}.task-detail-delete-file-popover{max-width:200px}.task-detail-delete-file-popover .buttons{margin-top:12px;text-align:right}.task-detail-delete-file-popover .buttons .ivu-btn-small{font-size:12px}.task-detail-user-popper .ivu-poptip-body-content{overflow:visible}.task-detail-avatar-buttons{margin-bottom:4px;margin-top:12px;position:absolute;right:14px;text-align:right;top:5px}.task-detail-avatar-buttons>button{font-size:12px;transform:scale(.9)}@media (max-width:768px){.task-detail .task-info .scroller{overflow-x:auto}.task-detail .task-dialog .no-dialog .no-input{padding-right:52px;position:relative}.task-detail .task-dialog .no-dialog .no-input .no-send{align-items:center;bottom:0;display:flex;font-size:18px;justify-content:center;position:absolute;right:0;top:0;width:46px}.task-detail .task-dialog .no-dialog .no-input .no-send .common-loading{height:20px;width:20px}}.task-menu-icon{position:relative}.task-menu-icon .loading{align-items:center;display:flex;height:16px;justify-content:center;width:16px}.task-menu-icon .loading .common-loading{height:14px;margin:0;width:14px}.task-menu-icon .ivu-icon{color:#ccc;cursor:pointer;font-size:16px}.task-menu-icon .ivu-icon.completed{color:#8bcf70}.task-menu-more-dropdown>li.task-menu-more-warp{list-style:none}.task-menu-more-dropdown>li.task-menu-more-warp>ul{max-height:320px;overflow:auto}.task-menu-more-dropdown>li.task-menu-more-warp>ul::-webkit-scrollbar{display:none}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .item{align-items:center;display:flex}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .item>i{color:#bbb;flex-shrink:0;font-size:18px;height:18px;line-height:18px;margin-right:8px;padding:0;width:18px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .item>i.ivu-icon{font-size:16px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow{padding:4px 0}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow>i{margin-right:3px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow>i.check{color:#8bcf70}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name{background:#f4f4f4;border-radius:4px;color:#595959;font-size:12px;height:20px;line-height:20px;padding:0 5px;white-space:nowrap}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name.start{background-color:rgba(38,38,38,.05);border-color:rgba(38,38,38,.05);color:#595959}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name.progress{background-color:rgba(27,154,238,.1);border-color:rgba(27,154,238,.1);color:#0171c2}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li .flow .flow-name.end{background-color:rgba(21,173,49,.1);border-color:rgba(21,173,49,.1);color:#038a24}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li.load-flow{align-items:center;display:flex;justify-content:center;padding:8px}.task-menu-more-dropdown>li.task-menu-more-warp>ul>li.load-flow .load-flow-warp{height:20px;width:20px}.task-menu-more-dropdown>li.task-menu-more-warp.medium>ul>li .flow .flow-name{height:24px;line-height:24px;padding:0 7px}.task-menu-more-dropdown>li.task-menu-more-warp.large>ul>li .flow .flow-name{font-size:13px;height:30px;line-height:30px;padding:0 8px}.task-priority{background:transparent;border:1px solid transparent;border-radius:3px;display:inline-block;font-size:13px;max-width:100%;overflow:hidden;padding:2px 5px;text-overflow:ellipsis;white-space:nowrap}.team-management{bottom:0;left:0;overflow:auto;padding:20px;position:absolute;right:0;top:0}.team-management .management-title{align-items:center;color:#333;display:flex;font-size:20px;font-weight:500;line-height:1;margin-bottom:24px}.team-management .management-title .title-icon{align-items:center;display:flex;height:14px;margin-left:4px;margin-top:2px;width:14px}.team-management .management-title .title-icon>i{cursor:pointer}.team-management .team-email{align-items:center;display:flex}.team-management .team-email .ivu-tag{flex-shrink:0;height:18px;line-height:18px;overflow:hidden;padding:0 4px;text-overflow:ellipsis;transform:scale(.8);transform-origin:right center;white-space:nowrap}body.dark-mode-reverse .common-right-bottom .common-right-bottom-link,body.dark-mode-reverse .ivu-badge-count,body.dark-mode-reverse .ivu-btn-primary{color:#000}body.dark-mode-reverse .ivu-modal-mask{background-color:hsla(0,0%,90%,.6)}body.dark-mode-reverse .ivu-modal-content{box-shadow:0 4px 12px hsla(0,0%,100%,.15)}body.dark-mode-reverse .ivu-message-notice-content{border:1px solid #e3e8ed;box-shadow:0 1px 6px hsla(0,0%,100%,.2)}body.dark-mode-reverse .ivu-notice-notice,body.dark-mode-reverse .ivu-poptip-inner,body.dark-mode-reverse .ivu-select-dropdown,body.dark-mode-reverse .ivu-tooltip-inner{border:1px solid #e3e8ed;box-shadow:none}body.dark-mode-reverse .el-dropdown-menu{border-color:#e3e8ed;box-shadow:0 2px 12px 0 hsla(0,0%,100%,.1)}body.dark-mode-reverse .el-tooltip__popper.is-light{border:1px solid #e3e8ed;box-shadow:0 1px 6px hsla(0,0%,100%,.2)}body.dark-mode-reverse .drawer-overlay{background:hsla(0,0%,90%,.6)}body.dark-mode-reverse .drawer-overlay .overlay-body .overlay-close>a{color:#323232}body.dark-mode-reverse .drawer-overlay .overlay-body .overlay-close>a:hover{color:#000}body.dark-mode-reverse .file-content .content-body .tox .tox-edit-area__iframe,body.dark-mode-reverse .file-preview .content-body .tox .tox-edit-area__iframe{background-color:#000}body.dark-mode-reverse .file-content .content-body .teditor-loadedstyle .tox-sidebar-wrap,body.dark-mode-reverse .file-preview .content-body .teditor-loadedstyle .tox-sidebar-wrap{box-shadow:none}body.dark-mode-reverse .minder-editor-container .quickbar{border:1px solid #e3e8ed!important;box-shadow:3px 3px 10px hsla(0,0%,100%,.2)!important}body.dark-mode-reverse .project-list .project-head .project-titbox .project-icons>li.project-icon.active{color:#000}body.dark-mode-reverse .project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.overdue{background-color:transparent;color:#ed4014}body.dark-mode-reverse .project-list .project-column>ul>li .column-task .task-item .task-progress .task-time.today{background-color:transparent;color:#f90}body.dark-mode-reverse .project-list .project-table .project-table-body .task-row>div.row-time .task-time.overdue{background-color:transparent;color:#ed4014}body.dark-mode-reverse .project-list .project-table .project-table-body .task-row>div.row-time .task-time.today{background-color:transparent;color:#f90}body.dark-mode-reverse .dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-content{background-color:#e1e1e1}body.dark-mode-reverse .dialog-wrapper .dialog-scroller .dialog-list>ul>li .dialog-view .dialog-content .content-text{color:#fff}body.dark-mode-reverse .dialog-wrapper .dialog-scroller .dialog-list>ul>li.self .dialog-view .dialog-content{background-color:#8bcf70}body.dark-mode-reverse .file-icon:before{background-image:url(../images/file/dark/other.svg)}body.dark-mode-reverse .file-icon.archive:before{background-image:url(../images/file/dark/archive.svg)}body.dark-mode-reverse .file-icon.cad:before{background-image:url(../images/file/dark/cad.svg)}body.dark-mode-reverse .file-icon.code:before{background-image:url(../images/file/dark/code.svg)}body.dark-mode-reverse .file-icon.document:before{background-image:url(../images/file/dark/document.svg)}body.dark-mode-reverse .file-icon.drawio:before{background-image:url(../images/file/dark/drawio.svg)}body.dark-mode-reverse .file-icon.excel:before{background-image:url(../images/file/dark/excel.svg)}body.dark-mode-reverse .file-icon.flow:before{background-image:url(../images/file/dark/flow.svg)}body.dark-mode-reverse .file-icon.folder:before{background-image:url(../images/file/dark/folder.svg)}body.dark-mode-reverse .file-icon.media:before{background-image:url(../images/file/dark/media.svg)}body.dark-mode-reverse .file-icon.mind:before{background-image:url(../images/file/dark/mind.svg)}body.dark-mode-reverse .file-icon.ofd:before{background-image:url(../images/file/dark/ofd.svg)}body.dark-mode-reverse .file-icon.pdf:before{background-image:url(../images/file/dark/pdf.svg)}body.dark-mode-reverse .file-icon.picture:before{background-image:url(../images/file/dark/picture.svg)}body.dark-mode-reverse .file-icon.ppt:before{background-image:url(../images/file/dark/ppt.svg)}body.dark-mode-reverse .file-icon.sheet:before{background-image:url(../images/file/dark/sheet.svg)}body.dark-mode-reverse .file-icon.tif:before{background-image:url(../images/file/dark/tif.svg)}body.dark-mode-reverse .file-icon.txt:before{background-image:url(../images/file/dark/txt.svg)}body.dark-mode-reverse .file-icon.updir:before{background-image:url(../images/file/dark/updir.svg)}body.dark-mode-reverse .file-icon.upload:before{background-image:url(../images/file/dark/upload.svg)}body.dark-mode-reverse .file-icon.word:before{background-image:url(../images/file/dark/word.svg)}body.dark-mode-reverse .file-icon.wps:before{background-image:url(../images/file/dark/wps.svg)}body.dark-mode-reverse .page-login .login-body .login-box{box-shadow:none}body.dark-mode-reverse .page-manage .manage-box-menu .manage-box-dropdown .manage-box-title.menu-visible{box-shadow:0 1px 6px hsla(0,0%,100%,.2)}body.dark-mode-reverse .page-dashboard .dashboard-wrapper .dashboard-block>li .block-title{color:rgba(0,0,0,.6);font-size:12px}body.dark-mode-reverse .page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .block-num{color:#000}body.dark-mode-reverse .page-dashboard .dashboard-wrapper .dashboard-block>li .block-data .taskfont{color:rgba(0,0,0,.7)}body.dark-mode-reverse .page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .icon-avatar{color:#1c1917}body.dark-mode-reverse .page-messenger .messenger-wrapper .messenger-select .messenger-list>ul.dialog>li .dialog-box .dialog-text{color:#555}body.dark-mode-reverse .page-file .file-wrapper .file-navigator .ivu-btn{color:#000} diff --git a/public/docs/assets/android-chrome-192x192.png b/public/docs/assets/android-chrome-192x192.png new file mode 100644 index 000000000..5c3d085d6 Binary files /dev/null and b/public/docs/assets/android-chrome-192x192.png differ diff --git a/public/docs/assets/android-chrome-512x512.png b/public/docs/assets/android-chrome-512x512.png new file mode 100644 index 000000000..2381b0949 Binary files /dev/null and b/public/docs/assets/android-chrome-512x512.png differ diff --git a/public/docs/assets/apple-touch-icon.png b/public/docs/assets/apple-touch-icon.png new file mode 100644 index 000000000..10a12dccb Binary files /dev/null and b/public/docs/assets/apple-touch-icon.png differ diff --git a/public/docs/assets/bootstrap.min.css b/public/docs/assets/bootstrap.min.css new file mode 100644 index 000000000..5b96335ff --- /dev/null +++ b/public/docs/assets/bootstrap.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.4.1 (https://getbootstrap.com/) + * Copyright 2011-2019 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,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:none;text-decoration:underline;-webkit-text-decoration:underline dotted;-moz-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;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]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;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;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:"Glyphicons Halflings";src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),url(../fonts/glyphicons-halflings-regular.woff2) format("woff2"),url(../fonts/glyphicons-halflings-regular.woff) format("woff"),url(../fonts/glyphicons-halflings-regular.ttf) format("truetype"),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")}.glyphicon{position:relative;top:1px;display:inline-block;font-family:"Glyphicons Halflings";font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out;display:inline-block;max-width:100%;height:auto}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none;margin-left:-5px}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;clear:left;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:"\2014 \00A0"}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:""}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:"\00A0 \2014"}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.row-no-gutters{margin-right:0;margin-left:0}.row-no-gutters [class*=col-]{padding-right:0;padding-left:0}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-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{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.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}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=checkbox]:focus,input[type=file]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s,-webkit-box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=datetime-local].form-control,input[type=month].form-control,input[type=time].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],.input-group-sm input[type=time],input[type=date].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm,input[type=time].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],.input-group-lg input[type=time],input[type=date].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg,input[type=time].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;margin-bottom:0;font-weight:400;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;background-image:none;border:1px solid transparent;padding:6px 12px;font-size:14px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);opacity:.65;-webkit-box-shadow:none;box-shadow:none}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;background-image:none;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;background-image:none;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;background-image:none;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;background-image:none;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;background-image:none;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;background-image:none;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1);-webkit-overflow-scrolling:touch}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-right:15px;margin-top:8px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-right:-15px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);margin-top:8px;margin-bottom:8px}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0%;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{padding:0;cursor:pointer;background:0 0;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out,-o-transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5);outline:0}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:12px;filter:alpha(opacity=0);opacity:0}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:400;line-height:1.42857143;line-break:auto;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;font-size:14px;background-color:#fff;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover>.arrow{border-width:11px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out,-o-transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);left:0}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);left:0}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);left:0}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;outline:0;filter:alpha(opacity=90);opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:"\2039"}.carousel-control .icon-next:before{content:"\203a"}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/public/docs/assets/bootstrap.min.css.map b/public/docs/assets/bootstrap.min.css.map new file mode 100644 index 000000000..0ae3de508 --- /dev/null +++ b/public/docs/assets/bootstrap.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["bootstrap.css","less/normalize.less","dist/css/bootstrap.css","less/print.less","less/glyphicons.less","less/scaffolding.less","less/mixins/vendor-prefixes.less","less/mixins/tab-focus.less","less/mixins/image.less","less/type.less","less/mixins/text-emphasis.less","less/mixins/background-variant.less","less/mixins/text-overflow.less","less/code.less","less/grid.less","less/mixins/grid.less","less/mixins/grid-framework.less","less/tables.less","less/mixins/table-row.less","less/forms.less","less/mixins/forms.less","less/buttons.less","less/mixins/buttons.less","less/mixins/opacity.less","less/component-animations.less","less/dropdowns.less","less/mixins/nav-divider.less","less/mixins/reset-filter.less","less/button-groups.less","less/mixins/border-radius.less","less/input-groups.less","less/navs.less","less/navbar.less","less/mixins/nav-vertical-align.less","less/utilities.less","less/breadcrumbs.less","less/pagination.less","less/mixins/pagination.less","less/pager.less","less/labels.less","less/mixins/labels.less","less/badges.less","less/jumbotron.less","less/thumbnails.less","less/alerts.less","less/mixins/alerts.less","less/progress-bars.less","less/mixins/gradients.less","less/mixins/progress-bar.less","less/media.less","less/list-group.less","less/mixins/list-group.less","less/panels.less","less/mixins/panels.less","less/responsive-embed.less","less/wells.less","less/close.less","less/modals.less","less/tooltip.less","less/mixins/reset-text.less","less/popovers.less","less/carousel.less","less/mixins/clearfix.less","less/mixins/center-block.less","less/mixins/hide-text.less","less/responsive-utilities.less","less/mixins/responsive-visibility.less"],"names":[],"mappings":"AAAA;;;;AAKA,4ECKA,KACE,YAAA,WACA,qBAAA,KACA,yBAAA,KAOF,KACE,OAAA,EAaF,QCnBA,MACA,QACA,WACA,OACA,OACA,OACA,OACA,KACA,KACA,IACA,QACA,QDqBE,QAAA,MAQF,MCzBA,OACA,SACA,MD2BE,QAAA,aACA,eAAA,SAQF,sBACE,QAAA,KACA,OAAA,EAQF,SCrCA,SDuCE,QAAA,KAUF,EACE,iBAAA,YAQF,SCnDA,QDqDE,QAAA,EAWF,YACE,cAAA,KACA,gBAAA,UACA,wBAAA,UAAA,OAAA,qBAAA,UAAA,OAAA,gBAAA,UAAA,OAOF,EC/DA,ODiEE,YAAA,IAOF,IACE,WAAA,OAQF,GACE,UAAA,IACA,OAAA,MAAA,EAOF,KACE,WAAA,KACA,MAAA,KAOF,MACE,UAAA,IAOF,ICzFA,ID2FE,UAAA,IACA,YAAA,EACA,SAAA,SACA,eAAA,SAGF,IACE,IAAA,MAGF,IACE,OAAA,OAUF,IACE,OAAA,EAOF,eACE,SAAA,OAUF,OACE,OAAA,IAAA,KAOF,GACE,mBAAA,YAAA,gBAAA,YAAA,WAAA,YACA,OAAA,EAOF,IACE,SAAA,KAOF,KC7HA,IACA,IACA,KD+HE,YAAA,SAAA,CAAA,UACA,UAAA,IAkBF,OC7IA,MACA,SACA,OACA,SD+IE,MAAA,QACA,KAAA,QACA,OAAA,EAOF,OACE,SAAA,QAUF,OC1JA,OD4JE,eAAA,KAWF,OCnKA,wBACA,kBACA,mBDqKE,mBAAA,OACA,OAAA,QAOF,iBCxKA,qBD0KE,OAAA,QAOF,yBC7KA,wBD+KE,OAAA,EACA,QAAA,EAQF,MACE,YAAA,OAWF,qBC5LA,kBD8LE,mBAAA,WAAA,gBAAA,WAAA,WAAA,WACA,QAAA,EASF,8CCjMA,8CDmME,OAAA,KAQF,mBACE,mBAAA,UACA,mBAAA,YAAA,gBAAA,YAAA,WAAA,YASF,iDC5MA,8CD8ME,mBAAA,KAOF,SACE,OAAA,IAAA,MAAA,OACA,OAAA,EAAA,IACA,QAAA,MAAA,OAAA,MAQF,OACE,OAAA,EACA,QAAA,EAOF,SACE,SAAA,KAQF,SACE,YAAA,IAUF,MACE,gBAAA,SACA,eAAA,EAGF,GC3OA,GD6OE,QAAA,EDlPF,qFGhLA,aACE,ED2LA,OADA,QCvLE,MAAA,eACA,YAAA,eACA,WAAA,cACA,mBAAA,eAAA,WAAA,eAGF,ED0LA,UCxLE,gBAAA,UAGF,cACE,QAAA,KAAA,WAAA,IAGF,kBACE,QAAA,KAAA,YAAA,IAKF,mBDqLA,6BCnLE,QAAA,GDuLF,WCpLA,IAEE,OAAA,IAAA,MAAA,KACA,kBAAA,MAGF,MACE,QAAA,mBDqLF,IClLA,GAEE,kBAAA,MAGF,IACE,UAAA,eDmLF,GACA,GCjLA,EAGE,QAAA,EACA,OAAA,EAGF,GD+KA,GC7KE,iBAAA,MAMF,QACE,QAAA,KAEF,YD2KA,oBCxKI,iBAAA,eAGJ,OACE,OAAA,IAAA,MAAA,KAGF,OACE,gBAAA,mBADF,UD2KA,UCtKI,iBAAA,eD0KJ,mBCvKA,mBAGI,OAAA,IAAA,MAAA,gBCrFN,WACE,YAAA,uBACA,IAAA,+CACA,IAAA,sDAAA,2BAAA,CAAA,iDAAA,eAAA,CAAA,gDAAA,cAAA,CAAA,+CAAA,kBAAA,CAAA,2EAAA,cAQF,WACE,SAAA,SACA,IAAA,IACA,QAAA,aACA,YAAA,uBACA,WAAA,OACA,YAAA,IACA,YAAA,EACA,uBAAA,YACA,wBAAA,UAIkC,2BAAW,QAAA,QACX,uBAAW,QAAA,QF2P/C,sBEzPoC,uBAAW,QAAA,QACX,wBAAW,QAAA,QACX,wBAAW,QAAA,QACX,2BAAW,QAAA,QACX,yBAAW,QAAA,QACX,wBAAW,QAAA,QACX,wBAAW,QAAA,QACX,yBAAW,QAAA,QACX,wBAAW,QAAA,QACX,uBAAW,QAAA,QACX,6BAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,2BAAW,QAAA,QACX,qBAAW,QAAA,QACX,0BAAW,QAAA,QACX,qBAAW,QAAA,QACX,yBAAW,QAAA,QACX,0BAAW,QAAA,QACX,2BAAW,QAAA,QACX,sBAAW,QAAA,QACX,yBAAW,QAAA,QACX,sBAAW,QAAA,QACX,wBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,+BAAW,QAAA,QACX,2BAAW,QAAA,QACX,yBAAW,QAAA,QACX,wBAAW,QAAA,QACX,8BAAW,QAAA,QACX,yBAAW,QAAA,QACX,0BAAW,QAAA,QACX,2BAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,6BAAW,QAAA,QACX,6BAAW,QAAA,QACX,8BAAW,QAAA,QACX,4BAAW,QAAA,QACX,yBAAW,QAAA,QACX,0BAAW,QAAA,QACX,sBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,2BAAW,QAAA,QACX,wBAAW,QAAA,QACX,yBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,yBAAW,QAAA,QACX,8BAAW,QAAA,QACX,6BAAW,QAAA,QACX,6BAAW,QAAA,QACX,+BAAW,QAAA,QACX,8BAAW,QAAA,QACX,gCAAW,QAAA,QACX,uBAAW,QAAA,QACX,8BAAW,QAAA,QACX,+BAAW,QAAA,QACX,iCAAW,QAAA,QACX,0BAAW,QAAA,QACX,6BAAW,QAAA,QACX,yBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,wBAAW,QAAA,QACX,wBAAW,QAAA,QACX,uBAAW,QAAA,QACX,gCAAW,QAAA,QACX,gCAAW,QAAA,QACX,2BAAW,QAAA,QACX,uBAAW,QAAA,QACX,wBAAW,QAAA,QACX,uBAAW,QAAA,QACX,0BAAW,QAAA,QACX,+BAAW,QAAA,QACX,+BAAW,QAAA,QACX,wBAAW,QAAA,QACX,+BAAW,QAAA,QACX,gCAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,8BAAW,QAAA,QACX,0BAAW,QAAA,QACX,gCAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,gCAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,6BAAW,QAAA,QACX,8BAAW,QAAA,QACX,2BAAW,QAAA,QACX,6BAAW,QAAA,QACX,4BAAW,QAAA,QACX,8BAAW,QAAA,QACX,+BAAW,QAAA,QACX,mCAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,2BAAW,QAAA,QACX,4BAAW,QAAA,QACX,+BAAW,QAAA,QACX,wBAAW,QAAA,QACX,2BAAW,QAAA,QACX,yBAAW,QAAA,QACX,0BAAW,QAAA,QACX,yBAAW,QAAA,QACX,6BAAW,QAAA,QACX,+BAAW,QAAA,QACX,0BAAW,QAAA,QACX,gCAAW,QAAA,QACX,+BAAW,QAAA,QACX,8BAAW,QAAA,QACX,kCAAW,QAAA,QACX,oCAAW,QAAA,QACX,sBAAW,QAAA,QACX,2BAAW,QAAA,QACX,uBAAW,QAAA,QACX,8BAAW,QAAA,QACX,4BAAW,QAAA,QACX,8BAAW,QAAA,QACX,6BAAW,QAAA,QACX,4BAAW,QAAA,QACX,0BAAW,QAAA,QACX,4BAAW,QAAA,QACX,qCAAW,QAAA,QACX,oCAAW,QAAA,QACX,kCAAW,QAAA,QACX,oCAAW,QAAA,QACX,wBAAW,QAAA,QACX,yBAAW,QAAA,QACX,wBAAW,QAAA,QACX,yBAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,4BAAW,QAAA,QACX,4BAAW,QAAA,QACX,8BAAW,QAAA,QACX,uBAAW,QAAA,QACX,wBAAW,QAAA,QACX,0BAAW,QAAA,QACX,sBAAW,QAAA,QACX,sBAAW,QAAA,QACX,uBAAW,QAAA,QACX,mCAAW,QAAA,QACX,uCAAW,QAAA,QACX,gCAAW,QAAA,QACX,oCAAW,QAAA,QACX,qCAAW,QAAA,QACX,yCAAW,QAAA,QACX,4BAAW,QAAA,QACX,yBAAW,QAAA,QACX,gCAAW,QAAA,QACX,8BAAW,QAAA,QACX,yBAAW,QAAA,QACX,wBAAW,QAAA,QACX,0BAAW,QAAA,QACX,6BAAW,QAAA,QACX,yBAAW,QAAA,QACX,uBAAW,QAAA,QACX,uBAAW,QAAA,QACX,wBAAW,QAAA,QACX,yBAAW,QAAA,QACX,yBAAW,QAAA,QACX,uBAAW,QAAA,QACX,8BAAW,QAAA,QACX,+BAAW,QAAA,QACX,gCAAW,QAAA,QACX,8BAAW,QAAA,QACX,8BAAW,QAAA,QACX,8BAAW,QAAA,QACX,2BAAW,QAAA,QACX,0BAAW,QAAA,QACX,yBAAW,QAAA,QACX,6BAAW,QAAA,QACX,2BAAW,QAAA,QACX,4BAAW,QAAA,QACX,wBAAW,QAAA,QACX,wBAAW,QAAA,QACX,2BAAW,QAAA,QACX,2BAAW,QAAA,QACX,4BAAW,QAAA,QACX,+BAAW,QAAA,QACX,8BAAW,QAAA,QACX,4BAAW,QAAA,QACX,4BAAW,QAAA,QACX,4BAAW,QAAA,QACX,iCAAW,QAAA,QACX,oCAAW,QAAA,QACX,iCAAW,QAAA,QACX,+BAAW,QAAA,QACX,+BAAW,QAAA,QACX,iCAAW,QAAA,QACX,qBAAW,QAAA,QACX,4BAAW,QAAA,QACX,4BAAW,QAAA,QACX,2BAAW,QAAA,QACX,uBAAW,QAAA,QACX,wBAAW,QAAA,QASX,wBAAW,QAAA,QACX,4BAAW,QAAA,QACX,uBAAW,QAAA,QACX,wBAAW,QAAA,QACX,uBAAW,QAAA,QACX,yBAAW,QAAA,QACX,yBAAW,QAAA,QACX,+BAAW,QAAA,QACX,uBAAW,QAAA,QACX,6BAAW,QAAA,QACX,sBAAW,QAAA,QACX,wBAAW,QAAA,QACX,wBAAW,QAAA,QACX,4BAAW,QAAA,QACX,uBAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,2BAAW,QAAA,QACX,0BAAW,QAAA,QACX,sBAAW,QAAA,QACX,sBAAW,QAAA,QACX,sBAAW,QAAA,QACX,sBAAW,QAAA,QACX,wBAAW,QAAA,QACX,sBAAW,QAAA,QACX,wBAAW,QAAA,QACX,4BAAW,QAAA,QACX,mCAAW,QAAA,QACX,4BAAW,QAAA,QACX,oCAAW,QAAA,QACX,kCAAW,QAAA,QACX,iCAAW,QAAA,QACX,+BAAW,QAAA,QACX,sBAAW,QAAA,QACX,wBAAW,QAAA,QACX,6BAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,kCAAW,QAAA,QACX,mCAAW,QAAA,QACX,sCAAW,QAAA,QACX,0CAAW,QAAA,QACX,oCAAW,QAAA,QACX,wCAAW,QAAA,QACX,qCAAW,QAAA,QACX,iCAAW,QAAA,QACX,gCAAW,QAAA,QACX,kCAAW,QAAA,QACX,+BAAW,QAAA,QACX,0BAAW,QAAA,QACX,8BAAW,QAAA,QACX,4BAAW,QAAA,QACX,4BAAW,QAAA,QACX,6BAAW,QAAA,QACX,4BAAW,QAAA,QACX,0BAAW,QAAA,QCxS/C,ECkEE,mBAAA,WACG,gBAAA,WACK,WAAA,WJo+BV,OGriCA,QC+DE,mBAAA,WACG,gBAAA,WACK,WAAA,WDzDV,KACE,UAAA,KACA,4BAAA,cAGF,KACE,YAAA,gBAAA,CAAA,SAAA,CAAA,KAAA,CAAA,WACA,UAAA,KACA,YAAA,WACA,MAAA,KACA,iBAAA,KHoiCF,OGhiCA,MHiiCA,OACA,SG9hCE,YAAA,QACA,UAAA,QACA,YAAA,QAMF,EACE,MAAA,QACA,gBAAA,KH8hCF,QG5hCE,QAEE,MAAA,QACA,gBAAA,UAGF,QEnDA,QAAA,IAAA,KAAA,yBACA,eAAA,KF6DF,OACE,OAAA,EAMF,IACE,eAAA,OHqhCF,4BADA,0BGhhCA,gBH+gCA,iBADA,eMxlCE,QAAA,MACA,UAAA,KACA,OAAA,KH6EF,aACE,cAAA,IAMF,eACE,QAAA,IACA,YAAA,WACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,cAAA,IC+FA,mBAAA,IAAA,IAAA,YACK,cAAA,IAAA,IAAA,YACG,WAAA,IAAA,IAAA,YE5LR,QAAA,aACA,UAAA,KACA,OAAA,KHiGF,YACE,cAAA,IAMF,GACE,WAAA,KACA,cAAA,KACA,OAAA,EACA,WAAA,IAAA,MAAA,KAQF,SACE,SAAA,SACA,MAAA,IACA,OAAA,IACA,QAAA,EACA,OAAA,KACA,SAAA,OACA,KAAA,cACA,OAAA,EAQA,0BH8/BF,yBG5/BI,SAAA,OACA,MAAA,KACA,OAAA,KACA,OAAA,EACA,SAAA,QACA,KAAA,KAWJ,cACE,OAAA,QH4/BF,IACA,IACA,IACA,IACA,IACA,IOtpCA,GP4oCA,GACA,GACA,GACA,GACA,GO9oCE,YAAA,QACA,YAAA,IACA,YAAA,IACA,MAAA,QPyqCF,WAZA,UAaA,WAZA,UAaA,WAZA,UAaA,WAZA,UAaA,WAZA,UAaA,WAZA,UACA,UOxqCA,SPyqCA,UAZA,SAaA,UAZA,SAaA,UAZA,SAaA,UAZA,SAaA,UAZA,SOxpCI,YAAA,IACA,YAAA,EACA,MAAA,KP8qCJ,IAEA,IAEA,IO9qCA,GP2qCA,GAEA,GO1qCE,WAAA,KACA,cAAA,KPqrCF,WANA,UAQA,WANA,UAQA,WANA,UACA,UOxrCA,SP0rCA,UANA,SAQA,UANA,SO9qCI,UAAA,IPyrCJ,IAEA,IAEA,IO1rCA,GPurCA,GAEA,GOtrCE,WAAA,KACA,cAAA,KPisCF,WANA,UAQA,WANA,UAQA,WANA,UACA,UOpsCA,SPssCA,UANA,SAQA,UANA,SO1rCI,UAAA,IPqsCJ,IOjsCA,GAAU,UAAA,KPqsCV,IOpsCA,GAAU,UAAA,KPwsCV,IOvsCA,GAAU,UAAA,KP2sCV,IO1sCA,GAAU,UAAA,KP8sCV,IO7sCA,GAAU,UAAA,KPitCV,IOhtCA,GAAU,UAAA,KAMV,EACE,OAAA,EAAA,EAAA,KAGF,MACE,cAAA,KACA,UAAA,KACA,YAAA,IACA,YAAA,IAEA,yBAAA,MACE,UAAA,MPitCJ,OOxsCA,MAEE,UAAA,IP0sCF,MOvsCA,KAEE,QAAA,KACA,iBAAA,QAIF,WAAuB,WAAA,KACvB,YAAuB,WAAA,MACvB,aAAuB,WAAA,OACvB,cAAuB,WAAA,QACvB,aAAuB,YAAA,OAGvB,gBAAuB,eAAA,UACvB,gBAAuB,eAAA,UACvB,iBAAuB,eAAA,WAGvB,YACE,MAAA,KAEF,cCvGE,MAAA,QR2zCF,qBQ1zCE,qBAEE,MAAA,QDuGJ,cC1GE,MAAA,QRk0CF,qBQj0CE,qBAEE,MAAA,QD0GJ,WC7GE,MAAA,QRy0CF,kBQx0CE,kBAEE,MAAA,QD6GJ,cChHE,MAAA,QRg1CF,qBQ/0CE,qBAEE,MAAA,QDgHJ,aCnHE,MAAA,QRu1CF,oBQt1CE,oBAEE,MAAA,QDuHJ,YAGE,MAAA,KE7HA,iBAAA,QT+1CF,mBS91CE,mBAEE,iBAAA,QF6HJ,YEhIE,iBAAA,QTs2CF,mBSr2CE,mBAEE,iBAAA,QFgIJ,SEnIE,iBAAA,QT62CF,gBS52CE,gBAEE,iBAAA,QFmIJ,YEtIE,iBAAA,QTo3CF,mBSn3CE,mBAEE,iBAAA,QFsIJ,WEzIE,iBAAA,QT23CF,kBS13CE,kBAEE,iBAAA,QF8IJ,aACE,eAAA,IACA,OAAA,KAAA,EAAA,KACA,cAAA,IAAA,MAAA,KPgvCF,GOxuCA,GAEE,WAAA,EACA,cAAA,KP4uCF,MAFA,MACA,MO9uCA,MAMI,cAAA,EAOJ,eACE,aAAA,EACA,WAAA,KAIF,aALE,aAAA,EACA,WAAA,KAMA,YAAA,KAFF,gBAKI,QAAA,aACA,cAAA,IACA,aAAA,IAKJ,GACE,WAAA,EACA,cAAA,KPouCF,GOluCA,GAEE,YAAA,WAEF,GACE,YAAA,IAEF,GACE,YAAA,EAaA,yBAAA,kBAEI,MAAA,KACA,MAAA,MACA,MAAA,KACA,WAAA,MGxNJ,SAAA,OACA,cAAA,SACA,YAAA,OHiNA,kBASI,YAAA,OP4tCN,0BOjtCA,YAEE,OAAA,KAGF,YACE,UAAA,IA9IqB,eAAA,UAmJvB,WACE,QAAA,KAAA,KACA,OAAA,EAAA,EAAA,KACA,UAAA,OACA,YAAA,IAAA,MAAA,KPitCF,yBO5sCI,wBP2sCJ,yBO1sCM,cAAA,EPgtCN,kBO1tCA,kBPytCA,iBOtsCI,QAAA,MACA,UAAA,IACA,YAAA,WACA,MAAA,KP4sCJ,yBO1sCI,yBPysCJ,wBOxsCM,QAAA,cAQN,oBPqsCA,sBOnsCE,cAAA,KACA,aAAA,EACA,WAAA,MACA,aAAA,IAAA,MAAA,KACA,YAAA,EP0sCF,kCOpsCI,kCPksCJ,iCAGA,oCAJA,oCAEA,mCOnsCe,QAAA,GP4sCf,iCO3sCI,iCPysCJ,gCAGA,mCAJA,mCAEA,kCOzsCM,QAAA,cAMN,QACE,cAAA,KACA,WAAA,OACA,YAAA,WIxSF,KXm/CA,IACA,IACA,KWj/CE,YAAA,KAAA,CAAA,MAAA,CAAA,QAAA,CAAA,aAAA,CAAA,UAIF,KACE,QAAA,IAAA,IACA,UAAA,IACA,MAAA,QACA,iBAAA,QACA,cAAA,IAIF,IACE,QAAA,IAAA,IACA,UAAA,IACA,MAAA,KACA,iBAAA,KACA,cAAA,IACA,mBAAA,MAAA,EAAA,KAAA,EAAA,gBAAA,WAAA,MAAA,EAAA,KAAA,EAAA,gBANF,QASI,QAAA,EACA,UAAA,KACA,YAAA,IACA,mBAAA,KAAA,WAAA,KAKJ,IACE,QAAA,MACA,QAAA,MACA,OAAA,EAAA,EAAA,KACA,UAAA,KACA,YAAA,WACA,MAAA,KACA,WAAA,UACA,UAAA,WACA,iBAAA,QACA,OAAA,IAAA,MAAA,KACA,cAAA,IAXF,SAeI,QAAA,EACA,UAAA,QACA,MAAA,QACA,YAAA,SACA,iBAAA,YACA,cAAA,EAKJ,gBACE,WAAA,MACA,WAAA,OC1DF,WCHE,cAAA,KACA,aAAA,KACA,aAAA,KACA,YAAA,KDGA,yBAAA,WACE,MAAA,OAEF,yBAAA,WACE,MAAA,OAEF,0BAAA,WACE,MAAA,QAUJ,iBCvBE,cAAA,KACA,aAAA,KACA,aAAA,KACA,YAAA,KD6BF,KCvBE,aAAA,MACA,YAAA,MD0BF,gBACE,aAAA,EACA,YAAA,EAFF,8BAKI,cAAA,EACA,aAAA,EZwiDJ,UAoCA,WAIA,WAIA,WAxCA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UAjCA,UAoCA,WAIA,WAIA,WAxCA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UAjCA,UAoCA,WAIA,WAIA,WAxCA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UatnDC,UbynDD,WAIA,WAIA,WAxCA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UAIA,UcpmDM,SAAA,SAEA,WAAA,IAEA,cAAA,KACA,aAAA,KDtBL,UbmpDD,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,Uc3mDM,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,EFCJ,yBCzEC,Ub2zDC,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UcnxDI,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,GFUJ,yBClFC,Ubo+DC,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,Uc57DI,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,GFmBJ,0BC3FC,Ub6oEC,WACA,WACA,WAVA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UcrmEI,MAAA,KDvCL,WC+CG,MAAA,KD/CH,WC+CG,MAAA,aD/CH,WC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,ID/CH,UC+CG,MAAA,aD/CH,UC+CG,MAAA,YD/CH,gBC8DG,MAAA,KD9DH,gBC8DG,MAAA,aD9DH,gBC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,ID9DH,eC8DG,MAAA,aD9DH,eC8DG,MAAA,YD9DH,eCmEG,MAAA,KDnEH,gBCoDG,KAAA,KDpDH,gBCoDG,KAAA,aDpDH,gBCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,IDpDH,eCoDG,KAAA,aDpDH,eCoDG,KAAA,YDpDH,eCyDG,KAAA,KDzDH,kBCwEG,YAAA,KDxEH,kBCwEG,YAAA,aDxEH,kBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,IDxEH,iBCwEG,YAAA,aDxEH,iBCwEG,YAAA,YDxEH,iBCwEG,YAAA,GCjEJ,MACE,iBAAA,YADF,uBAQI,SAAA,OACA,QAAA,aACA,MAAA,KAKA,sBf+xEJ,sBe9xEM,SAAA,OACA,QAAA,WACA,MAAA,KAKN,QACE,YAAA,IACA,eAAA,IACA,MAAA,KACA,WAAA,KAGF,GACE,WAAA,KAMF,OACE,MAAA,KACA,UAAA,KACA,cAAA,Kf6xEF,mBAHA,mBAIA,mBAHA,mBACA,mBe/xEA,mBAWQ,QAAA,IACA,YAAA,WACA,eAAA,IACA,WAAA,IAAA,MAAA,KAdR,mBAoBI,eAAA,OACA,cAAA,IAAA,MAAA,KfyxEJ,uCe9yEA,uCf+yEA,wCAHA,wCAIA,2CAHA,2Ce/wEQ,WAAA,EA9BR,mBAoCI,WAAA,IAAA,MAAA,KApCJ,cAyCI,iBAAA,KfoxEJ,6BAHA,6BAIA,6BAHA,6BACA,6Be5wEA,6BAOQ,QAAA,IAWR,gBACE,OAAA,IAAA,MAAA,KfqwEF,4BAHA,4BAIA,4BAHA,4BACA,4BerwEA,4BAQQ,OAAA,IAAA,MAAA,KfmwER,4Be3wEA,4BAeM,oBAAA,IAUN,yCAEI,iBAAA,QASJ,4BAEI,iBAAA,QfqvEJ,0BAGA,0BATA,0BAGA,0BAIA,0BAGA,0BATA,0BAGA,0BACA,0BAGA,0BgBt4EE,0BhBg4EF,0BgBz3EM,iBAAA,QhBs4EN,sCAEA,sCADA,oCgBj4EE,sChB+3EF,sCgBz3EM,iBAAA,QhBs4EN,2BAGA,2BATA,2BAGA,2BAIA,2BAGA,2BATA,2BAGA,2BACA,2BAGA,2BgB35EE,2BhBq5EF,2BgB94EM,iBAAA,QhB25EN,uCAEA,uCADA,qCgBt5EE,uChBo5EF,uCgB94EM,iBAAA,QhB25EN,wBAGA,wBATA,wBAGA,wBAIA,wBAGA,wBATA,wBAGA,wBACA,wBAGA,wBgBh7EE,wBhB06EF,wBgBn6EM,iBAAA,QhBg7EN,oCAEA,oCADA,kCgB36EE,oChBy6EF,oCgBn6EM,iBAAA,QhBg7EN,2BAGA,2BATA,2BAGA,2BAIA,2BAGA,2BATA,2BAGA,2BACA,2BAGA,2BgBr8EE,2BhB+7EF,2BgBx7EM,iBAAA,QhBq8EN,uCAEA,uCADA,qCgBh8EE,uChB87EF,uCgBx7EM,iBAAA,QhBq8EN,0BAGA,0BATA,0BAGA,0BAIA,0BAGA,0BATA,0BAGA,0BACA,0BAGA,0BgB19EE,0BhBo9EF,0BgB78EM,iBAAA,QhB09EN,sCAEA,sCADA,oCgBr9EE,sChBm9EF,sCgB78EM,iBAAA,QDoJN,kBACE,WAAA,KACA,WAAA,KAEA,oCAAA,kBACE,MAAA,KACA,cAAA,KACA,WAAA,OACA,mBAAA,yBACA,OAAA,IAAA,MAAA,KALF,yBASI,cAAA,Efq0EJ,qCAHA,qCAIA,qCAHA,qCACA,qCe70EA,qCAkBU,YAAA,OAlBV,kCA0BI,OAAA,Ef+zEJ,0DAHA,0DAIA,0DAHA,0DACA,0Dex1EA,0DAmCU,YAAA,Ef8zEV,yDAHA,yDAIA,yDAHA,yDACA,yDeh2EA,yDAuCU,aAAA,Efg0EV,yDev2EA,yDfw2EA,yDAFA,yDelzEU,cAAA,GEzNZ,SAIE,UAAA,EACA,QAAA,EACA,OAAA,EACA,OAAA,EAGF,OACE,QAAA,MACA,MAAA,KACA,QAAA,EACA,cAAA,KACA,UAAA,KACA,YAAA,QACA,MAAA,KACA,OAAA,EACA,cAAA,IAAA,MAAA,QAGF,MACE,QAAA,aACA,UAAA,KACA,cAAA,IACA,YAAA,IAUF,mBb6BE,mBAAA,WACG,gBAAA,WACK,WAAA,WarBR,mBAAA,KACA,gBAAA,KAAA,WAAA,KjBkgFF,qBiB9/EA,kBAEE,OAAA,IAAA,EAAA,EACA,WAAA,MACA,YAAA,OjBogFF,wCADA,qCADA,8BAFA,+BACA,2BiB3/EE,4BAGE,OAAA,YAIJ,iBACE,QAAA,MAIF,kBACE,QAAA,MACA,MAAA,KAIF,iBjBu/EA,aiBr/EE,OAAA,KjB0/EF,2BiBt/EA,uBjBq/EA,wBK/kFE,QAAA,IAAA,KAAA,yBACA,eAAA,KYgGF,OACE,QAAA,MACA,YAAA,IACA,UAAA,KACA,YAAA,WACA,MAAA,KA0BF,cACE,QAAA,MACA,MAAA,KACA,OAAA,KACA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,WACA,MAAA,KACA,iBAAA,KACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,cAAA,Ib3EA,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBAyHR,mBAAA,aAAA,YAAA,IAAA,CAAA,WAAA,YAAA,KACK,cAAA,aAAA,YAAA,IAAA,CAAA,WAAA,YAAA,KACG,mBAAA,aAAA,YAAA,IAAA,CAAA,mBAAA,YAAA,KAAA,WAAA,aAAA,YAAA,IAAA,CAAA,mBAAA,YAAA,KAAA,WAAA,aAAA,YAAA,IAAA,CAAA,WAAA,YAAA,KAAA,WAAA,aAAA,YAAA,IAAA,CAAA,WAAA,YAAA,IAAA,CAAA,mBAAA,YAAA,Kc1IR,oBACE,aAAA,QACA,QAAA,EdYF,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,qBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,qBAiCR,gCACE,MAAA,KACA,QAAA,EAEF,oCAA0B,MAAA,KAC1B,yCAAgC,MAAA,Ka+ChC,0BACE,iBAAA,YACA,OAAA,EAQF,wBjBq+EF,wBACA,iCiBn+EI,iBAAA,KACA,QAAA,EAGF,wBjBo+EF,iCiBl+EI,OAAA,YAIF,sBACE,OAAA,KAcJ,qDAKI,8BjBm9EF,wCACA,+BAFA,8BiBj9EI,YAAA,KjB09EJ,iCAEA,2CACA,kCAFA,iCiBx9EE,0BjBq9EF,oCACA,2BAFA,0BiBl9EI,YAAA,KjB+9EJ,iCAEA,2CACA,kCAFA,iCiB79EE,0BjB09EF,oCACA,2BAFA,0BiBv9EI,YAAA,MAWN,YACE,cAAA,KjBy9EF,UiBj9EA,OAEE,SAAA,SACA,QAAA,MACA,WAAA,KACA,cAAA,KjBm9EF,yBiBh9EE,sBjBk9EF,mCADA,gCiB98EM,OAAA,YjBm9EN,gBiB99EA,aAgBI,WAAA,KACA,aAAA,KACA,cAAA,EACA,YAAA,IACA,OAAA,QjBm9EJ,+BACA,sCiBj9EA,yBjB+8EA,gCiB38EE,SAAA,SACA,WAAA,MACA,YAAA,MjBi9EF,oBiB98EA,cAEE,WAAA,KjBg9EF,iBiB58EA,cAEE,SAAA,SACA,QAAA,aACA,aAAA,KACA,cAAA,EACA,YAAA,IACA,eAAA,OACA,OAAA,QjB88EF,0BiB38EE,uBjB68EF,oCADA,iCiB18EI,OAAA,YjB+8EJ,kCiB58EA,4BAEE,WAAA,EACA,YAAA,KASF,qBACE,WAAA,KAEA,YAAA,IACA,eAAA,IAEA,cAAA,EAEA,8BjBm8EF,8BiBj8EI,cAAA,EACA,aAAA,EAaJ,UC3PE,OAAA,KACA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IACA,cAAA,IAEA,gBACE,OAAA,KACA,YAAA,KlBsrFJ,0BkBnrFE,kBAEE,OAAA,KDiPJ,6BAEI,OAAA,KACA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IACA,cAAA,IANJ,mCASI,OAAA,KACA,YAAA,KjBq8EJ,6CiB/8EA,qCAcI,OAAA,KAdJ,oCAiBI,OAAA,KACA,WAAA,KACA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IAIJ,UCvRE,OAAA,KACA,QAAA,KAAA,KACA,UAAA,KACA,YAAA,UACA,cAAA,IAEA,gBACE,OAAA,KACA,YAAA,KlB2tFJ,0BkBxtFE,kBAEE,OAAA,KD6QJ,6BAEI,OAAA,KACA,QAAA,KAAA,KACA,UAAA,KACA,YAAA,UACA,cAAA,IANJ,mCASI,OAAA,KACA,YAAA,KjB88EJ,6CiBx9EA,qCAcI,OAAA,KAdJ,oCAiBI,OAAA,KACA,WAAA,KACA,QAAA,KAAA,KACA,UAAA,KACA,YAAA,UASJ,cAEE,SAAA,SAFF,4BAMI,cAAA,OAIJ,uBACE,SAAA,SACA,IAAA,EACA,MAAA,EACA,QAAA,EACA,QAAA,MACA,MAAA,KACA,OAAA,KACA,YAAA,KACA,WAAA,OACA,eAAA,KjBo8EF,oDADA,uCiBj8EA,iCAGE,MAAA,KACA,OAAA,KACA,YAAA,KjBo8EF,oDADA,uCiBj8EA,iCAGE,MAAA,KACA,OAAA,KACA,YAAA,KjBq8EF,uBAEA,8BAJA,4BiB/7EA,yBjBg8EA,oBAEA,2BAGA,4BAEA,mCAHA,yBAEA,gCkBx1FI,MAAA,QDkZJ,2BC9YI,aAAA,QdiDF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBchDN,iCACE,aAAA,Qd8CJ,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,QACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,Qa4VV,gCCpYI,MAAA,QACA,iBAAA,QACA,aAAA,QDkYJ,oCC9XI,MAAA,QlB61FJ,uBAEA,8BAJA,4BiB19EA,yBjB29EA,oBAEA,2BAGA,4BAEA,mCAHA,yBAEA,gCkBt3FI,MAAA,QDqZJ,2BCjZI,aAAA,QdiDF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBchDN,iCACE,aAAA,Qd8CJ,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,QACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,Qa+VV,gCCvYI,MAAA,QACA,iBAAA,QACA,aAAA,QDqYJ,oCCjYI,MAAA,QlB23FJ,qBAEA,4BAJA,0BiBr/EA,uBjBs/EA,kBAEA,yBAGA,0BAEA,iCAHA,uBAEA,8BkBp5FI,MAAA,QDwZJ,yBCpZI,aAAA,QdiDF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBchDN,+BACE,aAAA,Qd8CJ,mBAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,QACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBAAA,CAAA,EAAA,EAAA,IAAA,QakWV,8BC1YI,MAAA,QACA,iBAAA,QACA,aAAA,QDwYJ,kCCpYI,MAAA,QD2YF,2CACE,IAAA,KAEF,mDACE,IAAA,EAUJ,YACE,QAAA,MACA,WAAA,IACA,cAAA,KACA,MAAA,QAkBA,yBAAA,yBAGI,QAAA,aACA,cAAA,EACA,eAAA,OALJ,2BAUI,QAAA,aACA,MAAA,KACA,eAAA,OAZJ,kCAiBI,QAAA,aAjBJ,0BAqBI,QAAA,aACA,eAAA,OjBi/EJ,wCiBvgFA,6CjBsgFA,2CiB3+EM,MAAA,KA3BN,wCAiCI,MAAA,KAjCJ,4BAqCI,cAAA,EACA,eAAA,OjB4+EJ,uBiBlhFA,oBA6CI,QAAA,aACA,WAAA,EACA,cAAA,EACA,eAAA,OjBy+EJ,6BiBzhFA,0BAmDM,aAAA,EjB0+EN,4CiB7hFA,sCAwDI,SAAA,SACA,YAAA,EAzDJ,kDA8DI,IAAA,GjBw+EN,2BAEA,kCiB/9EA,wBjB89EA,+BiBr9EI,YAAA,IACA,WAAA,EACA,cAAA,EjB09EJ,2BiBr+EA,wBAiBI,WAAA,KAjBJ,6BJ9gBE,aAAA,MACA,YAAA,MIwiBA,yBAAA,gCAEI,YAAA,IACA,cAAA,EACA,WAAA,OA/BN,sDAwCI,MAAA,KAQA,yBAAA,+CAEI,YAAA,KACA,UAAA,MAKJ,yBAAA,+CAEI,YAAA,IACA,UAAA,ME9kBR,KACE,QAAA,aACA,cAAA,EACA,YAAA,IACA,WAAA,OACA,YAAA,OACA,eAAA,OACA,iBAAA,aAAA,aAAA,aACA,OAAA,QACA,iBAAA,KACA,OAAA,IAAA,MAAA,YCoCA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,WACA,cAAA,IhBqKA,oBAAA,KACG,iBAAA,KACC,gBAAA,KACI,YAAA,KJs1FV,kBAHA,kBACA,WACA,kBAHA,kBmB1hGI,WdrBF,QAAA,IAAA,KAAA,yBACA,eAAA,KLwjGF,WADA,WmB7hGE,WAGE,MAAA,KACA,gBAAA,KnB+hGJ,YmB5hGE,YAEE,iBAAA,KACA,QAAA,Ef2BF,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBexBR,cnB4hGF,eACA,wBmB1hGI,OAAA,YE9CF,OAAA,kBACA,QAAA,IjBiEA,mBAAA,KACQ,WAAA,KefN,enB4hGJ,yBmB1hGM,eAAA,KASN,aC7DE,MAAA,KACA,iBAAA,KACA,aAAA,KpBqlGF,mBoBnlGE,mBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAEF,mBACE,MAAA,KACA,iBAAA,QACA,aAAA,QpBqlGJ,oBoBnlGE,oBpBolGF,mCoBjlGI,MAAA,KACA,iBAAA,QACA,iBAAA,KACA,aAAA,QpB2lGJ,0BAHA,0BAHA,0BAKA,0BAHA,0BoBrlGI,0BpB0lGJ,yCAHA,yCAHA,yCoBjlGM,MAAA,KACA,iBAAA,QACA,aAAA,QpBgmGN,4BAHA,4BoBvlGI,4BpB2lGJ,6BAHA,6BAHA,6BAOA,sCAHA,sCAHA,sCoBnlGM,iBAAA,KACA,aAAA,KDuBN,oBClBI,MAAA,KACA,iBAAA,KDoBJ,aChEE,MAAA,KACA,iBAAA,QACA,aAAA,QpB0oGF,mBoBxoGE,mBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAEF,mBACE,MAAA,KACA,iBAAA,QACA,aAAA,QpB0oGJ,oBoBxoGE,oBpByoGF,mCoBtoGI,MAAA,KACA,iBAAA,QACA,iBAAA,KACA,aAAA,QpBgpGJ,0BAHA,0BAHA,0BAKA,0BAHA,0BoB1oGI,0BpB+oGJ,yCAHA,yCAHA,yCoBtoGM,MAAA,KACA,iBAAA,QACA,aAAA,QpBqpGN,4BAHA,4BoB5oGI,4BpBgpGJ,6BAHA,6BAHA,6BAOA,sCAHA,sCAHA,sCoBxoGM,iBAAA,QACA,aAAA,QD0BN,oBCrBI,MAAA,QACA,iBAAA,KDwBJ,aCpEE,MAAA,KACA,iBAAA,QACA,aAAA,QpB+rGF,mBoB7rGE,mBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAEF,mBACE,MAAA,KACA,iBAAA,QACA,aAAA,QpB+rGJ,oBoB7rGE,oBpB8rGF,mCoB3rGI,MAAA,KACA,iBAAA,QACA,iBAAA,KACA,aAAA,QpBqsGJ,0BAHA,0BAHA,0BAKA,0BAHA,0BoB/rGI,0BpBosGJ,yCAHA,yCAHA,yCoB3rGM,MAAA,KACA,iBAAA,QACA,aAAA,QpB0sGN,4BAHA,4BoBjsGI,4BpBqsGJ,6BAHA,6BAHA,6BAOA,sCAHA,sCAHA,sCoB7rGM,iBAAA,QACA,aAAA,QD8BN,oBCzBI,MAAA,QACA,iBAAA,KD4BJ,UCxEE,MAAA,KACA,iBAAA,QACA,aAAA,QpBovGF,gBoBlvGE,gBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAEF,gBACE,MAAA,KACA,iBAAA,QACA,aAAA,QpBovGJ,iBoBlvGE,iBpBmvGF,gCoBhvGI,MAAA,KACA,iBAAA,QACA,iBAAA,KACA,aAAA,QpB0vGJ,uBAHA,uBAHA,uBAKA,uBAHA,uBoBpvGI,uBpByvGJ,sCAHA,sCAHA,sCoBhvGM,MAAA,KACA,iBAAA,QACA,aAAA,QpB+vGN,yBAHA,yBoBtvGI,yBpB0vGJ,0BAHA,0BAHA,0BAOA,mCAHA,mCAHA,mCoBlvGM,iBAAA,QACA,aAAA,QDkCN,iBC7BI,MAAA,QACA,iBAAA,KDgCJ,aC5EE,MAAA,KACA,iBAAA,QACA,aAAA,QpByyGF,mBoBvyGE,mBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAEF,mBACE,MAAA,KACA,iBAAA,QACA,aAAA,QpByyGJ,oBoBvyGE,oBpBwyGF,mCoBryGI,MAAA,KACA,iBAAA,QACA,iBAAA,KACA,aAAA,QpB+yGJ,0BAHA,0BAHA,0BAKA,0BAHA,0BoBzyGI,0BpB8yGJ,yCAHA,yCAHA,yCoBryGM,MAAA,KACA,iBAAA,QACA,aAAA,QpBozGN,4BAHA,4BoB3yGI,4BpB+yGJ,6BAHA,6BAHA,6BAOA,sCAHA,sCAHA,sCoBvyGM,iBAAA,QACA,aAAA,QDsCN,oBCjCI,MAAA,QACA,iBAAA,KDoCJ,YChFE,MAAA,KACA,iBAAA,QACA,aAAA,QpB81GF,kBoB51GE,kBAEE,MAAA,KACA,iBAAA,QACA,aAAA,QAEF,kBACE,MAAA,KACA,iBAAA,QACA,aAAA,QpB81GJ,mBoB51GE,mBpB61GF,kCoB11GI,MAAA,KACA,iBAAA,QACA,iBAAA,KACA,aAAA,QpBo2GJ,yBAHA,yBAHA,yBAKA,yBAHA,yBoB91GI,yBpBm2GJ,wCAHA,wCAHA,wCoB11GM,MAAA,KACA,iBAAA,QACA,aAAA,QpBy2GN,2BAHA,2BoBh2GI,2BpBo2GJ,4BAHA,4BAHA,4BAOA,qCAHA,qCAHA,qCoB51GM,iBAAA,QACA,aAAA,QD0CN,mBCrCI,MAAA,QACA,iBAAA,KD6CJ,UACE,YAAA,IACA,MAAA,QACA,cAAA,EAEA,UnBwzGF,iBADA,iBAEA,oBACA,6BmBrzGI,iBAAA,YfnCF,mBAAA,KACQ,WAAA,KeqCR,UnB0zGF,iBADA,gBADA,gBmBpzGI,aAAA,YnB0zGJ,gBmBxzGE,gBAEE,MAAA,QACA,gBAAA,UACA,iBAAA,YnB2zGJ,0BmBvzGI,0BnBwzGJ,mCAFA,mCmBpzGM,MAAA,KACA,gBAAA,KnB0zGN,mBmBjzGA,QC9EE,QAAA,KAAA,KACA,UAAA,KACA,YAAA,UACA,cAAA,IpBm4GF,mBmBpzGA,QClFE,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IACA,cAAA,IpB04GF,mBmBvzGA,QCtFE,QAAA,IAAA,IACA,UAAA,KACA,YAAA,IACA,cAAA,ID2FF,WACE,QAAA,MACA,MAAA,KAIF,sBACE,WAAA,InBuzGF,6BADA,4BmB/yGE,6BACE,MAAA,KG1JJ,MACE,QAAA,ElBoLA,mBAAA,QAAA,KAAA,OACK,cAAA,QAAA,KAAA,OACG,WAAA,QAAA,KAAA,OkBnLR,SACE,QAAA,EAIJ,UACE,QAAA,KAEA,aAAY,QAAA,MACZ,eAAY,QAAA,UACZ,kBAAY,QAAA,gBAGd,YACE,SAAA,SACA,OAAA,EACA,SAAA,OlBsKA,4BAAA,MAAA,CAAA,WACQ,uBAAA,MAAA,CAAA,WAAA,oBAAA,MAAA,CAAA,WAOR,4BAAA,KACQ,uBAAA,KAAA,oBAAA,KAGR,mCAAA,KACQ,8BAAA,KAAA,2BAAA,KmB5MV,OACE,QAAA,aACA,MAAA,EACA,OAAA,EACA,YAAA,IACA,eAAA,OACA,WAAA,IAAA,OACA,WAAA,IAAA,QACA,aAAA,IAAA,MAAA,YACA,YAAA,IAAA,MAAA,YvBu/GF,UuBn/GA,QAEE,SAAA,SAIF,uBACE,QAAA,EAIF,eACE,SAAA,SACA,IAAA,KACA,KAAA,EACA,QAAA,KACA,QAAA,KACA,MAAA,KACA,UAAA,MACA,QAAA,IAAA,EACA,OAAA,IAAA,EAAA,EACA,UAAA,KACA,WAAA,KACA,WAAA,KACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,KACA,OAAA,IAAA,MAAA,gBACA,cAAA,InBuBA,mBAAA,EAAA,IAAA,KAAA,iBACQ,WAAA,EAAA,IAAA,KAAA,iBmBlBR,0BACE,MAAA,EACA,KAAA,KAzBJ,wBCzBE,OAAA,IACA,OAAA,IAAA,EACA,SAAA,OACA,iBAAA,QDsBF,oBAmCI,QAAA,MACA,QAAA,IAAA,KACA,MAAA,KACA,YAAA,IACA,YAAA,WACA,MAAA,KACA,YAAA,OvB8+GJ,0BuB5+GI,0BAEE,MAAA,QACA,gBAAA,KACA,iBAAA,QAOJ,yBvBw+GF,+BADA,+BuBp+GI,MAAA,KACA,gBAAA,KACA,iBAAA,QACA,QAAA,EASF,2BvBi+GF,iCADA,iCuB79GI,MAAA,KvBk+GJ,iCuB99GE,iCAEE,gBAAA,KACA,OAAA,YACA,iBAAA,YACA,iBAAA,KEzGF,OAAA,0DF+GF,qBAGI,QAAA,MAHJ,QAQI,QAAA,EAQJ,qBACE,MAAA,EACA,KAAA,KAQF,oBACE,MAAA,KACA,KAAA,EAIF,iBACE,QAAA,MACA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,WACA,MAAA,KACA,YAAA,OAIF,mBACE,SAAA,MACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,IAIF,2BACE,MAAA,EACA,KAAA,KAQF,evB+7GA,sCuB37GI,QAAA,GACA,WAAA,EACA,cAAA,IAAA,OACA,cAAA,IAAA,QAPJ,uBvBs8GA,8CuB37GI,IAAA,KACA,OAAA,KACA,cAAA,IASJ,yBACE,6BApEA,MAAA,EACA,KAAA,KAmEA,kCA1DA,MAAA,KACA,KAAA,GG1IF,W1BkoHA,oB0BhoHE,SAAA,SACA,QAAA,aACA,eAAA,O1BooHF,yB0BxoHA,gBAMI,SAAA,SACA,MAAA,K1B4oHJ,gCAFA,gCAFA,+BAFA,+BAKA,uBAFA,uBAFA,sB0BroHI,sBAIE,QAAA,EAMN,qB1BooHA,2BACA,2BACA,iC0BjoHI,YAAA,KAKJ,aACE,YAAA,KADF,kB1BmoHA,wBACA,0B0B7nHI,MAAA,KAPJ,kB1BwoHA,wBACA,0B0B7nHI,YAAA,IAIJ,yEACE,cAAA,EAIF,4BACE,YAAA,EACA,mECpDA,wBAAA,EACA,2BAAA,EDwDF,6C1B2nHA,8C2B5qHE,uBAAA,EACA,0BAAA,EDsDF,sBACE,MAAA,KAEF,8DACE,cAAA,EAEF,mE1B0nHA,oE2B/rHE,wBAAA,EACA,2BAAA,ED0EF,oECnEE,uBAAA,EACA,0BAAA,EDuEF,mC1BwnHA,iC0BtnHE,QAAA,EAiBF,iCACE,cAAA,IACA,aAAA,IAEF,oCACE,cAAA,KACA,aAAA,KAKF,iCtB/CE,mBAAA,MAAA,EAAA,IAAA,IAAA,iBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,iBsBkDR,0CtBnDA,mBAAA,KACQ,WAAA,KsByDV,YACE,YAAA,EAGF,eACE,aAAA,IAAA,IAAA,EACA,oBAAA,EAGF,uBACE,aAAA,EAAA,IAAA,IAOF,yB1B4lHA,+BACA,oC0BzlHI,QAAA,MACA,MAAA,KACA,MAAA,KACA,UAAA,KAPJ,oCAcM,MAAA,KAdN,8B1BumHA,oCACA,oCACA,0C0BnlHI,WAAA,KACA,YAAA,EAKF,4DACE,cAAA,EAEF,sDC7KA,uBAAA,IACA,wBAAA,IAOA,2BAAA,EACA,0BAAA,EDwKA,sDCjLA,uBAAA,EACA,wBAAA,EAOA,2BAAA,IACA,0BAAA,ID6KF,uEACE,cAAA,EAEF,4E1BqlHA,6E2BtwHE,2BAAA,EACA,0BAAA,EDsLF,6EC/LE,uBAAA,EACA,wBAAA,EDsMF,qBACE,QAAA,MACA,MAAA,KACA,aAAA,MACA,gBAAA,SAJF,0B1BslHA,gC0B/kHI,QAAA,WACA,MAAA,KACA,MAAA,GATJ,qCAYI,MAAA,KAZJ,+CAgBI,KAAA,K1BmlHJ,gD0BlkHA,6C1BmkHA,2DAFA,wD0B5jHM,SAAA,SACA,KAAA,cACA,eAAA,KE1ON,aACE,SAAA,SACA,QAAA,MACA,gBAAA,SAGA,0BACE,MAAA,KACA,cAAA,EACA,aAAA,EATJ,2BAeI,SAAA,SACA,QAAA,EAKA,MAAA,KAEA,MAAA,KACA,cAAA,EAEA,iCACE,QAAA,EAUN,8B5B2xHA,mCACA,sCkBpwHE,OAAA,KACA,QAAA,KAAA,KACA,UAAA,KACA,YAAA,UACA,cAAA,IAEA,oClBswHF,yCACA,4CkBtwHI,OAAA,KACA,YAAA,KlB4wHJ,8CACA,mDACA,sDkB3wHE,sClBuwHF,2CACA,8CkBtwHI,OAAA,KUhCJ,8B5B6yHA,mCACA,sCkB3xHE,OAAA,KACA,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IACA,cAAA,IAEA,oClB6xHF,yCACA,4CkB7xHI,OAAA,KACA,YAAA,KlBmyHJ,8CACA,mDACA,sDkBlyHE,sClB8xHF,2CACA,8CkB7xHI,OAAA,KlBqyHJ,2B4B5zHA,mB5B2zHA,iB4BxzHE,QAAA,W5B8zHF,8D4B5zHE,sD5B2zHF,oD4B1zHI,cAAA,EAIJ,mB5B2zHA,iB4BzzHE,MAAA,GACA,YAAA,OACA,eAAA,OAKF,mBACE,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IACA,YAAA,EACA,MAAA,KACA,WAAA,OACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,cAAA,IAGA,4BACE,QAAA,IAAA,KACA,UAAA,KACA,cAAA,IAEF,4BACE,QAAA,KAAA,KACA,UAAA,KACA,cAAA,I5ByzHJ,wC4B70HA,qCA0BI,WAAA,EAKJ,uC5BkzHA,+BACA,kCACA,6CACA,8CAEA,6DADA,wE2B55HE,wBAAA,EACA,2BAAA,EC8GF,+BACE,aAAA,EAEF,sC5BmzHA,8BAKA,+DADA,oDAHA,iCACA,4CACA,6C2Bh6HE,uBAAA,EACA,0BAAA,ECkHF,8BACE,YAAA,EAKF,iBACE,SAAA,SAGA,UAAA,EACA,YAAA,OALF,sBAUI,SAAA,SAVJ,2BAYM,YAAA,K5BizHN,6BADA,4B4B7yHI,4BAGE,QAAA,EAKJ,kC5B0yHF,wC4BvyHM,aAAA,KAGJ,iC5BwyHF,uC4BryHM,QAAA,EACA,YAAA,KC/JN,KACE,aAAA,EACA,cAAA,EACA,WAAA,KAHF,QAOI,SAAA,SACA,QAAA,MARJ,UAWM,SAAA,SACA,QAAA,MACA,QAAA,KAAA,K7By8HN,gB6Bx8HM,gBAEE,gBAAA,KACA,iBAAA,KAKJ,mBACE,MAAA,K7Bu8HN,yB6Br8HM,yBAEE,MAAA,KACA,gBAAA,KACA,OAAA,YACA,iBAAA,YAOJ,a7Bi8HJ,mBADA,mB6B77HM,iBAAA,KACA,aAAA,QAzCN,kBLLE,OAAA,IACA,OAAA,IAAA,EACA,SAAA,OACA,iBAAA,QKEF,cA0DI,UAAA,KASJ,UACE,cAAA,IAAA,MAAA,KADF,aAGI,MAAA,KAEA,cAAA,KALJ,eASM,aAAA,IACA,YAAA,WACA,OAAA,IAAA,MAAA,YACA,cAAA,IAAA,IAAA,EAAA,EACA,qBACE,aAAA,KAAA,KAAA,KAMF,sB7B86HN,4BADA,4B6B16HQ,MAAA,KACA,OAAA,QACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,oBAAA,YAKN,wBAqDA,MAAA,KA8BA,cAAA,EAnFA,2BAwDE,MAAA,KAxDF,6BA0DI,cAAA,IACA,WAAA,OA3DJ,iDAgEE,IAAA,KACA,KAAA,KAGF,yBAAA,2BAEI,QAAA,WACA,MAAA,GAHJ,6BAKM,cAAA,GAzEN,6BAuFE,aAAA,EACA,cAAA,IAxFF,kC7Bu8HF,wCADA,wC6Bx2HI,OAAA,IAAA,MAAA,KAGF,yBAAA,6BAEI,cAAA,IAAA,MAAA,KACA,cAAA,IAAA,IAAA,EAAA,EAHJ,kC7Bg3HA,wCADA,wC6Bv2HI,oBAAA,MAhGN,cAEI,MAAA,KAFJ,gBAMM,cAAA,IANN,iBASM,YAAA,IAKA,uB7By8HN,6BADA,6B6Br8HQ,MAAA,KACA,iBAAA,QAQR,gBAEI,MAAA,KAFJ,mBAIM,WAAA,IACA,YAAA,EAYN,eACE,MAAA,KADF,kBAII,MAAA,KAJJ,oBAMM,cAAA,IACA,WAAA,OAPN,wCAYI,IAAA,KACA,KAAA,KAGF,yBAAA,kBAEI,QAAA,WACA,MAAA,GAHJ,oBAKM,cAAA,GASR,oBACE,cAAA,EADF,yBAKI,aAAA,EACA,cAAA,IANJ,8B7By7HA,oCADA,oC6B56HI,OAAA,IAAA,MAAA,KAGF,yBAAA,yBAEI,cAAA,IAAA,MAAA,KACA,cAAA,IAAA,IAAA,EAAA,EAHJ,8B7Bo7HA,oCADA,oC6B36HI,oBAAA,MAUN,uBAEI,QAAA,KAFJ,qBAKI,QAAA,MASJ,yBAEE,WAAA,KF7OA,uBAAA,EACA,wBAAA,EGQF,QACE,SAAA,SACA,WAAA,KACA,cAAA,KACA,OAAA,IAAA,MAAA,YAKA,yBAAA,QACE,cAAA,KAaF,yBAAA,eACE,MAAA,MAeJ,iBACE,cAAA,KACA,aAAA,KACA,WAAA,QACA,WAAA,IAAA,MAAA,YACA,mBAAA,MAAA,EAAA,IAAA,EAAA,qBAAA,WAAA,MAAA,EAAA,IAAA,EAAA,qBAEA,2BAAA,MAEA,oBACE,WAAA,KAGF,yBAAA,iBACE,MAAA,KACA,WAAA,EACA,mBAAA,KAAA,WAAA,KAEA,0BACE,QAAA,gBACA,OAAA,eACA,eAAA,EACA,SAAA,kBAGF,oBACE,WAAA,Q9BknIJ,sC8B7mIE,mC9B4mIF,oC8BzmII,cAAA,EACA,aAAA,G9B+mIN,qB8B1mIA,kBAWE,SAAA,MACA,MAAA,EACA,KAAA,EACA,QAAA,K9BmmIF,sC8BjnIA,mCAGI,WAAA,MAEA,4D9BinIF,sC8BjnIE,mCACE,WAAA,OAWJ,yB9B2mIA,qB8B3mIA,kBACE,cAAA,GAIJ,kBACE,IAAA,EACA,aAAA,EAAA,EAAA,IAEF,qBACE,OAAA,EACA,cAAA,EACA,aAAA,IAAA,EAAA,E9B+mIF,kCAFA,gCACA,4B8BtmIA,0BAII,aAAA,MACA,YAAA,MAEA,yB9BwmIF,kCAFA,gCACA,4B8BvmIE,0BACE,aAAA,EACA,YAAA,GAaN,mBACE,QAAA,KACA,aAAA,EAAA,EAAA,IAEA,yBAAA,mBACE,cAAA,GAOJ,cACE,MAAA,KACA,OAAA,KACA,QAAA,KAAA,KACA,UAAA,KACA,YAAA,K9B8lIF,oB8B5lIE,oBAEE,gBAAA,KATJ,kBAaI,QAAA,MAGF,yBACE,iC9B0lIF,uC8BxlII,YAAA,OAWN,eACE,SAAA,SACA,MAAA,MACA,QAAA,IAAA,KACA,aAAA,KC9LA,WAAA,IACA,cAAA,ID+LA,iBAAA,YACA,iBAAA,KACA,OAAA,IAAA,MAAA,YACA,cAAA,IAIA,qBACE,QAAA,EAdJ,yBAmBI,QAAA,MACA,MAAA,KACA,OAAA,IACA,cAAA,IAtBJ,mCAyBI,WAAA,IAGF,yBAAA,eACE,QAAA,MAUJ,YACE,OAAA,MAAA,MADF,iBAII,YAAA,KACA,eAAA,KACA,YAAA,KAGF,yBAAA,iCAGI,SAAA,OACA,MAAA,KACA,MAAA,KACA,WAAA,EACA,iBAAA,YACA,OAAA,EACA,mBAAA,KAAA,WAAA,K9BykIJ,kD8BllIA,sCAYM,QAAA,IAAA,KAAA,IAAA,KAZN,sCAeM,YAAA,K9B0kIN,4C8BzkIM,4CAEE,iBAAA,MAOR,yBAAA,YACE,MAAA,KACA,OAAA,EAFF,eAKI,MAAA,KALJ,iBAOM,YAAA,KACA,eAAA,MAYR,aACE,QAAA,KAAA,KACA,aAAA,MACA,YAAA,MACA,WAAA,IAAA,MAAA,YACA,cAAA,IAAA,MAAA,Y1B5NA,mBAAA,MAAA,EAAA,IAAA,EAAA,oBAAA,CAAA,EAAA,IAAA,EAAA,qBACQ,WAAA,MAAA,EAAA,IAAA,EAAA,oBAAA,CAAA,EAAA,IAAA,EAAA,qB2BjER,WAAA,IACA,cAAA,Id6cA,yBAAA,yBAGI,QAAA,aACA,cAAA,EACA,eAAA,OALJ,2BAUI,QAAA,aACA,MAAA,KACA,eAAA,OAZJ,kCAiBI,QAAA,aAjBJ,0BAqBI,QAAA,aACA,eAAA,OjB+4HJ,wCiBr6HA,6CjBo6HA,2CiBz4HM,MAAA,KA3BN,wCAiCI,MAAA,KAjCJ,4BAqCI,cAAA,EACA,eAAA,OjB04HJ,uBiBh7HA,oBA6CI,QAAA,aACA,WAAA,EACA,cAAA,EACA,eAAA,OjBu4HJ,6BiBv7HA,0BAmDM,aAAA,EjBw4HN,4CiB37HA,sCAwDI,SAAA,SACA,YAAA,EAzDJ,kDA8DI,IAAA,GaxOF,yBAAA,yBACE,cAAA,IAEA,oCACE,cAAA,GASN,yBAAA,aACE,MAAA,KACA,YAAA,EACA,eAAA,EACA,aAAA,EACA,YAAA,EACA,OAAA,E1BvPF,mBAAA,KACQ,WAAA,M0B+PV,8BACE,WAAA,EHpUA,uBAAA,EACA,wBAAA,EGuUF,mDACE,cAAA,EHzUA,uBAAA,IACA,wBAAA,IAOA,2BAAA,EACA,0BAAA,EG0UF,YChVE,WAAA,IACA,cAAA,IDkVA,mBCnVA,WAAA,KACA,cAAA,KDqVA,mBCtVA,WAAA,KACA,cAAA,KD+VF,aChWE,WAAA,KACA,cAAA,KDkWA,yBAAA,aACE,MAAA,KACA,aAAA,KACA,YAAA,MAaJ,yBACE,aEtWA,MAAA,eFuWA,cE1WA,MAAA,gBF4WE,aAAA,MAFF,4BAKI,aAAA,GAUN,gBACE,iBAAA,QACA,aAAA,QAFF,8BAKI,MAAA,K9BmlIJ,oC8BllII,oCAEE,MAAA,QACA,iBAAA,YATN,6BAcI,MAAA,KAdJ,iCAmBM,MAAA,K9BglIN,uC8B9kIM,uCAEE,MAAA,KACA,iBAAA,YAIF,sC9B6kIN,4CADA,4C8BzkIQ,MAAA,KACA,iBAAA,QAIF,wC9B2kIN,8CADA,8C8BvkIQ,MAAA,KACA,iBAAA,YAOF,oC9BskIN,0CADA,0C8BlkIQ,MAAA,KACA,iBAAA,QAIJ,yBAAA,sDAIM,MAAA,K9BmkIR,4D8BlkIQ,4DAEE,MAAA,KACA,iBAAA,YAIF,2D9BikIR,iEADA,iE8B7jIU,MAAA,KACA,iBAAA,QAIF,6D9B+jIR,mEADA,mE8B3jIU,MAAA,KACA,iBAAA,aA/EZ,+BAuFI,aAAA,K9B4jIJ,qC8B3jII,qCAEE,iBAAA,KA1FN,yCA6FM,iBAAA,KA7FN,iC9B0pIA,6B8BvjII,aAAA,QAnGJ,6BA4GI,MAAA,KACA,mCACE,MAAA,KA9GN,0BAmHI,MAAA,K9BojIJ,gC8BnjII,gCAEE,MAAA,K9BsjIN,0C8BljIM,0C9BmjIN,mDAFA,mD8B/iIQ,MAAA,KAQR,gBACE,iBAAA,KACA,aAAA,QAFF,8BAKI,MAAA,Q9B+iIJ,oC8B9iII,oCAEE,MAAA,KACA,iBAAA,YATN,6BAcI,MAAA,QAdJ,iCAmBM,MAAA,Q9B4iIN,uC8B1iIM,uCAEE,MAAA,KACA,iBAAA,YAIF,sC9ByiIN,4CADA,4C8BriIQ,MAAA,KACA,iBAAA,QAIF,wC9BuiIN,8CADA,8C8BniIQ,MAAA,KACA,iBAAA,YAMF,oC9BmiIN,0CADA,0C8B/hIQ,MAAA,KACA,iBAAA,QAIJ,yBAAA,kEAIM,aAAA,QAJN,0DAOM,iBAAA,QAPN,sDAUM,MAAA,Q9BgiIR,4D8B/hIQ,4DAEE,MAAA,KACA,iBAAA,YAIF,2D9B8hIR,iEADA,iE8B1hIU,MAAA,KACA,iBAAA,QAIF,6D9B4hIR,mEADA,mE8BxhIU,MAAA,KACA,iBAAA,aApFZ,+BA6FI,aAAA,K9BwhIJ,qC8BvhII,qCAEE,iBAAA,KAhGN,yCAmGM,iBAAA,KAnGN,iC9B4nIA,6B8BnhII,aAAA,QAzGJ,6BA6GI,MAAA,QACA,mCACE,MAAA,KA/GN,0BAoHI,MAAA,Q9BqhIJ,gC8BphII,gCAEE,MAAA,K9BuhIN,0C8BnhIM,0C9BohIN,mDAFA,mD8BhhIQ,MAAA,KGtoBR,YACE,QAAA,IAAA,KACA,cAAA,KACA,WAAA,KACA,iBAAA,QACA,cAAA,IALF,eAQI,QAAA,aARJ,yBAWM,QAAA,EAAA,IACA,MAAA,KACA,QAAA,SAbN,oBAkBI,MAAA,KCpBJ,YACE,QAAA,aACA,aAAA,EACA,OAAA,KAAA,EACA,cAAA,IAJF,eAOI,QAAA,OAPJ,iBlCyrJA,oBkC/qJM,SAAA,SACA,MAAA,KACA,QAAA,IAAA,KACA,YAAA,KACA,YAAA,WACA,MAAA,QACA,gBAAA,KACA,iBAAA,KACA,OAAA,IAAA,MAAA,KlCorJN,uBkClrJM,uBlCmrJN,0BAFA,0BkC/qJQ,QAAA,EACA,MAAA,QACA,iBAAA,KACA,aAAA,KAGJ,6BlCkrJJ,gCkC/qJQ,YAAA,EPnBN,uBAAA,IACA,0BAAA,IOsBE,4BlCirJJ,+B2BhtJE,wBAAA,IACA,2BAAA,IOwCE,sBlC+qJJ,4BAFA,4BADA,yBAIA,+BAFA,+BkC3qJM,QAAA,EACA,MAAA,KACA,OAAA,QACA,iBAAA,QACA,aAAA,QlCmrJN,wBAEA,8BADA,8BkCxuJA,2BlCsuJA,iCADA,iCkCtqJM,MAAA,KACA,OAAA,YACA,iBAAA,KACA,aAAA,KASN,oBlCqqJA,uBmC7uJM,QAAA,KAAA,KACA,UAAA,KACA,YAAA,UAEF,gCnC+uJJ,mC2B1uJE,uBAAA,IACA,0BAAA,IQAE,+BnC8uJJ,kC2BvvJE,wBAAA,IACA,2BAAA,IO2EF,oBlCgrJA,uBmC7vJM,QAAA,IAAA,KACA,UAAA,KACA,YAAA,IAEF,gCnC+vJJ,mC2B1vJE,uBAAA,IACA,0BAAA,IQAE,+BnC8vJJ,kC2BvwJE,wBAAA,IACA,2BAAA,ISHF,OACE,aAAA,EACA,OAAA,KAAA,EACA,WAAA,OACA,WAAA,KAJF,UAOI,QAAA,OAPJ,YpCuxJA,eoC7wJM,QAAA,aACA,QAAA,IAAA,KACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,cAAA,KpCixJN,kBoC/xJA,kBAmBM,gBAAA,KACA,iBAAA,KApBN,epCoyJA,kBoCzwJM,MAAA,MA3BN,mBpCwyJA,sBoCtwJM,MAAA,KAlCN,mBpC6yJA,yBADA,yBAEA,sBoCnwJM,MAAA,KACA,OAAA,YACA,iBAAA,KC9CN,OACE,QAAA,OACA,QAAA,KAAA,KAAA,KACA,UAAA,IACA,YAAA,IACA,YAAA,EACA,MAAA,KACA,WAAA,OACA,YAAA,OACA,eAAA,SACA,cAAA,MrCuzJF,cqCnzJI,cAEE,MAAA,KACA,gBAAA,KACA,OAAA,QAKJ,aACE,QAAA,KAIF,YACE,SAAA,SACA,IAAA,KAOJ,eCtCE,iBAAA,KtCk1JF,2BsC/0JI,2BAEE,iBAAA,QDqCN,eC1CE,iBAAA,QtCy1JF,2BsCt1JI,2BAEE,iBAAA,QDyCN,eC9CE,iBAAA,QtCg2JF,2BsC71JI,2BAEE,iBAAA,QD6CN,YClDE,iBAAA,QtCu2JF,wBsCp2JI,wBAEE,iBAAA,QDiDN,eCtDE,iBAAA,QtC82JF,2BsC32JI,2BAEE,iBAAA,QDqDN,cC1DE,iBAAA,QtCq3JF,0BsCl3JI,0BAEE,iBAAA,QCFN,OACE,QAAA,aACA,UAAA,KACA,QAAA,IAAA,IACA,UAAA,KACA,YAAA,IACA,YAAA,EACA,MAAA,KACA,WAAA,OACA,YAAA,OACA,eAAA,OACA,iBAAA,KACA,cAAA,KAGA,aACE,QAAA,KAIF,YACE,SAAA,SACA,IAAA,KvCq3JJ,0BuCl3JE,eAEE,IAAA,EACA,QAAA,IAAA,IvCo3JJ,cuC/2JI,cAEE,MAAA,KACA,gBAAA,KACA,OAAA,QAKJ,+BvC42JF,4BuC12JI,MAAA,QACA,iBAAA,KAGF,wBACE,MAAA,MAGF,+BACE,aAAA,IAGF,uBACE,YAAA,IC1DJ,WACE,YAAA,KACA,eAAA,KACA,cAAA,KACA,MAAA,QACA,iBAAA,KxCu6JF,ewC56JA,cASI,MAAA,QATJ,aAaI,cAAA,KACA,UAAA,KACA,YAAA,IAfJ,cAmBI,iBAAA,QAGF,sBxCk6JF,4BwCh6JI,cAAA,KACA,aAAA,KACA,cAAA,IA1BJ,sBA8BI,UAAA,KAGF,oCAAA,WACE,YAAA,KACA,eAAA,KAEA,sBxCi6JF,4BwC/5JI,cAAA,KACA,aAAA,KxCm6JJ,ewC16JA,cAYI,UAAA,MC1CN,WACE,QAAA,MACA,QAAA,IACA,cAAA,KACA,YAAA,WACA,iBAAA,KACA,OAAA,IAAA,MAAA,KACA,cAAA,IrCiLA,mBAAA,OAAA,IAAA,YACK,cAAA,OAAA,IAAA,YACG,WAAA,OAAA,IAAA,YJ+xJV,iByCz9JA,eAaI,aAAA,KACA,YAAA,KzCi9JJ,mBADA,kByC58JE,kBAGE,aAAA,QArBJ,oBA0BI,QAAA,IACA,MAAA,KC3BJ,OACE,QAAA,KACA,cAAA,KACA,OAAA,IAAA,MAAA,YACA,cAAA,IAJF,UAQI,WAAA,EACA,MAAA,QATJ,mBAcI,YAAA,IAdJ,S1Co/JA,U0Ch+JI,cAAA,EApBJ,WAwBI,WAAA,IASJ,mB1C09JA,mB0Cx9JE,cAAA,KAFF,0B1C89JA,0B0Cx9JI,SAAA,SACA,IAAA,KACA,MAAA,MACA,MAAA,QAQJ,eCvDE,MAAA,QACA,iBAAA,QACA,aAAA,QDqDF,kBClDI,iBAAA,QDkDJ,2BC9CI,MAAA,QDkDJ,YC3DE,MAAA,QACA,iBAAA,QACA,aAAA,QDyDF,eCtDI,iBAAA,QDsDJ,wBClDI,MAAA,QDsDJ,eC/DE,MAAA,QACA,iBAAA,QACA,aAAA,QD6DF,kBC1DI,iBAAA,QD0DJ,2BCtDI,MAAA,QD0DJ,cCnEE,MAAA,QACA,iBAAA,QACA,aAAA,QDiEF,iBC9DI,iBAAA,QD8DJ,0BC1DI,MAAA,QCDJ,wCACE,KAAQ,oBAAA,KAAA,EACR,GAAQ,oBAAA,EAAA,GAIV,mCACE,KAAQ,oBAAA,KAAA,EACR,GAAQ,oBAAA,EAAA,GAFV,gCACE,KAAQ,oBAAA,KAAA,EACR,GAAQ,oBAAA,EAAA,GAQV,UACE,OAAA,KACA,cAAA,KACA,SAAA,OACA,iBAAA,QACA,cAAA,IxCsCA,mBAAA,MAAA,EAAA,IAAA,IAAA,eACQ,WAAA,MAAA,EAAA,IAAA,IAAA,ewClCV,cACE,MAAA,KACA,MAAA,GACA,OAAA,KACA,UAAA,KACA,YAAA,KACA,MAAA,KACA,WAAA,OACA,iBAAA,QxCyBA,mBAAA,MAAA,EAAA,KAAA,EAAA,gBACQ,WAAA,MAAA,EAAA,KAAA,EAAA,gBAyHR,mBAAA,MAAA,IAAA,KACK,cAAA,MAAA,IAAA,KACG,WAAA,MAAA,IAAA,KJw6JV,sB4CnjKA,gCCDI,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKDEF,wBAAA,KAAA,KAAA,gBAAA,KAAA,K5CwjKF,qB4CjjKA,+BxC5CE,kBAAA,qBAAA,GAAA,OAAA,SACK,aAAA,qBAAA,GAAA,OAAA,SACG,UAAA,qBAAA,GAAA,OAAA,SwCmDV,sBEvEE,iBAAA,QAGA,wCDgDE,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKDsBJ,mBE3EE,iBAAA,QAGA,qCDgDE,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKD0BJ,sBE/EE,iBAAA,QAGA,wCDgDE,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKD8BJ,qBEnFE,iBAAA,QAGA,uCDgDE,iBAAA,yKACA,iBAAA,oKACA,iBAAA,iKExDJ,OAEE,WAAA,KAEA,mBACE,WAAA,EAIJ,O/CqpKA,Y+CnpKE,SAAA,OACA,KAAA,EAGF,YACE,MAAA,QAGF,cACE,QAAA,MAGA,4BACE,UAAA,KAIJ,a/CgpKA,mB+C9oKE,aAAA,KAGF,Y/C+oKA,kB+C7oKE,cAAA,K/CkpKF,Y+C/oKA,Y/C8oKA,a+C3oKE,QAAA,WACA,eAAA,IAGF,cACE,eAAA,OAGF,cACE,eAAA,OAIF,eACE,WAAA,EACA,cAAA,IAMF,YACE,aAAA,EACA,WAAA,KCrDF,YAEE,aAAA,EACA,cAAA,KAQF,iBACE,SAAA,SACA,QAAA,MACA,QAAA,KAAA,KAEA,cAAA,KACA,iBAAA,KACA,OAAA,IAAA,MAAA,KAGA,6BrB7BA,uBAAA,IACA,wBAAA,IqB+BA,4BACE,cAAA,ErBzBF,2BAAA,IACA,0BAAA,IqB6BA,0BhDqrKF,gCADA,gCgDjrKI,MAAA,KACA,OAAA,YACA,iBAAA,KALF,mDhD4rKF,yDADA,yDgDlrKM,MAAA,QATJ,gDhDisKF,sDADA,sDgDprKM,MAAA,KAKJ,wBhDqrKF,8BADA,8BgDjrKI,QAAA,EACA,MAAA,KACA,iBAAA,QACA,aAAA,QANF,iDhDisKF,wDAHA,uDADA,uDAMA,8DAHA,6DAJA,uDAMA,8DAHA,6DgDnrKM,MAAA,QAZJ,8ChDwsKF,oDADA,oDgDxrKM,MAAA,QAWN,kBhDkrKA,uBgDhrKE,MAAA,KAFF,2ChDsrKA,gDgDjrKI,MAAA,KhDsrKJ,wBgDlrKE,wBhDmrKF,6BAFA,6BgD/qKI,MAAA,KACA,gBAAA,KACA,iBAAA,QAIJ,uBACE,MAAA,KACA,WAAA,KnCvGD,yBoCIG,MAAA,QACA,iBAAA,QAEA,0BjDuxKJ,+BiDrxKM,MAAA,QAFF,mDjD2xKJ,wDiDtxKQ,MAAA,QjD2xKR,gCiDxxKM,gCjDyxKN,qCAFA,qCiDrxKQ,MAAA,QACA,iBAAA,QAEF,iCjD4xKN,uCAFA,uCADA,sCAIA,4CAFA,4CiDxxKQ,MAAA,KACA,iBAAA,QACA,aAAA,QpCzBP,sBoCIG,MAAA,QACA,iBAAA,QAEA,uBjDozKJ,4BiDlzKM,MAAA,QAFF,gDjDwzKJ,qDiDnzKQ,MAAA,QjDwzKR,6BiDrzKM,6BjDszKN,kCAFA,kCiDlzKQ,MAAA,QACA,iBAAA,QAEF,8BjDyzKN,oCAFA,oCADA,mCAIA,yCAFA,yCiDrzKQ,MAAA,KACA,iBAAA,QACA,aAAA,QpCzBP,yBoCIG,MAAA,QACA,iBAAA,QAEA,0BjDi1KJ,+BiD/0KM,MAAA,QAFF,mDjDq1KJ,wDiDh1KQ,MAAA,QjDq1KR,gCiDl1KM,gCjDm1KN,qCAFA,qCiD/0KQ,MAAA,QACA,iBAAA,QAEF,iCjDs1KN,uCAFA,uCADA,sCAIA,4CAFA,4CiDl1KQ,MAAA,KACA,iBAAA,QACA,aAAA,QpCzBP,wBoCIG,MAAA,QACA,iBAAA,QAEA,yBjD82KJ,8BiD52KM,MAAA,QAFF,kDjDk3KJ,uDiD72KQ,MAAA,QjDk3KR,+BiD/2KM,+BjDg3KN,oCAFA,oCiD52KQ,MAAA,QACA,iBAAA,QAEF,gCjDm3KN,sCAFA,sCADA,qCAIA,2CAFA,2CiD/2KQ,MAAA,KACA,iBAAA,QACA,aAAA,QDiGR,yBACE,WAAA,EACA,cAAA,IAEF,sBACE,cAAA,EACA,YAAA,IExHF,OACE,cAAA,KACA,iBAAA,KACA,OAAA,IAAA,MAAA,YACA,cAAA,I9C0DA,mBAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,EAAA,IAAA,IAAA,gB8CtDV,YACE,QAAA,KAKF,eACE,QAAA,KAAA,KACA,cAAA,IAAA,MAAA,YvBtBA,uBAAA,IACA,wBAAA,IuBmBF,0CAMI,MAAA,QAKJ,aACE,WAAA,EACA,cAAA,EACA,UAAA,KACA,MAAA,QlD24KF,oBAEA,sBkDj5KA,elD84KA,mBAEA,qBkDr4KI,MAAA,QAKJ,cACE,QAAA,KAAA,KACA,iBAAA,QACA,WAAA,IAAA,MAAA,KvB1CA,2BAAA,IACA,0BAAA,IuBmDF,mBlD+3KA,mCkD53KI,cAAA,EAHJ,oClDm4KA,oDkD73KM,aAAA,IAAA,EACA,cAAA,EAIF,4DlD63KJ,4EkD33KQ,WAAA,EvBzEN,uBAAA,IACA,wBAAA,IuB8EE,0DlD23KJ,0EkDz3KQ,cAAA,EvBzEN,2BAAA,IACA,0BAAA,IuBmDF,+EvB5DE,uBAAA,EACA,wBAAA,EuB4FF,wDAEI,iBAAA,EAGJ,0BACE,iBAAA,ElDw3KF,8BkDh3KA,clD+2KA,gCkD32KI,cAAA,ElDi3KJ,sCkDr3KA,sBlDo3KA,wCkD72KM,cAAA,KACA,aAAA,KlDk3KN,wDkD13KA,0BvB3GE,uBAAA,IACA,wBAAA,I3B2+KF,yFAFA,yFACA,2DkDh4KA,2DAmBQ,uBAAA,IACA,wBAAA,IlDo3KR,wGAIA,wGANA,wGAIA,wGAHA,0EAIA,0EkD34KA,0ElDy4KA,0EkDj3KU,uBAAA,IlD03KV,uGAIA,uGANA,uGAIA,uGAHA,yEAIA,yEkDr5KA,yElDm5KA,yEkDv3KU,wBAAA,IlD83KV,sDkD15KA,yBvBnGE,2BAAA,IACA,0BAAA,I3BigLF,qFAEA,qFkDj6KA,wDlDg6KA,wDkDv3KQ,2BAAA,IACA,0BAAA,IlD43KR,oGAIA,oGAFA,oGAIA,oGkD56KA,uElDy6KA,uEAFA,uEAIA,uEkD73KU,0BAAA,IlDk4KV,mGAIA,mGAFA,mGAIA,mGkDt7KA,sElDm7KA,sEAFA,sEAIA,sEkDn4KU,2BAAA,IAlDV,0BlD07KA,qCACA,0BACA,qCkDj4KI,WAAA,IAAA,MAAA,KlDq4KJ,kDkDh8KA,kDA+DI,WAAA,EA/DJ,uBlDo8KA,yCkDj4KI,OAAA,ElD44KJ,+CANA,+CAQA,+CANA,+CAEA,+CkD78KA,+ClDg9KA,iEANA,iEAQA,iEANA,iEAEA,iEANA,iEkD93KU,YAAA,ElDm5KV,8CANA,8CAQA,8CANA,8CAEA,8CkD39KA,8ClD89KA,gEANA,gEAQA,gEANA,gEAEA,gEANA,gEkDx4KU,aAAA,ElDu5KV,+CAIA,+CkDz+KA,+ClDu+KA,+CADA,iEAIA,iEANA,iEAIA,iEkDj5KU,cAAA,EAvFV,8ClDi/KA,8CAFA,8CAIA,8CALA,gEAIA,gEAFA,gEAIA,gEkDp5KU,cAAA,EAhGV,yBAsGI,cAAA,EACA,OAAA,EAUJ,aACE,cAAA,KADF,oBAKI,cAAA,EACA,cAAA,IANJ,2BASM,WAAA,IATN,4BAcI,cAAA,ElD04KJ,wDkDx5KA,wDAkBM,WAAA,IAAA,MAAA,KAlBN,2BAuBI,WAAA,EAvBJ,uDAyBM,cAAA,IAAA,MAAA,KAON,eC5PE,aAAA,KAEA,8BACE,MAAA,KACA,iBAAA,QACA,aAAA,KAHF,0DAMI,iBAAA,KANJ,qCASI,MAAA,QACA,iBAAA,KAGJ,yDAEI,oBAAA,KD8ON,eC/PE,aAAA,QAEA,8BACE,MAAA,KACA,iBAAA,QACA,aAAA,QAHF,0DAMI,iBAAA,QANJ,qCASI,MAAA,QACA,iBAAA,KAGJ,yDAEI,oBAAA,QDiPN,eClQE,aAAA,QAEA,8BACE,MAAA,QACA,iBAAA,QACA,aAAA,QAHF,0DAMI,iBAAA,QANJ,qCASI,MAAA,QACA,iBAAA,QAGJ,yDAEI,oBAAA,QDoPN,YCrQE,aAAA,QAEA,2BACE,MAAA,QACA,iBAAA,QACA,aAAA,QAHF,uDAMI,iBAAA,QANJ,kCASI,MAAA,QACA,iBAAA,QAGJ,sDAEI,oBAAA,QDuPN,eCxQE,aAAA,QAEA,8BACE,MAAA,QACA,iBAAA,QACA,aAAA,QAHF,0DAMI,iBAAA,QANJ,qCASI,MAAA,QACA,iBAAA,QAGJ,yDAEI,oBAAA,QD0PN,cC3QE,aAAA,QAEA,6BACE,MAAA,QACA,iBAAA,QACA,aAAA,QAHF,yDAMI,iBAAA,QANJ,oCASI,MAAA,QACA,iBAAA,QAGJ,wDAEI,oBAAA,QChBN,kBACE,SAAA,SACA,QAAA,MACA,OAAA,EACA,QAAA,EACA,SAAA,OALF,yCpDivLA,wBADA,yBAEA,yBACA,wBoDvuLI,SAAA,SACA,IAAA,EACA,OAAA,EACA,KAAA,EACA,MAAA,KACA,OAAA,KACA,OAAA,EAKJ,wBACE,eAAA,OAIF,uBACE,eAAA,IC3BF,MACE,WAAA,KACA,QAAA,KACA,cAAA,KACA,iBAAA,QACA,OAAA,IAAA,MAAA,QACA,cAAA,IjD0DA,mBAAA,MAAA,EAAA,IAAA,IAAA,gBACQ,WAAA,MAAA,EAAA,IAAA,IAAA,gBiDjEV,iBASI,aAAA,KACA,aAAA,gBAKJ,SACE,QAAA,KACA,cAAA,IAEF,SACE,QAAA,IACA,cAAA,ICpBF,OACE,MAAA,MACA,UAAA,KACA,YAAA,IACA,YAAA,EACA,MAAA,KACA,YAAA,EAAA,IAAA,EAAA,KjCTA,OAAA,kBACA,QAAA,GrBkyLF,asDvxLE,aAEE,MAAA,KACA,gBAAA,KACA,OAAA,QjChBF,OAAA,kBACA,QAAA,GiCuBA,aACE,QAAA,EACA,OAAA,QACA,WAAA,IACA,OAAA,EACA,mBAAA,KACA,gBAAA,KAAA,WAAA,KCxBJ,YACE,SAAA,OAIF,OACE,SAAA,MACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,KACA,QAAA,KACA,SAAA,OACA,2BAAA,MAIA,QAAA,EAGA,0BnDiHA,kBAAA,kBACI,cAAA,kBACC,aAAA,kBACG,UAAA,kBAkER,mBAAA,kBAAA,IAAA,SAEK,cAAA,aAAA,IAAA,SACG,WAAA,kBAAA,IAAA,SAAA,WAAA,UAAA,IAAA,SAAA,WAAA,UAAA,IAAA,QAAA,CAAA,kBAAA,IAAA,QAAA,CAAA,aAAA,IAAA,SmDrLR,wBnD6GA,kBAAA,eACI,cAAA,eACC,aAAA,eACG,UAAA,emD9GV,mBACE,WAAA,OACA,WAAA,KAIF,cACE,SAAA,SACA,MAAA,KACA,OAAA,KAIF,eACE,SAAA,SACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,KACA,OAAA,IAAA,MAAA,eACA,cAAA,InDcA,mBAAA,EAAA,IAAA,IAAA,eACQ,WAAA,EAAA,IAAA,IAAA,emDZR,QAAA,EAIF,gBACE,SAAA,MACA,IAAA,EACA,MAAA,EACA,OAAA,EACA,KAAA,EACA,QAAA,KACA,iBAAA,KAEA,qBlCpEA,OAAA,iBACA,QAAA,EkCoEA,mBlCrEA,OAAA,kBACA,QAAA,GkCyEF,cACE,QAAA,KACA,cAAA,IAAA,MAAA,QAIF,qBACE,WAAA,KAIF,aACE,OAAA,EACA,YAAA,WAKF,YACE,SAAA,SACA,QAAA,KAIF,cACE,QAAA,KACA,WAAA,MACA,WAAA,IAAA,MAAA,QAHF,wBAQI,cAAA,EACA,YAAA,IATJ,mCAaI,YAAA,KAbJ,oCAiBI,YAAA,EAKJ,yBACE,SAAA,SACA,IAAA,QACA,MAAA,KACA,OAAA,KACA,SAAA,OAIF,yBAEE,cACE,MAAA,MACA,OAAA,KAAA,KAEF,enDrEA,mBAAA,EAAA,IAAA,KAAA,eACQ,WAAA,EAAA,IAAA,KAAA,emDyER,UAAY,MAAA,OAGd,yBACE,UAAY,MAAA,OC9Id,SACE,SAAA,SACA,QAAA,KACA,QAAA,MCRA,YAAA,gBAAA,CAAA,SAAA,CAAA,KAAA,CAAA,WAEA,WAAA,OACA,YAAA,IACA,YAAA,WACA,WAAA,KACA,WAAA,KACA,WAAA,MACA,gBAAA,KACA,YAAA,KACA,eAAA,KACA,eAAA,OACA,WAAA,OACA,aAAA,OACA,UAAA,OACA,YAAA,ODHA,UAAA,KnCTA,OAAA,iBACA,QAAA,EmCYA,YnCbA,OAAA,kBACA,QAAA,GmCaA,aACE,QAAA,IAAA,EACA,WAAA,KAEF,eACE,QAAA,EAAA,IACA,YAAA,IAEF,gBACE,QAAA,IAAA,EACA,WAAA,IAEF,cACE,QAAA,EAAA,IACA,YAAA,KAIF,4BACE,OAAA,EACA,KAAA,IACA,YAAA,KACA,aAAA,IAAA,IAAA,EACA,iBAAA,KAEF,iCACE,MAAA,IACA,OAAA,EACA,cAAA,KACA,aAAA,IAAA,IAAA,EACA,iBAAA,KAEF,kCACE,OAAA,EACA,KAAA,IACA,cAAA,KACA,aAAA,IAAA,IAAA,EACA,iBAAA,KAEF,8BACE,IAAA,IACA,KAAA,EACA,WAAA,KACA,aAAA,IAAA,IAAA,IAAA,EACA,mBAAA,KAEF,6BACE,IAAA,IACA,MAAA,EACA,WAAA,KACA,aAAA,IAAA,EAAA,IAAA,IACA,kBAAA,KAEF,+BACE,IAAA,EACA,KAAA,IACA,YAAA,KACA,aAAA,EAAA,IAAA,IACA,oBAAA,KAEF,oCACE,IAAA,EACA,MAAA,IACA,WAAA,KACA,aAAA,EAAA,IAAA,IACA,oBAAA,KAEF,qCACE,IAAA,EACA,KAAA,IACA,WAAA,KACA,aAAA,EAAA,IAAA,IACA,oBAAA,KAKJ,eACE,UAAA,MACA,QAAA,IAAA,IACA,MAAA,KACA,WAAA,OACA,iBAAA,KACA,cAAA,IAIF,eACE,SAAA,SACA,MAAA,EACA,OAAA,EACA,aAAA,YACA,aAAA,MEzGF,SACE,SAAA,SACA,IAAA,EACA,KAAA,EACA,QAAA,KACA,QAAA,KACA,UAAA,MACA,QAAA,IDXA,YAAA,gBAAA,CAAA,SAAA,CAAA,KAAA,CAAA,WAEA,WAAA,OACA,YAAA,IACA,YAAA,WACA,WAAA,KACA,WAAA,KACA,WAAA,MACA,gBAAA,KACA,YAAA,KACA,eAAA,KACA,eAAA,OACA,WAAA,OACA,aAAA,OACA,UAAA,OACA,YAAA,OCAA,UAAA,KACA,iBAAA,KACA,gBAAA,YACA,OAAA,IAAA,MAAA,KACA,OAAA,IAAA,MAAA,eACA,cAAA,ItDiDA,mBAAA,EAAA,IAAA,KAAA,eACQ,WAAA,EAAA,IAAA,KAAA,esD9CR,aAAQ,WAAA,MACR,eAAU,YAAA,KACV,gBAAW,WAAA,KACX,cAAS,YAAA,MAvBX,gBA4BI,aAAA,KAEA,gB1DkjMJ,sB0DhjMM,SAAA,SACA,QAAA,MACA,MAAA,EACA,OAAA,EACA,aAAA,YACA,aAAA,MAGF,sBACE,QAAA,GACA,aAAA,KAIJ,oBACE,OAAA,MACA,KAAA,IACA,YAAA,MACA,iBAAA,KACA,iBAAA,gBACA,oBAAA,EACA,0BACE,OAAA,IACA,YAAA,MACA,QAAA,IACA,iBAAA,KACA,oBAAA,EAGJ,sBACE,IAAA,IACA,KAAA,MACA,WAAA,MACA,mBAAA,KACA,mBAAA,gBACA,kBAAA,EACA,4BACE,OAAA,MACA,KAAA,IACA,QAAA,IACA,mBAAA,KACA,kBAAA,EAGJ,uBACE,IAAA,MACA,KAAA,IACA,YAAA,MACA,iBAAA,EACA,oBAAA,KACA,oBAAA,gBACA,6BACE,IAAA,IACA,YAAA,MACA,QAAA,IACA,iBAAA,EACA,oBAAA,KAIJ,qBACE,IAAA,IACA,MAAA,MACA,WAAA,MACA,mBAAA,EACA,kBAAA,KACA,kBAAA,gBACA,2BACE,MAAA,IACA,OAAA,MACA,QAAA,IACA,mBAAA,EACA,kBAAA,KAKN,eACE,QAAA,IAAA,KACA,OAAA,EACA,UAAA,KACA,iBAAA,QACA,cAAA,IAAA,MAAA,QACA,cAAA,IAAA,IAAA,EAAA,EAGF,iBACE,QAAA,IAAA,KCpHF,UACE,SAAA,SAGF,gBACE,SAAA,SACA,MAAA,KACA,SAAA,OAHF,sBAMI,SAAA,SACA,QAAA,KvD6KF,mBAAA,IAAA,YAAA,KACK,cAAA,IAAA,YAAA,KACG,WAAA,IAAA,YAAA,KJs/LV,4B2D5qMA,0BAcM,YAAA,EAIF,8BAAA,uBAAA,sBvDuLF,mBAAA,kBAAA,IAAA,YAEK,cAAA,aAAA,IAAA,YACG,WAAA,kBAAA,IAAA,YAAA,WAAA,UAAA,IAAA,YAAA,WAAA,UAAA,IAAA,WAAA,CAAA,kBAAA,IAAA,WAAA,CAAA,aAAA,IAAA,YA7JR,4BAAA,OAEQ,oBAAA,OA+GR,oBAAA,OAEQ,YAAA,OJ0hMR,mC2DrqMI,2BvDmHJ,kBAAA,sBACQ,UAAA,sBuDjHF,KAAA,E3DwqMN,kC2DtqMI,2BvD8GJ,kBAAA,uBACQ,UAAA,uBuD5GF,KAAA,E3D0qMN,6B2DxqMI,gC3DuqMJ,iCI9jMA,kBAAA,mBACQ,UAAA,mBuDtGF,KAAA,GArCR,wB3DgtMA,sBACA,sB2DpqMI,QAAA,MA7CJ,wBAiDI,KAAA,EAjDJ,sB3DwtMA,sB2DlqMI,SAAA,SACA,IAAA,EACA,MAAA,KAxDJ,sBA4DI,KAAA,KA5DJ,sBA+DI,KAAA,MA/DJ,2B3DouMA,4B2DjqMI,KAAA,EAnEJ,6BAuEI,KAAA,MAvEJ,8BA0EI,KAAA,KAQJ,kBACE,SAAA,SACA,IAAA,EACA,OAAA,EACA,KAAA,EACA,MAAA,IACA,UAAA,KACA,MAAA,KACA,WAAA,OACA,YAAA,EAAA,IAAA,IAAA,eACA,iBAAA,ctCpGA,OAAA,kBACA,QAAA,GsCyGA,uBdrGE,iBAAA,sEACA,iBAAA,iEACA,iBAAA,uFAAA,iBAAA,kEACA,OAAA,+GACA,kBAAA,ScoGF,wBACE,MAAA,EACA,KAAA,Kd1GA,iBAAA,sEACA,iBAAA,iEACA,iBAAA,uFAAA,iBAAA,kEACA,OAAA,+GACA,kBAAA,S7C6wMJ,wB2DlqME,wBAEE,MAAA,KACA,gBAAA,KACA,QAAA,EtCxHF,OAAA,kBACA,QAAA,GrB8xMF,0CACA,2CAFA,6B2DpsMA,6BAuCI,SAAA,SACA,IAAA,IACA,QAAA,EACA,QAAA,aACA,WAAA,M3DmqMJ,0C2D9sMA,6BA+CI,KAAA,IACA,YAAA,M3DmqMJ,2C2DntMA,6BAoDI,MAAA,IACA,aAAA,M3DmqMJ,6B2DxtMA,6BAyDI,MAAA,KACA,OAAA,KACA,YAAA,MACA,YAAA,EAIA,oCACE,QAAA,QAIF,oCACE,QAAA,QAUN,qBACE,SAAA,SACA,OAAA,KACA,KAAA,IACA,QAAA,GACA,MAAA,IACA,aAAA,EACA,YAAA,KACA,WAAA,OACA,WAAA,KATF,wBAYI,QAAA,aACA,MAAA,KACA,OAAA,KACA,OAAA,IACA,YAAA,OACA,OAAA,QAUA,iBAAA,OACA,iBAAA,cAEA,OAAA,IAAA,MAAA,KACA,cAAA,KA/BJ,6BAmCI,MAAA,KACA,OAAA,KACA,OAAA,EACA,iBAAA,KAOJ,kBACE,SAAA,SACA,MAAA,IACA,OAAA,KACA,KAAA,IACA,QAAA,GACA,YAAA,KACA,eAAA,KACA,MAAA,KACA,WAAA,OACA,YAAA,EAAA,IAAA,IAAA,eAEA,uBACE,YAAA,KAMJ,oCAGE,0C3D+nMA,2CAEA,6BADA,6B2D3nMI,MAAA,KACA,OAAA,KACA,WAAA,MACA,UAAA,KARJ,0C3DwoMA,6B2D5nMI,YAAA,MAZJ,2C3D4oMA,6B2D5nMI,aAAA,MAKJ,kBACE,MAAA,IACA,KAAA,IACA,eAAA,KAIF,qBACE,OAAA,M3D0oMJ,qCADA,sCADA,mBADA,oBAXA,gB4D73ME,iB5Dm4MF,uBADA,wBADA,iBADA,kBADA,wBADA,yBASA,mCADA,oCAqBA,oBADA,qBADA,oBADA,qBAXA,WADA,YAOA,uBADA,wBADA,qBADA,sBADA,cADA,eAOA,aADA,cAGA,kBADA,mBAjBA,WADA,Y4Dl4MI,QAAA,MACA,QAAA,I5Dm6MJ,qCADA,mB4Dh6ME,gB5D65MF,uBADA,iBADA,wBAIA,mCAUA,oBADA,oBANA,WAGA,uBADA,qBADA,cAGA,aACA,kBATA,W4D75MI,MAAA,K5BNJ,c6BVE,QAAA,MACA,aAAA,KACA,YAAA,K7BWF,YACE,MAAA,gBAEF,WACE,MAAA,eAQF,MACE,QAAA,eAEF,MACE,QAAA,gBAEF,WACE,WAAA,OAEF,W8BzBE,KAAA,CAAA,CAAA,EAAA,EACA,MAAA,YACA,YAAA,KACA,iBAAA,YACA,OAAA,E9B8BF,QACE,QAAA,eAOF,OACE,SAAA,M+BjCF,cACE,MAAA,a/D88MF,YADA,YADA,Y+Dt8MA,YClBE,QAAA,ehEs+MF,kBACA,mBACA,yBALA,kBACA,mBACA,yBALA,kBACA,mBACA,yB+Dz8MA,kB/Dq8MA,mBACA,yB+D17ME,QAAA,eAIA,yBAAA,YCjDA,QAAA,gBACA,iBAAU,QAAA,gBACV,cAAU,QAAA,oBhE4/MV,cgE3/MA,cACU,QAAA,sBDkDV,yBAAA,kBACE,QAAA,iBAIF,yBAAA,mBACE,QAAA,kBAIF,yBAAA,yBACE,QAAA,wBAKF,+CAAA,YCtEA,QAAA,gBACA,iBAAU,QAAA,gBACV,cAAU,QAAA,oBhE0hNV,cgEzhNA,cACU,QAAA,sBDuEV,+CAAA,kBACE,QAAA,iBAIF,+CAAA,mBACE,QAAA,kBAIF,+CAAA,yBACE,QAAA,wBAKF,gDAAA,YC3FA,QAAA,gBACA,iBAAU,QAAA,gBACV,cAAU,QAAA,oBhEwjNV,cgEvjNA,cACU,QAAA,sBD4FV,gDAAA,kBACE,QAAA,iBAIF,gDAAA,mBACE,QAAA,kBAIF,gDAAA,yBACE,QAAA,wBAKF,0BAAA,YChHA,QAAA,gBACA,iBAAU,QAAA,gBACV,cAAU,QAAA,oBhEslNV,cgErlNA,cACU,QAAA,sBDiHV,0BAAA,kBACE,QAAA,iBAIF,0BAAA,mBACE,QAAA,kBAIF,0BAAA,yBACE,QAAA,wBAKF,yBAAA,WC7HA,QAAA,gBDkIA,+CAAA,WClIA,QAAA,gBDuIA,gDAAA,WCvIA,QAAA,gBD4IA,0BAAA,WC5IA,QAAA,gBDuJF,eCvJE,QAAA,eD0JA,aAAA,eClKA,QAAA,gBACA,oBAAU,QAAA,gBACV,iBAAU,QAAA,oBhE2oNV,iBgE1oNA,iBACU,QAAA,sBDkKZ,qBACE,QAAA,eAEA,aAAA,qBACE,QAAA,iBAGJ,sBACE,QAAA,eAEA,aAAA,sBACE,QAAA,kBAGJ,4BACE,QAAA,eAEA,aAAA,4BACE,QAAA,wBAKF,aAAA,cCrLA,QAAA","sourcesContent":["/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -moz-transition: -moz-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -moz-transition: -moz-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n -moz-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n -moz-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable\n\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\n\n//\n// 1. Set default font family to sans-serif.\n// 2. Prevent iOS and IE text size adjust after device orientation change,\n// without disabling user zoom.\n//\n\nhtml {\n font-family: sans-serif; // 1\n -ms-text-size-adjust: 100%; // 2\n -webkit-text-size-adjust: 100%; // 2\n}\n\n//\n// Remove default margin.\n//\n\nbody {\n margin: 0;\n}\n\n// HTML5 display definitions\n// ==========================================================================\n\n//\n// Correct `block` display not defined for any HTML5 element in IE 8/9.\n// Correct `block` display not defined for `details` or `summary` in IE 10/11\n// and Firefox.\n// Correct `block` display not defined for `main` in IE 11.\n//\n\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\n\n//\n// 1. Correct `inline-block` display not defined in IE 8/9.\n// 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\n//\n\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block; // 1\n vertical-align: baseline; // 2\n}\n\n//\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\n//\n\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n\n//\n// Address `[hidden]` styling not present in IE 8/9/10.\n// Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.\n//\n\n[hidden],\ntemplate {\n display: none;\n}\n\n// Links\n// ==========================================================================\n\n//\n// Remove the gray background color from active links in IE 10.\n//\n\na {\n background-color: transparent;\n}\n\n//\n// Improve readability of focused elements when they are also in an\n// active/hover state.\n//\n\na:active,\na:hover {\n outline: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n//\n// 1. Remove the bottom border in Chrome 57- and Firefox 39-.\n// 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n//\n\nabbr[title] {\n border-bottom: none; // 1\n text-decoration: underline; // 2\n text-decoration: underline dotted; // 2\n}\n\n//\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\n//\n\nb,\nstrong {\n font-weight: bold;\n}\n\n//\n// Address styling not present in Safari and Chrome.\n//\n\ndfn {\n font-style: italic;\n}\n\n//\n// Address variable `h1` font-size and margin within `section` and `article`\n// contexts in Firefox 4+, Safari, and Chrome.\n//\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n//\n// Address styling not present in IE 8/9.\n//\n\nmark {\n background: #ff0;\n color: #000;\n}\n\n//\n// Address inconsistent and variable font size in all browsers.\n//\n\nsmall {\n font-size: 80%;\n}\n\n//\n// Prevent `sub` and `sup` affecting `line-height` in all browsers.\n//\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsup {\n top: -0.5em;\n}\n\nsub {\n bottom: -0.25em;\n}\n\n// Embedded content\n// ==========================================================================\n\n//\n// Remove border when inside `a` element in IE 8/9/10.\n//\n\nimg {\n border: 0;\n}\n\n//\n// Correct overflow not hidden in IE 9/10/11.\n//\n\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n//\n// Address margin not present in IE 8/9 and Safari.\n//\n\nfigure {\n margin: 1em 40px;\n}\n\n//\n// Address differences between Firefox and other browsers.\n//\n\nhr {\n box-sizing: content-box;\n height: 0;\n}\n\n//\n// Contain overflow in all browsers.\n//\n\npre {\n overflow: auto;\n}\n\n//\n// Address odd `em`-unit font size rendering in all browsers.\n//\n\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n//\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n//\n\n//\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit; // 1\n font: inherit; // 2\n margin: 0; // 3\n}\n\n//\n// Address `overflow` set to `hidden` in IE 8/9/10/11.\n//\n\nbutton {\n overflow: visible;\n}\n\n//\n// Address inconsistent `text-transform` inheritance for `button` and `select`.\n// All other form control elements do not inherit `text-transform` values.\n// Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.\n// Correct `select` style inheritance in Firefox.\n//\n\nbutton,\nselect {\n text-transform: none;\n}\n\n//\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\n//\n\nbutton,\nhtml input[type=\"button\"], // 1\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button; // 2\n cursor: pointer; // 3\n}\n\n//\n// Re-set default cursor for disabled elements.\n//\n\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n//\n// Remove inner padding and border in Firefox 4+.\n//\n\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\n\n//\n// Address Firefox 4+ setting `line-height` on `input` using `!important` in\n// the UA stylesheet.\n//\n\ninput {\n line-height: normal;\n}\n\n//\n// It's recommended that you don't attempt to style these elements.\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n//\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\n//\n\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n box-sizing: border-box; // 1\n padding: 0; // 2\n}\n\n//\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\n//\n\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n//\n// 1. Address `appearance` set to `searchfield` in Safari and Chrome.\n// 2. Address `box-sizing` set to `border-box` in Safari and Chrome.\n//\n\ninput[type=\"search\"] {\n -webkit-appearance: textfield; // 1\n box-sizing: content-box; //2\n}\n\n//\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\n//\n\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n//\n// Define consistent border, margin, and padding.\n//\n\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\n\n//\n// 1. Correct `color` not being inherited in IE 8/9/10/11.\n// 2. Remove padding so people aren't caught out if they zero out fieldsets.\n//\n\nlegend {\n border: 0; // 1\n padding: 0; // 2\n}\n\n//\n// Remove default vertical scrollbar in IE 8/9/10/11.\n//\n\ntextarea {\n overflow: auto;\n}\n\n//\n// Don't inherit the `font-weight` (applied by a rule above).\n// NOTE: the default cannot safely be changed in Chrome and Safari on OS X.\n//\n\noptgroup {\n font-weight: bold;\n}\n\n// Tables\n// ==========================================================================\n\n//\n// Remove most spacing between table cells.\n//\n\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */\nhtml {\n font-family: sans-serif;\n -ms-text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n}\nbody {\n margin: 0;\n}\narticle,\naside,\ndetails,\nfigcaption,\nfigure,\nfooter,\nheader,\nhgroup,\nmain,\nmenu,\nnav,\nsection,\nsummary {\n display: block;\n}\naudio,\ncanvas,\nprogress,\nvideo {\n display: inline-block;\n vertical-align: baseline;\n}\naudio:not([controls]) {\n display: none;\n height: 0;\n}\n[hidden],\ntemplate {\n display: none;\n}\na {\n background-color: transparent;\n}\na:active,\na:hover {\n outline: 0;\n}\nabbr[title] {\n border-bottom: none;\n text-decoration: underline;\n -webkit-text-decoration: underline dotted;\n -moz-text-decoration: underline dotted;\n text-decoration: underline dotted;\n}\nb,\nstrong {\n font-weight: bold;\n}\ndfn {\n font-style: italic;\n}\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\nmark {\n background: #ff0;\n color: #000;\n}\nsmall {\n font-size: 80%;\n}\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\nsup {\n top: -0.5em;\n}\nsub {\n bottom: -0.25em;\n}\nimg {\n border: 0;\n}\nsvg:not(:root) {\n overflow: hidden;\n}\nfigure {\n margin: 1em 40px;\n}\nhr {\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n height: 0;\n}\npre {\n overflow: auto;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace, monospace;\n font-size: 1em;\n}\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n color: inherit;\n font: inherit;\n margin: 0;\n}\nbutton {\n overflow: visible;\n}\nbutton,\nselect {\n text-transform: none;\n}\nbutton,\nhtml input[type=\"button\"],\ninput[type=\"reset\"],\ninput[type=\"submit\"] {\n -webkit-appearance: button;\n cursor: pointer;\n}\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n border: 0;\n padding: 0;\n}\ninput {\n line-height: normal;\n}\ninput[type=\"checkbox\"],\ninput[type=\"radio\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n padding: 0;\n}\ninput[type=\"number\"]::-webkit-inner-spin-button,\ninput[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\ninput[type=\"search\"] {\n -webkit-appearance: textfield;\n -webkit-box-sizing: content-box;\n -moz-box-sizing: content-box;\n box-sizing: content-box;\n}\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\nfieldset {\n border: 1px solid #c0c0c0;\n margin: 0 2px;\n padding: 0.35em 0.625em 0.75em;\n}\nlegend {\n border: 0;\n padding: 0;\n}\ntextarea {\n overflow: auto;\n}\noptgroup {\n font-weight: bold;\n}\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\ntd,\nth {\n padding: 0;\n}\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important;\n text-shadow: none !important;\n background: transparent !important;\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n }\n a,\n a:visited {\n text-decoration: underline;\n }\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n thead {\n display: table-header-group;\n }\n tr,\n img {\n page-break-inside: avoid;\n }\n img {\n max-width: 100% !important;\n }\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n h2,\n h3 {\n page-break-after: avoid;\n }\n .navbar {\n display: none;\n }\n .btn > .caret,\n .dropup > .btn > .caret {\n border-top-color: #000 !important;\n }\n .label {\n border: 1px solid #000;\n }\n .table {\n border-collapse: collapse !important;\n }\n .table td,\n .table th {\n background-color: #fff !important;\n }\n .table-bordered th,\n .table-bordered td {\n border: 1px solid #ddd !important;\n }\n}\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"../fonts/glyphicons-halflings-regular.eot\");\n src: url(\"../fonts/glyphicons-halflings-regular.eot?#iefix\") format(\"embedded-opentype\"), url(\"../fonts/glyphicons-halflings-regular.woff2\") format(\"woff2\"), url(\"../fonts/glyphicons-halflings-regular.woff\") format(\"woff\"), url(\"../fonts/glyphicons-halflings-regular.ttf\") format(\"truetype\"), url(\"../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular\") format(\"svg\");\n}\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n.glyphicon-asterisk:before {\n content: \"\\002a\";\n}\n.glyphicon-plus:before {\n content: \"\\002b\";\n}\n.glyphicon-euro:before,\n.glyphicon-eur:before {\n content: \"\\20ac\";\n}\n.glyphicon-minus:before {\n content: \"\\2212\";\n}\n.glyphicon-cloud:before {\n content: \"\\2601\";\n}\n.glyphicon-envelope:before {\n content: \"\\2709\";\n}\n.glyphicon-pencil:before {\n content: \"\\270f\";\n}\n.glyphicon-glass:before {\n content: \"\\e001\";\n}\n.glyphicon-music:before {\n content: \"\\e002\";\n}\n.glyphicon-search:before {\n content: \"\\e003\";\n}\n.glyphicon-heart:before {\n content: \"\\e005\";\n}\n.glyphicon-star:before {\n content: \"\\e006\";\n}\n.glyphicon-star-empty:before {\n content: \"\\e007\";\n}\n.glyphicon-user:before {\n content: \"\\e008\";\n}\n.glyphicon-film:before {\n content: \"\\e009\";\n}\n.glyphicon-th-large:before {\n content: \"\\e010\";\n}\n.glyphicon-th:before {\n content: \"\\e011\";\n}\n.glyphicon-th-list:before {\n content: \"\\e012\";\n}\n.glyphicon-ok:before {\n content: \"\\e013\";\n}\n.glyphicon-remove:before {\n content: \"\\e014\";\n}\n.glyphicon-zoom-in:before {\n content: \"\\e015\";\n}\n.glyphicon-zoom-out:before {\n content: \"\\e016\";\n}\n.glyphicon-off:before {\n content: \"\\e017\";\n}\n.glyphicon-signal:before {\n content: \"\\e018\";\n}\n.glyphicon-cog:before {\n content: \"\\e019\";\n}\n.glyphicon-trash:before {\n content: \"\\e020\";\n}\n.glyphicon-home:before {\n content: \"\\e021\";\n}\n.glyphicon-file:before {\n content: \"\\e022\";\n}\n.glyphicon-time:before {\n content: \"\\e023\";\n}\n.glyphicon-road:before {\n content: \"\\e024\";\n}\n.glyphicon-download-alt:before {\n content: \"\\e025\";\n}\n.glyphicon-download:before {\n content: \"\\e026\";\n}\n.glyphicon-upload:before {\n content: \"\\e027\";\n}\n.glyphicon-inbox:before {\n content: \"\\e028\";\n}\n.glyphicon-play-circle:before {\n content: \"\\e029\";\n}\n.glyphicon-repeat:before {\n content: \"\\e030\";\n}\n.glyphicon-refresh:before {\n content: \"\\e031\";\n}\n.glyphicon-list-alt:before {\n content: \"\\e032\";\n}\n.glyphicon-lock:before {\n content: \"\\e033\";\n}\n.glyphicon-flag:before {\n content: \"\\e034\";\n}\n.glyphicon-headphones:before {\n content: \"\\e035\";\n}\n.glyphicon-volume-off:before {\n content: \"\\e036\";\n}\n.glyphicon-volume-down:before {\n content: \"\\e037\";\n}\n.glyphicon-volume-up:before {\n content: \"\\e038\";\n}\n.glyphicon-qrcode:before {\n content: \"\\e039\";\n}\n.glyphicon-barcode:before {\n content: \"\\e040\";\n}\n.glyphicon-tag:before {\n content: \"\\e041\";\n}\n.glyphicon-tags:before {\n content: \"\\e042\";\n}\n.glyphicon-book:before {\n content: \"\\e043\";\n}\n.glyphicon-bookmark:before {\n content: \"\\e044\";\n}\n.glyphicon-print:before {\n content: \"\\e045\";\n}\n.glyphicon-camera:before {\n content: \"\\e046\";\n}\n.glyphicon-font:before {\n content: \"\\e047\";\n}\n.glyphicon-bold:before {\n content: \"\\e048\";\n}\n.glyphicon-italic:before {\n content: \"\\e049\";\n}\n.glyphicon-text-height:before {\n content: \"\\e050\";\n}\n.glyphicon-text-width:before {\n content: \"\\e051\";\n}\n.glyphicon-align-left:before {\n content: \"\\e052\";\n}\n.glyphicon-align-center:before {\n content: \"\\e053\";\n}\n.glyphicon-align-right:before {\n content: \"\\e054\";\n}\n.glyphicon-align-justify:before {\n content: \"\\e055\";\n}\n.glyphicon-list:before {\n content: \"\\e056\";\n}\n.glyphicon-indent-left:before {\n content: \"\\e057\";\n}\n.glyphicon-indent-right:before {\n content: \"\\e058\";\n}\n.glyphicon-facetime-video:before {\n content: \"\\e059\";\n}\n.glyphicon-picture:before {\n content: \"\\e060\";\n}\n.glyphicon-map-marker:before {\n content: \"\\e062\";\n}\n.glyphicon-adjust:before {\n content: \"\\e063\";\n}\n.glyphicon-tint:before {\n content: \"\\e064\";\n}\n.glyphicon-edit:before {\n content: \"\\e065\";\n}\n.glyphicon-share:before {\n content: \"\\e066\";\n}\n.glyphicon-check:before {\n content: \"\\e067\";\n}\n.glyphicon-move:before {\n content: \"\\e068\";\n}\n.glyphicon-step-backward:before {\n content: \"\\e069\";\n}\n.glyphicon-fast-backward:before {\n content: \"\\e070\";\n}\n.glyphicon-backward:before {\n content: \"\\e071\";\n}\n.glyphicon-play:before {\n content: \"\\e072\";\n}\n.glyphicon-pause:before {\n content: \"\\e073\";\n}\n.glyphicon-stop:before {\n content: \"\\e074\";\n}\n.glyphicon-forward:before {\n content: \"\\e075\";\n}\n.glyphicon-fast-forward:before {\n content: \"\\e076\";\n}\n.glyphicon-step-forward:before {\n content: \"\\e077\";\n}\n.glyphicon-eject:before {\n content: \"\\e078\";\n}\n.glyphicon-chevron-left:before {\n content: \"\\e079\";\n}\n.glyphicon-chevron-right:before {\n content: \"\\e080\";\n}\n.glyphicon-plus-sign:before {\n content: \"\\e081\";\n}\n.glyphicon-minus-sign:before {\n content: \"\\e082\";\n}\n.glyphicon-remove-sign:before {\n content: \"\\e083\";\n}\n.glyphicon-ok-sign:before {\n content: \"\\e084\";\n}\n.glyphicon-question-sign:before {\n content: \"\\e085\";\n}\n.glyphicon-info-sign:before {\n content: \"\\e086\";\n}\n.glyphicon-screenshot:before {\n content: \"\\e087\";\n}\n.glyphicon-remove-circle:before {\n content: \"\\e088\";\n}\n.glyphicon-ok-circle:before {\n content: \"\\e089\";\n}\n.glyphicon-ban-circle:before {\n content: \"\\e090\";\n}\n.glyphicon-arrow-left:before {\n content: \"\\e091\";\n}\n.glyphicon-arrow-right:before {\n content: \"\\e092\";\n}\n.glyphicon-arrow-up:before {\n content: \"\\e093\";\n}\n.glyphicon-arrow-down:before {\n content: \"\\e094\";\n}\n.glyphicon-share-alt:before {\n content: \"\\e095\";\n}\n.glyphicon-resize-full:before {\n content: \"\\e096\";\n}\n.glyphicon-resize-small:before {\n content: \"\\e097\";\n}\n.glyphicon-exclamation-sign:before {\n content: \"\\e101\";\n}\n.glyphicon-gift:before {\n content: \"\\e102\";\n}\n.glyphicon-leaf:before {\n content: \"\\e103\";\n}\n.glyphicon-fire:before {\n content: \"\\e104\";\n}\n.glyphicon-eye-open:before {\n content: \"\\e105\";\n}\n.glyphicon-eye-close:before {\n content: \"\\e106\";\n}\n.glyphicon-warning-sign:before {\n content: \"\\e107\";\n}\n.glyphicon-plane:before {\n content: \"\\e108\";\n}\n.glyphicon-calendar:before {\n content: \"\\e109\";\n}\n.glyphicon-random:before {\n content: \"\\e110\";\n}\n.glyphicon-comment:before {\n content: \"\\e111\";\n}\n.glyphicon-magnet:before {\n content: \"\\e112\";\n}\n.glyphicon-chevron-up:before {\n content: \"\\e113\";\n}\n.glyphicon-chevron-down:before {\n content: \"\\e114\";\n}\n.glyphicon-retweet:before {\n content: \"\\e115\";\n}\n.glyphicon-shopping-cart:before {\n content: \"\\e116\";\n}\n.glyphicon-folder-close:before {\n content: \"\\e117\";\n}\n.glyphicon-folder-open:before {\n content: \"\\e118\";\n}\n.glyphicon-resize-vertical:before {\n content: \"\\e119\";\n}\n.glyphicon-resize-horizontal:before {\n content: \"\\e120\";\n}\n.glyphicon-hdd:before {\n content: \"\\e121\";\n}\n.glyphicon-bullhorn:before {\n content: \"\\e122\";\n}\n.glyphicon-bell:before {\n content: \"\\e123\";\n}\n.glyphicon-certificate:before {\n content: \"\\e124\";\n}\n.glyphicon-thumbs-up:before {\n content: \"\\e125\";\n}\n.glyphicon-thumbs-down:before {\n content: \"\\e126\";\n}\n.glyphicon-hand-right:before {\n content: \"\\e127\";\n}\n.glyphicon-hand-left:before {\n content: \"\\e128\";\n}\n.glyphicon-hand-up:before {\n content: \"\\e129\";\n}\n.glyphicon-hand-down:before {\n content: \"\\e130\";\n}\n.glyphicon-circle-arrow-right:before {\n content: \"\\e131\";\n}\n.glyphicon-circle-arrow-left:before {\n content: \"\\e132\";\n}\n.glyphicon-circle-arrow-up:before {\n content: \"\\e133\";\n}\n.glyphicon-circle-arrow-down:before {\n content: \"\\e134\";\n}\n.glyphicon-globe:before {\n content: \"\\e135\";\n}\n.glyphicon-wrench:before {\n content: \"\\e136\";\n}\n.glyphicon-tasks:before {\n content: \"\\e137\";\n}\n.glyphicon-filter:before {\n content: \"\\e138\";\n}\n.glyphicon-briefcase:before {\n content: \"\\e139\";\n}\n.glyphicon-fullscreen:before {\n content: \"\\e140\";\n}\n.glyphicon-dashboard:before {\n content: \"\\e141\";\n}\n.glyphicon-paperclip:before {\n content: \"\\e142\";\n}\n.glyphicon-heart-empty:before {\n content: \"\\e143\";\n}\n.glyphicon-link:before {\n content: \"\\e144\";\n}\n.glyphicon-phone:before {\n content: \"\\e145\";\n}\n.glyphicon-pushpin:before {\n content: \"\\e146\";\n}\n.glyphicon-usd:before {\n content: \"\\e148\";\n}\n.glyphicon-gbp:before {\n content: \"\\e149\";\n}\n.glyphicon-sort:before {\n content: \"\\e150\";\n}\n.glyphicon-sort-by-alphabet:before {\n content: \"\\e151\";\n}\n.glyphicon-sort-by-alphabet-alt:before {\n content: \"\\e152\";\n}\n.glyphicon-sort-by-order:before {\n content: \"\\e153\";\n}\n.glyphicon-sort-by-order-alt:before {\n content: \"\\e154\";\n}\n.glyphicon-sort-by-attributes:before {\n content: \"\\e155\";\n}\n.glyphicon-sort-by-attributes-alt:before {\n content: \"\\e156\";\n}\n.glyphicon-unchecked:before {\n content: \"\\e157\";\n}\n.glyphicon-expand:before {\n content: \"\\e158\";\n}\n.glyphicon-collapse-down:before {\n content: \"\\e159\";\n}\n.glyphicon-collapse-up:before {\n content: \"\\e160\";\n}\n.glyphicon-log-in:before {\n content: \"\\e161\";\n}\n.glyphicon-flash:before {\n content: \"\\e162\";\n}\n.glyphicon-log-out:before {\n content: \"\\e163\";\n}\n.glyphicon-new-window:before {\n content: \"\\e164\";\n}\n.glyphicon-record:before {\n content: \"\\e165\";\n}\n.glyphicon-save:before {\n content: \"\\e166\";\n}\n.glyphicon-open:before {\n content: \"\\e167\";\n}\n.glyphicon-saved:before {\n content: \"\\e168\";\n}\n.glyphicon-import:before {\n content: \"\\e169\";\n}\n.glyphicon-export:before {\n content: \"\\e170\";\n}\n.glyphicon-send:before {\n content: \"\\e171\";\n}\n.glyphicon-floppy-disk:before {\n content: \"\\e172\";\n}\n.glyphicon-floppy-saved:before {\n content: \"\\e173\";\n}\n.glyphicon-floppy-remove:before {\n content: \"\\e174\";\n}\n.glyphicon-floppy-save:before {\n content: \"\\e175\";\n}\n.glyphicon-floppy-open:before {\n content: \"\\e176\";\n}\n.glyphicon-credit-card:before {\n content: \"\\e177\";\n}\n.glyphicon-transfer:before {\n content: \"\\e178\";\n}\n.glyphicon-cutlery:before {\n content: \"\\e179\";\n}\n.glyphicon-header:before {\n content: \"\\e180\";\n}\n.glyphicon-compressed:before {\n content: \"\\e181\";\n}\n.glyphicon-earphone:before {\n content: \"\\e182\";\n}\n.glyphicon-phone-alt:before {\n content: \"\\e183\";\n}\n.glyphicon-tower:before {\n content: \"\\e184\";\n}\n.glyphicon-stats:before {\n content: \"\\e185\";\n}\n.glyphicon-sd-video:before {\n content: \"\\e186\";\n}\n.glyphicon-hd-video:before {\n content: \"\\e187\";\n}\n.glyphicon-subtitles:before {\n content: \"\\e188\";\n}\n.glyphicon-sound-stereo:before {\n content: \"\\e189\";\n}\n.glyphicon-sound-dolby:before {\n content: \"\\e190\";\n}\n.glyphicon-sound-5-1:before {\n content: \"\\e191\";\n}\n.glyphicon-sound-6-1:before {\n content: \"\\e192\";\n}\n.glyphicon-sound-7-1:before {\n content: \"\\e193\";\n}\n.glyphicon-copyright-mark:before {\n content: \"\\e194\";\n}\n.glyphicon-registration-mark:before {\n content: \"\\e195\";\n}\n.glyphicon-cloud-download:before {\n content: \"\\e197\";\n}\n.glyphicon-cloud-upload:before {\n content: \"\\e198\";\n}\n.glyphicon-tree-conifer:before {\n content: \"\\e199\";\n}\n.glyphicon-tree-deciduous:before {\n content: \"\\e200\";\n}\n.glyphicon-cd:before {\n content: \"\\e201\";\n}\n.glyphicon-save-file:before {\n content: \"\\e202\";\n}\n.glyphicon-open-file:before {\n content: \"\\e203\";\n}\n.glyphicon-level-up:before {\n content: \"\\e204\";\n}\n.glyphicon-copy:before {\n content: \"\\e205\";\n}\n.glyphicon-paste:before {\n content: \"\\e206\";\n}\n.glyphicon-alert:before {\n content: \"\\e209\";\n}\n.glyphicon-equalizer:before {\n content: \"\\e210\";\n}\n.glyphicon-king:before {\n content: \"\\e211\";\n}\n.glyphicon-queen:before {\n content: \"\\e212\";\n}\n.glyphicon-pawn:before {\n content: \"\\e213\";\n}\n.glyphicon-bishop:before {\n content: \"\\e214\";\n}\n.glyphicon-knight:before {\n content: \"\\e215\";\n}\n.glyphicon-baby-formula:before {\n content: \"\\e216\";\n}\n.glyphicon-tent:before {\n content: \"\\26fa\";\n}\n.glyphicon-blackboard:before {\n content: \"\\e218\";\n}\n.glyphicon-bed:before {\n content: \"\\e219\";\n}\n.glyphicon-apple:before {\n content: \"\\f8ff\";\n}\n.glyphicon-erase:before {\n content: \"\\e221\";\n}\n.glyphicon-hourglass:before {\n content: \"\\231b\";\n}\n.glyphicon-lamp:before {\n content: \"\\e223\";\n}\n.glyphicon-duplicate:before {\n content: \"\\e224\";\n}\n.glyphicon-piggy-bank:before {\n content: \"\\e225\";\n}\n.glyphicon-scissors:before {\n content: \"\\e226\";\n}\n.glyphicon-bitcoin:before {\n content: \"\\e227\";\n}\n.glyphicon-btc:before {\n content: \"\\e227\";\n}\n.glyphicon-xbt:before {\n content: \"\\e227\";\n}\n.glyphicon-yen:before {\n content: \"\\00a5\";\n}\n.glyphicon-jpy:before {\n content: \"\\00a5\";\n}\n.glyphicon-ruble:before {\n content: \"\\20bd\";\n}\n.glyphicon-rub:before {\n content: \"\\20bd\";\n}\n.glyphicon-scale:before {\n content: \"\\e230\";\n}\n.glyphicon-ice-lolly:before {\n content: \"\\e231\";\n}\n.glyphicon-ice-lolly-tasted:before {\n content: \"\\e232\";\n}\n.glyphicon-education:before {\n content: \"\\e233\";\n}\n.glyphicon-option-horizontal:before {\n content: \"\\e234\";\n}\n.glyphicon-option-vertical:before {\n content: \"\\e235\";\n}\n.glyphicon-menu-hamburger:before {\n content: \"\\e236\";\n}\n.glyphicon-modal-window:before {\n content: \"\\e237\";\n}\n.glyphicon-oil:before {\n content: \"\\e238\";\n}\n.glyphicon-grain:before {\n content: \"\\e239\";\n}\n.glyphicon-sunglasses:before {\n content: \"\\e240\";\n}\n.glyphicon-text-size:before {\n content: \"\\e241\";\n}\n.glyphicon-text-color:before {\n content: \"\\e242\";\n}\n.glyphicon-text-background:before {\n content: \"\\e243\";\n}\n.glyphicon-object-align-top:before {\n content: \"\\e244\";\n}\n.glyphicon-object-align-bottom:before {\n content: \"\\e245\";\n}\n.glyphicon-object-align-horizontal:before {\n content: \"\\e246\";\n}\n.glyphicon-object-align-left:before {\n content: \"\\e247\";\n}\n.glyphicon-object-align-vertical:before {\n content: \"\\e248\";\n}\n.glyphicon-object-align-right:before {\n content: \"\\e249\";\n}\n.glyphicon-triangle-right:before {\n content: \"\\e250\";\n}\n.glyphicon-triangle-left:before {\n content: \"\\e251\";\n}\n.glyphicon-triangle-bottom:before {\n content: \"\\e252\";\n}\n.glyphicon-triangle-top:before {\n content: \"\\e253\";\n}\n.glyphicon-console:before {\n content: \"\\e254\";\n}\n.glyphicon-superscript:before {\n content: \"\\e255\";\n}\n.glyphicon-subscript:before {\n content: \"\\e256\";\n}\n.glyphicon-menu-left:before {\n content: \"\\e257\";\n}\n.glyphicon-menu-right:before {\n content: \"\\e258\";\n}\n.glyphicon-menu-down:before {\n content: \"\\e259\";\n}\n.glyphicon-menu-up:before {\n content: \"\\e260\";\n}\n* {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\n*:before,\n*:after {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n}\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\nbody {\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-size: 14px;\n line-height: 1.42857143;\n color: #333333;\n background-color: #fff;\n}\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\na {\n color: #337ab7;\n text-decoration: none;\n}\na:hover,\na:focus {\n color: #23527c;\n text-decoration: underline;\n}\na:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\nfigure {\n margin: 0;\n}\nimg {\n vertical-align: middle;\n}\n.img-responsive,\n.thumbnail > img,\n.thumbnail a > img,\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n display: block;\n max-width: 100%;\n height: auto;\n}\n.img-rounded {\n border-radius: 6px;\n}\n.img-thumbnail {\n padding: 4px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: all 0.2s ease-in-out;\n -o-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n display: inline-block;\n max-width: 100%;\n height: auto;\n}\n.img-circle {\n border-radius: 50%;\n}\nhr {\n margin-top: 20px;\n margin-bottom: 20px;\n border: 0;\n border-top: 1px solid #eeeeee;\n}\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n.sr-only-focusable:active,\n.sr-only-focusable:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n}\n[role=\"button\"] {\n cursor: pointer;\n}\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\n.h1,\n.h2,\n.h3,\n.h4,\n.h5,\n.h6 {\n font-family: inherit;\n font-weight: 500;\n line-height: 1.1;\n color: inherit;\n}\nh1 small,\nh2 small,\nh3 small,\nh4 small,\nh5 small,\nh6 small,\n.h1 small,\n.h2 small,\n.h3 small,\n.h4 small,\n.h5 small,\n.h6 small,\nh1 .small,\nh2 .small,\nh3 .small,\nh4 .small,\nh5 .small,\nh6 .small,\n.h1 .small,\n.h2 .small,\n.h3 .small,\n.h4 .small,\n.h5 .small,\n.h6 .small {\n font-weight: 400;\n line-height: 1;\n color: #777777;\n}\nh1,\n.h1,\nh2,\n.h2,\nh3,\n.h3 {\n margin-top: 20px;\n margin-bottom: 10px;\n}\nh1 small,\n.h1 small,\nh2 small,\n.h2 small,\nh3 small,\n.h3 small,\nh1 .small,\n.h1 .small,\nh2 .small,\n.h2 .small,\nh3 .small,\n.h3 .small {\n font-size: 65%;\n}\nh4,\n.h4,\nh5,\n.h5,\nh6,\n.h6 {\n margin-top: 10px;\n margin-bottom: 10px;\n}\nh4 small,\n.h4 small,\nh5 small,\n.h5 small,\nh6 small,\n.h6 small,\nh4 .small,\n.h4 .small,\nh5 .small,\n.h5 .small,\nh6 .small,\n.h6 .small {\n font-size: 75%;\n}\nh1,\n.h1 {\n font-size: 36px;\n}\nh2,\n.h2 {\n font-size: 30px;\n}\nh3,\n.h3 {\n font-size: 24px;\n}\nh4,\n.h4 {\n font-size: 18px;\n}\nh5,\n.h5 {\n font-size: 14px;\n}\nh6,\n.h6 {\n font-size: 12px;\n}\np {\n margin: 0 0 10px;\n}\n.lead {\n margin-bottom: 20px;\n font-size: 16px;\n font-weight: 300;\n line-height: 1.4;\n}\n@media (min-width: 768px) {\n .lead {\n font-size: 21px;\n }\n}\nsmall,\n.small {\n font-size: 85%;\n}\nmark,\n.mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n.text-left {\n text-align: left;\n}\n.text-right {\n text-align: right;\n}\n.text-center {\n text-align: center;\n}\n.text-justify {\n text-align: justify;\n}\n.text-nowrap {\n white-space: nowrap;\n}\n.text-lowercase {\n text-transform: lowercase;\n}\n.text-uppercase {\n text-transform: uppercase;\n}\n.text-capitalize {\n text-transform: capitalize;\n}\n.text-muted {\n color: #777777;\n}\n.text-primary {\n color: #337ab7;\n}\na.text-primary:hover,\na.text-primary:focus {\n color: #286090;\n}\n.text-success {\n color: #3c763d;\n}\na.text-success:hover,\na.text-success:focus {\n color: #2b542c;\n}\n.text-info {\n color: #31708f;\n}\na.text-info:hover,\na.text-info:focus {\n color: #245269;\n}\n.text-warning {\n color: #8a6d3b;\n}\na.text-warning:hover,\na.text-warning:focus {\n color: #66512c;\n}\n.text-danger {\n color: #a94442;\n}\na.text-danger:hover,\na.text-danger:focus {\n color: #843534;\n}\n.bg-primary {\n color: #fff;\n background-color: #337ab7;\n}\na.bg-primary:hover,\na.bg-primary:focus {\n background-color: #286090;\n}\n.bg-success {\n background-color: #dff0d8;\n}\na.bg-success:hover,\na.bg-success:focus {\n background-color: #c1e2b3;\n}\n.bg-info {\n background-color: #d9edf7;\n}\na.bg-info:hover,\na.bg-info:focus {\n background-color: #afd9ee;\n}\n.bg-warning {\n background-color: #fcf8e3;\n}\na.bg-warning:hover,\na.bg-warning:focus {\n background-color: #f7ecb5;\n}\n.bg-danger {\n background-color: #f2dede;\n}\na.bg-danger:hover,\na.bg-danger:focus {\n background-color: #e4b9b9;\n}\n.page-header {\n padding-bottom: 9px;\n margin: 40px 0 20px;\n border-bottom: 1px solid #eeeeee;\n}\nul,\nol {\n margin-top: 0;\n margin-bottom: 10px;\n}\nul ul,\nol ul,\nul ol,\nol ol {\n margin-bottom: 0;\n}\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n.list-inline {\n padding-left: 0;\n list-style: none;\n margin-left: -5px;\n}\n.list-inline > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n}\ndl {\n margin-top: 0;\n margin-bottom: 20px;\n}\ndt,\ndd {\n line-height: 1.42857143;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0;\n}\n@media (min-width: 768px) {\n .dl-horizontal dt {\n float: left;\n width: 160px;\n clear: left;\n text-align: right;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n .dl-horizontal dd {\n margin-left: 180px;\n }\n}\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n.initialism {\n font-size: 90%;\n text-transform: uppercase;\n}\nblockquote {\n padding: 10px 20px;\n margin: 0 0 20px;\n font-size: 17.5px;\n border-left: 5px solid #eeeeee;\n}\nblockquote p:last-child,\nblockquote ul:last-child,\nblockquote ol:last-child {\n margin-bottom: 0;\n}\nblockquote footer,\nblockquote small,\nblockquote .small {\n display: block;\n font-size: 80%;\n line-height: 1.42857143;\n color: #777777;\n}\nblockquote footer:before,\nblockquote small:before,\nblockquote .small:before {\n content: \"\\2014 \\00A0\";\n}\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid #eeeeee;\n border-left: 0;\n}\n.blockquote-reverse footer:before,\nblockquote.pull-right footer:before,\n.blockquote-reverse small:before,\nblockquote.pull-right small:before,\n.blockquote-reverse .small:before,\nblockquote.pull-right .small:before {\n content: \"\";\n}\n.blockquote-reverse footer:after,\nblockquote.pull-right footer:after,\n.blockquote-reverse small:after,\nblockquote.pull-right small:after,\n.blockquote-reverse .small:after,\nblockquote.pull-right .small:after {\n content: \"\\00A0 \\2014\";\n}\naddress {\n margin-bottom: 20px;\n font-style: normal;\n line-height: 1.42857143;\n}\ncode,\nkbd,\npre,\nsamp {\n font-family: Menlo, Monaco, Consolas, \"Courier New\", monospace;\n}\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: #c7254e;\n background-color: #f9f2f4;\n border-radius: 4px;\n}\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: #fff;\n background-color: #333;\n border-radius: 3px;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);\n}\nkbd kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\npre {\n display: block;\n padding: 9.5px;\n margin: 0 0 10px;\n font-size: 13px;\n line-height: 1.42857143;\n color: #333333;\n word-break: break-all;\n word-wrap: break-word;\n background-color: #f5f5f5;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\npre code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n}\n.pre-scrollable {\n max-height: 340px;\n overflow-y: scroll;\n}\n.container {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n@media (min-width: 768px) {\n .container {\n width: 750px;\n }\n}\n@media (min-width: 992px) {\n .container {\n width: 970px;\n }\n}\n@media (min-width: 1200px) {\n .container {\n width: 1170px;\n }\n}\n.container-fluid {\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n.row {\n margin-right: -15px;\n margin-left: -15px;\n}\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n.row-no-gutters [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n.col-xs-1,\n.col-sm-1,\n.col-md-1,\n.col-lg-1,\n.col-xs-2,\n.col-sm-2,\n.col-md-2,\n.col-lg-2,\n.col-xs-3,\n.col-sm-3,\n.col-md-3,\n.col-lg-3,\n.col-xs-4,\n.col-sm-4,\n.col-md-4,\n.col-lg-4,\n.col-xs-5,\n.col-sm-5,\n.col-md-5,\n.col-lg-5,\n.col-xs-6,\n.col-sm-6,\n.col-md-6,\n.col-lg-6,\n.col-xs-7,\n.col-sm-7,\n.col-md-7,\n.col-lg-7,\n.col-xs-8,\n.col-sm-8,\n.col-md-8,\n.col-lg-8,\n.col-xs-9,\n.col-sm-9,\n.col-md-9,\n.col-lg-9,\n.col-xs-10,\n.col-sm-10,\n.col-md-10,\n.col-lg-10,\n.col-xs-11,\n.col-sm-11,\n.col-md-11,\n.col-lg-11,\n.col-xs-12,\n.col-sm-12,\n.col-md-12,\n.col-lg-12 {\n position: relative;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n.col-xs-1,\n.col-xs-2,\n.col-xs-3,\n.col-xs-4,\n.col-xs-5,\n.col-xs-6,\n.col-xs-7,\n.col-xs-8,\n.col-xs-9,\n.col-xs-10,\n.col-xs-11,\n.col-xs-12 {\n float: left;\n}\n.col-xs-12 {\n width: 100%;\n}\n.col-xs-11 {\n width: 91.66666667%;\n}\n.col-xs-10 {\n width: 83.33333333%;\n}\n.col-xs-9 {\n width: 75%;\n}\n.col-xs-8 {\n width: 66.66666667%;\n}\n.col-xs-7 {\n width: 58.33333333%;\n}\n.col-xs-6 {\n width: 50%;\n}\n.col-xs-5 {\n width: 41.66666667%;\n}\n.col-xs-4 {\n width: 33.33333333%;\n}\n.col-xs-3 {\n width: 25%;\n}\n.col-xs-2 {\n width: 16.66666667%;\n}\n.col-xs-1 {\n width: 8.33333333%;\n}\n.col-xs-pull-12 {\n right: 100%;\n}\n.col-xs-pull-11 {\n right: 91.66666667%;\n}\n.col-xs-pull-10 {\n right: 83.33333333%;\n}\n.col-xs-pull-9 {\n right: 75%;\n}\n.col-xs-pull-8 {\n right: 66.66666667%;\n}\n.col-xs-pull-7 {\n right: 58.33333333%;\n}\n.col-xs-pull-6 {\n right: 50%;\n}\n.col-xs-pull-5 {\n right: 41.66666667%;\n}\n.col-xs-pull-4 {\n right: 33.33333333%;\n}\n.col-xs-pull-3 {\n right: 25%;\n}\n.col-xs-pull-2 {\n right: 16.66666667%;\n}\n.col-xs-pull-1 {\n right: 8.33333333%;\n}\n.col-xs-pull-0 {\n right: auto;\n}\n.col-xs-push-12 {\n left: 100%;\n}\n.col-xs-push-11 {\n left: 91.66666667%;\n}\n.col-xs-push-10 {\n left: 83.33333333%;\n}\n.col-xs-push-9 {\n left: 75%;\n}\n.col-xs-push-8 {\n left: 66.66666667%;\n}\n.col-xs-push-7 {\n left: 58.33333333%;\n}\n.col-xs-push-6 {\n left: 50%;\n}\n.col-xs-push-5 {\n left: 41.66666667%;\n}\n.col-xs-push-4 {\n left: 33.33333333%;\n}\n.col-xs-push-3 {\n left: 25%;\n}\n.col-xs-push-2 {\n left: 16.66666667%;\n}\n.col-xs-push-1 {\n left: 8.33333333%;\n}\n.col-xs-push-0 {\n left: auto;\n}\n.col-xs-offset-12 {\n margin-left: 100%;\n}\n.col-xs-offset-11 {\n margin-left: 91.66666667%;\n}\n.col-xs-offset-10 {\n margin-left: 83.33333333%;\n}\n.col-xs-offset-9 {\n margin-left: 75%;\n}\n.col-xs-offset-8 {\n margin-left: 66.66666667%;\n}\n.col-xs-offset-7 {\n margin-left: 58.33333333%;\n}\n.col-xs-offset-6 {\n margin-left: 50%;\n}\n.col-xs-offset-5 {\n margin-left: 41.66666667%;\n}\n.col-xs-offset-4 {\n margin-left: 33.33333333%;\n}\n.col-xs-offset-3 {\n margin-left: 25%;\n}\n.col-xs-offset-2 {\n margin-left: 16.66666667%;\n}\n.col-xs-offset-1 {\n margin-left: 8.33333333%;\n}\n.col-xs-offset-0 {\n margin-left: 0%;\n}\n@media (min-width: 768px) {\n .col-sm-1,\n .col-sm-2,\n .col-sm-3,\n .col-sm-4,\n .col-sm-5,\n .col-sm-6,\n .col-sm-7,\n .col-sm-8,\n .col-sm-9,\n .col-sm-10,\n .col-sm-11,\n .col-sm-12 {\n float: left;\n }\n .col-sm-12 {\n width: 100%;\n }\n .col-sm-11 {\n width: 91.66666667%;\n }\n .col-sm-10 {\n width: 83.33333333%;\n }\n .col-sm-9 {\n width: 75%;\n }\n .col-sm-8 {\n width: 66.66666667%;\n }\n .col-sm-7 {\n width: 58.33333333%;\n }\n .col-sm-6 {\n width: 50%;\n }\n .col-sm-5 {\n width: 41.66666667%;\n }\n .col-sm-4 {\n width: 33.33333333%;\n }\n .col-sm-3 {\n width: 25%;\n }\n .col-sm-2 {\n width: 16.66666667%;\n }\n .col-sm-1 {\n width: 8.33333333%;\n }\n .col-sm-pull-12 {\n right: 100%;\n }\n .col-sm-pull-11 {\n right: 91.66666667%;\n }\n .col-sm-pull-10 {\n right: 83.33333333%;\n }\n .col-sm-pull-9 {\n right: 75%;\n }\n .col-sm-pull-8 {\n right: 66.66666667%;\n }\n .col-sm-pull-7 {\n right: 58.33333333%;\n }\n .col-sm-pull-6 {\n right: 50%;\n }\n .col-sm-pull-5 {\n right: 41.66666667%;\n }\n .col-sm-pull-4 {\n right: 33.33333333%;\n }\n .col-sm-pull-3 {\n right: 25%;\n }\n .col-sm-pull-2 {\n right: 16.66666667%;\n }\n .col-sm-pull-1 {\n right: 8.33333333%;\n }\n .col-sm-pull-0 {\n right: auto;\n }\n .col-sm-push-12 {\n left: 100%;\n }\n .col-sm-push-11 {\n left: 91.66666667%;\n }\n .col-sm-push-10 {\n left: 83.33333333%;\n }\n .col-sm-push-9 {\n left: 75%;\n }\n .col-sm-push-8 {\n left: 66.66666667%;\n }\n .col-sm-push-7 {\n left: 58.33333333%;\n }\n .col-sm-push-6 {\n left: 50%;\n }\n .col-sm-push-5 {\n left: 41.66666667%;\n }\n .col-sm-push-4 {\n left: 33.33333333%;\n }\n .col-sm-push-3 {\n left: 25%;\n }\n .col-sm-push-2 {\n left: 16.66666667%;\n }\n .col-sm-push-1 {\n left: 8.33333333%;\n }\n .col-sm-push-0 {\n left: auto;\n }\n .col-sm-offset-12 {\n margin-left: 100%;\n }\n .col-sm-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-sm-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-sm-offset-9 {\n margin-left: 75%;\n }\n .col-sm-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-sm-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-sm-offset-6 {\n margin-left: 50%;\n }\n .col-sm-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-sm-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-sm-offset-3 {\n margin-left: 25%;\n }\n .col-sm-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-sm-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-sm-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 992px) {\n .col-md-1,\n .col-md-2,\n .col-md-3,\n .col-md-4,\n .col-md-5,\n .col-md-6,\n .col-md-7,\n .col-md-8,\n .col-md-9,\n .col-md-10,\n .col-md-11,\n .col-md-12 {\n float: left;\n }\n .col-md-12 {\n width: 100%;\n }\n .col-md-11 {\n width: 91.66666667%;\n }\n .col-md-10 {\n width: 83.33333333%;\n }\n .col-md-9 {\n width: 75%;\n }\n .col-md-8 {\n width: 66.66666667%;\n }\n .col-md-7 {\n width: 58.33333333%;\n }\n .col-md-6 {\n width: 50%;\n }\n .col-md-5 {\n width: 41.66666667%;\n }\n .col-md-4 {\n width: 33.33333333%;\n }\n .col-md-3 {\n width: 25%;\n }\n .col-md-2 {\n width: 16.66666667%;\n }\n .col-md-1 {\n width: 8.33333333%;\n }\n .col-md-pull-12 {\n right: 100%;\n }\n .col-md-pull-11 {\n right: 91.66666667%;\n }\n .col-md-pull-10 {\n right: 83.33333333%;\n }\n .col-md-pull-9 {\n right: 75%;\n }\n .col-md-pull-8 {\n right: 66.66666667%;\n }\n .col-md-pull-7 {\n right: 58.33333333%;\n }\n .col-md-pull-6 {\n right: 50%;\n }\n .col-md-pull-5 {\n right: 41.66666667%;\n }\n .col-md-pull-4 {\n right: 33.33333333%;\n }\n .col-md-pull-3 {\n right: 25%;\n }\n .col-md-pull-2 {\n right: 16.66666667%;\n }\n .col-md-pull-1 {\n right: 8.33333333%;\n }\n .col-md-pull-0 {\n right: auto;\n }\n .col-md-push-12 {\n left: 100%;\n }\n .col-md-push-11 {\n left: 91.66666667%;\n }\n .col-md-push-10 {\n left: 83.33333333%;\n }\n .col-md-push-9 {\n left: 75%;\n }\n .col-md-push-8 {\n left: 66.66666667%;\n }\n .col-md-push-7 {\n left: 58.33333333%;\n }\n .col-md-push-6 {\n left: 50%;\n }\n .col-md-push-5 {\n left: 41.66666667%;\n }\n .col-md-push-4 {\n left: 33.33333333%;\n }\n .col-md-push-3 {\n left: 25%;\n }\n .col-md-push-2 {\n left: 16.66666667%;\n }\n .col-md-push-1 {\n left: 8.33333333%;\n }\n .col-md-push-0 {\n left: auto;\n }\n .col-md-offset-12 {\n margin-left: 100%;\n }\n .col-md-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-md-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-md-offset-9 {\n margin-left: 75%;\n }\n .col-md-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-md-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-md-offset-6 {\n margin-left: 50%;\n }\n .col-md-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-md-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-md-offset-3 {\n margin-left: 25%;\n }\n .col-md-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-md-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-md-offset-0 {\n margin-left: 0%;\n }\n}\n@media (min-width: 1200px) {\n .col-lg-1,\n .col-lg-2,\n .col-lg-3,\n .col-lg-4,\n .col-lg-5,\n .col-lg-6,\n .col-lg-7,\n .col-lg-8,\n .col-lg-9,\n .col-lg-10,\n .col-lg-11,\n .col-lg-12 {\n float: left;\n }\n .col-lg-12 {\n width: 100%;\n }\n .col-lg-11 {\n width: 91.66666667%;\n }\n .col-lg-10 {\n width: 83.33333333%;\n }\n .col-lg-9 {\n width: 75%;\n }\n .col-lg-8 {\n width: 66.66666667%;\n }\n .col-lg-7 {\n width: 58.33333333%;\n }\n .col-lg-6 {\n width: 50%;\n }\n .col-lg-5 {\n width: 41.66666667%;\n }\n .col-lg-4 {\n width: 33.33333333%;\n }\n .col-lg-3 {\n width: 25%;\n }\n .col-lg-2 {\n width: 16.66666667%;\n }\n .col-lg-1 {\n width: 8.33333333%;\n }\n .col-lg-pull-12 {\n right: 100%;\n }\n .col-lg-pull-11 {\n right: 91.66666667%;\n }\n .col-lg-pull-10 {\n right: 83.33333333%;\n }\n .col-lg-pull-9 {\n right: 75%;\n }\n .col-lg-pull-8 {\n right: 66.66666667%;\n }\n .col-lg-pull-7 {\n right: 58.33333333%;\n }\n .col-lg-pull-6 {\n right: 50%;\n }\n .col-lg-pull-5 {\n right: 41.66666667%;\n }\n .col-lg-pull-4 {\n right: 33.33333333%;\n }\n .col-lg-pull-3 {\n right: 25%;\n }\n .col-lg-pull-2 {\n right: 16.66666667%;\n }\n .col-lg-pull-1 {\n right: 8.33333333%;\n }\n .col-lg-pull-0 {\n right: auto;\n }\n .col-lg-push-12 {\n left: 100%;\n }\n .col-lg-push-11 {\n left: 91.66666667%;\n }\n .col-lg-push-10 {\n left: 83.33333333%;\n }\n .col-lg-push-9 {\n left: 75%;\n }\n .col-lg-push-8 {\n left: 66.66666667%;\n }\n .col-lg-push-7 {\n left: 58.33333333%;\n }\n .col-lg-push-6 {\n left: 50%;\n }\n .col-lg-push-5 {\n left: 41.66666667%;\n }\n .col-lg-push-4 {\n left: 33.33333333%;\n }\n .col-lg-push-3 {\n left: 25%;\n }\n .col-lg-push-2 {\n left: 16.66666667%;\n }\n .col-lg-push-1 {\n left: 8.33333333%;\n }\n .col-lg-push-0 {\n left: auto;\n }\n .col-lg-offset-12 {\n margin-left: 100%;\n }\n .col-lg-offset-11 {\n margin-left: 91.66666667%;\n }\n .col-lg-offset-10 {\n margin-left: 83.33333333%;\n }\n .col-lg-offset-9 {\n margin-left: 75%;\n }\n .col-lg-offset-8 {\n margin-left: 66.66666667%;\n }\n .col-lg-offset-7 {\n margin-left: 58.33333333%;\n }\n .col-lg-offset-6 {\n margin-left: 50%;\n }\n .col-lg-offset-5 {\n margin-left: 41.66666667%;\n }\n .col-lg-offset-4 {\n margin-left: 33.33333333%;\n }\n .col-lg-offset-3 {\n margin-left: 25%;\n }\n .col-lg-offset-2 {\n margin-left: 16.66666667%;\n }\n .col-lg-offset-1 {\n margin-left: 8.33333333%;\n }\n .col-lg-offset-0 {\n margin-left: 0%;\n }\n}\ntable {\n background-color: transparent;\n}\ntable col[class*=\"col-\"] {\n position: static;\n display: table-column;\n float: none;\n}\ntable td[class*=\"col-\"],\ntable th[class*=\"col-\"] {\n position: static;\n display: table-cell;\n float: none;\n}\ncaption {\n padding-top: 8px;\n padding-bottom: 8px;\n color: #777777;\n text-align: left;\n}\nth {\n text-align: left;\n}\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: 20px;\n}\n.table > thead > tr > th,\n.table > tbody > tr > th,\n.table > tfoot > tr > th,\n.table > thead > tr > td,\n.table > tbody > tr > td,\n.table > tfoot > tr > td {\n padding: 8px;\n line-height: 1.42857143;\n vertical-align: top;\n border-top: 1px solid #ddd;\n}\n.table > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid #ddd;\n}\n.table > caption + thead > tr:first-child > th,\n.table > colgroup + thead > tr:first-child > th,\n.table > thead:first-child > tr:first-child > th,\n.table > caption + thead > tr:first-child > td,\n.table > colgroup + thead > tr:first-child > td,\n.table > thead:first-child > tr:first-child > td {\n border-top: 0;\n}\n.table > tbody + tbody {\n border-top: 2px solid #ddd;\n}\n.table .table {\n background-color: #fff;\n}\n.table-condensed > thead > tr > th,\n.table-condensed > tbody > tr > th,\n.table-condensed > tfoot > tr > th,\n.table-condensed > thead > tr > td,\n.table-condensed > tbody > tr > td,\n.table-condensed > tfoot > tr > td {\n padding: 5px;\n}\n.table-bordered {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > tbody > tr > th,\n.table-bordered > tfoot > tr > th,\n.table-bordered > thead > tr > td,\n.table-bordered > tbody > tr > td,\n.table-bordered > tfoot > tr > td {\n border: 1px solid #ddd;\n}\n.table-bordered > thead > tr > th,\n.table-bordered > thead > tr > td {\n border-bottom-width: 2px;\n}\n.table-striped > tbody > tr:nth-of-type(odd) {\n background-color: #f9f9f9;\n}\n.table-hover > tbody > tr:hover {\n background-color: #f5f5f5;\n}\n.table > thead > tr > td.active,\n.table > tbody > tr > td.active,\n.table > tfoot > tr > td.active,\n.table > thead > tr > th.active,\n.table > tbody > tr > th.active,\n.table > tfoot > tr > th.active,\n.table > thead > tr.active > td,\n.table > tbody > tr.active > td,\n.table > tfoot > tr.active > td,\n.table > thead > tr.active > th,\n.table > tbody > tr.active > th,\n.table > tfoot > tr.active > th {\n background-color: #f5f5f5;\n}\n.table-hover > tbody > tr > td.active:hover,\n.table-hover > tbody > tr > th.active:hover,\n.table-hover > tbody > tr.active:hover > td,\n.table-hover > tbody > tr:hover > .active,\n.table-hover > tbody > tr.active:hover > th {\n background-color: #e8e8e8;\n}\n.table > thead > tr > td.success,\n.table > tbody > tr > td.success,\n.table > tfoot > tr > td.success,\n.table > thead > tr > th.success,\n.table > tbody > tr > th.success,\n.table > tfoot > tr > th.success,\n.table > thead > tr.success > td,\n.table > tbody > tr.success > td,\n.table > tfoot > tr.success > td,\n.table > thead > tr.success > th,\n.table > tbody > tr.success > th,\n.table > tfoot > tr.success > th {\n background-color: #dff0d8;\n}\n.table-hover > tbody > tr > td.success:hover,\n.table-hover > tbody > tr > th.success:hover,\n.table-hover > tbody > tr.success:hover > td,\n.table-hover > tbody > tr:hover > .success,\n.table-hover > tbody > tr.success:hover > th {\n background-color: #d0e9c6;\n}\n.table > thead > tr > td.info,\n.table > tbody > tr > td.info,\n.table > tfoot > tr > td.info,\n.table > thead > tr > th.info,\n.table > tbody > tr > th.info,\n.table > tfoot > tr > th.info,\n.table > thead > tr.info > td,\n.table > tbody > tr.info > td,\n.table > tfoot > tr.info > td,\n.table > thead > tr.info > th,\n.table > tbody > tr.info > th,\n.table > tfoot > tr.info > th {\n background-color: #d9edf7;\n}\n.table-hover > tbody > tr > td.info:hover,\n.table-hover > tbody > tr > th.info:hover,\n.table-hover > tbody > tr.info:hover > td,\n.table-hover > tbody > tr:hover > .info,\n.table-hover > tbody > tr.info:hover > th {\n background-color: #c4e3f3;\n}\n.table > thead > tr > td.warning,\n.table > tbody > tr > td.warning,\n.table > tfoot > tr > td.warning,\n.table > thead > tr > th.warning,\n.table > tbody > tr > th.warning,\n.table > tfoot > tr > th.warning,\n.table > thead > tr.warning > td,\n.table > tbody > tr.warning > td,\n.table > tfoot > tr.warning > td,\n.table > thead > tr.warning > th,\n.table > tbody > tr.warning > th,\n.table > tfoot > tr.warning > th {\n background-color: #fcf8e3;\n}\n.table-hover > tbody > tr > td.warning:hover,\n.table-hover > tbody > tr > th.warning:hover,\n.table-hover > tbody > tr.warning:hover > td,\n.table-hover > tbody > tr:hover > .warning,\n.table-hover > tbody > tr.warning:hover > th {\n background-color: #faf2cc;\n}\n.table > thead > tr > td.danger,\n.table > tbody > tr > td.danger,\n.table > tfoot > tr > td.danger,\n.table > thead > tr > th.danger,\n.table > tbody > tr > th.danger,\n.table > tfoot > tr > th.danger,\n.table > thead > tr.danger > td,\n.table > tbody > tr.danger > td,\n.table > tfoot > tr.danger > td,\n.table > thead > tr.danger > th,\n.table > tbody > tr.danger > th,\n.table > tfoot > tr.danger > th {\n background-color: #f2dede;\n}\n.table-hover > tbody > tr > td.danger:hover,\n.table-hover > tbody > tr > th.danger:hover,\n.table-hover > tbody > tr.danger:hover > td,\n.table-hover > tbody > tr:hover > .danger,\n.table-hover > tbody > tr.danger:hover > th {\n background-color: #ebcccc;\n}\n.table-responsive {\n min-height: 0.01%;\n overflow-x: auto;\n}\n@media screen and (max-width: 767px) {\n .table-responsive {\n width: 100%;\n margin-bottom: 15px;\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid #ddd;\n }\n .table-responsive > .table {\n margin-bottom: 0;\n }\n .table-responsive > .table > thead > tr > th,\n .table-responsive > .table > tbody > tr > th,\n .table-responsive > .table > tfoot > tr > th,\n .table-responsive > .table > thead > tr > td,\n .table-responsive > .table > tbody > tr > td,\n .table-responsive > .table > tfoot > tr > td {\n white-space: nowrap;\n }\n .table-responsive > .table-bordered {\n border: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:first-child,\n .table-responsive > .table-bordered > tbody > tr > th:first-child,\n .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n .table-responsive > .table-bordered > thead > tr > td:first-child,\n .table-responsive > .table-bordered > tbody > tr > td:first-child,\n .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n }\n .table-responsive > .table-bordered > thead > tr > th:last-child,\n .table-responsive > .table-bordered > tbody > tr > th:last-child,\n .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n .table-responsive > .table-bordered > thead > tr > td:last-child,\n .table-responsive > .table-bordered > tbody > tr > td:last-child,\n .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n }\n .table-responsive > .table-bordered > tbody > tr:last-child > th,\n .table-responsive > .table-bordered > tfoot > tr:last-child > th,\n .table-responsive > .table-bordered > tbody > tr:last-child > td,\n .table-responsive > .table-bordered > tfoot > tr:last-child > td {\n border-bottom: 0;\n }\n}\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: 20px;\n font-size: 21px;\n line-height: inherit;\n color: #333333;\n border: 0;\n border-bottom: 1px solid #e5e5e5;\n}\nlabel {\n display: inline-block;\n max-width: 100%;\n margin-bottom: 5px;\n font-weight: 700;\n}\ninput[type=\"search\"] {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9;\n line-height: normal;\n}\ninput[type=\"radio\"][disabled],\ninput[type=\"checkbox\"][disabled],\ninput[type=\"radio\"].disabled,\ninput[type=\"checkbox\"].disabled,\nfieldset[disabled] input[type=\"radio\"],\nfieldset[disabled] input[type=\"checkbox\"] {\n cursor: not-allowed;\n}\ninput[type=\"file\"] {\n display: block;\n}\ninput[type=\"range\"] {\n display: block;\n width: 100%;\n}\nselect[multiple],\nselect[size] {\n height: auto;\n}\ninput[type=\"file\"]:focus,\ninput[type=\"radio\"]:focus,\ninput[type=\"checkbox\"]:focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\noutput {\n display: block;\n padding-top: 7px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n}\n.form-control {\n display: block;\n width: 100%;\n height: 34px;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n color: #555555;\n background-color: #fff;\n background-image: none;\n border: 1px solid #ccc;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;\n transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;\n}\n.form-control:focus {\n border-color: #66afe9;\n outline: 0;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, 0.6);\n}\n.form-control::-moz-placeholder {\n color: #999;\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: #999;\n}\n.form-control::-webkit-input-placeholder {\n color: #999;\n}\n.form-control::-ms-expand {\n background-color: transparent;\n border: 0;\n}\n.form-control[disabled],\n.form-control[readonly],\nfieldset[disabled] .form-control {\n background-color: #eeeeee;\n opacity: 1;\n}\n.form-control[disabled],\nfieldset[disabled] .form-control {\n cursor: not-allowed;\n}\ntextarea.form-control {\n height: auto;\n}\n@media screen and (-webkit-min-device-pixel-ratio: 0) {\n input[type=\"date\"].form-control,\n input[type=\"time\"].form-control,\n input[type=\"datetime-local\"].form-control,\n input[type=\"month\"].form-control {\n line-height: 34px;\n }\n input[type=\"date\"].input-sm,\n input[type=\"time\"].input-sm,\n input[type=\"datetime-local\"].input-sm,\n input[type=\"month\"].input-sm,\n .input-group-sm input[type=\"date\"],\n .input-group-sm input[type=\"time\"],\n .input-group-sm input[type=\"datetime-local\"],\n .input-group-sm input[type=\"month\"] {\n line-height: 30px;\n }\n input[type=\"date\"].input-lg,\n input[type=\"time\"].input-lg,\n input[type=\"datetime-local\"].input-lg,\n input[type=\"month\"].input-lg,\n .input-group-lg input[type=\"date\"],\n .input-group-lg input[type=\"time\"],\n .input-group-lg input[type=\"datetime-local\"],\n .input-group-lg input[type=\"month\"] {\n line-height: 46px;\n }\n}\n.form-group {\n margin-bottom: 15px;\n}\n.radio,\n.checkbox {\n position: relative;\n display: block;\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.radio.disabled label,\n.checkbox.disabled label,\nfieldset[disabled] .radio label,\nfieldset[disabled] .checkbox label {\n cursor: not-allowed;\n}\n.radio label,\n.checkbox label {\n min-height: 20px;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n cursor: pointer;\n}\n.radio input[type=\"radio\"],\n.radio-inline input[type=\"radio\"],\n.checkbox input[type=\"checkbox\"],\n.checkbox-inline input[type=\"checkbox\"] {\n position: absolute;\n margin-top: 4px \\9;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px;\n}\n.radio-inline,\n.checkbox-inline {\n position: relative;\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: 400;\n vertical-align: middle;\n cursor: pointer;\n}\n.radio-inline.disabled,\n.checkbox-inline.disabled,\nfieldset[disabled] .radio-inline,\nfieldset[disabled] .checkbox-inline {\n cursor: not-allowed;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px;\n}\n.form-control-static {\n min-height: 34px;\n padding-top: 7px;\n padding-bottom: 7px;\n margin-bottom: 0;\n}\n.form-control-static.input-lg,\n.form-control-static.input-sm {\n padding-right: 0;\n padding-left: 0;\n}\n.input-sm {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-sm {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-sm,\nselect[multiple].input-sm {\n height: auto;\n}\n.form-group-sm .form-control {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.form-group-sm select.form-control {\n height: 30px;\n line-height: 30px;\n}\n.form-group-sm textarea.form-control,\n.form-group-sm select[multiple].form-control {\n height: auto;\n}\n.form-group-sm .form-control-static {\n height: 30px;\n min-height: 32px;\n padding: 6px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.input-lg {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-lg {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-lg,\nselect[multiple].input-lg {\n height: auto;\n}\n.form-group-lg .form-control {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.form-group-lg select.form-control {\n height: 46px;\n line-height: 46px;\n}\n.form-group-lg textarea.form-control,\n.form-group-lg select[multiple].form-control {\n height: auto;\n}\n.form-group-lg .form-control-static {\n height: 46px;\n min-height: 38px;\n padding: 11px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.has-feedback {\n position: relative;\n}\n.has-feedback .form-control {\n padding-right: 42.5px;\n}\n.form-control-feedback {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n display: block;\n width: 34px;\n height: 34px;\n line-height: 34px;\n text-align: center;\n pointer-events: none;\n}\n.input-lg + .form-control-feedback,\n.input-group-lg + .form-control-feedback,\n.form-group-lg .form-control + .form-control-feedback {\n width: 46px;\n height: 46px;\n line-height: 46px;\n}\n.input-sm + .form-control-feedback,\n.input-group-sm + .form-control-feedback,\n.form-group-sm .form-control + .form-control-feedback {\n width: 30px;\n height: 30px;\n line-height: 30px;\n}\n.has-success .help-block,\n.has-success .control-label,\n.has-success .radio,\n.has-success .checkbox,\n.has-success .radio-inline,\n.has-success .checkbox-inline,\n.has-success.radio label,\n.has-success.checkbox label,\n.has-success.radio-inline label,\n.has-success.checkbox-inline label {\n color: #3c763d;\n}\n.has-success .form-control {\n border-color: #3c763d;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-success .form-control:focus {\n border-color: #2b542c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;\n}\n.has-success .input-group-addon {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #3c763d;\n}\n.has-success .form-control-feedback {\n color: #3c763d;\n}\n.has-warning .help-block,\n.has-warning .control-label,\n.has-warning .radio,\n.has-warning .checkbox,\n.has-warning .radio-inline,\n.has-warning .checkbox-inline,\n.has-warning.radio label,\n.has-warning.checkbox label,\n.has-warning.radio-inline label,\n.has-warning.checkbox-inline label {\n color: #8a6d3b;\n}\n.has-warning .form-control {\n border-color: #8a6d3b;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-warning .form-control:focus {\n border-color: #66512c;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;\n}\n.has-warning .input-group-addon {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #8a6d3b;\n}\n.has-warning .form-control-feedback {\n color: #8a6d3b;\n}\n.has-error .help-block,\n.has-error .control-label,\n.has-error .radio,\n.has-error .checkbox,\n.has-error .radio-inline,\n.has-error .checkbox-inline,\n.has-error.radio label,\n.has-error.checkbox label,\n.has-error.radio-inline label,\n.has-error.checkbox-inline label {\n color: #a94442;\n}\n.has-error .form-control {\n border-color: #a94442;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n.has-error .form-control:focus {\n border-color: #843534;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;\n}\n.has-error .input-group-addon {\n color: #a94442;\n background-color: #f2dede;\n border-color: #a94442;\n}\n.has-error .form-control-feedback {\n color: #a94442;\n}\n.has-feedback label ~ .form-control-feedback {\n top: 25px;\n}\n.has-feedback label.sr-only ~ .form-control-feedback {\n top: 0;\n}\n.help-block {\n display: block;\n margin-top: 5px;\n margin-bottom: 10px;\n color: #737373;\n}\n@media (min-width: 768px) {\n .form-inline .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .form-inline .form-control-static {\n display: inline-block;\n }\n .form-inline .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .form-inline .input-group .input-group-addon,\n .form-inline .input-group .input-group-btn,\n .form-inline .input-group .form-control {\n width: auto;\n }\n .form-inline .input-group > .form-control {\n width: 100%;\n }\n .form-inline .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio,\n .form-inline .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .form-inline .radio label,\n .form-inline .checkbox label {\n padding-left: 0;\n }\n .form-inline .radio input[type=\"radio\"],\n .form-inline .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .form-inline .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox,\n.form-horizontal .radio-inline,\n.form-horizontal .checkbox-inline {\n padding-top: 7px;\n margin-top: 0;\n margin-bottom: 0;\n}\n.form-horizontal .radio,\n.form-horizontal .checkbox {\n min-height: 27px;\n}\n.form-horizontal .form-group {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .control-label {\n padding-top: 7px;\n margin-bottom: 0;\n text-align: right;\n }\n}\n.form-horizontal .has-feedback .form-control-feedback {\n right: 15px;\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-lg .control-label {\n padding-top: 11px;\n font-size: 18px;\n }\n}\n@media (min-width: 768px) {\n .form-horizontal .form-group-sm .control-label {\n padding-top: 6px;\n font-size: 12px;\n }\n}\n.btn {\n display: inline-block;\n margin-bottom: 0;\n font-weight: normal;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n -ms-touch-action: manipulation;\n touch-action: manipulation;\n cursor: pointer;\n background-image: none;\n border: 1px solid transparent;\n padding: 6px 12px;\n font-size: 14px;\n line-height: 1.42857143;\n border-radius: 4px;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n}\n.btn:focus,\n.btn:active:focus,\n.btn.active:focus,\n.btn.focus,\n.btn:active.focus,\n.btn.active.focus {\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n.btn:hover,\n.btn:focus,\n.btn.focus {\n color: #333;\n text-decoration: none;\n}\n.btn:active,\n.btn.active {\n background-image: none;\n outline: 0;\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn.disabled,\n.btn[disabled],\nfieldset[disabled] .btn {\n cursor: not-allowed;\n filter: alpha(opacity=65);\n opacity: 0.65;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\na.btn.disabled,\nfieldset[disabled] a.btn {\n pointer-events: none;\n}\n.btn-default {\n color: #333;\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default:focus,\n.btn-default.focus {\n color: #333;\n background-color: #e6e6e6;\n border-color: #8c8c8c;\n}\n.btn-default:hover {\n color: #333;\n background-color: #e6e6e6;\n border-color: #adadad;\n}\n.btn-default:active,\n.btn-default.active,\n.open > .dropdown-toggle.btn-default {\n color: #333;\n background-color: #e6e6e6;\n background-image: none;\n border-color: #adadad;\n}\n.btn-default:active:hover,\n.btn-default.active:hover,\n.open > .dropdown-toggle.btn-default:hover,\n.btn-default:active:focus,\n.btn-default.active:focus,\n.open > .dropdown-toggle.btn-default:focus,\n.btn-default:active.focus,\n.btn-default.active.focus,\n.open > .dropdown-toggle.btn-default.focus {\n color: #333;\n background-color: #d4d4d4;\n border-color: #8c8c8c;\n}\n.btn-default.disabled:hover,\n.btn-default[disabled]:hover,\nfieldset[disabled] .btn-default:hover,\n.btn-default.disabled:focus,\n.btn-default[disabled]:focus,\nfieldset[disabled] .btn-default:focus,\n.btn-default.disabled.focus,\n.btn-default[disabled].focus,\nfieldset[disabled] .btn-default.focus {\n background-color: #fff;\n border-color: #ccc;\n}\n.btn-default .badge {\n color: #fff;\n background-color: #333;\n}\n.btn-primary {\n color: #fff;\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary:focus,\n.btn-primary.focus {\n color: #fff;\n background-color: #286090;\n border-color: #122b40;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #286090;\n border-color: #204d74;\n}\n.btn-primary:active,\n.btn-primary.active,\n.open > .dropdown-toggle.btn-primary {\n color: #fff;\n background-color: #286090;\n background-image: none;\n border-color: #204d74;\n}\n.btn-primary:active:hover,\n.btn-primary.active:hover,\n.open > .dropdown-toggle.btn-primary:hover,\n.btn-primary:active:focus,\n.btn-primary.active:focus,\n.open > .dropdown-toggle.btn-primary:focus,\n.btn-primary:active.focus,\n.btn-primary.active.focus,\n.open > .dropdown-toggle.btn-primary.focus {\n color: #fff;\n background-color: #204d74;\n border-color: #122b40;\n}\n.btn-primary.disabled:hover,\n.btn-primary[disabled]:hover,\nfieldset[disabled] .btn-primary:hover,\n.btn-primary.disabled:focus,\n.btn-primary[disabled]:focus,\nfieldset[disabled] .btn-primary:focus,\n.btn-primary.disabled.focus,\n.btn-primary[disabled].focus,\nfieldset[disabled] .btn-primary.focus {\n background-color: #337ab7;\n border-color: #2e6da4;\n}\n.btn-primary .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.btn-success {\n color: #fff;\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success:focus,\n.btn-success.focus {\n color: #fff;\n background-color: #449d44;\n border-color: #255625;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #449d44;\n border-color: #398439;\n}\n.btn-success:active,\n.btn-success.active,\n.open > .dropdown-toggle.btn-success {\n color: #fff;\n background-color: #449d44;\n background-image: none;\n border-color: #398439;\n}\n.btn-success:active:hover,\n.btn-success.active:hover,\n.open > .dropdown-toggle.btn-success:hover,\n.btn-success:active:focus,\n.btn-success.active:focus,\n.open > .dropdown-toggle.btn-success:focus,\n.btn-success:active.focus,\n.btn-success.active.focus,\n.open > .dropdown-toggle.btn-success.focus {\n color: #fff;\n background-color: #398439;\n border-color: #255625;\n}\n.btn-success.disabled:hover,\n.btn-success[disabled]:hover,\nfieldset[disabled] .btn-success:hover,\n.btn-success.disabled:focus,\n.btn-success[disabled]:focus,\nfieldset[disabled] .btn-success:focus,\n.btn-success.disabled.focus,\n.btn-success[disabled].focus,\nfieldset[disabled] .btn-success.focus {\n background-color: #5cb85c;\n border-color: #4cae4c;\n}\n.btn-success .badge {\n color: #5cb85c;\n background-color: #fff;\n}\n.btn-info {\n color: #fff;\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info:focus,\n.btn-info.focus {\n color: #fff;\n background-color: #31b0d5;\n border-color: #1b6d85;\n}\n.btn-info:hover {\n color: #fff;\n background-color: #31b0d5;\n border-color: #269abc;\n}\n.btn-info:active,\n.btn-info.active,\n.open > .dropdown-toggle.btn-info {\n color: #fff;\n background-color: #31b0d5;\n background-image: none;\n border-color: #269abc;\n}\n.btn-info:active:hover,\n.btn-info.active:hover,\n.open > .dropdown-toggle.btn-info:hover,\n.btn-info:active:focus,\n.btn-info.active:focus,\n.open > .dropdown-toggle.btn-info:focus,\n.btn-info:active.focus,\n.btn-info.active.focus,\n.open > .dropdown-toggle.btn-info.focus {\n color: #fff;\n background-color: #269abc;\n border-color: #1b6d85;\n}\n.btn-info.disabled:hover,\n.btn-info[disabled]:hover,\nfieldset[disabled] .btn-info:hover,\n.btn-info.disabled:focus,\n.btn-info[disabled]:focus,\nfieldset[disabled] .btn-info:focus,\n.btn-info.disabled.focus,\n.btn-info[disabled].focus,\nfieldset[disabled] .btn-info.focus {\n background-color: #5bc0de;\n border-color: #46b8da;\n}\n.btn-info .badge {\n color: #5bc0de;\n background-color: #fff;\n}\n.btn-warning {\n color: #fff;\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning:focus,\n.btn-warning.focus {\n color: #fff;\n background-color: #ec971f;\n border-color: #985f0d;\n}\n.btn-warning:hover {\n color: #fff;\n background-color: #ec971f;\n border-color: #d58512;\n}\n.btn-warning:active,\n.btn-warning.active,\n.open > .dropdown-toggle.btn-warning {\n color: #fff;\n background-color: #ec971f;\n background-image: none;\n border-color: #d58512;\n}\n.btn-warning:active:hover,\n.btn-warning.active:hover,\n.open > .dropdown-toggle.btn-warning:hover,\n.btn-warning:active:focus,\n.btn-warning.active:focus,\n.open > .dropdown-toggle.btn-warning:focus,\n.btn-warning:active.focus,\n.btn-warning.active.focus,\n.open > .dropdown-toggle.btn-warning.focus {\n color: #fff;\n background-color: #d58512;\n border-color: #985f0d;\n}\n.btn-warning.disabled:hover,\n.btn-warning[disabled]:hover,\nfieldset[disabled] .btn-warning:hover,\n.btn-warning.disabled:focus,\n.btn-warning[disabled]:focus,\nfieldset[disabled] .btn-warning:focus,\n.btn-warning.disabled.focus,\n.btn-warning[disabled].focus,\nfieldset[disabled] .btn-warning.focus {\n background-color: #f0ad4e;\n border-color: #eea236;\n}\n.btn-warning .badge {\n color: #f0ad4e;\n background-color: #fff;\n}\n.btn-danger {\n color: #fff;\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger:focus,\n.btn-danger.focus {\n color: #fff;\n background-color: #c9302c;\n border-color: #761c19;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #c9302c;\n border-color: #ac2925;\n}\n.btn-danger:active,\n.btn-danger.active,\n.open > .dropdown-toggle.btn-danger {\n color: #fff;\n background-color: #c9302c;\n background-image: none;\n border-color: #ac2925;\n}\n.btn-danger:active:hover,\n.btn-danger.active:hover,\n.open > .dropdown-toggle.btn-danger:hover,\n.btn-danger:active:focus,\n.btn-danger.active:focus,\n.open > .dropdown-toggle.btn-danger:focus,\n.btn-danger:active.focus,\n.btn-danger.active.focus,\n.open > .dropdown-toggle.btn-danger.focus {\n color: #fff;\n background-color: #ac2925;\n border-color: #761c19;\n}\n.btn-danger.disabled:hover,\n.btn-danger[disabled]:hover,\nfieldset[disabled] .btn-danger:hover,\n.btn-danger.disabled:focus,\n.btn-danger[disabled]:focus,\nfieldset[disabled] .btn-danger:focus,\n.btn-danger.disabled.focus,\n.btn-danger[disabled].focus,\nfieldset[disabled] .btn-danger.focus {\n background-color: #d9534f;\n border-color: #d43f3a;\n}\n.btn-danger .badge {\n color: #d9534f;\n background-color: #fff;\n}\n.btn-link {\n font-weight: 400;\n color: #337ab7;\n border-radius: 0;\n}\n.btn-link,\n.btn-link:active,\n.btn-link.active,\n.btn-link[disabled],\nfieldset[disabled] .btn-link {\n background-color: transparent;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn-link,\n.btn-link:hover,\n.btn-link:focus,\n.btn-link:active {\n border-color: transparent;\n}\n.btn-link:hover,\n.btn-link:focus {\n color: #23527c;\n text-decoration: underline;\n background-color: transparent;\n}\n.btn-link[disabled]:hover,\nfieldset[disabled] .btn-link:hover,\n.btn-link[disabled]:focus,\nfieldset[disabled] .btn-link:focus {\n color: #777777;\n text-decoration: none;\n}\n.btn-lg,\n.btn-group-lg > .btn {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\n.btn-sm,\n.btn-group-sm > .btn {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-xs,\n.btn-group-xs > .btn {\n padding: 1px 5px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\n.btn-block {\n display: block;\n width: 100%;\n}\n.btn-block + .btn-block {\n margin-top: 5px;\n}\ninput[type=\"submit\"].btn-block,\ninput[type=\"reset\"].btn-block,\ninput[type=\"button\"].btn-block {\n width: 100%;\n}\n.fade {\n opacity: 0;\n -webkit-transition: opacity 0.15s linear;\n -o-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n.fade.in {\n opacity: 1;\n}\n.collapse {\n display: none;\n}\n.collapse.in {\n display: block;\n}\ntr.collapse.in {\n display: table-row;\n}\ntbody.collapse.in {\n display: table-row-group;\n}\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n -webkit-transition-property: height, visibility;\n -o-transition-property: height, visibility;\n transition-property: height, visibility;\n -webkit-transition-duration: 0.35s;\n -o-transition-duration: 0.35s;\n transition-duration: 0.35s;\n -webkit-transition-timing-function: ease;\n -o-transition-timing-function: ease;\n transition-timing-function: ease;\n}\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: 4px dashed;\n border-top: 4px solid \\9;\n border-right: 4px solid transparent;\n border-left: 4px solid transparent;\n}\n.dropup,\n.dropdown {\n position: relative;\n}\n.dropdown-toggle:focus {\n outline: 0;\n}\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: 1000;\n display: none;\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0;\n font-size: 14px;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 4px;\n -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);\n}\n.dropdown-menu.pull-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu .divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.dropdown-menu > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: 400;\n line-height: 1.42857143;\n color: #333333;\n white-space: nowrap;\n}\n.dropdown-menu > li > a:hover,\n.dropdown-menu > li > a:focus {\n color: #262626;\n text-decoration: none;\n background-color: #f5f5f5;\n}\n.dropdown-menu > .active > a,\n.dropdown-menu > .active > a:hover,\n.dropdown-menu > .active > a:focus {\n color: #fff;\n text-decoration: none;\n background-color: #337ab7;\n outline: 0;\n}\n.dropdown-menu > .disabled > a,\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n color: #777777;\n}\n.dropdown-menu > .disabled > a:hover,\n.dropdown-menu > .disabled > a:focus {\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n background-image: none;\n filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);\n}\n.open > .dropdown-menu {\n display: block;\n}\n.open > a {\n outline: 0;\n}\n.dropdown-menu-right {\n right: 0;\n left: auto;\n}\n.dropdown-menu-left {\n right: auto;\n left: 0;\n}\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: 12px;\n line-height: 1.42857143;\n color: #777777;\n white-space: nowrap;\n}\n.dropdown-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 990;\n}\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n.dropup .caret,\n.navbar-fixed-bottom .dropdown .caret {\n content: \"\";\n border-top: 0;\n border-bottom: 4px dashed;\n border-bottom: 4px solid \\9;\n}\n.dropup .dropdown-menu,\n.navbar-fixed-bottom .dropdown .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 2px;\n}\n@media (min-width: 768px) {\n .navbar-right .dropdown-menu {\n right: 0;\n left: auto;\n }\n .navbar-right .dropdown-menu-left {\n right: auto;\n left: 0;\n }\n}\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n float: left;\n}\n.btn-group > .btn:hover,\n.btn-group-vertical > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group-vertical > .btn:focus,\n.btn-group > .btn:active,\n.btn-group-vertical > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn.active {\n z-index: 2;\n}\n.btn-group .btn + .btn,\n.btn-group .btn + .btn-group,\n.btn-group .btn-group + .btn,\n.btn-group .btn-group + .btn-group {\n margin-left: -1px;\n}\n.btn-toolbar {\n margin-left: -5px;\n}\n.btn-toolbar .btn,\n.btn-toolbar .btn-group,\n.btn-toolbar .input-group {\n float: left;\n}\n.btn-toolbar > .btn,\n.btn-toolbar > .btn-group,\n.btn-toolbar > .input-group {\n margin-left: 5px;\n}\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n.btn-group > .btn:first-child {\n margin-left: 0;\n}\n.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n.btn-group > .btn + .dropdown-toggle {\n padding-right: 8px;\n padding-left: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-right: 12px;\n padding-left: 12px;\n}\n.btn-group.open .dropdown-toggle {\n -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n}\n.btn-group.open .dropdown-toggle.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.btn .caret {\n margin-left: 0;\n}\n.btn-lg .caret {\n border-width: 5px 5px 0;\n border-bottom-width: 0;\n}\n.dropup .btn-lg .caret {\n border-width: 0 5px 5px;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group,\n.btn-group-vertical > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n}\n.btn-group-vertical > .btn-group > .btn {\n float: none;\n}\n.btn-group-vertical > .btn + .btn,\n.btn-group-vertical > .btn + .btn-group,\n.btn-group-vertical > .btn-group + .btn,\n.btn-group-vertical > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n}\n.btn-group-vertical > .btn:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.btn-group-vertical > .btn:first-child:not(:last-child) {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn:last-child:not(:first-child) {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,\n.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n}\n.btn-group-justified > .btn,\n.btn-group-justified > .btn-group {\n display: table-cell;\n float: none;\n width: 1%;\n}\n.btn-group-justified > .btn-group .btn {\n width: 100%;\n}\n.btn-group-justified > .btn-group .dropdown-menu {\n left: auto;\n}\n[data-toggle=\"buttons\"] > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"radio\"],\n[data-toggle=\"buttons\"] > .btn input[type=\"checkbox\"],\n[data-toggle=\"buttons\"] > .btn-group > .btn input[type=\"checkbox\"] {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.input-group {\n position: relative;\n display: table;\n border-collapse: separate;\n}\n.input-group[class*=\"col-\"] {\n float: none;\n padding-right: 0;\n padding-left: 0;\n}\n.input-group .form-control {\n position: relative;\n z-index: 2;\n float: left;\n width: 100%;\n margin-bottom: 0;\n}\n.input-group .form-control:focus {\n z-index: 3;\n}\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n border-radius: 6px;\n}\nselect.input-group-lg > .form-control,\nselect.input-group-lg > .input-group-addon,\nselect.input-group-lg > .input-group-btn > .btn {\n height: 46px;\n line-height: 46px;\n}\ntextarea.input-group-lg > .form-control,\ntextarea.input-group-lg > .input-group-addon,\ntextarea.input-group-lg > .input-group-btn > .btn,\nselect[multiple].input-group-lg > .form-control,\nselect[multiple].input-group-lg > .input-group-addon,\nselect[multiple].input-group-lg > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n border-radius: 3px;\n}\nselect.input-group-sm > .form-control,\nselect.input-group-sm > .input-group-addon,\nselect.input-group-sm > .input-group-btn > .btn {\n height: 30px;\n line-height: 30px;\n}\ntextarea.input-group-sm > .form-control,\ntextarea.input-group-sm > .input-group-addon,\ntextarea.input-group-sm > .input-group-btn > .btn,\nselect[multiple].input-group-sm > .form-control,\nselect[multiple].input-group-sm > .input-group-addon,\nselect[multiple].input-group-sm > .input-group-btn > .btn {\n height: auto;\n}\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n}\n.input-group-addon:not(:first-child):not(:last-child),\n.input-group-btn:not(:first-child):not(:last-child),\n.input-group .form-control:not(:first-child):not(:last-child) {\n border-radius: 0;\n}\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle;\n}\n.input-group-addon {\n padding: 6px 12px;\n font-size: 14px;\n font-weight: 400;\n line-height: 1;\n color: #555555;\n text-align: center;\n background-color: #eeeeee;\n border: 1px solid #ccc;\n border-radius: 4px;\n}\n.input-group-addon.input-sm {\n padding: 5px 10px;\n font-size: 12px;\n border-radius: 3px;\n}\n.input-group-addon.input-lg {\n padding: 10px 16px;\n font-size: 18px;\n border-radius: 6px;\n}\n.input-group-addon input[type=\"radio\"],\n.input-group-addon input[type=\"checkbox\"] {\n margin-top: 0;\n}\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n.input-group-btn {\n position: relative;\n font-size: 0;\n white-space: nowrap;\n}\n.input-group-btn > .btn {\n position: relative;\n}\n.input-group-btn > .btn + .btn {\n margin-left: -1px;\n}\n.input-group-btn > .btn:hover,\n.input-group-btn > .btn:focus,\n.input-group-btn > .btn:active {\n z-index: 2;\n}\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group {\n margin-right: -1px;\n}\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group {\n z-index: 2;\n margin-left: -1px;\n}\n.nav {\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.nav > li {\n position: relative;\n display: block;\n}\n.nav > li > a {\n position: relative;\n display: block;\n padding: 10px 15px;\n}\n.nav > li > a:hover,\n.nav > li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.nav > li.disabled > a {\n color: #777777;\n}\n.nav > li.disabled > a:hover,\n.nav > li.disabled > a:focus {\n color: #777777;\n text-decoration: none;\n cursor: not-allowed;\n background-color: transparent;\n}\n.nav .open > a,\n.nav .open > a:hover,\n.nav .open > a:focus {\n background-color: #eeeeee;\n border-color: #337ab7;\n}\n.nav .nav-divider {\n height: 1px;\n margin: 9px 0;\n overflow: hidden;\n background-color: #e5e5e5;\n}\n.nav > li > a > img {\n max-width: none;\n}\n.nav-tabs {\n border-bottom: 1px solid #ddd;\n}\n.nav-tabs > li {\n float: left;\n margin-bottom: -1px;\n}\n.nav-tabs > li > a {\n margin-right: 2px;\n line-height: 1.42857143;\n border: 1px solid transparent;\n border-radius: 4px 4px 0 0;\n}\n.nav-tabs > li > a:hover {\n border-color: #eeeeee #eeeeee #ddd;\n}\n.nav-tabs > li.active > a,\n.nav-tabs > li.active > a:hover,\n.nav-tabs > li.active > a:focus {\n color: #555555;\n cursor: default;\n background-color: #fff;\n border: 1px solid #ddd;\n border-bottom-color: transparent;\n}\n.nav-tabs.nav-justified {\n width: 100%;\n border-bottom: 0;\n}\n.nav-tabs.nav-justified > li {\n float: none;\n}\n.nav-tabs.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-tabs.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-tabs.nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs.nav-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs.nav-justified > .active > a,\n.nav-tabs.nav-justified > .active > a:hover,\n.nav-tabs.nav-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs.nav-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs.nav-justified > .active > a,\n .nav-tabs.nav-justified > .active > a:hover,\n .nav-tabs.nav-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.nav-pills > li {\n float: left;\n}\n.nav-pills > li > a {\n border-radius: 4px;\n}\n.nav-pills > li + li {\n margin-left: 2px;\n}\n.nav-pills > li.active > a,\n.nav-pills > li.active > a:hover,\n.nav-pills > li.active > a:focus {\n color: #fff;\n background-color: #337ab7;\n}\n.nav-stacked > li {\n float: none;\n}\n.nav-stacked > li + li {\n margin-top: 2px;\n margin-left: 0;\n}\n.nav-justified {\n width: 100%;\n}\n.nav-justified > li {\n float: none;\n}\n.nav-justified > li > a {\n margin-bottom: 5px;\n text-align: center;\n}\n.nav-justified > .dropdown .dropdown-menu {\n top: auto;\n left: auto;\n}\n@media (min-width: 768px) {\n .nav-justified > li {\n display: table-cell;\n width: 1%;\n }\n .nav-justified > li > a {\n margin-bottom: 0;\n }\n}\n.nav-tabs-justified {\n border-bottom: 0;\n}\n.nav-tabs-justified > li > a {\n margin-right: 0;\n border-radius: 4px;\n}\n.nav-tabs-justified > .active > a,\n.nav-tabs-justified > .active > a:hover,\n.nav-tabs-justified > .active > a:focus {\n border: 1px solid #ddd;\n}\n@media (min-width: 768px) {\n .nav-tabs-justified > li > a {\n border-bottom: 1px solid #ddd;\n border-radius: 4px 4px 0 0;\n }\n .nav-tabs-justified > .active > a,\n .nav-tabs-justified > .active > a:hover,\n .nav-tabs-justified > .active > a:focus {\n border-bottom-color: #fff;\n }\n}\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar {\n position: relative;\n min-height: 50px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n}\n@media (min-width: 768px) {\n .navbar {\n border-radius: 4px;\n }\n}\n@media (min-width: 768px) {\n .navbar-header {\n float: left;\n }\n}\n.navbar-collapse {\n padding-right: 15px;\n padding-left: 15px;\n overflow-x: visible;\n border-top: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);\n -webkit-overflow-scrolling: touch;\n}\n.navbar-collapse.in {\n overflow-y: auto;\n}\n@media (min-width: 768px) {\n .navbar-collapse {\n width: auto;\n border-top: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-collapse.collapse {\n display: block !important;\n height: auto !important;\n padding-bottom: 0;\n overflow: visible !important;\n }\n .navbar-collapse.in {\n overflow-y: visible;\n }\n .navbar-fixed-top .navbar-collapse,\n .navbar-static-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n padding-right: 0;\n padding-left: 0;\n }\n}\n.navbar-fixed-top,\n.navbar-fixed-bottom {\n position: fixed;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n.navbar-fixed-top .navbar-collapse,\n.navbar-fixed-bottom .navbar-collapse {\n max-height: 340px;\n}\n@media (max-device-width: 480px) and (orientation: landscape) {\n .navbar-fixed-top .navbar-collapse,\n .navbar-fixed-bottom .navbar-collapse {\n max-height: 200px;\n }\n}\n@media (min-width: 768px) {\n .navbar-fixed-top,\n .navbar-fixed-bottom {\n border-radius: 0;\n }\n}\n.navbar-fixed-top {\n top: 0;\n border-width: 0 0 1px;\n}\n.navbar-fixed-bottom {\n bottom: 0;\n margin-bottom: 0;\n border-width: 1px 0 0;\n}\n.container > .navbar-header,\n.container-fluid > .navbar-header,\n.container > .navbar-collapse,\n.container-fluid > .navbar-collapse {\n margin-right: -15px;\n margin-left: -15px;\n}\n@media (min-width: 768px) {\n .container > .navbar-header,\n .container-fluid > .navbar-header,\n .container > .navbar-collapse,\n .container-fluid > .navbar-collapse {\n margin-right: 0;\n margin-left: 0;\n }\n}\n.navbar-static-top {\n z-index: 1000;\n border-width: 0 0 1px;\n}\n@media (min-width: 768px) {\n .navbar-static-top {\n border-radius: 0;\n }\n}\n.navbar-brand {\n float: left;\n height: 50px;\n padding: 15px 15px;\n font-size: 18px;\n line-height: 20px;\n}\n.navbar-brand:hover,\n.navbar-brand:focus {\n text-decoration: none;\n}\n.navbar-brand > img {\n display: block;\n}\n@media (min-width: 768px) {\n .navbar > .container .navbar-brand,\n .navbar > .container-fluid .navbar-brand {\n margin-left: -15px;\n }\n}\n.navbar-toggle {\n position: relative;\n float: right;\n padding: 9px 10px;\n margin-right: 15px;\n margin-top: 8px;\n margin-bottom: 8px;\n background-color: transparent;\n background-image: none;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.navbar-toggle:focus {\n outline: 0;\n}\n.navbar-toggle .icon-bar {\n display: block;\n width: 22px;\n height: 2px;\n border-radius: 1px;\n}\n.navbar-toggle .icon-bar + .icon-bar {\n margin-top: 4px;\n}\n@media (min-width: 768px) {\n .navbar-toggle {\n display: none;\n }\n}\n.navbar-nav {\n margin: 7.5px -15px;\n}\n.navbar-nav > li > a {\n padding-top: 10px;\n padding-bottom: 10px;\n line-height: 20px;\n}\n@media (max-width: 767px) {\n .navbar-nav .open .dropdown-menu {\n position: static;\n float: none;\n width: auto;\n margin-top: 0;\n background-color: transparent;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n .navbar-nav .open .dropdown-menu > li > a,\n .navbar-nav .open .dropdown-menu .dropdown-header {\n padding: 5px 15px 5px 25px;\n }\n .navbar-nav .open .dropdown-menu > li > a {\n line-height: 20px;\n }\n .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-nav .open .dropdown-menu > li > a:focus {\n background-image: none;\n }\n}\n@media (min-width: 768px) {\n .navbar-nav {\n float: left;\n margin: 0;\n }\n .navbar-nav > li {\n float: left;\n }\n .navbar-nav > li > a {\n padding-top: 15px;\n padding-bottom: 15px;\n }\n}\n.navbar-form {\n padding: 10px 15px;\n margin-right: -15px;\n margin-left: -15px;\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);\n margin-top: 8px;\n margin-bottom: 8px;\n}\n@media (min-width: 768px) {\n .navbar-form .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .form-control {\n display: inline-block;\n width: auto;\n vertical-align: middle;\n }\n .navbar-form .form-control-static {\n display: inline-block;\n }\n .navbar-form .input-group {\n display: inline-table;\n vertical-align: middle;\n }\n .navbar-form .input-group .input-group-addon,\n .navbar-form .input-group .input-group-btn,\n .navbar-form .input-group .form-control {\n width: auto;\n }\n .navbar-form .input-group > .form-control {\n width: 100%;\n }\n .navbar-form .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio,\n .navbar-form .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n vertical-align: middle;\n }\n .navbar-form .radio label,\n .navbar-form .checkbox label {\n padding-left: 0;\n }\n .navbar-form .radio input[type=\"radio\"],\n .navbar-form .checkbox input[type=\"checkbox\"] {\n position: relative;\n margin-left: 0;\n }\n .navbar-form .has-feedback .form-control-feedback {\n top: 0;\n }\n}\n@media (max-width: 767px) {\n .navbar-form .form-group {\n margin-bottom: 5px;\n }\n .navbar-form .form-group:last-child {\n margin-bottom: 0;\n }\n}\n@media (min-width: 768px) {\n .navbar-form {\n width: auto;\n padding-top: 0;\n padding-bottom: 0;\n margin-right: 0;\n margin-left: 0;\n border: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.navbar-nav > li > .dropdown-menu {\n margin-top: 0;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {\n margin-bottom: 0;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.navbar-btn {\n margin-top: 8px;\n margin-bottom: 8px;\n}\n.navbar-btn.btn-sm {\n margin-top: 10px;\n margin-bottom: 10px;\n}\n.navbar-btn.btn-xs {\n margin-top: 14px;\n margin-bottom: 14px;\n}\n.navbar-text {\n margin-top: 15px;\n margin-bottom: 15px;\n}\n@media (min-width: 768px) {\n .navbar-text {\n float: left;\n margin-right: 15px;\n margin-left: 15px;\n }\n}\n@media (min-width: 768px) {\n .navbar-left {\n float: left !important;\n }\n .navbar-right {\n float: right !important;\n margin-right: -15px;\n }\n .navbar-right ~ .navbar-right {\n margin-right: 0;\n }\n}\n.navbar-default {\n background-color: #f8f8f8;\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-brand {\n color: #777;\n}\n.navbar-default .navbar-brand:hover,\n.navbar-default .navbar-brand:focus {\n color: #5e5e5e;\n background-color: transparent;\n}\n.navbar-default .navbar-text {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a {\n color: #777;\n}\n.navbar-default .navbar-nav > li > a:hover,\n.navbar-default .navbar-nav > li > a:focus {\n color: #333;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .active > a,\n.navbar-default .navbar-nav > .active > a:hover,\n.navbar-default .navbar-nav > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n.navbar-default .navbar-nav > .disabled > a,\n.navbar-default .navbar-nav > .disabled > a:hover,\n.navbar-default .navbar-nav > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n}\n.navbar-default .navbar-nav > .open > a,\n.navbar-default .navbar-nav > .open > a:hover,\n.navbar-default .navbar-nav > .open > a:focus {\n color: #555;\n background-color: #e7e7e7;\n}\n@media (max-width: 767px) {\n .navbar-default .navbar-nav .open .dropdown-menu > li > a {\n color: #777;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #333;\n background-color: transparent;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #555;\n background-color: #e7e7e7;\n }\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #ccc;\n background-color: transparent;\n }\n}\n.navbar-default .navbar-toggle {\n border-color: #ddd;\n}\n.navbar-default .navbar-toggle:hover,\n.navbar-default .navbar-toggle:focus {\n background-color: #ddd;\n}\n.navbar-default .navbar-toggle .icon-bar {\n background-color: #888;\n}\n.navbar-default .navbar-collapse,\n.navbar-default .navbar-form {\n border-color: #e7e7e7;\n}\n.navbar-default .navbar-link {\n color: #777;\n}\n.navbar-default .navbar-link:hover {\n color: #333;\n}\n.navbar-default .btn-link {\n color: #777;\n}\n.navbar-default .btn-link:hover,\n.navbar-default .btn-link:focus {\n color: #333;\n}\n.navbar-default .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-default .btn-link:hover,\n.navbar-default .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-default .btn-link:focus {\n color: #ccc;\n}\n.navbar-inverse {\n background-color: #222;\n border-color: #080808;\n}\n.navbar-inverse .navbar-brand {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-brand:hover,\n.navbar-inverse .navbar-brand:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-text {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-nav > li > a:hover,\n.navbar-inverse .navbar-nav > li > a:focus {\n color: #fff;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .active > a,\n.navbar-inverse .navbar-nav > .active > a:hover,\n.navbar-inverse .navbar-nav > .active > a:focus {\n color: #fff;\n background-color: #080808;\n}\n.navbar-inverse .navbar-nav > .disabled > a,\n.navbar-inverse .navbar-nav > .disabled > a:hover,\n.navbar-inverse .navbar-nav > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n}\n.navbar-inverse .navbar-nav > .open > a,\n.navbar-inverse .navbar-nav > .open > a:hover,\n.navbar-inverse .navbar-nav > .open > a:focus {\n color: #fff;\n background-color: #080808;\n}\n@media (max-width: 767px) {\n .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {\n border-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu .divider {\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {\n color: #9d9d9d;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {\n color: #fff;\n background-color: transparent;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {\n color: #fff;\n background-color: #080808;\n }\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,\n .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {\n color: #444;\n background-color: transparent;\n }\n}\n.navbar-inverse .navbar-toggle {\n border-color: #333;\n}\n.navbar-inverse .navbar-toggle:hover,\n.navbar-inverse .navbar-toggle:focus {\n background-color: #333;\n}\n.navbar-inverse .navbar-toggle .icon-bar {\n background-color: #fff;\n}\n.navbar-inverse .navbar-collapse,\n.navbar-inverse .navbar-form {\n border-color: #101010;\n}\n.navbar-inverse .navbar-link {\n color: #9d9d9d;\n}\n.navbar-inverse .navbar-link:hover {\n color: #fff;\n}\n.navbar-inverse .btn-link {\n color: #9d9d9d;\n}\n.navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link:focus {\n color: #fff;\n}\n.navbar-inverse .btn-link[disabled]:hover,\nfieldset[disabled] .navbar-inverse .btn-link:hover,\n.navbar-inverse .btn-link[disabled]:focus,\nfieldset[disabled] .navbar-inverse .btn-link:focus {\n color: #444;\n}\n.breadcrumb {\n padding: 8px 15px;\n margin-bottom: 20px;\n list-style: none;\n background-color: #f5f5f5;\n border-radius: 4px;\n}\n.breadcrumb > li {\n display: inline-block;\n}\n.breadcrumb > li + li:before {\n padding: 0 5px;\n color: #ccc;\n content: \"/\\00a0\";\n}\n.breadcrumb > .active {\n color: #777777;\n}\n.pagination {\n display: inline-block;\n padding-left: 0;\n margin: 20px 0;\n border-radius: 4px;\n}\n.pagination > li {\n display: inline;\n}\n.pagination > li > a,\n.pagination > li > span {\n position: relative;\n float: left;\n padding: 6px 12px;\n margin-left: -1px;\n line-height: 1.42857143;\n color: #337ab7;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.pagination > li > a:hover,\n.pagination > li > span:hover,\n.pagination > li > a:focus,\n.pagination > li > span:focus {\n z-index: 2;\n color: #23527c;\n background-color: #eeeeee;\n border-color: #ddd;\n}\n.pagination > li:first-child > a,\n.pagination > li:first-child > span {\n margin-left: 0;\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.pagination > li:last-child > a,\n.pagination > li:last-child > span {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n}\n.pagination > .active > a,\n.pagination > .active > span,\n.pagination > .active > a:hover,\n.pagination > .active > span:hover,\n.pagination > .active > a:focus,\n.pagination > .active > span:focus {\n z-index: 3;\n color: #fff;\n cursor: default;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.pagination > .disabled > span,\n.pagination > .disabled > span:hover,\n.pagination > .disabled > span:focus,\n.pagination > .disabled > a,\n.pagination > .disabled > a:hover,\n.pagination > .disabled > a:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n border-color: #ddd;\n}\n.pagination-lg > li > a,\n.pagination-lg > li > span {\n padding: 10px 16px;\n font-size: 18px;\n line-height: 1.3333333;\n}\n.pagination-lg > li:first-child > a,\n.pagination-lg > li:first-child > span {\n border-top-left-radius: 6px;\n border-bottom-left-radius: 6px;\n}\n.pagination-lg > li:last-child > a,\n.pagination-lg > li:last-child > span {\n border-top-right-radius: 6px;\n border-bottom-right-radius: 6px;\n}\n.pagination-sm > li > a,\n.pagination-sm > li > span {\n padding: 5px 10px;\n font-size: 12px;\n line-height: 1.5;\n}\n.pagination-sm > li:first-child > a,\n.pagination-sm > li:first-child > span {\n border-top-left-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.pagination-sm > li:last-child > a,\n.pagination-sm > li:last-child > span {\n border-top-right-radius: 3px;\n border-bottom-right-radius: 3px;\n}\n.pager {\n padding-left: 0;\n margin: 20px 0;\n text-align: center;\n list-style: none;\n}\n.pager li {\n display: inline;\n}\n.pager li > a,\n.pager li > span {\n display: inline-block;\n padding: 5px 14px;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 15px;\n}\n.pager li > a:hover,\n.pager li > a:focus {\n text-decoration: none;\n background-color: #eeeeee;\n}\n.pager .next > a,\n.pager .next > span {\n float: right;\n}\n.pager .previous > a,\n.pager .previous > span {\n float: left;\n}\n.pager .disabled > a,\n.pager .disabled > a:hover,\n.pager .disabled > a:focus,\n.pager .disabled > span {\n color: #777777;\n cursor: not-allowed;\n background-color: #fff;\n}\n.label {\n display: inline;\n padding: 0.2em 0.6em 0.3em;\n font-size: 75%;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25em;\n}\na.label:hover,\na.label:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.label:empty {\n display: none;\n}\n.btn .label {\n position: relative;\n top: -1px;\n}\n.label-default {\n background-color: #777777;\n}\n.label-default[href]:hover,\n.label-default[href]:focus {\n background-color: #5e5e5e;\n}\n.label-primary {\n background-color: #337ab7;\n}\n.label-primary[href]:hover,\n.label-primary[href]:focus {\n background-color: #286090;\n}\n.label-success {\n background-color: #5cb85c;\n}\n.label-success[href]:hover,\n.label-success[href]:focus {\n background-color: #449d44;\n}\n.label-info {\n background-color: #5bc0de;\n}\n.label-info[href]:hover,\n.label-info[href]:focus {\n background-color: #31b0d5;\n}\n.label-warning {\n background-color: #f0ad4e;\n}\n.label-warning[href]:hover,\n.label-warning[href]:focus {\n background-color: #ec971f;\n}\n.label-danger {\n background-color: #d9534f;\n}\n.label-danger[href]:hover,\n.label-danger[href]:focus {\n background-color: #c9302c;\n}\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: 12px;\n font-weight: bold;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: middle;\n background-color: #777777;\n border-radius: 10px;\n}\n.badge:empty {\n display: none;\n}\n.btn .badge {\n position: relative;\n top: -1px;\n}\n.btn-xs .badge,\n.btn-group-xs > .btn .badge {\n top: 0;\n padding: 1px 5px;\n}\na.badge:hover,\na.badge:focus {\n color: #fff;\n text-decoration: none;\n cursor: pointer;\n}\n.list-group-item.active > .badge,\n.nav-pills > .active > a > .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.list-group-item > .badge {\n float: right;\n}\n.list-group-item > .badge + .badge {\n margin-right: 5px;\n}\n.nav-pills > li > a > .badge {\n margin-left: 3px;\n}\n.jumbotron {\n padding-top: 30px;\n padding-bottom: 30px;\n margin-bottom: 30px;\n color: inherit;\n background-color: #eeeeee;\n}\n.jumbotron h1,\n.jumbotron .h1 {\n color: inherit;\n}\n.jumbotron p {\n margin-bottom: 15px;\n font-size: 21px;\n font-weight: 200;\n}\n.jumbotron > hr {\n border-top-color: #d5d5d5;\n}\n.container .jumbotron,\n.container-fluid .jumbotron {\n padding-right: 15px;\n padding-left: 15px;\n border-radius: 6px;\n}\n.jumbotron .container {\n max-width: 100%;\n}\n@media screen and (min-width: 768px) {\n .jumbotron {\n padding-top: 48px;\n padding-bottom: 48px;\n }\n .container .jumbotron,\n .container-fluid .jumbotron {\n padding-right: 60px;\n padding-left: 60px;\n }\n .jumbotron h1,\n .jumbotron .h1 {\n font-size: 63px;\n }\n}\n.thumbnail {\n display: block;\n padding: 4px;\n margin-bottom: 20px;\n line-height: 1.42857143;\n background-color: #fff;\n border: 1px solid #ddd;\n border-radius: 4px;\n -webkit-transition: border 0.2s ease-in-out;\n -o-transition: border 0.2s ease-in-out;\n transition: border 0.2s ease-in-out;\n}\n.thumbnail > img,\n.thumbnail a > img {\n margin-right: auto;\n margin-left: auto;\n}\na.thumbnail:hover,\na.thumbnail:focus,\na.thumbnail.active {\n border-color: #337ab7;\n}\n.thumbnail .caption {\n padding: 9px;\n color: #333333;\n}\n.alert {\n padding: 15px;\n margin-bottom: 20px;\n border: 1px solid transparent;\n border-radius: 4px;\n}\n.alert h4 {\n margin-top: 0;\n color: inherit;\n}\n.alert .alert-link {\n font-weight: bold;\n}\n.alert > p,\n.alert > ul {\n margin-bottom: 0;\n}\n.alert > p + p {\n margin-top: 5px;\n}\n.alert-dismissable,\n.alert-dismissible {\n padding-right: 35px;\n}\n.alert-dismissable .close,\n.alert-dismissible .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n}\n.alert-success {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.alert-success hr {\n border-top-color: #c9e2b3;\n}\n.alert-success .alert-link {\n color: #2b542c;\n}\n.alert-info {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.alert-info hr {\n border-top-color: #a6e1ec;\n}\n.alert-info .alert-link {\n color: #245269;\n}\n.alert-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.alert-warning hr {\n border-top-color: #f7e1b5;\n}\n.alert-warning .alert-link {\n color: #66512c;\n}\n.alert-danger {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.alert-danger hr {\n border-top-color: #e4b9c0;\n}\n.alert-danger .alert-link {\n color: #843534;\n}\n@-webkit-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@-o-keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n@keyframes progress-bar-stripes {\n from {\n background-position: 40px 0;\n }\n to {\n background-position: 0 0;\n }\n}\n.progress {\n height: 20px;\n margin-bottom: 20px;\n overflow: hidden;\n background-color: #f5f5f5;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);\n}\n.progress-bar {\n float: left;\n width: 0%;\n height: 100%;\n font-size: 12px;\n line-height: 20px;\n color: #fff;\n text-align: center;\n background-color: #337ab7;\n -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);\n -webkit-transition: width 0.6s ease;\n -o-transition: width 0.6s ease;\n transition: width 0.6s ease;\n}\n.progress-striped .progress-bar,\n.progress-bar-striped {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n -webkit-background-size: 40px 40px;\n background-size: 40px 40px;\n}\n.progress.active .progress-bar,\n.progress-bar.active {\n -webkit-animation: progress-bar-stripes 2s linear infinite;\n -o-animation: progress-bar-stripes 2s linear infinite;\n animation: progress-bar-stripes 2s linear infinite;\n}\n.progress-bar-success {\n background-color: #5cb85c;\n}\n.progress-striped .progress-bar-success {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-info {\n background-color: #5bc0de;\n}\n.progress-striped .progress-bar-info {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-warning {\n background-color: #f0ad4e;\n}\n.progress-striped .progress-bar-warning {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.progress-bar-danger {\n background-color: #d9534f;\n}\n.progress-striped .progress-bar-danger {\n background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n}\n.media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n.media-body {\n width: 10000px;\n}\n.media-object {\n display: block;\n}\n.media-object.img-thumbnail {\n max-width: none;\n}\n.media-right,\n.media > .pull-right {\n padding-left: 10px;\n}\n.media-left,\n.media > .pull-left {\n padding-right: 10px;\n}\n.media-left,\n.media-right,\n.media-body {\n display: table-cell;\n vertical-align: top;\n}\n.media-middle {\n vertical-align: middle;\n}\n.media-bottom {\n vertical-align: bottom;\n}\n.media-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n.list-group {\n padding-left: 0;\n margin-bottom: 20px;\n}\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n margin-bottom: -1px;\n background-color: #fff;\n border: 1px solid #ddd;\n}\n.list-group-item:first-child {\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n}\n.list-group-item:last-child {\n margin-bottom: 0;\n border-bottom-right-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n.list-group-item.disabled,\n.list-group-item.disabled:hover,\n.list-group-item.disabled:focus {\n color: #777777;\n cursor: not-allowed;\n background-color: #eeeeee;\n}\n.list-group-item.disabled .list-group-item-heading,\n.list-group-item.disabled:hover .list-group-item-heading,\n.list-group-item.disabled:focus .list-group-item-heading {\n color: inherit;\n}\n.list-group-item.disabled .list-group-item-text,\n.list-group-item.disabled:hover .list-group-item-text,\n.list-group-item.disabled:focus .list-group-item-text {\n color: #777777;\n}\n.list-group-item.active,\n.list-group-item.active:hover,\n.list-group-item.active:focus {\n z-index: 2;\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.list-group-item.active .list-group-item-heading,\n.list-group-item.active:hover .list-group-item-heading,\n.list-group-item.active:focus .list-group-item-heading,\n.list-group-item.active .list-group-item-heading > small,\n.list-group-item.active:hover .list-group-item-heading > small,\n.list-group-item.active:focus .list-group-item-heading > small,\n.list-group-item.active .list-group-item-heading > .small,\n.list-group-item.active:hover .list-group-item-heading > .small,\n.list-group-item.active:focus .list-group-item-heading > .small {\n color: inherit;\n}\n.list-group-item.active .list-group-item-text,\n.list-group-item.active:hover .list-group-item-text,\n.list-group-item.active:focus .list-group-item-text {\n color: #c7ddef;\n}\na.list-group-item,\nbutton.list-group-item {\n color: #555;\n}\na.list-group-item .list-group-item-heading,\nbutton.list-group-item .list-group-item-heading {\n color: #333;\n}\na.list-group-item:hover,\nbutton.list-group-item:hover,\na.list-group-item:focus,\nbutton.list-group-item:focus {\n color: #555;\n text-decoration: none;\n background-color: #f5f5f5;\n}\nbutton.list-group-item {\n width: 100%;\n text-align: left;\n}\n.list-group-item-success {\n color: #3c763d;\n background-color: #dff0d8;\n}\na.list-group-item-success,\nbutton.list-group-item-success {\n color: #3c763d;\n}\na.list-group-item-success .list-group-item-heading,\nbutton.list-group-item-success .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-success:hover,\nbutton.list-group-item-success:hover,\na.list-group-item-success:focus,\nbutton.list-group-item-success:focus {\n color: #3c763d;\n background-color: #d0e9c6;\n}\na.list-group-item-success.active,\nbutton.list-group-item-success.active,\na.list-group-item-success.active:hover,\nbutton.list-group-item-success.active:hover,\na.list-group-item-success.active:focus,\nbutton.list-group-item-success.active:focus {\n color: #fff;\n background-color: #3c763d;\n border-color: #3c763d;\n}\n.list-group-item-info {\n color: #31708f;\n background-color: #d9edf7;\n}\na.list-group-item-info,\nbutton.list-group-item-info {\n color: #31708f;\n}\na.list-group-item-info .list-group-item-heading,\nbutton.list-group-item-info .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-info:hover,\nbutton.list-group-item-info:hover,\na.list-group-item-info:focus,\nbutton.list-group-item-info:focus {\n color: #31708f;\n background-color: #c4e3f3;\n}\na.list-group-item-info.active,\nbutton.list-group-item-info.active,\na.list-group-item-info.active:hover,\nbutton.list-group-item-info.active:hover,\na.list-group-item-info.active:focus,\nbutton.list-group-item-info.active:focus {\n color: #fff;\n background-color: #31708f;\n border-color: #31708f;\n}\n.list-group-item-warning {\n color: #8a6d3b;\n background-color: #fcf8e3;\n}\na.list-group-item-warning,\nbutton.list-group-item-warning {\n color: #8a6d3b;\n}\na.list-group-item-warning .list-group-item-heading,\nbutton.list-group-item-warning .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-warning:hover,\nbutton.list-group-item-warning:hover,\na.list-group-item-warning:focus,\nbutton.list-group-item-warning:focus {\n color: #8a6d3b;\n background-color: #faf2cc;\n}\na.list-group-item-warning.active,\nbutton.list-group-item-warning.active,\na.list-group-item-warning.active:hover,\nbutton.list-group-item-warning.active:hover,\na.list-group-item-warning.active:focus,\nbutton.list-group-item-warning.active:focus {\n color: #fff;\n background-color: #8a6d3b;\n border-color: #8a6d3b;\n}\n.list-group-item-danger {\n color: #a94442;\n background-color: #f2dede;\n}\na.list-group-item-danger,\nbutton.list-group-item-danger {\n color: #a94442;\n}\na.list-group-item-danger .list-group-item-heading,\nbutton.list-group-item-danger .list-group-item-heading {\n color: inherit;\n}\na.list-group-item-danger:hover,\nbutton.list-group-item-danger:hover,\na.list-group-item-danger:focus,\nbutton.list-group-item-danger:focus {\n color: #a94442;\n background-color: #ebcccc;\n}\na.list-group-item-danger.active,\nbutton.list-group-item-danger.active,\na.list-group-item-danger.active:hover,\nbutton.list-group-item-danger.active:hover,\na.list-group-item-danger.active:focus,\nbutton.list-group-item-danger.active:focus {\n color: #fff;\n background-color: #a94442;\n border-color: #a94442;\n}\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n.panel {\n margin-bottom: 20px;\n background-color: #fff;\n border: 1px solid transparent;\n border-radius: 4px;\n -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.panel-body {\n padding: 15px;\n}\n.panel-heading {\n padding: 10px 15px;\n border-bottom: 1px solid transparent;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel-heading > .dropdown .dropdown-toggle {\n color: inherit;\n}\n.panel-title {\n margin-top: 0;\n margin-bottom: 0;\n font-size: 16px;\n color: inherit;\n}\n.panel-title > a,\n.panel-title > small,\n.panel-title > .small,\n.panel-title > small > a,\n.panel-title > .small > a {\n color: inherit;\n}\n.panel-footer {\n padding: 10px 15px;\n background-color: #f5f5f5;\n border-top: 1px solid #ddd;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .list-group,\n.panel > .panel-collapse > .list-group {\n margin-bottom: 0;\n}\n.panel > .list-group .list-group-item,\n.panel > .panel-collapse > .list-group .list-group-item {\n border-width: 1px 0;\n border-radius: 0;\n}\n.panel > .list-group:first-child .list-group-item:first-child,\n.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {\n border-top: 0;\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .list-group:last-child .list-group-item:last-child,\n.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {\n border-bottom: 0;\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n.panel-heading + .list-group .list-group-item:first-child {\n border-top-width: 0;\n}\n.list-group + .panel-footer {\n border-top-width: 0;\n}\n.panel > .table,\n.panel > .table-responsive > .table,\n.panel > .panel-collapse > .table {\n margin-bottom: 0;\n}\n.panel > .table caption,\n.panel > .table-responsive > .table caption,\n.panel > .panel-collapse > .table caption {\n padding-right: 15px;\n padding-left: 15px;\n}\n.panel > .table:first-child,\n.panel > .table-responsive:first-child > .table:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {\n border-top-left-radius: 3px;\n border-top-right-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {\n border-top-left-radius: 3px;\n}\n.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,\n.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,\n.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,\n.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {\n border-top-right-radius: 3px;\n}\n.panel > .table:last-child,\n.panel > .table-responsive:last-child > .table:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {\n border-bottom-right-radius: 3px;\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {\n border-bottom-left-radius: 3px;\n}\n.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,\n.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,\n.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,\n.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {\n border-bottom-right-radius: 3px;\n}\n.panel > .panel-body + .table,\n.panel > .panel-body + .table-responsive,\n.panel > .table + .panel-body,\n.panel > .table-responsive + .panel-body {\n border-top: 1px solid #ddd;\n}\n.panel > .table > tbody:first-child > tr:first-child th,\n.panel > .table > tbody:first-child > tr:first-child td {\n border-top: 0;\n}\n.panel > .table-bordered,\n.panel > .table-responsive > .table-bordered {\n border: 0;\n}\n.panel > .table-bordered > thead > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,\n.panel > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,\n.panel > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,\n.panel > .table-bordered > thead > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,\n.panel > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,\n.panel > .table-bordered > tfoot > tr > td:first-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {\n border-left: 0;\n}\n.panel > .table-bordered > thead > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,\n.panel > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,\n.panel > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,\n.panel > .table-bordered > thead > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,\n.panel > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,\n.panel > .table-bordered > tfoot > tr > td:last-child,\n.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {\n border-right: 0;\n}\n.panel > .table-bordered > thead > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,\n.panel > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,\n.panel > .table-bordered > thead > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,\n.panel > .table-bordered > tbody > tr:first-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {\n border-bottom: 0;\n}\n.panel > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,\n.panel > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,\n.panel > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,\n.panel > .table-bordered > tfoot > tr:last-child > th,\n.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {\n border-bottom: 0;\n}\n.panel > .table-responsive {\n margin-bottom: 0;\n border: 0;\n}\n.panel-group {\n margin-bottom: 20px;\n}\n.panel-group .panel {\n margin-bottom: 0;\n border-radius: 4px;\n}\n.panel-group .panel + .panel {\n margin-top: 5px;\n}\n.panel-group .panel-heading {\n border-bottom: 0;\n}\n.panel-group .panel-heading + .panel-collapse > .panel-body,\n.panel-group .panel-heading + .panel-collapse > .list-group {\n border-top: 1px solid #ddd;\n}\n.panel-group .panel-footer {\n border-top: 0;\n}\n.panel-group .panel-footer + .panel-collapse .panel-body {\n border-bottom: 1px solid #ddd;\n}\n.panel-default {\n border-color: #ddd;\n}\n.panel-default > .panel-heading {\n color: #333333;\n background-color: #f5f5f5;\n border-color: #ddd;\n}\n.panel-default > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ddd;\n}\n.panel-default > .panel-heading .badge {\n color: #f5f5f5;\n background-color: #333333;\n}\n.panel-default > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ddd;\n}\n.panel-primary {\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading {\n color: #fff;\n background-color: #337ab7;\n border-color: #337ab7;\n}\n.panel-primary > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #337ab7;\n}\n.panel-primary > .panel-heading .badge {\n color: #337ab7;\n background-color: #fff;\n}\n.panel-primary > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #337ab7;\n}\n.panel-success {\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading {\n color: #3c763d;\n background-color: #dff0d8;\n border-color: #d6e9c6;\n}\n.panel-success > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #d6e9c6;\n}\n.panel-success > .panel-heading .badge {\n color: #dff0d8;\n background-color: #3c763d;\n}\n.panel-success > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #d6e9c6;\n}\n.panel-info {\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading {\n color: #31708f;\n background-color: #d9edf7;\n border-color: #bce8f1;\n}\n.panel-info > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #bce8f1;\n}\n.panel-info > .panel-heading .badge {\n color: #d9edf7;\n background-color: #31708f;\n}\n.panel-info > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #bce8f1;\n}\n.panel-warning {\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading {\n color: #8a6d3b;\n background-color: #fcf8e3;\n border-color: #faebcc;\n}\n.panel-warning > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #faebcc;\n}\n.panel-warning > .panel-heading .badge {\n color: #fcf8e3;\n background-color: #8a6d3b;\n}\n.panel-warning > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #faebcc;\n}\n.panel-danger {\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading {\n color: #a94442;\n background-color: #f2dede;\n border-color: #ebccd1;\n}\n.panel-danger > .panel-heading + .panel-collapse > .panel-body {\n border-top-color: #ebccd1;\n}\n.panel-danger > .panel-heading .badge {\n color: #f2dede;\n background-color: #a94442;\n}\n.panel-danger > .panel-footer + .panel-collapse > .panel-body {\n border-bottom-color: #ebccd1;\n}\n.embed-responsive {\n position: relative;\n display: block;\n height: 0;\n padding: 0;\n overflow: hidden;\n}\n.embed-responsive .embed-responsive-item,\n.embed-responsive iframe,\n.embed-responsive embed,\n.embed-responsive object,\n.embed-responsive video {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 100%;\n border: 0;\n}\n.embed-responsive-16by9 {\n padding-bottom: 56.25%;\n}\n.embed-responsive-4by3 {\n padding-bottom: 75%;\n}\n.well {\n min-height: 20px;\n padding: 19px;\n margin-bottom: 20px;\n background-color: #f5f5f5;\n border: 1px solid #e3e3e3;\n border-radius: 4px;\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);\n}\n.well blockquote {\n border-color: #ddd;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.well-lg {\n padding: 24px;\n border-radius: 6px;\n}\n.well-sm {\n padding: 9px;\n border-radius: 3px;\n}\n.close {\n float: right;\n font-size: 21px;\n font-weight: bold;\n line-height: 1;\n color: #000;\n text-shadow: 0 1px 0 #fff;\n filter: alpha(opacity=20);\n opacity: 0.2;\n}\n.close:hover,\n.close:focus {\n color: #000;\n text-decoration: none;\n cursor: pointer;\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\nbutton.close {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.modal-open {\n overflow: hidden;\n}\n.modal {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1050;\n display: none;\n overflow: hidden;\n -webkit-overflow-scrolling: touch;\n outline: 0;\n}\n.modal.fade .modal-dialog {\n -webkit-transform: translate(0, -25%);\n -ms-transform: translate(0, -25%);\n -o-transform: translate(0, -25%);\n transform: translate(0, -25%);\n -webkit-transition: -webkit-transform 0.3s ease-out;\n -o-transition: -o-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out, -o-transform 0.3s ease-out;\n}\n.modal.in .modal-dialog {\n -webkit-transform: translate(0, 0);\n -ms-transform: translate(0, 0);\n -o-transform: translate(0, 0);\n transform: translate(0, 0);\n}\n.modal-open .modal {\n overflow-x: hidden;\n overflow-y: auto;\n}\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 10px;\n}\n.modal-content {\n position: relative;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #999;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);\n outline: 0;\n}\n.modal-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1040;\n background-color: #000;\n}\n.modal-backdrop.fade {\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.modal-backdrop.in {\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.modal-header {\n padding: 15px;\n border-bottom: 1px solid #e5e5e5;\n}\n.modal-header .close {\n margin-top: -2px;\n}\n.modal-title {\n margin: 0;\n line-height: 1.42857143;\n}\n.modal-body {\n position: relative;\n padding: 15px;\n}\n.modal-footer {\n padding: 15px;\n text-align: right;\n border-top: 1px solid #e5e5e5;\n}\n.modal-footer .btn + .btn {\n margin-bottom: 0;\n margin-left: 5px;\n}\n.modal-footer .btn-group .btn + .btn {\n margin-left: -1px;\n}\n.modal-footer .btn-block + .btn-block {\n margin-left: 0;\n}\n.modal-scrollbar-measure {\n position: absolute;\n top: -9999px;\n width: 50px;\n height: 50px;\n overflow: scroll;\n}\n@media (min-width: 768px) {\n .modal-dialog {\n width: 600px;\n margin: 30px auto;\n }\n .modal-content {\n -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);\n }\n .modal-sm {\n width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg {\n width: 900px;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1070;\n display: block;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 12px;\n filter: alpha(opacity=0);\n opacity: 0;\n}\n.tooltip.in {\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.tooltip.top {\n padding: 5px 0;\n margin-top: -3px;\n}\n.tooltip.right {\n padding: 0 5px;\n margin-left: 3px;\n}\n.tooltip.bottom {\n padding: 5px 0;\n margin-top: 3px;\n}\n.tooltip.left {\n padding: 0 5px;\n margin-left: -3px;\n}\n.tooltip.top .tooltip-arrow {\n bottom: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-left .tooltip-arrow {\n right: 5px;\n bottom: 0;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.top-right .tooltip-arrow {\n bottom: 0;\n left: 5px;\n margin-bottom: -5px;\n border-width: 5px 5px 0;\n border-top-color: #000;\n}\n.tooltip.right .tooltip-arrow {\n top: 50%;\n left: 0;\n margin-top: -5px;\n border-width: 5px 5px 5px 0;\n border-right-color: #000;\n}\n.tooltip.left .tooltip-arrow {\n top: 50%;\n right: 0;\n margin-top: -5px;\n border-width: 5px 0 5px 5px;\n border-left-color: #000;\n}\n.tooltip.bottom .tooltip-arrow {\n top: 0;\n left: 50%;\n margin-left: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-left .tooltip-arrow {\n top: 0;\n right: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip.bottom-right .tooltip-arrow {\n top: 0;\n left: 5px;\n margin-top: -5px;\n border-width: 0 5px 5px;\n border-bottom-color: #000;\n}\n.tooltip-inner {\n max-width: 200px;\n padding: 3px 8px;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 4px;\n}\n.tooltip-arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 1060;\n display: none;\n max-width: 276px;\n padding: 1px;\n font-family: \"Helvetica Neue\", Helvetica, Arial, sans-serif;\n font-style: normal;\n font-weight: 400;\n line-height: 1.42857143;\n line-break: auto;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n word-wrap: normal;\n white-space: normal;\n font-size: 14px;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ccc;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 6px;\n -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);\n}\n.popover.top {\n margin-top: -10px;\n}\n.popover.right {\n margin-left: 10px;\n}\n.popover.bottom {\n margin-top: 10px;\n}\n.popover.left {\n margin-left: -10px;\n}\n.popover > .arrow {\n border-width: 11px;\n}\n.popover > .arrow,\n.popover > .arrow:after {\n position: absolute;\n display: block;\n width: 0;\n height: 0;\n border-color: transparent;\n border-style: solid;\n}\n.popover > .arrow:after {\n content: \"\";\n border-width: 10px;\n}\n.popover.top > .arrow {\n bottom: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-color: #999999;\n border-top-color: rgba(0, 0, 0, 0.25);\n border-bottom-width: 0;\n}\n.popover.top > .arrow:after {\n bottom: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-color: #fff;\n border-bottom-width: 0;\n}\n.popover.right > .arrow {\n top: 50%;\n left: -11px;\n margin-top: -11px;\n border-right-color: #999999;\n border-right-color: rgba(0, 0, 0, 0.25);\n border-left-width: 0;\n}\n.popover.right > .arrow:after {\n bottom: -10px;\n left: 1px;\n content: \" \";\n border-right-color: #fff;\n border-left-width: 0;\n}\n.popover.bottom > .arrow {\n top: -11px;\n left: 50%;\n margin-left: -11px;\n border-top-width: 0;\n border-bottom-color: #999999;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.popover.bottom > .arrow:after {\n top: 1px;\n margin-left: -10px;\n content: \" \";\n border-top-width: 0;\n border-bottom-color: #fff;\n}\n.popover.left > .arrow {\n top: 50%;\n right: -11px;\n margin-top: -11px;\n border-right-width: 0;\n border-left-color: #999999;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.popover.left > .arrow:after {\n right: 1px;\n bottom: -10px;\n content: \" \";\n border-right-width: 0;\n border-left-color: #fff;\n}\n.popover-title {\n padding: 8px 14px;\n margin: 0;\n font-size: 14px;\n background-color: #f7f7f7;\n border-bottom: 1px solid #ebebeb;\n border-radius: 5px 5px 0 0;\n}\n.popover-content {\n padding: 9px 14px;\n}\n.carousel {\n position: relative;\n}\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner > .item {\n position: relative;\n display: none;\n -webkit-transition: 0.6s ease-in-out left;\n -o-transition: 0.6s ease-in-out left;\n transition: 0.6s ease-in-out left;\n}\n.carousel-inner > .item > img,\n.carousel-inner > .item > a > img {\n line-height: 1;\n}\n@media all and (transform-3d), (-webkit-transform-3d) {\n .carousel-inner > .item {\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n -o-transition: -o-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out, -o-transform 0.6s ease-in-out;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-perspective: 1000px;\n perspective: 1000px;\n }\n .carousel-inner > .item.next,\n .carousel-inner > .item.active.right {\n -webkit-transform: translate3d(100%, 0, 0);\n transform: translate3d(100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.prev,\n .carousel-inner > .item.active.left {\n -webkit-transform: translate3d(-100%, 0, 0);\n transform: translate3d(-100%, 0, 0);\n left: 0;\n }\n .carousel-inner > .item.next.left,\n .carousel-inner > .item.prev.right,\n .carousel-inner > .item.active {\n -webkit-transform: translate3d(0, 0, 0);\n transform: translate3d(0, 0, 0);\n left: 0;\n }\n}\n.carousel-inner > .active,\n.carousel-inner > .next,\n.carousel-inner > .prev {\n display: block;\n}\n.carousel-inner > .active {\n left: 0;\n}\n.carousel-inner > .next,\n.carousel-inner > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n}\n.carousel-inner > .next {\n left: 100%;\n}\n.carousel-inner > .prev {\n left: -100%;\n}\n.carousel-inner > .next.left,\n.carousel-inner > .prev.right {\n left: 0;\n}\n.carousel-inner > .active.left {\n left: -100%;\n}\n.carousel-inner > .active.right {\n left: 100%;\n}\n.carousel-control {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n width: 15%;\n font-size: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n background-color: rgba(0, 0, 0, 0);\n filter: alpha(opacity=50);\n opacity: 0.5;\n}\n.carousel-control.left {\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control.right {\n right: 0;\n left: auto;\n background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5)));\n background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);\n filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);\n background-repeat: repeat-x;\n}\n.carousel-control:hover,\n.carousel-control:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n filter: alpha(opacity=90);\n opacity: 0.9;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-left,\n.carousel-control .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n margin-top: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n}\n.carousel-control .icon-next,\n.carousel-control .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n}\n.carousel-control .icon-prev,\n.carousel-control .icon-next {\n width: 20px;\n height: 20px;\n font-family: serif;\n line-height: 1;\n}\n.carousel-control .icon-prev:before {\n content: \"\\2039\";\n}\n.carousel-control .icon-next:before {\n content: \"\\203a\";\n}\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n padding-left: 0;\n margin-left: -30%;\n text-align: center;\n list-style: none;\n}\n.carousel-indicators li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #000 \\9;\n background-color: rgba(0, 0, 0, 0);\n border: 1px solid #fff;\n border-radius: 10px;\n}\n.carousel-indicators .active {\n width: 12px;\n height: 12px;\n margin: 0;\n background-color: #fff;\n}\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 20px;\n left: 15%;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: #fff;\n text-align: center;\n text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);\n}\n.carousel-caption .btn {\n text-shadow: none;\n}\n@media screen and (min-width: 768px) {\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-prev,\n .carousel-control .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -10px;\n font-size: 30px;\n }\n .carousel-control .glyphicon-chevron-left,\n .carousel-control .icon-prev {\n margin-left: -10px;\n }\n .carousel-control .glyphicon-chevron-right,\n .carousel-control .icon-next {\n margin-right: -10px;\n }\n .carousel-caption {\n right: 20%;\n left: 20%;\n padding-bottom: 30px;\n }\n .carousel-indicators {\n bottom: 20px;\n }\n}\n.clearfix:before,\n.clearfix:after,\n.dl-horizontal dd:before,\n.dl-horizontal dd:after,\n.container:before,\n.container:after,\n.container-fluid:before,\n.container-fluid:after,\n.row:before,\n.row:after,\n.form-horizontal .form-group:before,\n.form-horizontal .form-group:after,\n.btn-toolbar:before,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:before,\n.btn-group-vertical > .btn-group:after,\n.nav:before,\n.nav:after,\n.navbar:before,\n.navbar:after,\n.navbar-header:before,\n.navbar-header:after,\n.navbar-collapse:before,\n.navbar-collapse:after,\n.pager:before,\n.pager:after,\n.panel-body:before,\n.panel-body:after,\n.modal-header:before,\n.modal-header:after,\n.modal-footer:before,\n.modal-footer:after {\n display: table;\n content: \" \";\n}\n.clearfix:after,\n.dl-horizontal dd:after,\n.container:after,\n.container-fluid:after,\n.row:after,\n.form-horizontal .form-group:after,\n.btn-toolbar:after,\n.btn-group-vertical > .btn-group:after,\n.nav:after,\n.navbar:after,\n.navbar-header:after,\n.navbar-collapse:after,\n.pager:after,\n.panel-body:after,\n.modal-header:after,\n.modal-footer:after {\n clear: both;\n}\n.center-block {\n display: block;\n margin-right: auto;\n margin-left: auto;\n}\n.pull-right {\n float: right !important;\n}\n.pull-left {\n float: left !important;\n}\n.hide {\n display: none !important;\n}\n.show {\n display: block !important;\n}\n.invisible {\n visibility: hidden;\n}\n.text-hide {\n font: 0/0 a;\n color: transparent;\n text-shadow: none;\n background-color: transparent;\n border: 0;\n}\n.hidden {\n display: none !important;\n}\n.affix {\n position: fixed;\n}\n@-ms-viewport {\n width: device-width;\n}\n.visible-xs,\n.visible-sm,\n.visible-md,\n.visible-lg {\n display: none !important;\n}\n.visible-xs-block,\n.visible-xs-inline,\n.visible-xs-inline-block,\n.visible-sm-block,\n.visible-sm-inline,\n.visible-sm-inline-block,\n.visible-md-block,\n.visible-md-inline,\n.visible-md-inline-block,\n.visible-lg-block,\n.visible-lg-inline,\n.visible-lg-inline-block {\n display: none !important;\n}\n@media (max-width: 767px) {\n .visible-xs {\n display: block !important;\n }\n table.visible-xs {\n display: table !important;\n }\n tr.visible-xs {\n display: table-row !important;\n }\n th.visible-xs,\n td.visible-xs {\n display: table-cell !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-block {\n display: block !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline {\n display: inline !important;\n }\n}\n@media (max-width: 767px) {\n .visible-xs-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm {\n display: block !important;\n }\n table.visible-sm {\n display: table !important;\n }\n tr.visible-sm {\n display: table-row !important;\n }\n th.visible-sm,\n td.visible-sm {\n display: table-cell !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-block {\n display: block !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline {\n display: inline !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .visible-sm-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md {\n display: block !important;\n }\n table.visible-md {\n display: table !important;\n }\n tr.visible-md {\n display: table-row !important;\n }\n th.visible-md,\n td.visible-md {\n display: table-cell !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-block {\n display: block !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline {\n display: inline !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .visible-md-inline-block {\n display: inline-block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg {\n display: block !important;\n }\n table.visible-lg {\n display: table !important;\n }\n tr.visible-lg {\n display: table-row !important;\n }\n th.visible-lg,\n td.visible-lg {\n display: table-cell !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-block {\n display: block !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline {\n display: inline !important;\n }\n}\n@media (min-width: 1200px) {\n .visible-lg-inline-block {\n display: inline-block !important;\n }\n}\n@media (max-width: 767px) {\n .hidden-xs {\n display: none !important;\n }\n}\n@media (min-width: 768px) and (max-width: 991px) {\n .hidden-sm {\n display: none !important;\n }\n}\n@media (min-width: 992px) and (max-width: 1199px) {\n .hidden-md {\n display: none !important;\n }\n}\n@media (min-width: 1200px) {\n .hidden-lg {\n display: none !important;\n }\n}\n.visible-print {\n display: none !important;\n}\n@media print {\n .visible-print {\n display: block !important;\n }\n table.visible-print {\n display: table !important;\n }\n tr.visible-print {\n display: table-row !important;\n }\n th.visible-print,\n td.visible-print {\n display: table-cell !important;\n }\n}\n.visible-print-block {\n display: none !important;\n}\n@media print {\n .visible-print-block {\n display: block !important;\n }\n}\n.visible-print-inline {\n display: none !important;\n}\n@media print {\n .visible-print-inline {\n display: inline !important;\n }\n}\n.visible-print-inline-block {\n display: none !important;\n}\n@media print {\n .visible-print-inline-block {\n display: inline-block !important;\n }\n}\n@media print {\n .hidden-print {\n display: none !important;\n }\n}\n/*# sourceMappingURL=bootstrap.css.map */","// stylelint-disable declaration-no-important, selector-no-qualifying-type\n\n/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */\n\n// ==========================================================================\n// Print styles.\n// Inlined to avoid the additional HTTP request: h5bp.com/r\n// ==========================================================================\n\n@media print {\n *,\n *:before,\n *:after {\n color: #000 !important; // Black prints faster: h5bp.com/s\n text-shadow: none !important;\n background: transparent !important;\n box-shadow: none !important;\n }\n\n a,\n a:visited {\n text-decoration: underline;\n }\n\n a[href]:after {\n content: \" (\" attr(href) \")\";\n }\n\n abbr[title]:after {\n content: \" (\" attr(title) \")\";\n }\n\n // Don't show links that are fragment identifiers,\n // or use the `javascript:` pseudo protocol\n a[href^=\"#\"]:after,\n a[href^=\"javascript:\"]:after {\n content: \"\";\n }\n\n pre,\n blockquote {\n border: 1px solid #999;\n page-break-inside: avoid;\n }\n\n thead {\n display: table-header-group; // h5bp.com/t\n }\n\n tr,\n img {\n page-break-inside: avoid;\n }\n\n img {\n max-width: 100% !important;\n }\n\n p,\n h2,\n h3 {\n orphans: 3;\n widows: 3;\n }\n\n h2,\n h3 {\n page-break-after: avoid;\n }\n\n // Bootstrap specific changes start\n\n // Bootstrap components\n .navbar {\n display: none;\n }\n .btn,\n .dropup > .btn {\n > .caret {\n border-top-color: #000 !important;\n }\n }\n .label {\n border: 1px solid #000;\n }\n\n .table {\n border-collapse: collapse !important;\n\n td,\n th {\n background-color: #fff !important;\n }\n }\n .table-bordered {\n th,\n td {\n border: 1px solid #ddd !important;\n }\n }\n}\n","// stylelint-disable value-list-comma-newline-after, value-list-comma-space-after, indentation, declaration-colon-newline-after, font-family-no-missing-generic-family-keyword\n\n//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: \"Glyphicons Halflings\";\n src: url(\"@{icon-font-path}@{icon-font-name}.eot\");\n src: url(\"@{icon-font-path}@{icon-font-name}.eot?#iefix\") format(\"embedded-opentype\"),\n url(\"@{icon-font-path}@{icon-font-name}.woff2\") format(\"woff2\"),\n url(\"@{icon-font-path}@{icon-font-name}.woff\") format(\"woff\"),\n url(\"@{icon-font-path}@{icon-font-name}.ttf\") format(\"truetype\"),\n url(\"@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}\") format(\"svg\");\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \"Glyphicons Halflings\";\n font-style: normal;\n font-weight: 400;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: \"\\002a\"; } }\n.glyphicon-plus { &:before { content: \"\\002b\"; } }\n.glyphicon-euro,\n.glyphicon-eur { &:before { content: \"\\20ac\"; } }\n.glyphicon-minus { &:before { content: \"\\2212\"; } }\n.glyphicon-cloud { &:before { content: \"\\2601\"; } }\n.glyphicon-envelope { &:before { content: \"\\2709\"; } }\n.glyphicon-pencil { &:before { content: \"\\270f\"; } }\n.glyphicon-glass { &:before { content: \"\\e001\"; } }\n.glyphicon-music { &:before { content: \"\\e002\"; } }\n.glyphicon-search { &:before { content: \"\\e003\"; } }\n.glyphicon-heart { &:before { content: \"\\e005\"; } }\n.glyphicon-star { &:before { content: \"\\e006\"; } }\n.glyphicon-star-empty { &:before { content: \"\\e007\"; } }\n.glyphicon-user { &:before { content: \"\\e008\"; } }\n.glyphicon-film { &:before { content: \"\\e009\"; } }\n.glyphicon-th-large { &:before { content: \"\\e010\"; } }\n.glyphicon-th { &:before { content: \"\\e011\"; } }\n.glyphicon-th-list { &:before { content: \"\\e012\"; } }\n.glyphicon-ok { &:before { content: \"\\e013\"; } }\n.glyphicon-remove { &:before { content: \"\\e014\"; } }\n.glyphicon-zoom-in { &:before { content: \"\\e015\"; } }\n.glyphicon-zoom-out { &:before { content: \"\\e016\"; } }\n.glyphicon-off { &:before { content: \"\\e017\"; } }\n.glyphicon-signal { &:before { content: \"\\e018\"; } }\n.glyphicon-cog { &:before { content: \"\\e019\"; } }\n.glyphicon-trash { &:before { content: \"\\e020\"; } }\n.glyphicon-home { &:before { content: \"\\e021\"; } }\n.glyphicon-file { &:before { content: \"\\e022\"; } }\n.glyphicon-time { &:before { content: \"\\e023\"; } }\n.glyphicon-road { &:before { content: \"\\e024\"; } }\n.glyphicon-download-alt { &:before { content: \"\\e025\"; } }\n.glyphicon-download { &:before { content: \"\\e026\"; } }\n.glyphicon-upload { &:before { content: \"\\e027\"; } }\n.glyphicon-inbox { &:before { content: \"\\e028\"; } }\n.glyphicon-play-circle { &:before { content: \"\\e029\"; } }\n.glyphicon-repeat { &:before { content: \"\\e030\"; } }\n.glyphicon-refresh { &:before { content: \"\\e031\"; } }\n.glyphicon-list-alt { &:before { content: \"\\e032\"; } }\n.glyphicon-lock { &:before { content: \"\\e033\"; } }\n.glyphicon-flag { &:before { content: \"\\e034\"; } }\n.glyphicon-headphones { &:before { content: \"\\e035\"; } }\n.glyphicon-volume-off { &:before { content: \"\\e036\"; } }\n.glyphicon-volume-down { &:before { content: \"\\e037\"; } }\n.glyphicon-volume-up { &:before { content: \"\\e038\"; } }\n.glyphicon-qrcode { &:before { content: \"\\e039\"; } }\n.glyphicon-barcode { &:before { content: \"\\e040\"; } }\n.glyphicon-tag { &:before { content: \"\\e041\"; } }\n.glyphicon-tags { &:before { content: \"\\e042\"; } }\n.glyphicon-book { &:before { content: \"\\e043\"; } }\n.glyphicon-bookmark { &:before { content: \"\\e044\"; } }\n.glyphicon-print { &:before { content: \"\\e045\"; } }\n.glyphicon-camera { &:before { content: \"\\e046\"; } }\n.glyphicon-font { &:before { content: \"\\e047\"; } }\n.glyphicon-bold { &:before { content: \"\\e048\"; } }\n.glyphicon-italic { &:before { content: \"\\e049\"; } }\n.glyphicon-text-height { &:before { content: \"\\e050\"; } }\n.glyphicon-text-width { &:before { content: \"\\e051\"; } }\n.glyphicon-align-left { &:before { content: \"\\e052\"; } }\n.glyphicon-align-center { &:before { content: \"\\e053\"; } }\n.glyphicon-align-right { &:before { content: \"\\e054\"; } }\n.glyphicon-align-justify { &:before { content: \"\\e055\"; } }\n.glyphicon-list { &:before { content: \"\\e056\"; } }\n.glyphicon-indent-left { &:before { content: \"\\e057\"; } }\n.glyphicon-indent-right { &:before { content: \"\\e058\"; } }\n.glyphicon-facetime-video { &:before { content: \"\\e059\"; } }\n.glyphicon-picture { &:before { content: \"\\e060\"; } }\n.glyphicon-map-marker { &:before { content: \"\\e062\"; } }\n.glyphicon-adjust { &:before { content: \"\\e063\"; } }\n.glyphicon-tint { &:before { content: \"\\e064\"; } }\n.glyphicon-edit { &:before { content: \"\\e065\"; } }\n.glyphicon-share { &:before { content: \"\\e066\"; } }\n.glyphicon-check { &:before { content: \"\\e067\"; } }\n.glyphicon-move { &:before { content: \"\\e068\"; } }\n.glyphicon-step-backward { &:before { content: \"\\e069\"; } }\n.glyphicon-fast-backward { &:before { content: \"\\e070\"; } }\n.glyphicon-backward { &:before { content: \"\\e071\"; } }\n.glyphicon-play { &:before { content: \"\\e072\"; } }\n.glyphicon-pause { &:before { content: \"\\e073\"; } }\n.glyphicon-stop { &:before { content: \"\\e074\"; } }\n.glyphicon-forward { &:before { content: \"\\e075\"; } }\n.glyphicon-fast-forward { &:before { content: \"\\e076\"; } }\n.glyphicon-step-forward { &:before { content: \"\\e077\"; } }\n.glyphicon-eject { &:before { content: \"\\e078\"; } }\n.glyphicon-chevron-left { &:before { content: \"\\e079\"; } }\n.glyphicon-chevron-right { &:before { content: \"\\e080\"; } }\n.glyphicon-plus-sign { &:before { content: \"\\e081\"; } }\n.glyphicon-minus-sign { &:before { content: \"\\e082\"; } }\n.glyphicon-remove-sign { &:before { content: \"\\e083\"; } }\n.glyphicon-ok-sign { &:before { content: \"\\e084\"; } }\n.glyphicon-question-sign { &:before { content: \"\\e085\"; } }\n.glyphicon-info-sign { &:before { content: \"\\e086\"; } }\n.glyphicon-screenshot { &:before { content: \"\\e087\"; } }\n.glyphicon-remove-circle { &:before { content: \"\\e088\"; } }\n.glyphicon-ok-circle { &:before { content: \"\\e089\"; } }\n.glyphicon-ban-circle { &:before { content: \"\\e090\"; } }\n.glyphicon-arrow-left { &:before { content: \"\\e091\"; } }\n.glyphicon-arrow-right { &:before { content: \"\\e092\"; } }\n.glyphicon-arrow-up { &:before { content: \"\\e093\"; } }\n.glyphicon-arrow-down { &:before { content: \"\\e094\"; } }\n.glyphicon-share-alt { &:before { content: \"\\e095\"; } }\n.glyphicon-resize-full { &:before { content: \"\\e096\"; } }\n.glyphicon-resize-small { &:before { content: \"\\e097\"; } }\n.glyphicon-exclamation-sign { &:before { content: \"\\e101\"; } }\n.glyphicon-gift { &:before { content: \"\\e102\"; } }\n.glyphicon-leaf { &:before { content: \"\\e103\"; } }\n.glyphicon-fire { &:before { content: \"\\e104\"; } }\n.glyphicon-eye-open { &:before { content: \"\\e105\"; } }\n.glyphicon-eye-close { &:before { content: \"\\e106\"; } }\n.glyphicon-warning-sign { &:before { content: \"\\e107\"; } }\n.glyphicon-plane { &:before { content: \"\\e108\"; } }\n.glyphicon-calendar { &:before { content: \"\\e109\"; } }\n.glyphicon-random { &:before { content: \"\\e110\"; } }\n.glyphicon-comment { &:before { content: \"\\e111\"; } }\n.glyphicon-magnet { &:before { content: \"\\e112\"; } }\n.glyphicon-chevron-up { &:before { content: \"\\e113\"; } }\n.glyphicon-chevron-down { &:before { content: \"\\e114\"; } }\n.glyphicon-retweet { &:before { content: \"\\e115\"; } }\n.glyphicon-shopping-cart { &:before { content: \"\\e116\"; } }\n.glyphicon-folder-close { &:before { content: \"\\e117\"; } }\n.glyphicon-folder-open { &:before { content: \"\\e118\"; } }\n.glyphicon-resize-vertical { &:before { content: \"\\e119\"; } }\n.glyphicon-resize-horizontal { &:before { content: \"\\e120\"; } }\n.glyphicon-hdd { &:before { content: \"\\e121\"; } }\n.glyphicon-bullhorn { &:before { content: \"\\e122\"; } }\n.glyphicon-bell { &:before { content: \"\\e123\"; } }\n.glyphicon-certificate { &:before { content: \"\\e124\"; } }\n.glyphicon-thumbs-up { &:before { content: \"\\e125\"; } }\n.glyphicon-thumbs-down { &:before { content: \"\\e126\"; } }\n.glyphicon-hand-right { &:before { content: \"\\e127\"; } }\n.glyphicon-hand-left { &:before { content: \"\\e128\"; } }\n.glyphicon-hand-up { &:before { content: \"\\e129\"; } }\n.glyphicon-hand-down { &:before { content: \"\\e130\"; } }\n.glyphicon-circle-arrow-right { &:before { content: \"\\e131\"; } }\n.glyphicon-circle-arrow-left { &:before { content: \"\\e132\"; } }\n.glyphicon-circle-arrow-up { &:before { content: \"\\e133\"; } }\n.glyphicon-circle-arrow-down { &:before { content: \"\\e134\"; } }\n.glyphicon-globe { &:before { content: \"\\e135\"; } }\n.glyphicon-wrench { &:before { content: \"\\e136\"; } }\n.glyphicon-tasks { &:before { content: \"\\e137\"; } }\n.glyphicon-filter { &:before { content: \"\\e138\"; } }\n.glyphicon-briefcase { &:before { content: \"\\e139\"; } }\n.glyphicon-fullscreen { &:before { content: \"\\e140\"; } }\n.glyphicon-dashboard { &:before { content: \"\\e141\"; } }\n.glyphicon-paperclip { &:before { content: \"\\e142\"; } }\n.glyphicon-heart-empty { &:before { content: \"\\e143\"; } }\n.glyphicon-link { &:before { content: \"\\e144\"; } }\n.glyphicon-phone { &:before { content: \"\\e145\"; } }\n.glyphicon-pushpin { &:before { content: \"\\e146\"; } }\n.glyphicon-usd { &:before { content: \"\\e148\"; } }\n.glyphicon-gbp { &:before { content: \"\\e149\"; } }\n.glyphicon-sort { &:before { content: \"\\e150\"; } }\n.glyphicon-sort-by-alphabet { &:before { content: \"\\e151\"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: \"\\e152\"; } }\n.glyphicon-sort-by-order { &:before { content: \"\\e153\"; } }\n.glyphicon-sort-by-order-alt { &:before { content: \"\\e154\"; } }\n.glyphicon-sort-by-attributes { &:before { content: \"\\e155\"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: \"\\e156\"; } }\n.glyphicon-unchecked { &:before { content: \"\\e157\"; } }\n.glyphicon-expand { &:before { content: \"\\e158\"; } }\n.glyphicon-collapse-down { &:before { content: \"\\e159\"; } }\n.glyphicon-collapse-up { &:before { content: \"\\e160\"; } }\n.glyphicon-log-in { &:before { content: \"\\e161\"; } }\n.glyphicon-flash { &:before { content: \"\\e162\"; } }\n.glyphicon-log-out { &:before { content: \"\\e163\"; } }\n.glyphicon-new-window { &:before { content: \"\\e164\"; } }\n.glyphicon-record { &:before { content: \"\\e165\"; } }\n.glyphicon-save { &:before { content: \"\\e166\"; } }\n.glyphicon-open { &:before { content: \"\\e167\"; } }\n.glyphicon-saved { &:before { content: \"\\e168\"; } }\n.glyphicon-import { &:before { content: \"\\e169\"; } }\n.glyphicon-export { &:before { content: \"\\e170\"; } }\n.glyphicon-send { &:before { content: \"\\e171\"; } }\n.glyphicon-floppy-disk { &:before { content: \"\\e172\"; } }\n.glyphicon-floppy-saved { &:before { content: \"\\e173\"; } }\n.glyphicon-floppy-remove { &:before { content: \"\\e174\"; } }\n.glyphicon-floppy-save { &:before { content: \"\\e175\"; } }\n.glyphicon-floppy-open { &:before { content: \"\\e176\"; } }\n.glyphicon-credit-card { &:before { content: \"\\e177\"; } }\n.glyphicon-transfer { &:before { content: \"\\e178\"; } }\n.glyphicon-cutlery { &:before { content: \"\\e179\"; } }\n.glyphicon-header { &:before { content: \"\\e180\"; } }\n.glyphicon-compressed { &:before { content: \"\\e181\"; } }\n.glyphicon-earphone { &:before { content: \"\\e182\"; } }\n.glyphicon-phone-alt { &:before { content: \"\\e183\"; } }\n.glyphicon-tower { &:before { content: \"\\e184\"; } }\n.glyphicon-stats { &:before { content: \"\\e185\"; } }\n.glyphicon-sd-video { &:before { content: \"\\e186\"; } }\n.glyphicon-hd-video { &:before { content: \"\\e187\"; } }\n.glyphicon-subtitles { &:before { content: \"\\e188\"; } }\n.glyphicon-sound-stereo { &:before { content: \"\\e189\"; } }\n.glyphicon-sound-dolby { &:before { content: \"\\e190\"; } }\n.glyphicon-sound-5-1 { &:before { content: \"\\e191\"; } }\n.glyphicon-sound-6-1 { &:before { content: \"\\e192\"; } }\n.glyphicon-sound-7-1 { &:before { content: \"\\e193\"; } }\n.glyphicon-copyright-mark { &:before { content: \"\\e194\"; } }\n.glyphicon-registration-mark { &:before { content: \"\\e195\"; } }\n.glyphicon-cloud-download { &:before { content: \"\\e197\"; } }\n.glyphicon-cloud-upload { &:before { content: \"\\e198\"; } }\n.glyphicon-tree-conifer { &:before { content: \"\\e199\"; } }\n.glyphicon-tree-deciduous { &:before { content: \"\\e200\"; } }\n.glyphicon-cd { &:before { content: \"\\e201\"; } }\n.glyphicon-save-file { &:before { content: \"\\e202\"; } }\n.glyphicon-open-file { &:before { content: \"\\e203\"; } }\n.glyphicon-level-up { &:before { content: \"\\e204\"; } }\n.glyphicon-copy { &:before { content: \"\\e205\"; } }\n.glyphicon-paste { &:before { content: \"\\e206\"; } }\n// The following 2 Glyphicons are omitted for the time being because\n// they currently use Unicode codepoints that are outside the\n// Basic Multilingual Plane (BMP). Older buggy versions of WebKit can't handle\n// non-BMP codepoints in CSS string escapes, and thus can't display these two icons.\n// Notably, the bug affects some older versions of the Android Browser.\n// More info: https://github.com/twbs/bootstrap/issues/10106\n// .glyphicon-door { &:before { content: \"\\1f6aa\"; } }\n// .glyphicon-key { &:before { content: \"\\1f511\"; } }\n.glyphicon-alert { &:before { content: \"\\e209\"; } }\n.glyphicon-equalizer { &:before { content: \"\\e210\"; } }\n.glyphicon-king { &:before { content: \"\\e211\"; } }\n.glyphicon-queen { &:before { content: \"\\e212\"; } }\n.glyphicon-pawn { &:before { content: \"\\e213\"; } }\n.glyphicon-bishop { &:before { content: \"\\e214\"; } }\n.glyphicon-knight { &:before { content: \"\\e215\"; } }\n.glyphicon-baby-formula { &:before { content: \"\\e216\"; } }\n.glyphicon-tent { &:before { content: \"\\26fa\"; } }\n.glyphicon-blackboard { &:before { content: \"\\e218\"; } }\n.glyphicon-bed { &:before { content: \"\\e219\"; } }\n.glyphicon-apple { &:before { content: \"\\f8ff\"; } }\n.glyphicon-erase { &:before { content: \"\\e221\"; } }\n.glyphicon-hourglass { &:before { content: \"\\231b\"; } }\n.glyphicon-lamp { &:before { content: \"\\e223\"; } }\n.glyphicon-duplicate { &:before { content: \"\\e224\"; } }\n.glyphicon-piggy-bank { &:before { content: \"\\e225\"; } }\n.glyphicon-scissors { &:before { content: \"\\e226\"; } }\n.glyphicon-bitcoin { &:before { content: \"\\e227\"; } }\n.glyphicon-btc { &:before { content: \"\\e227\"; } }\n.glyphicon-xbt { &:before { content: \"\\e227\"; } }\n.glyphicon-yen { &:before { content: \"\\00a5\"; } }\n.glyphicon-jpy { &:before { content: \"\\00a5\"; } }\n.glyphicon-ruble { &:before { content: \"\\20bd\"; } }\n.glyphicon-rub { &:before { content: \"\\20bd\"; } }\n.glyphicon-scale { &:before { content: \"\\e230\"; } }\n.glyphicon-ice-lolly { &:before { content: \"\\e231\"; } }\n.glyphicon-ice-lolly-tasted { &:before { content: \"\\e232\"; } }\n.glyphicon-education { &:before { content: \"\\e233\"; } }\n.glyphicon-option-horizontal { &:before { content: \"\\e234\"; } }\n.glyphicon-option-vertical { &:before { content: \"\\e235\"; } }\n.glyphicon-menu-hamburger { &:before { content: \"\\e236\"; } }\n.glyphicon-modal-window { &:before { content: \"\\e237\"; } }\n.glyphicon-oil { &:before { content: \"\\e238\"; } }\n.glyphicon-grain { &:before { content: \"\\e239\"; } }\n.glyphicon-sunglasses { &:before { content: \"\\e240\"; } }\n.glyphicon-text-size { &:before { content: \"\\e241\"; } }\n.glyphicon-text-color { &:before { content: \"\\e242\"; } }\n.glyphicon-text-background { &:before { content: \"\\e243\"; } }\n.glyphicon-object-align-top { &:before { content: \"\\e244\"; } }\n.glyphicon-object-align-bottom { &:before { content: \"\\e245\"; } }\n.glyphicon-object-align-horizontal{ &:before { content: \"\\e246\"; } }\n.glyphicon-object-align-left { &:before { content: \"\\e247\"; } }\n.glyphicon-object-align-vertical { &:before { content: \"\\e248\"; } }\n.glyphicon-object-align-right { &:before { content: \"\\e249\"; } }\n.glyphicon-triangle-right { &:before { content: \"\\e250\"; } }\n.glyphicon-triangle-left { &:before { content: \"\\e251\"; } }\n.glyphicon-triangle-bottom { &:before { content: \"\\e252\"; } }\n.glyphicon-triangle-top { &:before { content: \"\\e253\"; } }\n.glyphicon-console { &:before { content: \"\\e254\"; } }\n.glyphicon-superscript { &:before { content: \"\\e255\"; } }\n.glyphicon-subscript { &:before { content: \"\\e256\"; } }\n.glyphicon-menu-left { &:before { content: \"\\e257\"; } }\n.glyphicon-menu-right { &:before { content: \"\\e258\"; } }\n.glyphicon-menu-down { &:before { content: \"\\e259\"; } }\n.glyphicon-menu-up { &:before { content: \"\\e260\"; } }\n","//\n// Scaffolding\n// --------------------------------------------------\n\n\n// Reset the box-sizing\n//\n// Heads up! This reset may cause conflicts with some third-party widgets.\n// For recommendations on resolving such conflicts, see\n// https://getbootstrap.com/docs/3.4/getting-started/#third-box-sizing\n* {\n .box-sizing(border-box);\n}\n*:before,\n*:after {\n .box-sizing(border-box);\n}\n\n\n// Body reset\n\nhtml {\n font-size: 10px;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nbody {\n font-family: @font-family-base;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @text-color;\n background-color: @body-bg;\n}\n\n// Reset fonts for relevant elements\ninput,\nbutton,\nselect,\ntextarea {\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\n\n// Links\n\na {\n color: @link-color;\n text-decoration: none;\n\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: @link-hover-decoration;\n }\n\n &:focus {\n .tab-focus();\n }\n}\n\n\n// Figures\n//\n// We reset this here because previously Normalize had no `figure` margins. This\n// ensures we don't break anyone's use of the element.\n\nfigure {\n margin: 0;\n}\n\n\n// Images\n\nimg {\n vertical-align: middle;\n}\n\n// Responsive images (ensure images don't scale beyond their parents)\n.img-responsive {\n .img-responsive();\n}\n\n// Rounded corners\n.img-rounded {\n border-radius: @border-radius-large;\n}\n\n// Image thumbnails\n//\n// Heads up! This is mixin-ed into thumbnails.less for `.thumbnail`.\n.img-thumbnail {\n padding: @thumbnail-padding;\n line-height: @line-height-base;\n background-color: @thumbnail-bg;\n border: 1px solid @thumbnail-border;\n border-radius: @thumbnail-border-radius;\n .transition(all .2s ease-in-out);\n\n // Keep them at most 100% wide\n .img-responsive(inline-block);\n}\n\n// Perfect circle\n.img-circle {\n border-radius: 50%; // set radius in percents\n}\n\n\n// Horizontal rules\n\nhr {\n margin-top: @line-height-computed;\n margin-bottom: @line-height-computed;\n border: 0;\n border-top: 1px solid @hr-border;\n}\n\n\n// Only display content to screen readers\n//\n// See: https://a11yproject.com/posts/how-to-hide-content\n\n.sr-only {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n border: 0;\n}\n\n// Use in conjunction with .sr-only to only display content when it's focused.\n// Useful for \"Skip to main content\" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\n// Credit: HTML5 Boilerplate\n\n.sr-only-focusable {\n &:active,\n &:focus {\n position: static;\n width: auto;\n height: auto;\n margin: 0;\n overflow: visible;\n clip: auto;\n }\n}\n\n\n// iOS \"clickable elements\" fix for role=\"button\"\n//\n// Fixes \"clickability\" issue (and more generally, the firing of events such as focus as well)\n// for traditionally non-focusable elements with role=\"button\"\n// see https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\n\n[role=\"button\"] {\n cursor: pointer;\n}\n","// stylelint-disable indentation, property-no-vendor-prefix, selector-no-vendor-prefix\n\n// Vendor Prefixes\n//\n// All vendor mixins are deprecated as of v3.2.0 due to the introduction of\n// Autoprefixer in our Gruntfile. They have been removed in v4.\n\n// - Animations\n// - Backface visibility\n// - Box shadow\n// - Box sizing\n// - Content columns\n// - Hyphens\n// - Placeholder text\n// - Transformations\n// - Transitions\n// - User Select\n\n\n// Animations\n.animation(@animation) {\n -webkit-animation: @animation;\n -o-animation: @animation;\n animation: @animation;\n}\n.animation-name(@name) {\n -webkit-animation-name: @name;\n animation-name: @name;\n}\n.animation-duration(@duration) {\n -webkit-animation-duration: @duration;\n animation-duration: @duration;\n}\n.animation-timing-function(@timing-function) {\n -webkit-animation-timing-function: @timing-function;\n animation-timing-function: @timing-function;\n}\n.animation-delay(@delay) {\n -webkit-animation-delay: @delay;\n animation-delay: @delay;\n}\n.animation-iteration-count(@iteration-count) {\n -webkit-animation-iteration-count: @iteration-count;\n animation-iteration-count: @iteration-count;\n}\n.animation-direction(@direction) {\n -webkit-animation-direction: @direction;\n animation-direction: @direction;\n}\n.animation-fill-mode(@fill-mode) {\n -webkit-animation-fill-mode: @fill-mode;\n animation-fill-mode: @fill-mode;\n}\n\n// Backface visibility\n// Prevent browsers from flickering when using CSS 3D transforms.\n// Default value is `visible`, but can be changed to `hidden`\n\n.backface-visibility(@visibility) {\n -webkit-backface-visibility: @visibility;\n -moz-backface-visibility: @visibility;\n backface-visibility: @visibility;\n}\n\n// Drop shadows\n//\n// Note: Deprecated `.box-shadow()` as of v3.1.0 since all of Bootstrap's\n// supported browsers that have box shadow capabilities now support it.\n\n.box-shadow(@shadow) {\n -webkit-box-shadow: @shadow; // iOS <4.3 & Android <4.1\n box-shadow: @shadow;\n}\n\n// Box sizing\n.box-sizing(@boxmodel) {\n -webkit-box-sizing: @boxmodel;\n -moz-box-sizing: @boxmodel;\n box-sizing: @boxmodel;\n}\n\n// CSS3 Content Columns\n.content-columns(@column-count; @column-gap: @grid-gutter-width) {\n -webkit-column-count: @column-count;\n -moz-column-count: @column-count;\n column-count: @column-count;\n -webkit-column-gap: @column-gap;\n -moz-column-gap: @column-gap;\n column-gap: @column-gap;\n}\n\n// Optional hyphenation\n.hyphens(@mode: auto) {\n -webkit-hyphens: @mode;\n -moz-hyphens: @mode;\n -ms-hyphens: @mode; // IE10+\n -o-hyphens: @mode;\n hyphens: @mode;\n word-wrap: break-word;\n}\n\n// Placeholder text\n.placeholder(@color: @input-color-placeholder) {\n // Firefox\n &::-moz-placeholder {\n color: @color;\n opacity: 1; // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526\n }\n &:-ms-input-placeholder { color: @color; } // Internet Explorer 10+\n &::-webkit-input-placeholder { color: @color; } // Safari and Chrome\n}\n\n// Transformations\n.scale(@ratio) {\n -webkit-transform: scale(@ratio);\n -ms-transform: scale(@ratio); // IE9 only\n -o-transform: scale(@ratio);\n transform: scale(@ratio);\n}\n.scale(@ratioX; @ratioY) {\n -webkit-transform: scale(@ratioX, @ratioY);\n -ms-transform: scale(@ratioX, @ratioY); // IE9 only\n -o-transform: scale(@ratioX, @ratioY);\n transform: scale(@ratioX, @ratioY);\n}\n.scaleX(@ratio) {\n -webkit-transform: scaleX(@ratio);\n -ms-transform: scaleX(@ratio); // IE9 only\n -o-transform: scaleX(@ratio);\n transform: scaleX(@ratio);\n}\n.scaleY(@ratio) {\n -webkit-transform: scaleY(@ratio);\n -ms-transform: scaleY(@ratio); // IE9 only\n -o-transform: scaleY(@ratio);\n transform: scaleY(@ratio);\n}\n.skew(@x; @y) {\n -webkit-transform: skewX(@x) skewY(@y);\n -ms-transform: skewX(@x) skewY(@y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+\n -o-transform: skewX(@x) skewY(@y);\n transform: skewX(@x) skewY(@y);\n}\n.translate(@x; @y) {\n -webkit-transform: translate(@x, @y);\n -ms-transform: translate(@x, @y); // IE9 only\n -o-transform: translate(@x, @y);\n transform: translate(@x, @y);\n}\n.translate3d(@x; @y; @z) {\n -webkit-transform: translate3d(@x, @y, @z);\n transform: translate3d(@x, @y, @z);\n}\n.rotate(@degrees) {\n -webkit-transform: rotate(@degrees);\n -ms-transform: rotate(@degrees); // IE9 only\n -o-transform: rotate(@degrees);\n transform: rotate(@degrees);\n}\n.rotateX(@degrees) {\n -webkit-transform: rotateX(@degrees);\n -ms-transform: rotateX(@degrees); // IE9 only\n -o-transform: rotateX(@degrees);\n transform: rotateX(@degrees);\n}\n.rotateY(@degrees) {\n -webkit-transform: rotateY(@degrees);\n -ms-transform: rotateY(@degrees); // IE9 only\n -o-transform: rotateY(@degrees);\n transform: rotateY(@degrees);\n}\n.perspective(@perspective) {\n -webkit-perspective: @perspective;\n -moz-perspective: @perspective;\n perspective: @perspective;\n}\n.perspective-origin(@perspective) {\n -webkit-perspective-origin: @perspective;\n -moz-perspective-origin: @perspective;\n perspective-origin: @perspective;\n}\n.transform-origin(@origin) {\n -webkit-transform-origin: @origin;\n -moz-transform-origin: @origin;\n -ms-transform-origin: @origin; // IE9 only\n transform-origin: @origin;\n}\n\n\n// Transitions\n\n.transition(@transition) {\n -webkit-transition: @transition;\n -o-transition: @transition;\n transition: @transition;\n}\n.transition-property(@transition-property) {\n -webkit-transition-property: @transition-property;\n transition-property: @transition-property;\n}\n.transition-delay(@transition-delay) {\n -webkit-transition-delay: @transition-delay;\n transition-delay: @transition-delay;\n}\n.transition-duration(@transition-duration) {\n -webkit-transition-duration: @transition-duration;\n transition-duration: @transition-duration;\n}\n.transition-timing-function(@timing-function) {\n -webkit-transition-timing-function: @timing-function;\n transition-timing-function: @timing-function;\n}\n.transition-transform(@transition) {\n -webkit-transition: -webkit-transform @transition;\n -moz-transition: -moz-transform @transition;\n -o-transition: -o-transform @transition;\n transition: transform @transition;\n}\n\n\n// User select\n// For selecting text on the page\n\n.user-select(@select) {\n -webkit-user-select: @select;\n -moz-user-select: @select;\n -ms-user-select: @select; // IE10+\n user-select: @select;\n}\n","// WebKit-style focus\n\n.tab-focus() {\n // WebKit-specific. Other browsers will keep their default outline style.\n // (Initially tried to also force default via `outline: initial`,\n // but that seems to erroneously remove the outline in Firefox altogether.)\n outline: 5px auto -webkit-focus-ring-color;\n outline-offset: -2px;\n}\n","// stylelint-disable media-feature-name-no-vendor-prefix, media-feature-parentheses-space-inside, media-feature-name-no-unknown, indentation, at-rule-name-space-after\n\n// Responsive image\n//\n// Keep images from scaling beyond the width of their parents.\n.img-responsive(@display: block) {\n display: @display;\n max-width: 100%; // Part 1: Set a maximum relative to the parent\n height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching\n}\n\n\n// Retina image\n//\n// Short retina mixin for setting background-image and -size. Note that the\n// spelling of `min--moz-device-pixel-ratio` is intentional.\n.img-retina(@file-1x; @file-2x; @width-1x; @height-1x) {\n background-image: url(\"@{file-1x}\");\n\n @media\n only screen and (-webkit-min-device-pixel-ratio: 2),\n only screen and ( min--moz-device-pixel-ratio: 2),\n only screen and ( -o-min-device-pixel-ratio: 2/1),\n only screen and ( min-device-pixel-ratio: 2),\n only screen and ( min-resolution: 192dpi),\n only screen and ( min-resolution: 2dppx) {\n background-image: url(\"@{file-2x}\");\n background-size: @width-1x @height-1x;\n }\n}\n","// stylelint-disable selector-list-comma-newline-after, selector-no-qualifying-type\n\n//\n// Typography\n// --------------------------------------------------\n\n\n// Headings\n// -------------------------\n\nh1, h2, h3, h4, h5, h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n font-family: @headings-font-family;\n font-weight: @headings-font-weight;\n line-height: @headings-line-height;\n color: @headings-color;\n\n small,\n .small {\n font-weight: 400;\n line-height: 1;\n color: @headings-small-color;\n }\n}\n\nh1, .h1,\nh2, .h2,\nh3, .h3 {\n margin-top: @line-height-computed;\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 65%;\n }\n}\nh4, .h4,\nh5, .h5,\nh6, .h6 {\n margin-top: (@line-height-computed / 2);\n margin-bottom: (@line-height-computed / 2);\n\n small,\n .small {\n font-size: 75%;\n }\n}\n\nh1, .h1 { font-size: @font-size-h1; }\nh2, .h2 { font-size: @font-size-h2; }\nh3, .h3 { font-size: @font-size-h3; }\nh4, .h4 { font-size: @font-size-h4; }\nh5, .h5 { font-size: @font-size-h5; }\nh6, .h6 { font-size: @font-size-h6; }\n\n\n// Body text\n// -------------------------\n\np {\n margin: 0 0 (@line-height-computed / 2);\n}\n\n.lead {\n margin-bottom: @line-height-computed;\n font-size: floor((@font-size-base * 1.15));\n font-weight: 300;\n line-height: 1.4;\n\n @media (min-width: @screen-sm-min) {\n font-size: (@font-size-base * 1.5);\n }\n}\n\n\n// Emphasis & misc\n// -------------------------\n\n// Ex: (12px small font / 14px base font) * 100% = about 85%\nsmall,\n.small {\n font-size: floor((100% * @font-size-small / @font-size-base));\n}\n\nmark,\n.mark {\n padding: .2em;\n background-color: @state-warning-bg;\n}\n\n// Alignment\n.text-left { text-align: left; }\n.text-right { text-align: right; }\n.text-center { text-align: center; }\n.text-justify { text-align: justify; }\n.text-nowrap { white-space: nowrap; }\n\n// Transformation\n.text-lowercase { text-transform: lowercase; }\n.text-uppercase { text-transform: uppercase; }\n.text-capitalize { text-transform: capitalize; }\n\n// Contextual colors\n.text-muted {\n color: @text-muted;\n}\n.text-primary {\n .text-emphasis-variant(@brand-primary);\n}\n.text-success {\n .text-emphasis-variant(@state-success-text);\n}\n.text-info {\n .text-emphasis-variant(@state-info-text);\n}\n.text-warning {\n .text-emphasis-variant(@state-warning-text);\n}\n.text-danger {\n .text-emphasis-variant(@state-danger-text);\n}\n\n// Contextual backgrounds\n// For now we'll leave these alongside the text classes until v4 when we can\n// safely shift things around (per SemVer rules).\n.bg-primary {\n // Given the contrast here, this is the only class to have its color inverted\n // automatically.\n color: #fff;\n .bg-variant(@brand-primary);\n}\n.bg-success {\n .bg-variant(@state-success-bg);\n}\n.bg-info {\n .bg-variant(@state-info-bg);\n}\n.bg-warning {\n .bg-variant(@state-warning-bg);\n}\n.bg-danger {\n .bg-variant(@state-danger-bg);\n}\n\n\n// Page header\n// -------------------------\n\n.page-header {\n padding-bottom: ((@line-height-computed / 2) - 1);\n margin: (@line-height-computed * 2) 0 @line-height-computed;\n border-bottom: 1px solid @page-header-border-color;\n}\n\n\n// Lists\n// -------------------------\n\n// Unordered and Ordered lists\nul,\nol {\n margin-top: 0;\n margin-bottom: (@line-height-computed / 2);\n ul,\n ol {\n margin-bottom: 0;\n }\n}\n\n// List options\n\n// Unstyled keeps list items block level, just removes default browser padding and list-style\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n// Inline turns list items into inline-block\n.list-inline {\n .list-unstyled();\n margin-left: -5px;\n\n > li {\n display: inline-block;\n padding-right: 5px;\n padding-left: 5px;\n }\n}\n\n// Description Lists\ndl {\n margin-top: 0; // Remove browser default\n margin-bottom: @line-height-computed;\n}\ndt,\ndd {\n line-height: @line-height-base;\n}\ndt {\n font-weight: 700;\n}\ndd {\n margin-left: 0; // Undo browser default\n}\n\n// Horizontal description lists\n//\n// Defaults to being stacked without any of the below styles applied, until the\n// grid breakpoint is reached (default of ~768px).\n\n.dl-horizontal {\n dd {\n &:extend(.clearfix all); // Clear the floated `dt` if an empty `dd` is present\n }\n\n @media (min-width: @dl-horizontal-breakpoint) {\n dt {\n float: left;\n width: (@dl-horizontal-offset - 20);\n clear: left;\n text-align: right;\n .text-overflow();\n }\n dd {\n margin-left: @dl-horizontal-offset;\n }\n }\n}\n\n\n// Misc\n// -------------------------\n\n// Abbreviations and acronyms\n// Add data-* attribute to help out our tooltip plugin, per https://github.com/twbs/bootstrap/issues/5257\nabbr[title],\nabbr[data-original-title] {\n cursor: help;\n}\n\n.initialism {\n font-size: 90%;\n .text-uppercase();\n}\n\n// Blockquotes\nblockquote {\n padding: (@line-height-computed / 2) @line-height-computed;\n margin: 0 0 @line-height-computed;\n font-size: @blockquote-font-size;\n border-left: 5px solid @blockquote-border-color;\n\n p,\n ul,\n ol {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n // Note: Deprecated small and .small as of v3.1.0\n // Context: https://github.com/twbs/bootstrap/issues/11660\n footer,\n small,\n .small {\n display: block;\n font-size: 80%; // back to default font-size\n line-height: @line-height-base;\n color: @blockquote-small-color;\n\n &:before {\n content: \"\\2014 \\00A0\"; // em dash, nbsp\n }\n }\n}\n\n// Opposite alignment of blockquote\n//\n// Heads up: `blockquote.pull-right` has been deprecated as of v3.1.0.\n.blockquote-reverse,\nblockquote.pull-right {\n padding-right: 15px;\n padding-left: 0;\n text-align: right;\n border-right: 5px solid @blockquote-border-color;\n border-left: 0;\n\n // Account for citation\n footer,\n small,\n .small {\n &:before { content: \"\"; }\n &:after {\n content: \"\\00A0 \\2014\"; // nbsp, em dash\n }\n }\n}\n\n// Addresses\naddress {\n margin-bottom: @line-height-computed;\n font-style: normal;\n line-height: @line-height-base;\n}\n","// Typography\n\n.text-emphasis-variant(@color) {\n color: @color;\n a&:hover,\n a&:focus {\n color: darken(@color, 10%);\n }\n}\n","// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover,\n a&:focus {\n background-color: darken(@color, 10%);\n }\n}\n","// Text overflow\n// Requires inline-block or block for proper styling\n\n.text-overflow() {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n","//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);\n\n kbd {\n padding: 0;\n font-size: 100%;\n font-weight: 700;\n box-shadow: none;\n }\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n color: @pre-color;\n word-break: break-all;\n word-wrap: break-word;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n.row-no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n// Centered container element\n.container-fixed(@gutter: @grid-gutter-width) {\n padding-right: ceil((@gutter / 2));\n padding-left: floor((@gutter / 2));\n margin-right: auto;\n margin-left: auto;\n &:extend(.clearfix all);\n}\n\n// Creates a wrapper for a series of columns\n.make-row(@gutter: @grid-gutter-width) {\n margin-right: floor((@gutter / -2));\n margin-left: ceil((@gutter / -2));\n &:extend(.clearfix all);\n}\n\n// Generate the extra small columns\n.make-xs-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n float: left;\n width: percentage((@columns / @grid-columns));\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n}\n.make-xs-column-offset(@columns) {\n margin-left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-push(@columns) {\n left: percentage((@columns / @grid-columns));\n}\n.make-xs-column-pull(@columns) {\n right: percentage((@columns / @grid-columns));\n}\n\n// Generate the small columns\n.make-sm-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-sm-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-offset(@columns) {\n @media (min-width: @screen-sm-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-push(@columns) {\n @media (min-width: @screen-sm-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-sm-column-pull(@columns) {\n @media (min-width: @screen-sm-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the medium columns\n.make-md-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-md-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-offset(@columns) {\n @media (min-width: @screen-md-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-push(@columns) {\n @media (min-width: @screen-md-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-md-column-pull(@columns) {\n @media (min-width: @screen-md-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n\n// Generate the large columns\n.make-lg-column(@columns; @gutter: @grid-gutter-width) {\n position: relative;\n min-height: 1px;\n padding-right: (@gutter / 2);\n padding-left: (@gutter / 2);\n\n @media (min-width: @screen-lg-min) {\n float: left;\n width: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-offset(@columns) {\n @media (min-width: @screen-lg-min) {\n margin-left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-push(@columns) {\n @media (min-width: @screen-lg-min) {\n left: percentage((@columns / @grid-columns));\n }\n}\n.make-lg-column-pull(@columns) {\n @media (min-width: @screen-lg-min) {\n right: percentage((@columns / @grid-columns));\n }\n}\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `@grid-columns`.\n\n.make-grid-columns() {\n // Common styles for all sizes of grid columns, widths 1-12\n .col(@index) { // initial\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general; \"=<\" isn't a typo\n @item: ~\".col-xs-@{index}, .col-sm-@{index}, .col-md-@{index}, .col-lg-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n position: relative;\n // Prevent columns from collapsing when empty\n min-height: 1px;\n // Inner gutter via padding\n padding-right: floor((@grid-gutter-width / 2));\n padding-left: ceil((@grid-gutter-width / 2));\n }\n }\n .col(1); // kickstart it\n}\n\n.float-grid-columns(@class) {\n .col(@index) { // initial\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), @item);\n }\n .col(@index, @list) when (@index =< @grid-columns) { // general\n @item: ~\".col-@{class}-@{index}\";\n .col((@index + 1), ~\"@{list}, @{item}\");\n }\n .col(@index, @list) when (@index > @grid-columns) { // terminal\n @{list} {\n float: left;\n }\n }\n .col(1); // kickstart it\n}\n\n.calc-grid-column(@index, @class, @type) when (@type = width) and (@index > 0) {\n .col-@{class}-@{index} {\n width: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index > 0) {\n .col-@{class}-push-@{index} {\n left: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = push) and (@index = 0) {\n .col-@{class}-push-0 {\n left: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index > 0) {\n .col-@{class}-pull-@{index} {\n right: percentage((@index / @grid-columns));\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = pull) and (@index = 0) {\n .col-@{class}-pull-0 {\n right: auto;\n }\n}\n.calc-grid-column(@index, @class, @type) when (@type = offset) {\n .col-@{class}-offset-@{index} {\n margin-left: percentage((@index / @grid-columns));\n }\n}\n\n// Basic looping in LESS\n.loop-grid-columns(@index, @class, @type) when (@index >= 0) {\n .calc-grid-column(@index, @class, @type);\n // next iteration\n .loop-grid-columns((@index - 1), @class, @type);\n}\n\n// Create grid for specific class\n.make-grid(@class) {\n .float-grid-columns(@class);\n .loop-grid-columns(@grid-columns, @class, width);\n .loop-grid-columns(@grid-columns, @class, pull);\n .loop-grid-columns(@grid-columns, @class, push);\n .loop-grid-columns(@grid-columns, @class, offset);\n}\n","// stylelint-disable selector-max-type, selector-max-compound-selectors, selector-no-qualifying-type\n\n//\n// Tables\n// --------------------------------------------------\n\n\ntable {\n background-color: @table-bg;\n\n // Table cell sizing\n //\n // Reset default table behavior\n\n col[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n display: table-column;\n float: none;\n }\n\n td,\n th {\n &[class*=\"col-\"] {\n position: static; // Prevent border hiding in Firefox and IE9-11 (see https://github.com/twbs/bootstrap/issues/11623)\n display: table-cell;\n float: none;\n }\n }\n}\n\ncaption {\n padding-top: @table-cell-padding;\n padding-bottom: @table-cell-padding;\n color: @text-muted;\n text-align: left;\n}\n\nth {\n text-align: left;\n}\n\n\n// Baseline styles\n\n.table {\n width: 100%;\n max-width: 100%;\n margin-bottom: @line-height-computed;\n // Cells\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-cell-padding;\n line-height: @line-height-base;\n vertical-align: top;\n border-top: 1px solid @table-border-color;\n }\n }\n }\n // Bottom align for column headings\n > thead > tr > th {\n vertical-align: bottom;\n border-bottom: 2px solid @table-border-color;\n }\n // Remove top border from thead by default\n > caption + thead,\n > colgroup + thead,\n > thead:first-child {\n > tr:first-child {\n > th,\n > td {\n border-top: 0;\n }\n }\n }\n // Account for multiple tbody instances\n > tbody + tbody {\n border-top: 2px solid @table-border-color;\n }\n\n // Nesting\n .table {\n background-color: @body-bg;\n }\n}\n\n\n// Condensed table w/ half padding\n\n.table-condensed {\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n padding: @table-condensed-cell-padding;\n }\n }\n }\n}\n\n\n// Bordered version\n//\n// Add borders all around the table and between all the columns.\n\n.table-bordered {\n border: 1px solid @table-border-color;\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n border: 1px solid @table-border-color;\n }\n }\n }\n > thead > tr {\n > th,\n > td {\n border-bottom-width: 2px;\n }\n }\n}\n\n\n// Zebra-striping\n//\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\n\n.table-striped {\n > tbody > tr:nth-of-type(odd) {\n background-color: @table-bg-accent;\n }\n}\n\n\n// Hover effect\n//\n// Placed here since it has to come after the potential zebra striping\n\n.table-hover {\n > tbody > tr:hover {\n background-color: @table-bg-hover;\n }\n}\n\n\n// Table backgrounds\n//\n// Exact selectors below required to override `.table-striped` and prevent\n// inheritance to nested tables.\n\n// Generate the contextual variants\n.table-row-variant(active; @table-bg-active);\n.table-row-variant(success; @state-success-bg);\n.table-row-variant(info; @state-info-bg);\n.table-row-variant(warning; @state-warning-bg);\n.table-row-variant(danger; @state-danger-bg);\n\n\n// Responsive tables\n//\n// Wrap your tables in `.table-responsive` and we'll make them mobile friendly\n// by enabling horizontal scrolling. Only applies <768px. Everything above that\n// will display normally.\n\n.table-responsive {\n min-height: .01%; // Workaround for IE9 bug (see https://github.com/twbs/bootstrap/issues/14837)\n overflow-x: auto;\n\n @media screen and (max-width: @screen-xs-max) {\n width: 100%;\n margin-bottom: (@line-height-computed * .75);\n overflow-y: hidden;\n -ms-overflow-style: -ms-autohiding-scrollbar;\n border: 1px solid @table-border-color;\n\n // Tighten up spacing\n > .table {\n margin-bottom: 0;\n\n // Ensure the content doesn't wrap\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th,\n > td {\n white-space: nowrap;\n }\n }\n }\n }\n\n // Special overrides for the bordered tables\n > .table-bordered {\n border: 0;\n\n // Nuke the appropriate borders so that the parent can handle them\n > thead,\n > tbody,\n > tfoot {\n > tr {\n > th:first-child,\n > td:first-child {\n border-left: 0;\n }\n > th:last-child,\n > td:last-child {\n border-right: 0;\n }\n }\n }\n\n // Only nuke the last row's bottom-border in `tbody` and `tfoot` since\n // chances are there will be only one `tr` in a `thead` and that would\n // remove the border altogether.\n > tbody,\n > tfoot {\n > tr:last-child {\n > th,\n > td {\n border-bottom: 0;\n }\n }\n }\n\n }\n }\n}\n","// Tables\n\n.table-row-variant(@state; @background) {\n // Exact selectors below required to override `.table-striped` and prevent\n // inheritance to nested tables.\n .table > thead > tr,\n .table > tbody > tr,\n .table > tfoot > tr {\n > td.@{state},\n > th.@{state},\n &.@{state} > td,\n &.@{state} > th {\n background-color: @background;\n }\n }\n\n // Hover states for `.table-hover`\n // Note: this is not available for cells or rows within `thead` or `tfoot`.\n .table-hover > tbody > tr {\n > td.@{state}:hover,\n > th.@{state}:hover,\n &.@{state}:hover > td,\n &:hover > .@{state},\n &.@{state}:hover > th {\n background-color: darken(@background, 5%);\n }\n }\n}\n","// stylelint-disable selector-no-qualifying-type, property-no-vendor-prefix, media-feature-name-no-vendor-prefix\n\n//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n // Chrome and Firefox set a `min-width: min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: 700;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\ninput[type=\"search\"] {\n // Override content-box in Normalize (* isn't specific enough)\n .box-sizing(border-box);\n\n // Search inputs in iOS\n //\n // This overrides the extra rounded corners on search inputs in iOS so that our\n // `.form-control` class can properly style them. Note that this cannot simply\n // be added to `.form-control` as it's not specific enough. For details, see\n // https://github.com/twbs/bootstrap/issues/11586.\n -webkit-appearance: none;\n appearance: none;\n}\n\n// Position radios and checkboxes better\ninput[type=\"radio\"],\ninput[type=\"checkbox\"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n\n // Apply same disabled cursor tweak as for inputs\n // Some special care is needed because