├── .gitignore ├── LICENSE.md ├── README.md ├── composer.json ├── phpunit.xml └── src ├── Assets └── mp │ ├── css │ ├── bootstrap.min.css │ ├── fa-brands.css │ ├── fa-brands.min.css │ ├── fa-regular.css │ ├── fa-regular.min.css │ ├── fa-solid.css │ ├── fa-solid.min.css │ ├── fontawesome-all.css │ ├── fontawesome-all.min.css │ ├── fontawesome.css │ ├── fontawesome.min.css │ └── mailpeek.css │ ├── js │ ├── jquery.min.js │ ├── mpeek.js │ ├── vue-resource@1.3.5 │ └── vue.min.js │ └── webfonts │ ├── fa-brands-400.eot │ ├── fa-brands-400.svg │ ├── fa-brands-400.ttf │ ├── fa-brands-400.woff │ ├── fa-brands-400.woff2 │ ├── fa-regular-400.eot │ ├── fa-regular-400.svg │ ├── fa-regular-400.ttf │ ├── fa-regular-400.woff │ ├── fa-regular-400.woff2 │ ├── fa-solid-900.eot │ ├── fa-solid-900.svg │ ├── fa-solid-900.ttf │ ├── fa-solid-900.woff │ └── fa-solid-900.woff2 ├── Classes ├── MailBox.php ├── MailPeekTransport.php ├── MailPeekTransportManager.php ├── PeekFilesystem.php └── eMailMessage.php ├── Controllers └── MailPeekController.php ├── MailPeekMailProvider.php ├── MailPeekProvider.php ├── Views ├── layout.blade.php └── message.blade.php ├── mailpeek-config.php ├── mailpeek.php └── routes.php /.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | composer.phar 3 | composer.lock 4 | .DS_Store -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | # The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Mohamed Said 4 | 5 | > Permission is hereby granted, free of charge, to any person obtaining a copy 6 | > of this software and associated documentation files (the "Software"), to deal 7 | > in the Software without restriction, including without limitation the rights 8 | > to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | > copies of the Software, and to permit persons to whom the Software is 10 | > furnished to do so, subject to the following conditions: 11 | > 12 | > The above copyright notice and this permission notice shall be included in 13 | > all copies or substantial portions of the Software. 14 | > 15 | > THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | > IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | > FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | > AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | > LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | > OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | > THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Laravel Mail Peek 2 | 3 | [![MIT license](https://img.shields.io/badge/License-MIT-blue.svg)](https://lbesson.mit-license.org/) [![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://GitHub.com/Naereen/StrapDown.js/graphs/commit-activity) 4 | 5 | MailPeek provides a simple local inbox right in your browser to enable you preview emails being sent from your application. Suport multiple recepients, attachments and more. 6 | 7 | ## TL:DR; 8 | * For < Laravel 5.5 composer require misma/laravel-mailpeek "1.0.x-dev" 9 | * For Laravel 5.5+ composer require misma/laravel-mailpeek "2.0.x-dev" 10 | * Misma\MailPeek\MailPeekProvider::class, 11 | * Misma\MailPeek\MailPeekMailProvider::class 12 | * php artisan vendor:publish 13 | * MAIL_DRIVER=mailpeek 14 | That's it! 15 | 16 | ## Installation 17 | #### Step 1/4: Install the package using composer 18 | To install the package simple run one of the below command from your command line 19 | 20 | For Laravel versions < 5.5 21 | ```bash 22 | composer require misma/laravel-mailpeek "1.0.x-dev" 23 | ``` 24 | For Laravel versions 5.5 and above 25 | ```bash 26 | composer require misma/laravel-mailpeek "2.0.x-dev" 27 | ``` 28 | 29 | #### Step 2/4: Register service providers 30 | Once installation is complete, you will need to register the service providers. 31 | Open up config/app.php and add the following to the providers array. 32 | 33 | * Misma\MailPeek\MailPeekProvider::class, 34 | * Misma\MailPeek\MailPeekMailProvider::class 35 | 36 | #### Step 3/4 : Publish assets & config 37 | Publish required asset/config files into your application 38 | ``` 39 | php artisan vendor:publish 40 | ``` 41 | 42 | #### Step 4/4 : Set MailPeek as your mail driver 43 | Finally, change `MAIL_DRIVER` to `mailpeek` in your `.env` file: 44 | 45 | ``` 46 | MAIL_DRIVER=mailpeek 47 | ``` 48 | 49 | --- 50 | ## How it works 51 | 52 | Once MailPeek is installed and configured, you can navigate to `http:///mailpeek` and that will open your 'inbox'. Whenever any email is sent from the application,it will show up in the inbox. It's that easy. 53 | 54 | ## Package Configuration 55 | Mailpeek pretty much doesn't require any post-installation configuration. After running `php artisan vendor:publish`, available options are contained in the `config/mailpeek.php`. 56 | 57 | ## Contribution 58 | Contributions are highly welcomed. Please feel free to fork, tweak, send a PR, and "betterize" whatever you can. 59 | 60 | ## ★ 61 | If you like this package show me some star love, ★ this repo. 62 | 63 | ### Author 64 | Mohammed Isma ([Twitter](https://www.twitter.com/mohammedisma)) 65 | 66 | ### License 67 | Laravel MailPeek is open-sourced software licensed under the [MIT license](http://opensource.org/licenses/MIT). -------------------------------------------------------------------------------- /composer.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "misma/laravel-mailpeek", 3 | "description": "MailPeek provides a simple local inbox right in your browser to enable you preview emails being sent from your application.", 4 | "keywords": ["php","github","email","laravel","inbox","local email", "preview email", "email","laravel 5"], 5 | "license": "MIT", 6 | "authors": [ 7 | { 8 | "name": "Mohammed Isma", 9 | "email": "mohammedismais@hotmail.com" 10 | } 11 | ], 12 | "minimum-stability": "stable", 13 | "autoload": { 14 | "psr-4": { 15 | "Misma\\MailPeek\\": "src/" 16 | } 17 | }, 18 | "require": { 19 | "php": "^5.5.0|^7.0", 20 | "laravel/framework": "~5.5" 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/phpunit.xml -------------------------------------------------------------------------------- /src/Assets/mp/css/fa-brands.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face { 6 | font-family: 'Font Awesome 5 Brands'; 7 | font-style: normal; 8 | font-weight: normal; 9 | src: url("../webfonts/fa-brands-400.eot"); 10 | src: url("../webfonts/fa-brands-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-brands-400.woff2") format("woff2"), url("../webfonts/fa-brands-400.woff") format("woff"), url("../webfonts/fa-brands-400.ttf") format("truetype"), url("../webfonts/fa-brands-400.svg#fontawesome") format("svg"); } 11 | 12 | .fab { 13 | font-family: 'Font Awesome 5 Brands'; } 14 | -------------------------------------------------------------------------------- /src/Assets/mp/css/fa-brands.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face{font-family:Font Awesome\ 5 Brands;font-style:normal;font-weight:400;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:Font Awesome\ 5 Brands} -------------------------------------------------------------------------------- /src/Assets/mp/css/fa-regular.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face { 6 | font-family: 'Font Awesome 5 Free'; 7 | font-style: normal; 8 | font-weight: 400; 9 | src: url("../webfonts/fa-regular-400.eot"); 10 | src: url("../webfonts/fa-regular-400.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-regular-400.woff2") format("woff2"), url("../webfonts/fa-regular-400.woff") format("woff"), url("../webfonts/fa-regular-400.ttf") format("truetype"), url("../webfonts/fa-regular-400.svg#fontawesome") format("svg"); } 11 | 12 | .far { 13 | font-family: 'Font Awesome 5 Free'; 14 | font-weight: 400; } 15 | -------------------------------------------------------------------------------- /src/Assets/mp/css/fa-regular.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-family:Font Awesome\ 5 Free;font-weight:400} -------------------------------------------------------------------------------- /src/Assets/mp/css/fa-solid.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face { 6 | font-family: 'Font Awesome 5 Free'; 7 | font-style: normal; 8 | font-weight: 900; 9 | src: url("../webfonts/fa-solid-900.eot"); 10 | src: url("../webfonts/fa-solid-900.eot?#iefix") format("embedded-opentype"), url("../webfonts/fa-solid-900.woff2") format("woff2"), url("../webfonts/fa-solid-900.woff") format("woff"), url("../webfonts/fa-solid-900.ttf") format("truetype"), url("../webfonts/fa-solid-900.svg#fontawesome") format("svg"); } 11 | 12 | .fa, 13 | .fas { 14 | font-family: 'Font Awesome 5 Free'; 15 | font-weight: 900; } 16 | -------------------------------------------------------------------------------- /src/Assets/mp/css/fa-solid.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | @font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.fas{font-family:Font Awesome\ 5 Free;font-weight:900} -------------------------------------------------------------------------------- /src/Assets/mp/css/fontawesome-all.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | .fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:a 2s infinite linear;animation:a 2s infinite linear}.fa-pulse{-webkit-animation:a 1s infinite steps(8);animation:a 1s infinite steps(8)}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-aws:before{content:"\f375"}.fa-backward:before{content:"\f04a"}.fa-balance-scale:before{content:"\f24e"}.fa-ban:before{content:"\f05e"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bicycle:before{content:"\f206"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blind:before{content:"\f29d"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-braille:before{content:"\f2a1"}.fa-briefcase:before{content:"\f0b1"}.fa-btc:before{content:"\f15a"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-car:before{content:"\f1b9"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-certificate:before{content:"\f0a3"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-square:before{content:"\f14a"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-clipboard:before{content:"\f328"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comments:before{content:"\f086"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crosshairs:before{content:"\f05b"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-deviantart:before{content:"\f1bd"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dollar-sign:before{content:"\f155"}.fa-dot-circle:before{content:"\f192"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drupal:before{content:"\f1a9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-excel:before{content:"\f1c3"}.fa-file-image:before{content:"\f1c5"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fire:before{content:"\f06d"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-order:before{content:"\f2b0"}.fa-firstdraft:before{content:"\f3a1"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frown:before{content:"\f119"}.fa-futbol:before{content:"\f1e3"}.fa-gamepad:before{content:"\f11b"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-gift:before{content:"\f06b"}.fa-git:before{content:"\f1d3"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-martini:before{content:"\f000"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-gofore:before{content:"\f3a7"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-handshake:before{content:"\f2b5"}.fa-hashtag:before{content:"\f292"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-heart:before{content:"\f004"}.fa-heartbeat:before{content:"\f21e"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hospital:before{content:"\f0f8"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-internet-explorer:before{content:"\f26b"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-jenkins:before{content:"\f3b6"}.fa-joget:before{content:"\f3b7"}.fa-joomla:before{content:"\f1aa"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-key:before{content:"\f084"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-korvue:before{content:"\f42f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-male:before{content:"\f183"}.fa-map:before{content:"\f279"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-maxcdn:before{content:"\f136"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-meh:before{content:"\f11a"}.fa-mercury:before{content:"\f223"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-moon:before{content:"\f186"}.fa-motorcycle:before{content:"\f21c"}.fa-mouse-pointer:before{content:"\f245"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nintendo-switch:before{content:"\f418"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-paint-brush:before{content:"\f1fc"}.fa-palfed:before{content:"\f3d8"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-paragraph:before{content:"\f1dd"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-percent:before{content:"\f295"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phone:before{content:"\f095"}.fa-phone-square:before{content:"\f098"}.fa-phone-volume:before{content:"\f2a0"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-plane:before{content:"\f072"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-print:before{content:"\f02f"}.fa-product-hunt:before{content:"\f288"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-random:before{content:"\f074"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-rebel:before{content:"\f1d0"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-rendact:before{content:"\f3e4"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-resolving:before{content:"\f3e7"}.fa-retweet:before{content:"\f079"}.fa-road:before{content:"\f018"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-rupee-sign:before{content:"\f156"}.fa-safari:before{content:"\f267"}.fa-sass:before{content:"\f41e"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-scribd:before{content:"\f28a"}.fa-search:before{content:"\f002"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shower:before{content:"\f2cc"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowflake:before{content:"\f2dc"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-spinner:before{content:"\f110"}.fa-spotify:before{content:"\f1bc"}.fa-square:before{content:"\f0c8"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-star:before{content:"\f005"}.fa-star-half:before{content:"\f089"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-strava:before{content:"\f428"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-table:before{content:"\f0ce"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-trademark:before{content:"\f25c"}.fa-train:before{content:"\f238"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-circle:before{content:"\f2bd"}.fa-user-md:before{content:"\f0f0"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-volume-down:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vuejs:before{content:"\f41f"}.fa-weibo:before{content:"\f18a"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wrench:before{content:"\f0ad"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:Font Awesome\ 5 Brands;font-style:normal;font-weight:400;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:Font Awesome\ 5 Brands}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:400;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-weight:400}@font-face{font-family:Font Awesome\ 5 Free;font-style:normal;font-weight:900;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:Font Awesome\ 5 Free}.fa,.fas{font-weight:900} -------------------------------------------------------------------------------- /src/Assets/mp/css/fontawesome.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | .fa, 6 | .fas, 7 | .far, 8 | .fal, 9 | .fab { 10 | -moz-osx-font-smoothing: grayscale; 11 | -webkit-font-smoothing: antialiased; 12 | display: inline-block; 13 | font-style: normal; 14 | font-variant: normal; 15 | text-rendering: auto; 16 | line-height: 1; } 17 | 18 | .fa-lg { 19 | font-size: 1.33333em; 20 | line-height: 0.75em; 21 | vertical-align: -.0667em; } 22 | 23 | .fa-xs { 24 | font-size: .75em; } 25 | 26 | .fa-sm { 27 | font-size: .875em; } 28 | 29 | .fa-1x { 30 | font-size: 1em; } 31 | 32 | .fa-2x { 33 | font-size: 2em; } 34 | 35 | .fa-3x { 36 | font-size: 3em; } 37 | 38 | .fa-4x { 39 | font-size: 4em; } 40 | 41 | .fa-5x { 42 | font-size: 5em; } 43 | 44 | .fa-6x { 45 | font-size: 6em; } 46 | 47 | .fa-7x { 48 | font-size: 7em; } 49 | 50 | .fa-8x { 51 | font-size: 8em; } 52 | 53 | .fa-9x { 54 | font-size: 9em; } 55 | 56 | .fa-10x { 57 | font-size: 10em; } 58 | 59 | .fa-fw { 60 | text-align: center; 61 | width: 1.25em; } 62 | 63 | .fa-ul { 64 | list-style-type: none; 65 | margin-left: 2.5em; 66 | padding-left: 0; } 67 | .fa-ul > li { 68 | position: relative; } 69 | 70 | .fa-li { 71 | left: -2em; 72 | position: absolute; 73 | text-align: center; 74 | width: 2em; 75 | line-height: inherit; } 76 | 77 | .fa-border { 78 | border: solid 0.08em #eee; 79 | border-radius: .1em; 80 | padding: .2em .25em .15em; } 81 | 82 | .fa-pull-left { 83 | float: left; } 84 | 85 | .fa-pull-right { 86 | float: right; } 87 | 88 | .fa.fa-pull-left, 89 | .fas.fa-pull-left, 90 | .far.fa-pull-left, 91 | .fal.fa-pull-left, 92 | .fab.fa-pull-left { 93 | margin-right: .3em; } 94 | 95 | .fa.fa-pull-right, 96 | .fas.fa-pull-right, 97 | .far.fa-pull-right, 98 | .fal.fa-pull-right, 99 | .fab.fa-pull-right { 100 | margin-left: .3em; } 101 | 102 | .fa-spin { 103 | -webkit-animation: fa-spin 2s infinite linear; 104 | animation: fa-spin 2s infinite linear; } 105 | 106 | .fa-pulse { 107 | -webkit-animation: fa-spin 1s infinite steps(8); 108 | animation: fa-spin 1s infinite steps(8); } 109 | 110 | @-webkit-keyframes fa-spin { 111 | 0% { 112 | -webkit-transform: rotate(0deg); 113 | transform: rotate(0deg); } 114 | 100% { 115 | -webkit-transform: rotate(360deg); 116 | transform: rotate(360deg); } } 117 | 118 | @keyframes fa-spin { 119 | 0% { 120 | -webkit-transform: rotate(0deg); 121 | transform: rotate(0deg); } 122 | 100% { 123 | -webkit-transform: rotate(360deg); 124 | transform: rotate(360deg); } } 125 | 126 | .fa-rotate-90 { 127 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; 128 | -webkit-transform: rotate(90deg); 129 | transform: rotate(90deg); } 130 | 131 | .fa-rotate-180 { 132 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; 133 | -webkit-transform: rotate(180deg); 134 | transform: rotate(180deg); } 135 | 136 | .fa-rotate-270 { 137 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; 138 | -webkit-transform: rotate(270deg); 139 | transform: rotate(270deg); } 140 | 141 | .fa-flip-horizontal { 142 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; 143 | -webkit-transform: scale(-1, 1); 144 | transform: scale(-1, 1); } 145 | 146 | .fa-flip-vertical { 147 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; 148 | -webkit-transform: scale(1, -1); 149 | transform: scale(1, -1); } 150 | 151 | .fa-flip-horizontal.fa-flip-vertical { 152 | -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; 153 | -webkit-transform: scale(-1, -1); 154 | transform: scale(-1, -1); } 155 | 156 | :root .fa-rotate-90, 157 | :root .fa-rotate-180, 158 | :root .fa-rotate-270, 159 | :root .fa-flip-horizontal, 160 | :root .fa-flip-vertical { 161 | -webkit-filter: none; 162 | filter: none; } 163 | 164 | .fa-stack { 165 | display: inline-block; 166 | height: 2em; 167 | line-height: 2em; 168 | position: relative; 169 | vertical-align: middle; 170 | width: 2em; } 171 | 172 | .fa-stack-1x, 173 | .fa-stack-2x { 174 | left: 0; 175 | position: absolute; 176 | text-align: center; 177 | width: 100%; } 178 | 179 | .fa-stack-1x { 180 | line-height: inherit; } 181 | 182 | .fa-stack-2x { 183 | font-size: 2em; } 184 | 185 | .fa-inverse { 186 | color: #fff; } 187 | 188 | /* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen 189 | readers do not read off random characters that represent icons */ 190 | .fa-500px:before { 191 | content: "\f26e"; } 192 | 193 | .fa-accessible-icon:before { 194 | content: "\f368"; } 195 | 196 | .fa-accusoft:before { 197 | content: "\f369"; } 198 | 199 | .fa-address-book:before { 200 | content: "\f2b9"; } 201 | 202 | .fa-address-card:before { 203 | content: "\f2bb"; } 204 | 205 | .fa-adjust:before { 206 | content: "\f042"; } 207 | 208 | .fa-adn:before { 209 | content: "\f170"; } 210 | 211 | .fa-adversal:before { 212 | content: "\f36a"; } 213 | 214 | .fa-affiliatetheme:before { 215 | content: "\f36b"; } 216 | 217 | .fa-algolia:before { 218 | content: "\f36c"; } 219 | 220 | .fa-align-center:before { 221 | content: "\f037"; } 222 | 223 | .fa-align-justify:before { 224 | content: "\f039"; } 225 | 226 | .fa-align-left:before { 227 | content: "\f036"; } 228 | 229 | .fa-align-right:before { 230 | content: "\f038"; } 231 | 232 | .fa-amazon:before { 233 | content: "\f270"; } 234 | 235 | .fa-amazon-pay:before { 236 | content: "\f42c"; } 237 | 238 | .fa-ambulance:before { 239 | content: "\f0f9"; } 240 | 241 | .fa-american-sign-language-interpreting:before { 242 | content: "\f2a3"; } 243 | 244 | .fa-amilia:before { 245 | content: "\f36d"; } 246 | 247 | .fa-anchor:before { 248 | content: "\f13d"; } 249 | 250 | .fa-android:before { 251 | content: "\f17b"; } 252 | 253 | .fa-angellist:before { 254 | content: "\f209"; } 255 | 256 | .fa-angle-double-down:before { 257 | content: "\f103"; } 258 | 259 | .fa-angle-double-left:before { 260 | content: "\f100"; } 261 | 262 | .fa-angle-double-right:before { 263 | content: "\f101"; } 264 | 265 | .fa-angle-double-up:before { 266 | content: "\f102"; } 267 | 268 | .fa-angle-down:before { 269 | content: "\f107"; } 270 | 271 | .fa-angle-left:before { 272 | content: "\f104"; } 273 | 274 | .fa-angle-right:before { 275 | content: "\f105"; } 276 | 277 | .fa-angle-up:before { 278 | content: "\f106"; } 279 | 280 | .fa-angrycreative:before { 281 | content: "\f36e"; } 282 | 283 | .fa-angular:before { 284 | content: "\f420"; } 285 | 286 | .fa-app-store:before { 287 | content: "\f36f"; } 288 | 289 | .fa-app-store-ios:before { 290 | content: "\f370"; } 291 | 292 | .fa-apper:before { 293 | content: "\f371"; } 294 | 295 | .fa-apple:before { 296 | content: "\f179"; } 297 | 298 | .fa-apple-pay:before { 299 | content: "\f415"; } 300 | 301 | .fa-archive:before { 302 | content: "\f187"; } 303 | 304 | .fa-arrow-alt-circle-down:before { 305 | content: "\f358"; } 306 | 307 | .fa-arrow-alt-circle-left:before { 308 | content: "\f359"; } 309 | 310 | .fa-arrow-alt-circle-right:before { 311 | content: "\f35a"; } 312 | 313 | .fa-arrow-alt-circle-up:before { 314 | content: "\f35b"; } 315 | 316 | .fa-arrow-circle-down:before { 317 | content: "\f0ab"; } 318 | 319 | .fa-arrow-circle-left:before { 320 | content: "\f0a8"; } 321 | 322 | .fa-arrow-circle-right:before { 323 | content: "\f0a9"; } 324 | 325 | .fa-arrow-circle-up:before { 326 | content: "\f0aa"; } 327 | 328 | .fa-arrow-down:before { 329 | content: "\f063"; } 330 | 331 | .fa-arrow-left:before { 332 | content: "\f060"; } 333 | 334 | .fa-arrow-right:before { 335 | content: "\f061"; } 336 | 337 | .fa-arrow-up:before { 338 | content: "\f062"; } 339 | 340 | .fa-arrows-alt:before { 341 | content: "\f0b2"; } 342 | 343 | .fa-arrows-alt-h:before { 344 | content: "\f337"; } 345 | 346 | .fa-arrows-alt-v:before { 347 | content: "\f338"; } 348 | 349 | .fa-assistive-listening-systems:before { 350 | content: "\f2a2"; } 351 | 352 | .fa-asterisk:before { 353 | content: "\f069"; } 354 | 355 | .fa-asymmetrik:before { 356 | content: "\f372"; } 357 | 358 | .fa-at:before { 359 | content: "\f1fa"; } 360 | 361 | .fa-audible:before { 362 | content: "\f373"; } 363 | 364 | .fa-audio-description:before { 365 | content: "\f29e"; } 366 | 367 | .fa-autoprefixer:before { 368 | content: "\f41c"; } 369 | 370 | .fa-avianex:before { 371 | content: "\f374"; } 372 | 373 | .fa-aviato:before { 374 | content: "\f421"; } 375 | 376 | .fa-aws:before { 377 | content: "\f375"; } 378 | 379 | .fa-backward:before { 380 | content: "\f04a"; } 381 | 382 | .fa-balance-scale:before { 383 | content: "\f24e"; } 384 | 385 | .fa-ban:before { 386 | content: "\f05e"; } 387 | 388 | .fa-bandcamp:before { 389 | content: "\f2d5"; } 390 | 391 | .fa-barcode:before { 392 | content: "\f02a"; } 393 | 394 | .fa-bars:before { 395 | content: "\f0c9"; } 396 | 397 | .fa-bath:before { 398 | content: "\f2cd"; } 399 | 400 | .fa-battery-empty:before { 401 | content: "\f244"; } 402 | 403 | .fa-battery-full:before { 404 | content: "\f240"; } 405 | 406 | .fa-battery-half:before { 407 | content: "\f242"; } 408 | 409 | .fa-battery-quarter:before { 410 | content: "\f243"; } 411 | 412 | .fa-battery-three-quarters:before { 413 | content: "\f241"; } 414 | 415 | .fa-bed:before { 416 | content: "\f236"; } 417 | 418 | .fa-beer:before { 419 | content: "\f0fc"; } 420 | 421 | .fa-behance:before { 422 | content: "\f1b4"; } 423 | 424 | .fa-behance-square:before { 425 | content: "\f1b5"; } 426 | 427 | .fa-bell:before { 428 | content: "\f0f3"; } 429 | 430 | .fa-bell-slash:before { 431 | content: "\f1f6"; } 432 | 433 | .fa-bicycle:before { 434 | content: "\f206"; } 435 | 436 | .fa-bimobject:before { 437 | content: "\f378"; } 438 | 439 | .fa-binoculars:before { 440 | content: "\f1e5"; } 441 | 442 | .fa-birthday-cake:before { 443 | content: "\f1fd"; } 444 | 445 | .fa-bitbucket:before { 446 | content: "\f171"; } 447 | 448 | .fa-bitcoin:before { 449 | content: "\f379"; } 450 | 451 | .fa-bity:before { 452 | content: "\f37a"; } 453 | 454 | .fa-black-tie:before { 455 | content: "\f27e"; } 456 | 457 | .fa-blackberry:before { 458 | content: "\f37b"; } 459 | 460 | .fa-blind:before { 461 | content: "\f29d"; } 462 | 463 | .fa-blogger:before { 464 | content: "\f37c"; } 465 | 466 | .fa-blogger-b:before { 467 | content: "\f37d"; } 468 | 469 | .fa-bluetooth:before { 470 | content: "\f293"; } 471 | 472 | .fa-bluetooth-b:before { 473 | content: "\f294"; } 474 | 475 | .fa-bold:before { 476 | content: "\f032"; } 477 | 478 | .fa-bolt:before { 479 | content: "\f0e7"; } 480 | 481 | .fa-bomb:before { 482 | content: "\f1e2"; } 483 | 484 | .fa-book:before { 485 | content: "\f02d"; } 486 | 487 | .fa-bookmark:before { 488 | content: "\f02e"; } 489 | 490 | .fa-braille:before { 491 | content: "\f2a1"; } 492 | 493 | .fa-briefcase:before { 494 | content: "\f0b1"; } 495 | 496 | .fa-btc:before { 497 | content: "\f15a"; } 498 | 499 | .fa-bug:before { 500 | content: "\f188"; } 501 | 502 | .fa-building:before { 503 | content: "\f1ad"; } 504 | 505 | .fa-bullhorn:before { 506 | content: "\f0a1"; } 507 | 508 | .fa-bullseye:before { 509 | content: "\f140"; } 510 | 511 | .fa-buromobelexperte:before { 512 | content: "\f37f"; } 513 | 514 | .fa-bus:before { 515 | content: "\f207"; } 516 | 517 | .fa-buysellads:before { 518 | content: "\f20d"; } 519 | 520 | .fa-calculator:before { 521 | content: "\f1ec"; } 522 | 523 | .fa-calendar:before { 524 | content: "\f133"; } 525 | 526 | .fa-calendar-alt:before { 527 | content: "\f073"; } 528 | 529 | .fa-calendar-check:before { 530 | content: "\f274"; } 531 | 532 | .fa-calendar-minus:before { 533 | content: "\f272"; } 534 | 535 | .fa-calendar-plus:before { 536 | content: "\f271"; } 537 | 538 | .fa-calendar-times:before { 539 | content: "\f273"; } 540 | 541 | .fa-camera:before { 542 | content: "\f030"; } 543 | 544 | .fa-camera-retro:before { 545 | content: "\f083"; } 546 | 547 | .fa-car:before { 548 | content: "\f1b9"; } 549 | 550 | .fa-caret-down:before { 551 | content: "\f0d7"; } 552 | 553 | .fa-caret-left:before { 554 | content: "\f0d9"; } 555 | 556 | .fa-caret-right:before { 557 | content: "\f0da"; } 558 | 559 | .fa-caret-square-down:before { 560 | content: "\f150"; } 561 | 562 | .fa-caret-square-left:before { 563 | content: "\f191"; } 564 | 565 | .fa-caret-square-right:before { 566 | content: "\f152"; } 567 | 568 | .fa-caret-square-up:before { 569 | content: "\f151"; } 570 | 571 | .fa-caret-up:before { 572 | content: "\f0d8"; } 573 | 574 | .fa-cart-arrow-down:before { 575 | content: "\f218"; } 576 | 577 | .fa-cart-plus:before { 578 | content: "\f217"; } 579 | 580 | .fa-cc-amazon-pay:before { 581 | content: "\f42d"; } 582 | 583 | .fa-cc-amex:before { 584 | content: "\f1f3"; } 585 | 586 | .fa-cc-apple-pay:before { 587 | content: "\f416"; } 588 | 589 | .fa-cc-diners-club:before { 590 | content: "\f24c"; } 591 | 592 | .fa-cc-discover:before { 593 | content: "\f1f2"; } 594 | 595 | .fa-cc-jcb:before { 596 | content: "\f24b"; } 597 | 598 | .fa-cc-mastercard:before { 599 | content: "\f1f1"; } 600 | 601 | .fa-cc-paypal:before { 602 | content: "\f1f4"; } 603 | 604 | .fa-cc-stripe:before { 605 | content: "\f1f5"; } 606 | 607 | .fa-cc-visa:before { 608 | content: "\f1f0"; } 609 | 610 | .fa-centercode:before { 611 | content: "\f380"; } 612 | 613 | .fa-certificate:before { 614 | content: "\f0a3"; } 615 | 616 | .fa-chart-area:before { 617 | content: "\f1fe"; } 618 | 619 | .fa-chart-bar:before { 620 | content: "\f080"; } 621 | 622 | .fa-chart-line:before { 623 | content: "\f201"; } 624 | 625 | .fa-chart-pie:before { 626 | content: "\f200"; } 627 | 628 | .fa-check:before { 629 | content: "\f00c"; } 630 | 631 | .fa-check-circle:before { 632 | content: "\f058"; } 633 | 634 | .fa-check-square:before { 635 | content: "\f14a"; } 636 | 637 | .fa-chevron-circle-down:before { 638 | content: "\f13a"; } 639 | 640 | .fa-chevron-circle-left:before { 641 | content: "\f137"; } 642 | 643 | .fa-chevron-circle-right:before { 644 | content: "\f138"; } 645 | 646 | .fa-chevron-circle-up:before { 647 | content: "\f139"; } 648 | 649 | .fa-chevron-down:before { 650 | content: "\f078"; } 651 | 652 | .fa-chevron-left:before { 653 | content: "\f053"; } 654 | 655 | .fa-chevron-right:before { 656 | content: "\f054"; } 657 | 658 | .fa-chevron-up:before { 659 | content: "\f077"; } 660 | 661 | .fa-child:before { 662 | content: "\f1ae"; } 663 | 664 | .fa-chrome:before { 665 | content: "\f268"; } 666 | 667 | .fa-circle:before { 668 | content: "\f111"; } 669 | 670 | .fa-circle-notch:before { 671 | content: "\f1ce"; } 672 | 673 | .fa-clipboard:before { 674 | content: "\f328"; } 675 | 676 | .fa-clock:before { 677 | content: "\f017"; } 678 | 679 | .fa-clone:before { 680 | content: "\f24d"; } 681 | 682 | .fa-closed-captioning:before { 683 | content: "\f20a"; } 684 | 685 | .fa-cloud:before { 686 | content: "\f0c2"; } 687 | 688 | .fa-cloud-download-alt:before { 689 | content: "\f381"; } 690 | 691 | .fa-cloud-upload-alt:before { 692 | content: "\f382"; } 693 | 694 | .fa-cloudscale:before { 695 | content: "\f383"; } 696 | 697 | .fa-cloudsmith:before { 698 | content: "\f384"; } 699 | 700 | .fa-cloudversify:before { 701 | content: "\f385"; } 702 | 703 | .fa-code:before { 704 | content: "\f121"; } 705 | 706 | .fa-code-branch:before { 707 | content: "\f126"; } 708 | 709 | .fa-codepen:before { 710 | content: "\f1cb"; } 711 | 712 | .fa-codiepie:before { 713 | content: "\f284"; } 714 | 715 | .fa-coffee:before { 716 | content: "\f0f4"; } 717 | 718 | .fa-cog:before { 719 | content: "\f013"; } 720 | 721 | .fa-cogs:before { 722 | content: "\f085"; } 723 | 724 | .fa-columns:before { 725 | content: "\f0db"; } 726 | 727 | .fa-comment:before { 728 | content: "\f075"; } 729 | 730 | .fa-comment-alt:before { 731 | content: "\f27a"; } 732 | 733 | .fa-comments:before { 734 | content: "\f086"; } 735 | 736 | .fa-compass:before { 737 | content: "\f14e"; } 738 | 739 | .fa-compress:before { 740 | content: "\f066"; } 741 | 742 | .fa-connectdevelop:before { 743 | content: "\f20e"; } 744 | 745 | .fa-contao:before { 746 | content: "\f26d"; } 747 | 748 | .fa-copy:before { 749 | content: "\f0c5"; } 750 | 751 | .fa-copyright:before { 752 | content: "\f1f9"; } 753 | 754 | .fa-cpanel:before { 755 | content: "\f388"; } 756 | 757 | .fa-creative-commons:before { 758 | content: "\f25e"; } 759 | 760 | .fa-credit-card:before { 761 | content: "\f09d"; } 762 | 763 | .fa-crop:before { 764 | content: "\f125"; } 765 | 766 | .fa-crosshairs:before { 767 | content: "\f05b"; } 768 | 769 | .fa-css3:before { 770 | content: "\f13c"; } 771 | 772 | .fa-css3-alt:before { 773 | content: "\f38b"; } 774 | 775 | .fa-cube:before { 776 | content: "\f1b2"; } 777 | 778 | .fa-cubes:before { 779 | content: "\f1b3"; } 780 | 781 | .fa-cut:before { 782 | content: "\f0c4"; } 783 | 784 | .fa-cuttlefish:before { 785 | content: "\f38c"; } 786 | 787 | .fa-d-and-d:before { 788 | content: "\f38d"; } 789 | 790 | .fa-dashcube:before { 791 | content: "\f210"; } 792 | 793 | .fa-database:before { 794 | content: "\f1c0"; } 795 | 796 | .fa-deaf:before { 797 | content: "\f2a4"; } 798 | 799 | .fa-delicious:before { 800 | content: "\f1a5"; } 801 | 802 | .fa-deploydog:before { 803 | content: "\f38e"; } 804 | 805 | .fa-deskpro:before { 806 | content: "\f38f"; } 807 | 808 | .fa-desktop:before { 809 | content: "\f108"; } 810 | 811 | .fa-deviantart:before { 812 | content: "\f1bd"; } 813 | 814 | .fa-digg:before { 815 | content: "\f1a6"; } 816 | 817 | .fa-digital-ocean:before { 818 | content: "\f391"; } 819 | 820 | .fa-discord:before { 821 | content: "\f392"; } 822 | 823 | .fa-discourse:before { 824 | content: "\f393"; } 825 | 826 | .fa-dochub:before { 827 | content: "\f394"; } 828 | 829 | .fa-docker:before { 830 | content: "\f395"; } 831 | 832 | .fa-dollar-sign:before { 833 | content: "\f155"; } 834 | 835 | .fa-dot-circle:before { 836 | content: "\f192"; } 837 | 838 | .fa-download:before { 839 | content: "\f019"; } 840 | 841 | .fa-draft2digital:before { 842 | content: "\f396"; } 843 | 844 | .fa-dribbble:before { 845 | content: "\f17d"; } 846 | 847 | .fa-dribbble-square:before { 848 | content: "\f397"; } 849 | 850 | .fa-dropbox:before { 851 | content: "\f16b"; } 852 | 853 | .fa-drupal:before { 854 | content: "\f1a9"; } 855 | 856 | .fa-dyalog:before { 857 | content: "\f399"; } 858 | 859 | .fa-earlybirds:before { 860 | content: "\f39a"; } 861 | 862 | .fa-edge:before { 863 | content: "\f282"; } 864 | 865 | .fa-edit:before { 866 | content: "\f044"; } 867 | 868 | .fa-eject:before { 869 | content: "\f052"; } 870 | 871 | .fa-elementor:before { 872 | content: "\f430"; } 873 | 874 | .fa-ellipsis-h:before { 875 | content: "\f141"; } 876 | 877 | .fa-ellipsis-v:before { 878 | content: "\f142"; } 879 | 880 | .fa-ember:before { 881 | content: "\f423"; } 882 | 883 | .fa-empire:before { 884 | content: "\f1d1"; } 885 | 886 | .fa-envelope:before { 887 | content: "\f0e0"; } 888 | 889 | .fa-envelope-open:before { 890 | content: "\f2b6"; } 891 | 892 | .fa-envelope-square:before { 893 | content: "\f199"; } 894 | 895 | .fa-envira:before { 896 | content: "\f299"; } 897 | 898 | .fa-eraser:before { 899 | content: "\f12d"; } 900 | 901 | .fa-erlang:before { 902 | content: "\f39d"; } 903 | 904 | .fa-ethereum:before { 905 | content: "\f42e"; } 906 | 907 | .fa-etsy:before { 908 | content: "\f2d7"; } 909 | 910 | .fa-euro-sign:before { 911 | content: "\f153"; } 912 | 913 | .fa-exchange-alt:before { 914 | content: "\f362"; } 915 | 916 | .fa-exclamation:before { 917 | content: "\f12a"; } 918 | 919 | .fa-exclamation-circle:before { 920 | content: "\f06a"; } 921 | 922 | .fa-exclamation-triangle:before { 923 | content: "\f071"; } 924 | 925 | .fa-expand:before { 926 | content: "\f065"; } 927 | 928 | .fa-expand-arrows-alt:before { 929 | content: "\f31e"; } 930 | 931 | .fa-expeditedssl:before { 932 | content: "\f23e"; } 933 | 934 | .fa-external-link-alt:before { 935 | content: "\f35d"; } 936 | 937 | .fa-external-link-square-alt:before { 938 | content: "\f360"; } 939 | 940 | .fa-eye:before { 941 | content: "\f06e"; } 942 | 943 | .fa-eye-dropper:before { 944 | content: "\f1fb"; } 945 | 946 | .fa-eye-slash:before { 947 | content: "\f070"; } 948 | 949 | .fa-facebook:before { 950 | content: "\f09a"; } 951 | 952 | .fa-facebook-f:before { 953 | content: "\f39e"; } 954 | 955 | .fa-facebook-messenger:before { 956 | content: "\f39f"; } 957 | 958 | .fa-facebook-square:before { 959 | content: "\f082"; } 960 | 961 | .fa-fast-backward:before { 962 | content: "\f049"; } 963 | 964 | .fa-fast-forward:before { 965 | content: "\f050"; } 966 | 967 | .fa-fax:before { 968 | content: "\f1ac"; } 969 | 970 | .fa-female:before { 971 | content: "\f182"; } 972 | 973 | .fa-fighter-jet:before { 974 | content: "\f0fb"; } 975 | 976 | .fa-file:before { 977 | content: "\f15b"; } 978 | 979 | .fa-file-alt:before { 980 | content: "\f15c"; } 981 | 982 | .fa-file-archive:before { 983 | content: "\f1c6"; } 984 | 985 | .fa-file-audio:before { 986 | content: "\f1c7"; } 987 | 988 | .fa-file-code:before { 989 | content: "\f1c9"; } 990 | 991 | .fa-file-excel:before { 992 | content: "\f1c3"; } 993 | 994 | .fa-file-image:before { 995 | content: "\f1c5"; } 996 | 997 | .fa-file-pdf:before { 998 | content: "\f1c1"; } 999 | 1000 | .fa-file-powerpoint:before { 1001 | content: "\f1c4"; } 1002 | 1003 | .fa-file-video:before { 1004 | content: "\f1c8"; } 1005 | 1006 | .fa-file-word:before { 1007 | content: "\f1c2"; } 1008 | 1009 | .fa-film:before { 1010 | content: "\f008"; } 1011 | 1012 | .fa-filter:before { 1013 | content: "\f0b0"; } 1014 | 1015 | .fa-fire:before { 1016 | content: "\f06d"; } 1017 | 1018 | .fa-fire-extinguisher:before { 1019 | content: "\f134"; } 1020 | 1021 | .fa-firefox:before { 1022 | content: "\f269"; } 1023 | 1024 | .fa-first-order:before { 1025 | content: "\f2b0"; } 1026 | 1027 | .fa-firstdraft:before { 1028 | content: "\f3a1"; } 1029 | 1030 | .fa-flag:before { 1031 | content: "\f024"; } 1032 | 1033 | .fa-flag-checkered:before { 1034 | content: "\f11e"; } 1035 | 1036 | .fa-flask:before { 1037 | content: "\f0c3"; } 1038 | 1039 | .fa-flickr:before { 1040 | content: "\f16e"; } 1041 | 1042 | .fa-fly:before { 1043 | content: "\f417"; } 1044 | 1045 | .fa-folder:before { 1046 | content: "\f07b"; } 1047 | 1048 | .fa-folder-open:before { 1049 | content: "\f07c"; } 1050 | 1051 | .fa-font:before { 1052 | content: "\f031"; } 1053 | 1054 | .fa-font-awesome:before { 1055 | content: "\f2b4"; } 1056 | 1057 | .fa-font-awesome-alt:before { 1058 | content: "\f35c"; } 1059 | 1060 | .fa-font-awesome-flag:before { 1061 | content: "\f425"; } 1062 | 1063 | .fa-fonticons:before { 1064 | content: "\f280"; } 1065 | 1066 | .fa-fonticons-fi:before { 1067 | content: "\f3a2"; } 1068 | 1069 | .fa-fort-awesome:before { 1070 | content: "\f286"; } 1071 | 1072 | .fa-fort-awesome-alt:before { 1073 | content: "\f3a3"; } 1074 | 1075 | .fa-forumbee:before { 1076 | content: "\f211"; } 1077 | 1078 | .fa-forward:before { 1079 | content: "\f04e"; } 1080 | 1081 | .fa-foursquare:before { 1082 | content: "\f180"; } 1083 | 1084 | .fa-free-code-camp:before { 1085 | content: "\f2c5"; } 1086 | 1087 | .fa-freebsd:before { 1088 | content: "\f3a4"; } 1089 | 1090 | .fa-frown:before { 1091 | content: "\f119"; } 1092 | 1093 | .fa-futbol:before { 1094 | content: "\f1e3"; } 1095 | 1096 | .fa-gamepad:before { 1097 | content: "\f11b"; } 1098 | 1099 | .fa-gavel:before { 1100 | content: "\f0e3"; } 1101 | 1102 | .fa-gem:before { 1103 | content: "\f3a5"; } 1104 | 1105 | .fa-genderless:before { 1106 | content: "\f22d"; } 1107 | 1108 | .fa-get-pocket:before { 1109 | content: "\f265"; } 1110 | 1111 | .fa-gg:before { 1112 | content: "\f260"; } 1113 | 1114 | .fa-gg-circle:before { 1115 | content: "\f261"; } 1116 | 1117 | .fa-gift:before { 1118 | content: "\f06b"; } 1119 | 1120 | .fa-git:before { 1121 | content: "\f1d3"; } 1122 | 1123 | .fa-git-square:before { 1124 | content: "\f1d2"; } 1125 | 1126 | .fa-github:before { 1127 | content: "\f09b"; } 1128 | 1129 | .fa-github-alt:before { 1130 | content: "\f113"; } 1131 | 1132 | .fa-github-square:before { 1133 | content: "\f092"; } 1134 | 1135 | .fa-gitkraken:before { 1136 | content: "\f3a6"; } 1137 | 1138 | .fa-gitlab:before { 1139 | content: "\f296"; } 1140 | 1141 | .fa-gitter:before { 1142 | content: "\f426"; } 1143 | 1144 | .fa-glass-martini:before { 1145 | content: "\f000"; } 1146 | 1147 | .fa-glide:before { 1148 | content: "\f2a5"; } 1149 | 1150 | .fa-glide-g:before { 1151 | content: "\f2a6"; } 1152 | 1153 | .fa-globe:before { 1154 | content: "\f0ac"; } 1155 | 1156 | .fa-gofore:before { 1157 | content: "\f3a7"; } 1158 | 1159 | .fa-goodreads:before { 1160 | content: "\f3a8"; } 1161 | 1162 | .fa-goodreads-g:before { 1163 | content: "\f3a9"; } 1164 | 1165 | .fa-google:before { 1166 | content: "\f1a0"; } 1167 | 1168 | .fa-google-drive:before { 1169 | content: "\f3aa"; } 1170 | 1171 | .fa-google-play:before { 1172 | content: "\f3ab"; } 1173 | 1174 | .fa-google-plus:before { 1175 | content: "\f2b3"; } 1176 | 1177 | .fa-google-plus-g:before { 1178 | content: "\f0d5"; } 1179 | 1180 | .fa-google-plus-square:before { 1181 | content: "\f0d4"; } 1182 | 1183 | .fa-google-wallet:before { 1184 | content: "\f1ee"; } 1185 | 1186 | .fa-graduation-cap:before { 1187 | content: "\f19d"; } 1188 | 1189 | .fa-gratipay:before { 1190 | content: "\f184"; } 1191 | 1192 | .fa-grav:before { 1193 | content: "\f2d6"; } 1194 | 1195 | .fa-gripfire:before { 1196 | content: "\f3ac"; } 1197 | 1198 | .fa-grunt:before { 1199 | content: "\f3ad"; } 1200 | 1201 | .fa-gulp:before { 1202 | content: "\f3ae"; } 1203 | 1204 | .fa-h-square:before { 1205 | content: "\f0fd"; } 1206 | 1207 | .fa-hacker-news:before { 1208 | content: "\f1d4"; } 1209 | 1210 | .fa-hacker-news-square:before { 1211 | content: "\f3af"; } 1212 | 1213 | .fa-hand-lizard:before { 1214 | content: "\f258"; } 1215 | 1216 | .fa-hand-paper:before { 1217 | content: "\f256"; } 1218 | 1219 | .fa-hand-peace:before { 1220 | content: "\f25b"; } 1221 | 1222 | .fa-hand-point-down:before { 1223 | content: "\f0a7"; } 1224 | 1225 | .fa-hand-point-left:before { 1226 | content: "\f0a5"; } 1227 | 1228 | .fa-hand-point-right:before { 1229 | content: "\f0a4"; } 1230 | 1231 | .fa-hand-point-up:before { 1232 | content: "\f0a6"; } 1233 | 1234 | .fa-hand-pointer:before { 1235 | content: "\f25a"; } 1236 | 1237 | .fa-hand-rock:before { 1238 | content: "\f255"; } 1239 | 1240 | .fa-hand-scissors:before { 1241 | content: "\f257"; } 1242 | 1243 | .fa-hand-spock:before { 1244 | content: "\f259"; } 1245 | 1246 | .fa-handshake:before { 1247 | content: "\f2b5"; } 1248 | 1249 | .fa-hashtag:before { 1250 | content: "\f292"; } 1251 | 1252 | .fa-hdd:before { 1253 | content: "\f0a0"; } 1254 | 1255 | .fa-heading:before { 1256 | content: "\f1dc"; } 1257 | 1258 | .fa-headphones:before { 1259 | content: "\f025"; } 1260 | 1261 | .fa-heart:before { 1262 | content: "\f004"; } 1263 | 1264 | .fa-heartbeat:before { 1265 | content: "\f21e"; } 1266 | 1267 | .fa-hire-a-helper:before { 1268 | content: "\f3b0"; } 1269 | 1270 | .fa-history:before { 1271 | content: "\f1da"; } 1272 | 1273 | .fa-home:before { 1274 | content: "\f015"; } 1275 | 1276 | .fa-hooli:before { 1277 | content: "\f427"; } 1278 | 1279 | .fa-hospital:before { 1280 | content: "\f0f8"; } 1281 | 1282 | .fa-hotjar:before { 1283 | content: "\f3b1"; } 1284 | 1285 | .fa-hourglass:before { 1286 | content: "\f254"; } 1287 | 1288 | .fa-hourglass-end:before { 1289 | content: "\f253"; } 1290 | 1291 | .fa-hourglass-half:before { 1292 | content: "\f252"; } 1293 | 1294 | .fa-hourglass-start:before { 1295 | content: "\f251"; } 1296 | 1297 | .fa-houzz:before { 1298 | content: "\f27c"; } 1299 | 1300 | .fa-html5:before { 1301 | content: "\f13b"; } 1302 | 1303 | .fa-hubspot:before { 1304 | content: "\f3b2"; } 1305 | 1306 | .fa-i-cursor:before { 1307 | content: "\f246"; } 1308 | 1309 | .fa-id-badge:before { 1310 | content: "\f2c1"; } 1311 | 1312 | .fa-id-card:before { 1313 | content: "\f2c2"; } 1314 | 1315 | .fa-image:before { 1316 | content: "\f03e"; } 1317 | 1318 | .fa-images:before { 1319 | content: "\f302"; } 1320 | 1321 | .fa-imdb:before { 1322 | content: "\f2d8"; } 1323 | 1324 | .fa-inbox:before { 1325 | content: "\f01c"; } 1326 | 1327 | .fa-indent:before { 1328 | content: "\f03c"; } 1329 | 1330 | .fa-industry:before { 1331 | content: "\f275"; } 1332 | 1333 | .fa-info:before { 1334 | content: "\f129"; } 1335 | 1336 | .fa-info-circle:before { 1337 | content: "\f05a"; } 1338 | 1339 | .fa-instagram:before { 1340 | content: "\f16d"; } 1341 | 1342 | .fa-internet-explorer:before { 1343 | content: "\f26b"; } 1344 | 1345 | .fa-ioxhost:before { 1346 | content: "\f208"; } 1347 | 1348 | .fa-italic:before { 1349 | content: "\f033"; } 1350 | 1351 | .fa-itunes:before { 1352 | content: "\f3b4"; } 1353 | 1354 | .fa-itunes-note:before { 1355 | content: "\f3b5"; } 1356 | 1357 | .fa-jenkins:before { 1358 | content: "\f3b6"; } 1359 | 1360 | .fa-joget:before { 1361 | content: "\f3b7"; } 1362 | 1363 | .fa-joomla:before { 1364 | content: "\f1aa"; } 1365 | 1366 | .fa-js:before { 1367 | content: "\f3b8"; } 1368 | 1369 | .fa-js-square:before { 1370 | content: "\f3b9"; } 1371 | 1372 | .fa-jsfiddle:before { 1373 | content: "\f1cc"; } 1374 | 1375 | .fa-key:before { 1376 | content: "\f084"; } 1377 | 1378 | .fa-keyboard:before { 1379 | content: "\f11c"; } 1380 | 1381 | .fa-keycdn:before { 1382 | content: "\f3ba"; } 1383 | 1384 | .fa-kickstarter:before { 1385 | content: "\f3bb"; } 1386 | 1387 | .fa-kickstarter-k:before { 1388 | content: "\f3bc"; } 1389 | 1390 | .fa-korvue:before { 1391 | content: "\f42f"; } 1392 | 1393 | .fa-language:before { 1394 | content: "\f1ab"; } 1395 | 1396 | .fa-laptop:before { 1397 | content: "\f109"; } 1398 | 1399 | .fa-laravel:before { 1400 | content: "\f3bd"; } 1401 | 1402 | .fa-lastfm:before { 1403 | content: "\f202"; } 1404 | 1405 | .fa-lastfm-square:before { 1406 | content: "\f203"; } 1407 | 1408 | .fa-leaf:before { 1409 | content: "\f06c"; } 1410 | 1411 | .fa-leanpub:before { 1412 | content: "\f212"; } 1413 | 1414 | .fa-lemon:before { 1415 | content: "\f094"; } 1416 | 1417 | .fa-less:before { 1418 | content: "\f41d"; } 1419 | 1420 | .fa-level-down-alt:before { 1421 | content: "\f3be"; } 1422 | 1423 | .fa-level-up-alt:before { 1424 | content: "\f3bf"; } 1425 | 1426 | .fa-life-ring:before { 1427 | content: "\f1cd"; } 1428 | 1429 | .fa-lightbulb:before { 1430 | content: "\f0eb"; } 1431 | 1432 | .fa-line:before { 1433 | content: "\f3c0"; } 1434 | 1435 | .fa-link:before { 1436 | content: "\f0c1"; } 1437 | 1438 | .fa-linkedin:before { 1439 | content: "\f08c"; } 1440 | 1441 | .fa-linkedin-in:before { 1442 | content: "\f0e1"; } 1443 | 1444 | .fa-linode:before { 1445 | content: "\f2b8"; } 1446 | 1447 | .fa-linux:before { 1448 | content: "\f17c"; } 1449 | 1450 | .fa-lira-sign:before { 1451 | content: "\f195"; } 1452 | 1453 | .fa-list:before { 1454 | content: "\f03a"; } 1455 | 1456 | .fa-list-alt:before { 1457 | content: "\f022"; } 1458 | 1459 | .fa-list-ol:before { 1460 | content: "\f0cb"; } 1461 | 1462 | .fa-list-ul:before { 1463 | content: "\f0ca"; } 1464 | 1465 | .fa-location-arrow:before { 1466 | content: "\f124"; } 1467 | 1468 | .fa-lock:before { 1469 | content: "\f023"; } 1470 | 1471 | .fa-lock-open:before { 1472 | content: "\f3c1"; } 1473 | 1474 | .fa-long-arrow-alt-down:before { 1475 | content: "\f309"; } 1476 | 1477 | .fa-long-arrow-alt-left:before { 1478 | content: "\f30a"; } 1479 | 1480 | .fa-long-arrow-alt-right:before { 1481 | content: "\f30b"; } 1482 | 1483 | .fa-long-arrow-alt-up:before { 1484 | content: "\f30c"; } 1485 | 1486 | .fa-low-vision:before { 1487 | content: "\f2a8"; } 1488 | 1489 | .fa-lyft:before { 1490 | content: "\f3c3"; } 1491 | 1492 | .fa-magento:before { 1493 | content: "\f3c4"; } 1494 | 1495 | .fa-magic:before { 1496 | content: "\f0d0"; } 1497 | 1498 | .fa-magnet:before { 1499 | content: "\f076"; } 1500 | 1501 | .fa-male:before { 1502 | content: "\f183"; } 1503 | 1504 | .fa-map:before { 1505 | content: "\f279"; } 1506 | 1507 | .fa-map-marker:before { 1508 | content: "\f041"; } 1509 | 1510 | .fa-map-marker-alt:before { 1511 | content: "\f3c5"; } 1512 | 1513 | .fa-map-pin:before { 1514 | content: "\f276"; } 1515 | 1516 | .fa-map-signs:before { 1517 | content: "\f277"; } 1518 | 1519 | .fa-mars:before { 1520 | content: "\f222"; } 1521 | 1522 | .fa-mars-double:before { 1523 | content: "\f227"; } 1524 | 1525 | .fa-mars-stroke:before { 1526 | content: "\f229"; } 1527 | 1528 | .fa-mars-stroke-h:before { 1529 | content: "\f22b"; } 1530 | 1531 | .fa-mars-stroke-v:before { 1532 | content: "\f22a"; } 1533 | 1534 | .fa-maxcdn:before { 1535 | content: "\f136"; } 1536 | 1537 | .fa-medapps:before { 1538 | content: "\f3c6"; } 1539 | 1540 | .fa-medium:before { 1541 | content: "\f23a"; } 1542 | 1543 | .fa-medium-m:before { 1544 | content: "\f3c7"; } 1545 | 1546 | .fa-medkit:before { 1547 | content: "\f0fa"; } 1548 | 1549 | .fa-medrt:before { 1550 | content: "\f3c8"; } 1551 | 1552 | .fa-meetup:before { 1553 | content: "\f2e0"; } 1554 | 1555 | .fa-meh:before { 1556 | content: "\f11a"; } 1557 | 1558 | .fa-mercury:before { 1559 | content: "\f223"; } 1560 | 1561 | .fa-microchip:before { 1562 | content: "\f2db"; } 1563 | 1564 | .fa-microphone:before { 1565 | content: "\f130"; } 1566 | 1567 | .fa-microphone-slash:before { 1568 | content: "\f131"; } 1569 | 1570 | .fa-microsoft:before { 1571 | content: "\f3ca"; } 1572 | 1573 | .fa-minus:before { 1574 | content: "\f068"; } 1575 | 1576 | .fa-minus-circle:before { 1577 | content: "\f056"; } 1578 | 1579 | .fa-minus-square:before { 1580 | content: "\f146"; } 1581 | 1582 | .fa-mix:before { 1583 | content: "\f3cb"; } 1584 | 1585 | .fa-mixcloud:before { 1586 | content: "\f289"; } 1587 | 1588 | .fa-mizuni:before { 1589 | content: "\f3cc"; } 1590 | 1591 | .fa-mobile:before { 1592 | content: "\f10b"; } 1593 | 1594 | .fa-mobile-alt:before { 1595 | content: "\f3cd"; } 1596 | 1597 | .fa-modx:before { 1598 | content: "\f285"; } 1599 | 1600 | .fa-monero:before { 1601 | content: "\f3d0"; } 1602 | 1603 | .fa-money-bill-alt:before { 1604 | content: "\f3d1"; } 1605 | 1606 | .fa-moon:before { 1607 | content: "\f186"; } 1608 | 1609 | .fa-motorcycle:before { 1610 | content: "\f21c"; } 1611 | 1612 | .fa-mouse-pointer:before { 1613 | content: "\f245"; } 1614 | 1615 | .fa-music:before { 1616 | content: "\f001"; } 1617 | 1618 | .fa-napster:before { 1619 | content: "\f3d2"; } 1620 | 1621 | .fa-neuter:before { 1622 | content: "\f22c"; } 1623 | 1624 | .fa-newspaper:before { 1625 | content: "\f1ea"; } 1626 | 1627 | .fa-nintendo-switch:before { 1628 | content: "\f418"; } 1629 | 1630 | .fa-node:before { 1631 | content: "\f419"; } 1632 | 1633 | .fa-node-js:before { 1634 | content: "\f3d3"; } 1635 | 1636 | .fa-npm:before { 1637 | content: "\f3d4"; } 1638 | 1639 | .fa-ns8:before { 1640 | content: "\f3d5"; } 1641 | 1642 | .fa-nutritionix:before { 1643 | content: "\f3d6"; } 1644 | 1645 | .fa-object-group:before { 1646 | content: "\f247"; } 1647 | 1648 | .fa-object-ungroup:before { 1649 | content: "\f248"; } 1650 | 1651 | .fa-odnoklassniki:before { 1652 | content: "\f263"; } 1653 | 1654 | .fa-odnoklassniki-square:before { 1655 | content: "\f264"; } 1656 | 1657 | .fa-opencart:before { 1658 | content: "\f23d"; } 1659 | 1660 | .fa-openid:before { 1661 | content: "\f19b"; } 1662 | 1663 | .fa-opera:before { 1664 | content: "\f26a"; } 1665 | 1666 | .fa-optin-monster:before { 1667 | content: "\f23c"; } 1668 | 1669 | .fa-osi:before { 1670 | content: "\f41a"; } 1671 | 1672 | .fa-outdent:before { 1673 | content: "\f03b"; } 1674 | 1675 | .fa-page4:before { 1676 | content: "\f3d7"; } 1677 | 1678 | .fa-pagelines:before { 1679 | content: "\f18c"; } 1680 | 1681 | .fa-paint-brush:before { 1682 | content: "\f1fc"; } 1683 | 1684 | .fa-palfed:before { 1685 | content: "\f3d8"; } 1686 | 1687 | .fa-paper-plane:before { 1688 | content: "\f1d8"; } 1689 | 1690 | .fa-paperclip:before { 1691 | content: "\f0c6"; } 1692 | 1693 | .fa-paragraph:before { 1694 | content: "\f1dd"; } 1695 | 1696 | .fa-paste:before { 1697 | content: "\f0ea"; } 1698 | 1699 | .fa-patreon:before { 1700 | content: "\f3d9"; } 1701 | 1702 | .fa-pause:before { 1703 | content: "\f04c"; } 1704 | 1705 | .fa-pause-circle:before { 1706 | content: "\f28b"; } 1707 | 1708 | .fa-paw:before { 1709 | content: "\f1b0"; } 1710 | 1711 | .fa-paypal:before { 1712 | content: "\f1ed"; } 1713 | 1714 | .fa-pen-square:before { 1715 | content: "\f14b"; } 1716 | 1717 | .fa-pencil-alt:before { 1718 | content: "\f303"; } 1719 | 1720 | .fa-percent:before { 1721 | content: "\f295"; } 1722 | 1723 | .fa-periscope:before { 1724 | content: "\f3da"; } 1725 | 1726 | .fa-phabricator:before { 1727 | content: "\f3db"; } 1728 | 1729 | .fa-phoenix-framework:before { 1730 | content: "\f3dc"; } 1731 | 1732 | .fa-phone:before { 1733 | content: "\f095"; } 1734 | 1735 | .fa-phone-square:before { 1736 | content: "\f098"; } 1737 | 1738 | .fa-phone-volume:before { 1739 | content: "\f2a0"; } 1740 | 1741 | .fa-pied-piper:before { 1742 | content: "\f2ae"; } 1743 | 1744 | .fa-pied-piper-alt:before { 1745 | content: "\f1a8"; } 1746 | 1747 | .fa-pied-piper-pp:before { 1748 | content: "\f1a7"; } 1749 | 1750 | .fa-pinterest:before { 1751 | content: "\f0d2"; } 1752 | 1753 | .fa-pinterest-p:before { 1754 | content: "\f231"; } 1755 | 1756 | .fa-pinterest-square:before { 1757 | content: "\f0d3"; } 1758 | 1759 | .fa-plane:before { 1760 | content: "\f072"; } 1761 | 1762 | .fa-play:before { 1763 | content: "\f04b"; } 1764 | 1765 | .fa-play-circle:before { 1766 | content: "\f144"; } 1767 | 1768 | .fa-playstation:before { 1769 | content: "\f3df"; } 1770 | 1771 | .fa-plug:before { 1772 | content: "\f1e6"; } 1773 | 1774 | .fa-plus:before { 1775 | content: "\f067"; } 1776 | 1777 | .fa-plus-circle:before { 1778 | content: "\f055"; } 1779 | 1780 | .fa-plus-square:before { 1781 | content: "\f0fe"; } 1782 | 1783 | .fa-podcast:before { 1784 | content: "\f2ce"; } 1785 | 1786 | .fa-pound-sign:before { 1787 | content: "\f154"; } 1788 | 1789 | .fa-power-off:before { 1790 | content: "\f011"; } 1791 | 1792 | .fa-print:before { 1793 | content: "\f02f"; } 1794 | 1795 | .fa-product-hunt:before { 1796 | content: "\f288"; } 1797 | 1798 | .fa-pushed:before { 1799 | content: "\f3e1"; } 1800 | 1801 | .fa-puzzle-piece:before { 1802 | content: "\f12e"; } 1803 | 1804 | .fa-python:before { 1805 | content: "\f3e2"; } 1806 | 1807 | .fa-qq:before { 1808 | content: "\f1d6"; } 1809 | 1810 | .fa-qrcode:before { 1811 | content: "\f029"; } 1812 | 1813 | .fa-question:before { 1814 | content: "\f128"; } 1815 | 1816 | .fa-question-circle:before { 1817 | content: "\f059"; } 1818 | 1819 | .fa-quora:before { 1820 | content: "\f2c4"; } 1821 | 1822 | .fa-quote-left:before { 1823 | content: "\f10d"; } 1824 | 1825 | .fa-quote-right:before { 1826 | content: "\f10e"; } 1827 | 1828 | .fa-random:before { 1829 | content: "\f074"; } 1830 | 1831 | .fa-ravelry:before { 1832 | content: "\f2d9"; } 1833 | 1834 | .fa-react:before { 1835 | content: "\f41b"; } 1836 | 1837 | .fa-rebel:before { 1838 | content: "\f1d0"; } 1839 | 1840 | .fa-recycle:before { 1841 | content: "\f1b8"; } 1842 | 1843 | .fa-red-river:before { 1844 | content: "\f3e3"; } 1845 | 1846 | .fa-reddit:before { 1847 | content: "\f1a1"; } 1848 | 1849 | .fa-reddit-alien:before { 1850 | content: "\f281"; } 1851 | 1852 | .fa-reddit-square:before { 1853 | content: "\f1a2"; } 1854 | 1855 | .fa-redo:before { 1856 | content: "\f01e"; } 1857 | 1858 | .fa-redo-alt:before { 1859 | content: "\f2f9"; } 1860 | 1861 | .fa-registered:before { 1862 | content: "\f25d"; } 1863 | 1864 | .fa-rendact:before { 1865 | content: "\f3e4"; } 1866 | 1867 | .fa-renren:before { 1868 | content: "\f18b"; } 1869 | 1870 | .fa-reply:before { 1871 | content: "\f3e5"; } 1872 | 1873 | .fa-reply-all:before { 1874 | content: "\f122"; } 1875 | 1876 | .fa-replyd:before { 1877 | content: "\f3e6"; } 1878 | 1879 | .fa-resolving:before { 1880 | content: "\f3e7"; } 1881 | 1882 | .fa-retweet:before { 1883 | content: "\f079"; } 1884 | 1885 | .fa-road:before { 1886 | content: "\f018"; } 1887 | 1888 | .fa-rocket:before { 1889 | content: "\f135"; } 1890 | 1891 | .fa-rocketchat:before { 1892 | content: "\f3e8"; } 1893 | 1894 | .fa-rockrms:before { 1895 | content: "\f3e9"; } 1896 | 1897 | .fa-rss:before { 1898 | content: "\f09e"; } 1899 | 1900 | .fa-rss-square:before { 1901 | content: "\f143"; } 1902 | 1903 | .fa-ruble-sign:before { 1904 | content: "\f158"; } 1905 | 1906 | .fa-rupee-sign:before { 1907 | content: "\f156"; } 1908 | 1909 | .fa-safari:before { 1910 | content: "\f267"; } 1911 | 1912 | .fa-sass:before { 1913 | content: "\f41e"; } 1914 | 1915 | .fa-save:before { 1916 | content: "\f0c7"; } 1917 | 1918 | .fa-schlix:before { 1919 | content: "\f3ea"; } 1920 | 1921 | .fa-scribd:before { 1922 | content: "\f28a"; } 1923 | 1924 | .fa-search:before { 1925 | content: "\f002"; } 1926 | 1927 | .fa-search-minus:before { 1928 | content: "\f010"; } 1929 | 1930 | .fa-search-plus:before { 1931 | content: "\f00e"; } 1932 | 1933 | .fa-searchengin:before { 1934 | content: "\f3eb"; } 1935 | 1936 | .fa-sellcast:before { 1937 | content: "\f2da"; } 1938 | 1939 | .fa-sellsy:before { 1940 | content: "\f213"; } 1941 | 1942 | .fa-server:before { 1943 | content: "\f233"; } 1944 | 1945 | .fa-servicestack:before { 1946 | content: "\f3ec"; } 1947 | 1948 | .fa-share:before { 1949 | content: "\f064"; } 1950 | 1951 | .fa-share-alt:before { 1952 | content: "\f1e0"; } 1953 | 1954 | .fa-share-alt-square:before { 1955 | content: "\f1e1"; } 1956 | 1957 | .fa-share-square:before { 1958 | content: "\f14d"; } 1959 | 1960 | .fa-shekel-sign:before { 1961 | content: "\f20b"; } 1962 | 1963 | .fa-shield-alt:before { 1964 | content: "\f3ed"; } 1965 | 1966 | .fa-ship:before { 1967 | content: "\f21a"; } 1968 | 1969 | .fa-shirtsinbulk:before { 1970 | content: "\f214"; } 1971 | 1972 | .fa-shopping-bag:before { 1973 | content: "\f290"; } 1974 | 1975 | .fa-shopping-basket:before { 1976 | content: "\f291"; } 1977 | 1978 | .fa-shopping-cart:before { 1979 | content: "\f07a"; } 1980 | 1981 | .fa-shower:before { 1982 | content: "\f2cc"; } 1983 | 1984 | .fa-sign-in-alt:before { 1985 | content: "\f2f6"; } 1986 | 1987 | .fa-sign-language:before { 1988 | content: "\f2a7"; } 1989 | 1990 | .fa-sign-out-alt:before { 1991 | content: "\f2f5"; } 1992 | 1993 | .fa-signal:before { 1994 | content: "\f012"; } 1995 | 1996 | .fa-simplybuilt:before { 1997 | content: "\f215"; } 1998 | 1999 | .fa-sistrix:before { 2000 | content: "\f3ee"; } 2001 | 2002 | .fa-sitemap:before { 2003 | content: "\f0e8"; } 2004 | 2005 | .fa-skyatlas:before { 2006 | content: "\f216"; } 2007 | 2008 | .fa-skype:before { 2009 | content: "\f17e"; } 2010 | 2011 | .fa-slack:before { 2012 | content: "\f198"; } 2013 | 2014 | .fa-slack-hash:before { 2015 | content: "\f3ef"; } 2016 | 2017 | .fa-sliders-h:before { 2018 | content: "\f1de"; } 2019 | 2020 | .fa-slideshare:before { 2021 | content: "\f1e7"; } 2022 | 2023 | .fa-smile:before { 2024 | content: "\f118"; } 2025 | 2026 | .fa-snapchat:before { 2027 | content: "\f2ab"; } 2028 | 2029 | .fa-snapchat-ghost:before { 2030 | content: "\f2ac"; } 2031 | 2032 | .fa-snapchat-square:before { 2033 | content: "\f2ad"; } 2034 | 2035 | .fa-snowflake:before { 2036 | content: "\f2dc"; } 2037 | 2038 | .fa-sort:before { 2039 | content: "\f0dc"; } 2040 | 2041 | .fa-sort-alpha-down:before { 2042 | content: "\f15d"; } 2043 | 2044 | .fa-sort-alpha-up:before { 2045 | content: "\f15e"; } 2046 | 2047 | .fa-sort-amount-down:before { 2048 | content: "\f160"; } 2049 | 2050 | .fa-sort-amount-up:before { 2051 | content: "\f161"; } 2052 | 2053 | .fa-sort-down:before { 2054 | content: "\f0dd"; } 2055 | 2056 | .fa-sort-numeric-down:before { 2057 | content: "\f162"; } 2058 | 2059 | .fa-sort-numeric-up:before { 2060 | content: "\f163"; } 2061 | 2062 | .fa-sort-up:before { 2063 | content: "\f0de"; } 2064 | 2065 | .fa-soundcloud:before { 2066 | content: "\f1be"; } 2067 | 2068 | .fa-space-shuttle:before { 2069 | content: "\f197"; } 2070 | 2071 | .fa-speakap:before { 2072 | content: "\f3f3"; } 2073 | 2074 | .fa-spinner:before { 2075 | content: "\f110"; } 2076 | 2077 | .fa-spotify:before { 2078 | content: "\f1bc"; } 2079 | 2080 | .fa-square:before { 2081 | content: "\f0c8"; } 2082 | 2083 | .fa-stack-exchange:before { 2084 | content: "\f18d"; } 2085 | 2086 | .fa-stack-overflow:before { 2087 | content: "\f16c"; } 2088 | 2089 | .fa-star:before { 2090 | content: "\f005"; } 2091 | 2092 | .fa-star-half:before { 2093 | content: "\f089"; } 2094 | 2095 | .fa-staylinked:before { 2096 | content: "\f3f5"; } 2097 | 2098 | .fa-steam:before { 2099 | content: "\f1b6"; } 2100 | 2101 | .fa-steam-square:before { 2102 | content: "\f1b7"; } 2103 | 2104 | .fa-steam-symbol:before { 2105 | content: "\f3f6"; } 2106 | 2107 | .fa-step-backward:before { 2108 | content: "\f048"; } 2109 | 2110 | .fa-step-forward:before { 2111 | content: "\f051"; } 2112 | 2113 | .fa-stethoscope:before { 2114 | content: "\f0f1"; } 2115 | 2116 | .fa-sticker-mule:before { 2117 | content: "\f3f7"; } 2118 | 2119 | .fa-sticky-note:before { 2120 | content: "\f249"; } 2121 | 2122 | .fa-stop:before { 2123 | content: "\f04d"; } 2124 | 2125 | .fa-stop-circle:before { 2126 | content: "\f28d"; } 2127 | 2128 | .fa-stopwatch:before { 2129 | content: "\f2f2"; } 2130 | 2131 | .fa-strava:before { 2132 | content: "\f428"; } 2133 | 2134 | .fa-street-view:before { 2135 | content: "\f21d"; } 2136 | 2137 | .fa-strikethrough:before { 2138 | content: "\f0cc"; } 2139 | 2140 | .fa-stripe:before { 2141 | content: "\f429"; } 2142 | 2143 | .fa-stripe-s:before { 2144 | content: "\f42a"; } 2145 | 2146 | .fa-studiovinari:before { 2147 | content: "\f3f8"; } 2148 | 2149 | .fa-stumbleupon:before { 2150 | content: "\f1a4"; } 2151 | 2152 | .fa-stumbleupon-circle:before { 2153 | content: "\f1a3"; } 2154 | 2155 | .fa-subscript:before { 2156 | content: "\f12c"; } 2157 | 2158 | .fa-subway:before { 2159 | content: "\f239"; } 2160 | 2161 | .fa-suitcase:before { 2162 | content: "\f0f2"; } 2163 | 2164 | .fa-sun:before { 2165 | content: "\f185"; } 2166 | 2167 | .fa-superpowers:before { 2168 | content: "\f2dd"; } 2169 | 2170 | .fa-superscript:before { 2171 | content: "\f12b"; } 2172 | 2173 | .fa-supple:before { 2174 | content: "\f3f9"; } 2175 | 2176 | .fa-sync:before { 2177 | content: "\f021"; } 2178 | 2179 | .fa-sync-alt:before { 2180 | content: "\f2f1"; } 2181 | 2182 | .fa-table:before { 2183 | content: "\f0ce"; } 2184 | 2185 | .fa-tablet:before { 2186 | content: "\f10a"; } 2187 | 2188 | .fa-tablet-alt:before { 2189 | content: "\f3fa"; } 2190 | 2191 | .fa-tachometer-alt:before { 2192 | content: "\f3fd"; } 2193 | 2194 | .fa-tag:before { 2195 | content: "\f02b"; } 2196 | 2197 | .fa-tags:before { 2198 | content: "\f02c"; } 2199 | 2200 | .fa-tasks:before { 2201 | content: "\f0ae"; } 2202 | 2203 | .fa-taxi:before { 2204 | content: "\f1ba"; } 2205 | 2206 | .fa-telegram:before { 2207 | content: "\f2c6"; } 2208 | 2209 | .fa-telegram-plane:before { 2210 | content: "\f3fe"; } 2211 | 2212 | .fa-tencent-weibo:before { 2213 | content: "\f1d5"; } 2214 | 2215 | .fa-terminal:before { 2216 | content: "\f120"; } 2217 | 2218 | .fa-text-height:before { 2219 | content: "\f034"; } 2220 | 2221 | .fa-text-width:before { 2222 | content: "\f035"; } 2223 | 2224 | .fa-th:before { 2225 | content: "\f00a"; } 2226 | 2227 | .fa-th-large:before { 2228 | content: "\f009"; } 2229 | 2230 | .fa-th-list:before { 2231 | content: "\f00b"; } 2232 | 2233 | .fa-themeisle:before { 2234 | content: "\f2b2"; } 2235 | 2236 | .fa-thermometer-empty:before { 2237 | content: "\f2cb"; } 2238 | 2239 | .fa-thermometer-full:before { 2240 | content: "\f2c7"; } 2241 | 2242 | .fa-thermometer-half:before { 2243 | content: "\f2c9"; } 2244 | 2245 | .fa-thermometer-quarter:before { 2246 | content: "\f2ca"; } 2247 | 2248 | .fa-thermometer-three-quarters:before { 2249 | content: "\f2c8"; } 2250 | 2251 | .fa-thumbs-down:before { 2252 | content: "\f165"; } 2253 | 2254 | .fa-thumbs-up:before { 2255 | content: "\f164"; } 2256 | 2257 | .fa-thumbtack:before { 2258 | content: "\f08d"; } 2259 | 2260 | .fa-ticket-alt:before { 2261 | content: "\f3ff"; } 2262 | 2263 | .fa-times:before { 2264 | content: "\f00d"; } 2265 | 2266 | .fa-times-circle:before { 2267 | content: "\f057"; } 2268 | 2269 | .fa-tint:before { 2270 | content: "\f043"; } 2271 | 2272 | .fa-toggle-off:before { 2273 | content: "\f204"; } 2274 | 2275 | .fa-toggle-on:before { 2276 | content: "\f205"; } 2277 | 2278 | .fa-trademark:before { 2279 | content: "\f25c"; } 2280 | 2281 | .fa-train:before { 2282 | content: "\f238"; } 2283 | 2284 | .fa-transgender:before { 2285 | content: "\f224"; } 2286 | 2287 | .fa-transgender-alt:before { 2288 | content: "\f225"; } 2289 | 2290 | .fa-trash:before { 2291 | content: "\f1f8"; } 2292 | 2293 | .fa-trash-alt:before { 2294 | content: "\f2ed"; } 2295 | 2296 | .fa-tree:before { 2297 | content: "\f1bb"; } 2298 | 2299 | .fa-trello:before { 2300 | content: "\f181"; } 2301 | 2302 | .fa-tripadvisor:before { 2303 | content: "\f262"; } 2304 | 2305 | .fa-trophy:before { 2306 | content: "\f091"; } 2307 | 2308 | .fa-truck:before { 2309 | content: "\f0d1"; } 2310 | 2311 | .fa-tty:before { 2312 | content: "\f1e4"; } 2313 | 2314 | .fa-tumblr:before { 2315 | content: "\f173"; } 2316 | 2317 | .fa-tumblr-square:before { 2318 | content: "\f174"; } 2319 | 2320 | .fa-tv:before { 2321 | content: "\f26c"; } 2322 | 2323 | .fa-twitch:before { 2324 | content: "\f1e8"; } 2325 | 2326 | .fa-twitter:before { 2327 | content: "\f099"; } 2328 | 2329 | .fa-twitter-square:before { 2330 | content: "\f081"; } 2331 | 2332 | .fa-typo3:before { 2333 | content: "\f42b"; } 2334 | 2335 | .fa-uber:before { 2336 | content: "\f402"; } 2337 | 2338 | .fa-uikit:before { 2339 | content: "\f403"; } 2340 | 2341 | .fa-umbrella:before { 2342 | content: "\f0e9"; } 2343 | 2344 | .fa-underline:before { 2345 | content: "\f0cd"; } 2346 | 2347 | .fa-undo:before { 2348 | content: "\f0e2"; } 2349 | 2350 | .fa-undo-alt:before { 2351 | content: "\f2ea"; } 2352 | 2353 | .fa-uniregistry:before { 2354 | content: "\f404"; } 2355 | 2356 | .fa-universal-access:before { 2357 | content: "\f29a"; } 2358 | 2359 | .fa-university:before { 2360 | content: "\f19c"; } 2361 | 2362 | .fa-unlink:before { 2363 | content: "\f127"; } 2364 | 2365 | .fa-unlock:before { 2366 | content: "\f09c"; } 2367 | 2368 | .fa-unlock-alt:before { 2369 | content: "\f13e"; } 2370 | 2371 | .fa-untappd:before { 2372 | content: "\f405"; } 2373 | 2374 | .fa-upload:before { 2375 | content: "\f093"; } 2376 | 2377 | .fa-usb:before { 2378 | content: "\f287"; } 2379 | 2380 | .fa-user:before { 2381 | content: "\f007"; } 2382 | 2383 | .fa-user-circle:before { 2384 | content: "\f2bd"; } 2385 | 2386 | .fa-user-md:before { 2387 | content: "\f0f0"; } 2388 | 2389 | .fa-user-plus:before { 2390 | content: "\f234"; } 2391 | 2392 | .fa-user-secret:before { 2393 | content: "\f21b"; } 2394 | 2395 | .fa-user-times:before { 2396 | content: "\f235"; } 2397 | 2398 | .fa-users:before { 2399 | content: "\f0c0"; } 2400 | 2401 | .fa-ussunnah:before { 2402 | content: "\f407"; } 2403 | 2404 | .fa-utensil-spoon:before { 2405 | content: "\f2e5"; } 2406 | 2407 | .fa-utensils:before { 2408 | content: "\f2e7"; } 2409 | 2410 | .fa-vaadin:before { 2411 | content: "\f408"; } 2412 | 2413 | .fa-venus:before { 2414 | content: "\f221"; } 2415 | 2416 | .fa-venus-double:before { 2417 | content: "\f226"; } 2418 | 2419 | .fa-venus-mars:before { 2420 | content: "\f228"; } 2421 | 2422 | .fa-viacoin:before { 2423 | content: "\f237"; } 2424 | 2425 | .fa-viadeo:before { 2426 | content: "\f2a9"; } 2427 | 2428 | .fa-viadeo-square:before { 2429 | content: "\f2aa"; } 2430 | 2431 | .fa-viber:before { 2432 | content: "\f409"; } 2433 | 2434 | .fa-video:before { 2435 | content: "\f03d"; } 2436 | 2437 | .fa-vimeo:before { 2438 | content: "\f40a"; } 2439 | 2440 | .fa-vimeo-square:before { 2441 | content: "\f194"; } 2442 | 2443 | .fa-vimeo-v:before { 2444 | content: "\f27d"; } 2445 | 2446 | .fa-vine:before { 2447 | content: "\f1ca"; } 2448 | 2449 | .fa-vk:before { 2450 | content: "\f189"; } 2451 | 2452 | .fa-vnv:before { 2453 | content: "\f40b"; } 2454 | 2455 | .fa-volume-down:before { 2456 | content: "\f027"; } 2457 | 2458 | .fa-volume-off:before { 2459 | content: "\f026"; } 2460 | 2461 | .fa-volume-up:before { 2462 | content: "\f028"; } 2463 | 2464 | .fa-vuejs:before { 2465 | content: "\f41f"; } 2466 | 2467 | .fa-weibo:before { 2468 | content: "\f18a"; } 2469 | 2470 | .fa-weixin:before { 2471 | content: "\f1d7"; } 2472 | 2473 | .fa-whatsapp:before { 2474 | content: "\f232"; } 2475 | 2476 | .fa-whatsapp-square:before { 2477 | content: "\f40c"; } 2478 | 2479 | .fa-wheelchair:before { 2480 | content: "\f193"; } 2481 | 2482 | .fa-whmcs:before { 2483 | content: "\f40d"; } 2484 | 2485 | .fa-wifi:before { 2486 | content: "\f1eb"; } 2487 | 2488 | .fa-wikipedia-w:before { 2489 | content: "\f266"; } 2490 | 2491 | .fa-window-close:before { 2492 | content: "\f410"; } 2493 | 2494 | .fa-window-maximize:before { 2495 | content: "\f2d0"; } 2496 | 2497 | .fa-window-minimize:before { 2498 | content: "\f2d1"; } 2499 | 2500 | .fa-window-restore:before { 2501 | content: "\f2d2"; } 2502 | 2503 | .fa-windows:before { 2504 | content: "\f17a"; } 2505 | 2506 | .fa-won-sign:before { 2507 | content: "\f159"; } 2508 | 2509 | .fa-wordpress:before { 2510 | content: "\f19a"; } 2511 | 2512 | .fa-wordpress-simple:before { 2513 | content: "\f411"; } 2514 | 2515 | .fa-wpbeginner:before { 2516 | content: "\f297"; } 2517 | 2518 | .fa-wpexplorer:before { 2519 | content: "\f2de"; } 2520 | 2521 | .fa-wpforms:before { 2522 | content: "\f298"; } 2523 | 2524 | .fa-wrench:before { 2525 | content: "\f0ad"; } 2526 | 2527 | .fa-xbox:before { 2528 | content: "\f412"; } 2529 | 2530 | .fa-xing:before { 2531 | content: "\f168"; } 2532 | 2533 | .fa-xing-square:before { 2534 | content: "\f169"; } 2535 | 2536 | .fa-y-combinator:before { 2537 | content: "\f23b"; } 2538 | 2539 | .fa-yahoo:before { 2540 | content: "\f19e"; } 2541 | 2542 | .fa-yandex:before { 2543 | content: "\f413"; } 2544 | 2545 | .fa-yandex-international:before { 2546 | content: "\f414"; } 2547 | 2548 | .fa-yelp:before { 2549 | content: "\f1e9"; } 2550 | 2551 | .fa-yen-sign:before { 2552 | content: "\f157"; } 2553 | 2554 | .fa-yoast:before { 2555 | content: "\f2b1"; } 2556 | 2557 | .fa-youtube:before { 2558 | content: "\f167"; } 2559 | 2560 | .fa-youtube-square:before { 2561 | content: "\f431"; } 2562 | 2563 | .sr-only { 2564 | border: 0; 2565 | clip: rect(0, 0, 0, 0); 2566 | height: 1px; 2567 | margin: -1px; 2568 | overflow: hidden; 2569 | padding: 0; 2570 | position: absolute; 2571 | width: 1px; } 2572 | 2573 | .sr-only-focusable:active, .sr-only-focusable:focus { 2574 | clip: auto; 2575 | height: auto; 2576 | margin: 0; 2577 | overflow: visible; 2578 | position: static; 2579 | width: auto; } 2580 | -------------------------------------------------------------------------------- /src/Assets/mp/css/fontawesome.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome Free 5.0.4 by @fontawesome - http://fontawesome.com 3 | * License - http://fontawesome.com/license (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) 4 | */ 5 | .fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:a 2s infinite linear;animation:a 2s infinite linear}.fa-pulse{-webkit-animation:a 1s infinite steps(8);animation:a 1s infinite steps(8)}@-webkit-keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes a{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-aws:before{content:"\f375"}.fa-backward:before{content:"\f04a"}.fa-balance-scale:before{content:"\f24e"}.fa-ban:before{content:"\f05e"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bicycle:before{content:"\f206"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blind:before{content:"\f29d"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-braille:before{content:"\f2a1"}.fa-briefcase:before{content:"\f0b1"}.fa-btc:before{content:"\f15a"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-car:before{content:"\f1b9"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-certificate:before{content:"\f0a3"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-square:before{content:"\f14a"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-clipboard:before{content:"\f328"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comments:before{content:"\f086"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crosshairs:before{content:"\f05b"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-deviantart:before{content:"\f1bd"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dollar-sign:before{content:"\f155"}.fa-dot-circle:before{content:"\f192"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drupal:before{content:"\f1a9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-excel:before{content:"\f1c3"}.fa-file-image:before{content:"\f1c5"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fire:before{content:"\f06d"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-order:before{content:"\f2b0"}.fa-firstdraft:before{content:"\f3a1"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frown:before{content:"\f119"}.fa-futbol:before{content:"\f1e3"}.fa-gamepad:before{content:"\f11b"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-gift:before{content:"\f06b"}.fa-git:before{content:"\f1d3"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-martini:before{content:"\f000"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-gofore:before{content:"\f3a7"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-handshake:before{content:"\f2b5"}.fa-hashtag:before{content:"\f292"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-heart:before{content:"\f004"}.fa-heartbeat:before{content:"\f21e"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hospital:before{content:"\f0f8"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-internet-explorer:before{content:"\f26b"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-jenkins:before{content:"\f3b6"}.fa-joget:before{content:"\f3b7"}.fa-joomla:before{content:"\f1aa"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-key:before{content:"\f084"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-korvue:before{content:"\f42f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-male:before{content:"\f183"}.fa-map:before{content:"\f279"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-maxcdn:before{content:"\f136"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-meh:before{content:"\f11a"}.fa-mercury:before{content:"\f223"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-moon:before{content:"\f186"}.fa-motorcycle:before{content:"\f21c"}.fa-mouse-pointer:before{content:"\f245"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nintendo-switch:before{content:"\f418"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-paint-brush:before{content:"\f1fc"}.fa-palfed:before{content:"\f3d8"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-paragraph:before{content:"\f1dd"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-percent:before{content:"\f295"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phone:before{content:"\f095"}.fa-phone-square:before{content:"\f098"}.fa-phone-volume:before{content:"\f2a0"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-plane:before{content:"\f072"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-print:before{content:"\f02f"}.fa-product-hunt:before{content:"\f288"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-random:before{content:"\f074"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-rebel:before{content:"\f1d0"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-rendact:before{content:"\f3e4"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-resolving:before{content:"\f3e7"}.fa-retweet:before{content:"\f079"}.fa-road:before{content:"\f018"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-rupee-sign:before{content:"\f156"}.fa-safari:before{content:"\f267"}.fa-sass:before{content:"\f41e"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-scribd:before{content:"\f28a"}.fa-search:before{content:"\f002"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shower:before{content:"\f2cc"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowflake:before{content:"\f2dc"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-spinner:before{content:"\f110"}.fa-spotify:before{content:"\f1bc"}.fa-square:before{content:"\f0c8"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-star:before{content:"\f005"}.fa-star-half:before{content:"\f089"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-strava:before{content:"\f428"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-table:before{content:"\f0ce"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-trademark:before{content:"\f25c"}.fa-train:before{content:"\f238"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-circle:before{content:"\f2bd"}.fa-user-md:before{content:"\f0f0"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-volume-down:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vuejs:before{content:"\f41f"}.fa-weibo:before{content:"\f18a"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wrench:before{content:"\f0ad"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto} -------------------------------------------------------------------------------- /src/Assets/mp/css/mailpeek.css: -------------------------------------------------------------------------------- 1 | .btn{font-weight:lighter}a,a:hover,a:focus,a:active{text-decoration:none}body{font-size:13px}body{background:#ecf0f5;padding-top:50px;font-family:'Source Sans Pro', sans-serif}.mailbox-box{position:relative;background:white;border-radius:3px;box-shadow:0 1px 1px rgba(0,0,0,0.1);margin-bottom:20px}.mailbox-box-header{border-bottom:1px solid #f4f4f4;padding:10px}.mailbox-box-header .mailbox-box-title{font-size:16px;color:#444;margin:0;font-weight:lighter;display:inline-block}.mailbox-box-header .mailbox-box-tools>form{width:200px;margin:0;padding:0}.mailbox-box-header .mailbox-box-tools>form.search-form{margin-top:-5px;position:relative}.mailbox-box-header .mailbox-box-tools>form.search-form>input[type=text]{font-size:11px;box-shadow:none;border-radius:0;height:28px;padding-right:30px}.mailbox-box-header .mailbox-box-tools>form.search-form>i{position:absolute;top:8px;right:10px;color:#555}.mailbox-box-header .mailbox-box-tools>.btn{margin-top:-3px;padding:2px 5px;color:#97a0b3}.mailbox-box-footer{padding:10px 15px}.mailbox-box-primary{border-top:3px solid #3c8dbc}.mailbox .vertical-list{margin:0;padding:0}.mailbox .vertical-list>li{list-style:none;font-weight:lighter;border-bottom:1px solid #f4f4f4}.mailbox .vertical-list>li:hover{background:#f7f7f7}.mailbox .vertical-list>li:last-child{border-bottom:none}.mailbox .vertical-list>li.active{font-weight:normal}.mailbox .vertical-list>li a{display:block;padding:10px;color:#444}.mailbox .vertical-list>li a>i{margin-right:5px}.mailbox-controls{padding:10px;border-bottom:1px solid #f4f4f4}.mailbox-messages>.table{margin-bottom:0;border-bottom:1px solid #f4f4f4}.mailbox-messages>.table>tbody>tr:first-child>td{border-top:none}.mailbox-messages>.table>tbody>tr>td{border-top:1px solid #f4f4f4}.mailbox-messages>.table>tbody>tr>td:first-child{text-align:left}.mailbox-read-info{padding:10px;border-bottom:1px solid #f4f4f4}.mailbox-read-info h3{font-size:20px;margin:0;font-weight:lighter}.mailbox-read-info h5{margin:0;padding:5px 0 0 0;font-weight:lighter}.mailbox-read-info-time{font-size:13px;color:#999}.mailbox-read-message{padding:10px;font-weight:lighter;border-bottom:1px solid #f4f4f4}.mailbox-attachment{margin:0;padding:10px 5px 10px 5px;border-bottom:1px solid #f4f4f4}.mailbox-attachment>li{float:left;width:150px;border:1px solid #eee;margin-top:10px;margin-bottom:10px;list-style:none;margin:5px}.mailbox-attachment-name{color:#666;display:block;font-size:11px;font-weight:bold}.mailbox-attachment-size{color:#999;font-size:11px}.mailbox-attachment-icon{color:#666;padding:20px 10px;font-size:41.5px;text-align:center;display:block}.mailbox-attachment-icon.has-img{padding:0}.mailbox-attachment-icon.has-img>img{max-width:100%}.mailbox-attachment-info{background:#f4f4f4;padding:10px}.mailbox-compose{border-bottom:1px solid #f4f4f4;padding:10px}.mailbox-compose input[type="text"].form-control,.mailbox-compose textarea.form-control,.mailbox-compose div.same-form-control{box-shadow:none;border-radius:0;font-weight:lighter;border:1px solid #d2d6de;padding:5px 10px;font-size:12px}.mailbox-compose input[type="text"].form-control:focus,.mailbox-compose textarea.form-control:focus,.mailbox-compose div.same-form-control:focus{outline:none}.mailbox-compose .wysihtml5-toolbar{margin:0 0 10px 0;padding:0}.mailbox-compose .wysihtml5-toolbar>li{display:inline-block}.mailbox[dir="rtl"] .vertical-list>li>a>i{margin-right:0;margin-left:5px}.mailbox[dir="rtl"] .mailbox-box-tools>.search-form>input[type=text]{padding-right:10px;padding-left:30px}.mailbox[dir="rtl"] .mailbox-box-tools>.search-form>i{right:auto;left:10px}.logo{color:#369;font-family: Calibri, Arial; font-size: 40px; line-height: 65%; margin:0 0 15px; text-align: left; }.logo span.small{color:#000;display:block;font-size: .5em;padding-left: 4px;}.mailbox-box table tbody tr.unread td{font-weight: bold;} -------------------------------------------------------------------------------- /src/Assets/mp/js/mpeek.js: -------------------------------------------------------------------------------- 1 | Vue.http.interceptors.push(function(request, next){ 2 | request.method = "POST"; 3 | request.headers.set('X-CSRF-TOKEN', $("meta[name='csrf-token']").attr("content")); 4 | next(); 5 | }); 6 | 7 | $(function(){ 8 | function initData(){ 9 | return { 10 | Messages: {}, 11 | UnreadCount : "0", 12 | }; 13 | } 14 | var my_dash = new Vue ( { 15 | el: '#mpeekApp', 16 | data: function(){ 17 | return initData(); 18 | }, 19 | computed: { 20 | }, 21 | methods: { 22 | loadData: function () { 23 | $.get('/mailpeek/get_mbox', function (response) { 24 | response = JSON.parse(response); 25 | this.Messages = response.messages; 26 | this.UnreadCount = response.meta.unread_count; 27 | }.bind(this)); 28 | }, 29 | openmessage: function(messageID){ 30 | var strWindowFeatures = "menubar=no,location=no,resizable=yes,scrollbars=yes,status=no"; 31 | window.open("/mailpeek/message/"+messageID, "_blank", strWindowFeatures); 32 | }, 33 | emptyMailbox: function(){ 34 | $.get('/mailpeek/doempty', function (response) {}.bind(this)); 35 | Object.assign(this.$data, initData()); 36 | } 37 | }, 38 | mounted: function () { 39 | this.loadData(); 40 | 41 | setInterval(function () { 42 | this.loadData(); 43 | }.bind(this), 5000); 44 | } 45 | }); 46 | }); -------------------------------------------------------------------------------- /src/Assets/mp/js/vue-resource@1.3.5: -------------------------------------------------------------------------------- 1 | /*! 2 | * vue-resource v1.3.5 3 | * https://github.com/pagekit/vue-resource 4 | * Released under the MIT License. 5 | */ 6 | 7 | !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.VueResource=e()}(this,function(){"use strict";function t(t){this.state=$,this.value=void 0,this.deferred=[];var e=this;try{t(function(t){e.resolve(t)},function(t){e.reject(t)})}catch(t){e.reject(t)}}function e(t,e){t instanceof Promise?this.promise=t:this.promise=new Promise(t.bind(e)),this.context=e}function n(t){return t?t.replace(/^\s*|\s*$/g,""):""}function o(t){return t?t.toLowerCase():""}function r(t){return"string"==typeof t}function i(t){return"function"==typeof t}function s(t){return null!==t&&"object"==typeof t}function u(t){return s(t)&&Object.getPrototypeOf(t)==Object.prototype}function a(t,n,o){var r=e.resolve(t);return arguments.length<2?r:r.then(n,o)}function c(t,e,n){return n=n||{},i(n)&&(n=n.call(e)),p(t.bind({$vm:e,$options:n}),t,{$options:n})}function f(t,e){var n,o;if(H(t))for(n=0;n=200&&s<300,this.status=s||0,this.statusText=u||"",this.headers=new M(i),this.body=t,r(t)?this.bodyText=t:function(t){return"undefined"!=typeof Blob&&t instanceof Blob}(t)&&(this.bodyBlob=t,function(t){return 0===t.type.indexOf("text")||-1!==t.type.indexOf("json")}(t)&&(this.bodyText=function(t){return new e(function(e){var n=new FileReader;n.readAsText(t),n.onload=function(){e(n.result)}})}(t)))};N.prototype.blob=function(){return a(this.bodyBlob)},N.prototype.text=function(){return a(this.bodyText)},N.prototype.json=function(){return a(this.text(),function(t){return JSON.parse(t)})},Object.defineProperty(N.prototype,"data",{get:function(){return this.body},set:function(t){this.body=t}});var D=function(t){this.body=null,this.params={},L(this,t,{method:function(t){return t?t.toUpperCase():""}(t.method||"GET")}),this.headers instanceof M||(this.headers=new M(this.headers))};D.prototype.getUrl=function(){return b(this)},D.prototype.getBody=function(){return this.body},D.prototype.respondWith=function(t,e){return new N(t,L(e||{},{url:this.getUrl()}))};var J={"Content-Type":"application/json;charset=utf-8"};return O.options={},O.headers={put:J,post:J,patch:J,delete:J,common:{Accept:"application/json, text/plain, */*"},custom:{}},O.interceptor={before:function(t,e){i(t.before)&&t.before.call(this,t),e()},method:function(t,e){t.emulateHTTP&&/^(PUT|PATCH|DELETE)$/i.test(t.method)&&(t.headers.set("X-HTTP-Method-Override",t.method),t.method="POST"),e()},jsonp:function(t,e){"JSONP"==t.method&&(t.client=T),e()},json:function(t,e){var n=t.headers.get("Content-Type")||"";s(t.body)&&0===n.indexOf("application/json")&&(t.body=JSON.stringify(t.body)),e(function(t){return t.bodyText?a(t.text(),function(e){if(0===(n=t.headers.get("Content-Type")||"").indexOf("application/json")||function(t){var e=t.match(/^\s*(\[|\{)/);return e&&{"[":/]\s*$/,"{":/}\s*$/}[e[1]].test(t)}(e))try{t.body=JSON.parse(e)}catch(e){t.body=null}else t.body=e;return t}):t})},form:function(t,e){!function(t){return"undefined"!=typeof FormData&&t instanceof FormData}(t.body)?s(t.body)&&t.emulateJSON&&(t.body=b.params(t.body),t.headers.set("Content-Type","application/x-www-form-urlencoded")):t.headers.delete("Content-Type"),e()},header:function(t,e){f(L({},O.headers.common,t.crossOrigin?{}:O.headers.custom,O.headers[o(t.method)]),function(e,n){t.headers.has(n)||t.headers.set(n,e)}),e()},cors:function(t,e){if(q){var n=b.parse(location.href),o=b.parse(t.getUrl());o.protocol===n.protocol&&o.host===n.host||(t.crossOrigin=!0,t.emulateHTTP=!1,B||(t.client=w))}e()}},O.interceptors=["before","method","jsonp","json","form","header","cors"],["get","delete","head","jsonp"].forEach(function(t){O[t]=function(e,n){return this(L(n||{},{url:e,method:t}))}}),["post","put","patch"].forEach(function(t){O[t]=function(e,n,o){return this(L(o||{},{url:e,method:t,body:n}))}}),P.actions={get:{method:"GET"},save:{method:"POST"},query:{method:"GET"},update:{method:"PUT"},remove:{method:"DELETE"},delete:{method:"DELETE"}},"undefined"!=typeof window&&window.Vue&&window.Vue.use(C),C}); -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-brands-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-brands-400.eot -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-brands-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-brands-400.woff -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-regular-400.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-regular-400.eot -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-regular-400.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-regular-400.woff -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-solid-900.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-solid-900.eot -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-solid-900.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-solid-900.woff -------------------------------------------------------------------------------- /src/Assets/mp/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MohammedIsma/laravel-mailpeek/22306b37c45f8e2abbf24e6261f274f07523adc8/src/Assets/mp/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /src/Classes/MailBox.php: -------------------------------------------------------------------------------- 1 | iID = $iID; 19 | $this->cleanMailPeekBoxFiles(); 20 | $this->MBOX = $this->getMailBox($iID); 21 | } 22 | 23 | private function getMailBox($id){ 24 | $box = session("mailpeek_box"); 25 | return isset($box[$id]) ? $box[$id] : $this->createMailBox($id); 26 | } 27 | 28 | private function createMailBox($id){ 29 | $dir = Config::get("mailpeek.files_path") . $id; 30 | if(!file_exists($dir)){ 31 | File::makeDirectory($dir, 0777, true); 32 | } 33 | 34 | session::put("mailpeek_box", [$id => ["messages"=>[]]]); 35 | $box = session("mailpeek_box"); 36 | $this->MBOX = $box[$id]; 37 | } 38 | 39 | public function addEmailToMailbox(eMailMessage $message){ 40 | $box = session("mailpeek_box"); 41 | $box[$this->iID]["messages"][] = $message; 42 | 43 | session(['mailpeek_box' => $box]); 44 | } 45 | 46 | 47 | // TODO: There's a better more efficient way 48 | public function getUnreadCount(){ 49 | $count = 0; 50 | if(!isset($this->MBOX["messages"])){ 51 | return $response; 52 | } 53 | foreach($this->MBOX["messages"] as $m){ 54 | if(!$m->isRead()){ 55 | $count++; 56 | } 57 | } 58 | 59 | return $count; 60 | 61 | } 62 | 63 | public function getAllMessages(){ 64 | $response = []; 65 | if(!isset($this->MBOX["messages"])){ 66 | return $response; 67 | } 68 | foreach($this->MBOX["messages"] as $m){ 69 | $response[] = $m->toArray(); 70 | } 71 | 72 | $response = array_reverse($response); 73 | 74 | return $response; 75 | 76 | } 77 | 78 | public function getSingleMessage($id){ 79 | 80 | $index = $this->getMessageIndex($id); 81 | 82 | if(!($index === null)){ 83 | $Message = $this->MBOX["messages"][$index]; 84 | $this->markMessageRead($index); 85 | return $Message; 86 | }else{ 87 | return null; 88 | } 89 | 90 | 91 | } 92 | 93 | public function getMessageIndex($id){ 94 | 95 | $m_index = null; 96 | foreach($this->MBOX["messages"] as $k=>$M) { 97 | if ($M->getID() == $id) { 98 | $m_index = $k; 99 | break; 100 | } 101 | } 102 | 103 | return ($m_index === null) ? false : $m_index; 104 | } 105 | 106 | private function markMessageRead($index){ 107 | $marked = $this->MBOX['messages'][$index]; 108 | $marked->setRead(); 109 | 110 | $this->MBOX["messages"][$index] = $marked; 111 | session::put("mailpeek_box", [$this->iID => $this->MBOX]); 112 | } 113 | 114 | 115 | public function cleanMailPeekBoxSession(){ 116 | session(['mailpeek_box' => []]); 117 | $this->cleanMailPeekBoxFiles(); 118 | } 119 | 120 | protected function cleanMailPeekBoxFiles(){ 121 | $pfs = new PFS(); 122 | $pfs->cleanDirectoryExcept(Config::get("mailpeek.files_path"),[$this->iID]); 123 | } 124 | 125 | } -------------------------------------------------------------------------------- /src/Classes/MailPeekTransport.php: -------------------------------------------------------------------------------- 1 | files = $files; 25 | $this->files_path = $files_path; 26 | $this->Mailbox = new Mailbox($iID, $files_path); 27 | } 28 | 29 | public function send(Swift_Mime_SimpleMessage $message, &$failedRecipients = null) 30 | { 31 | $this->beforeSendPerformed($message); 32 | 33 | $Mail = new eMailMessage($this->files_path, $message->getId()); 34 | $Mail->setSubject($message->getSubject()); 35 | $Mail->setBody($message->getBody()); 36 | 37 | foreach ($message->getFrom() as $email => $name) { 38 | $Mail->setSender($name, $email); 39 | } 40 | 41 | foreach ($message->getTo() as $email => $name) { 42 | $Mail->addTo($name, $email); 43 | } 44 | 45 | foreach ($message->getChildren() as $child) { 46 | 47 | $cd = $child->getHeaders()->get('content-disposition'); 48 | if($cd){ 49 | $file_name = str_replace('attachment; filename=', null, $child->getHeaders()->get('content-disposition')->getFieldBody()); 50 | $file_content = $child->getBody(); 51 | $file_path = "$this->files_path/".$Mail->getId()."/attachments/$file_name"; 52 | 53 | $this->files->put( $file_path, $file_content ); 54 | 55 | $Mail->addAttachment($file_name, $file_path); 56 | } 57 | } 58 | 59 | $this->Mailbox->addEmailToMailbox($Mail); 60 | } 61 | 62 | 63 | 64 | protected function getMessageInfo(Swift_Mime_SimpleMessage $message) 65 | { 66 | return sprintf( 67 | "\n", 68 | json_encode($message->getFrom()), 69 | json_encode($message->getTo()), 70 | json_encode($message->getReplyTo()), 71 | json_encode($message->getCc()), 72 | json_encode($message->getBcc()), 73 | $message->getSubject() 74 | ); 75 | } 76 | } -------------------------------------------------------------------------------- /src/Classes/MailPeekTransportManager.php: -------------------------------------------------------------------------------- 1 | app['config']->get('mailpeek', []); 14 | 15 | return new MailPeekTransport($this->guggle($config), $config['secret'], $config['domain'] ); 16 | } 17 | 18 | } -------------------------------------------------------------------------------- /src/Classes/PeekFilesystem.php: -------------------------------------------------------------------------------- 1 | isDirectory($directory)) { 13 | return false; 14 | } 15 | 16 | $items = new FilesystemIterator($directory); 17 | 18 | foreach ($items as $item) { 19 | // Check if file/dir is in the excluded list 20 | if(in_array($item->getFilename(),$exclude)){ 21 | continue; 22 | } 23 | 24 | if ($item->isDir() && ! $item->isLink()) { 25 | $this->deleteDirectory($item->getPathname()); 26 | } else { 27 | $this->delete($item->getPathname()); 28 | } 29 | } 30 | 31 | return true; 32 | } 33 | } -------------------------------------------------------------------------------- /src/Classes/eMailMessage.php: -------------------------------------------------------------------------------- 1 | id = $id; 24 | $this->timestamp = time(); 25 | $this->files_path = $path; 26 | 27 | $attachments_path = $this->files_path . "/" . $this->getID() . "/attachments/"; 28 | File::makeDirectory($attachments_path, 0777, true); 29 | } 30 | 31 | public function getID(){ return $this->id; } 32 | public function getFrom(){ return $this->from["name"] . " <".$this->from["email"].">"; } 33 | public function getSubject(){ return $this->subject; } 34 | public function getTo(){ return $this->to; } 35 | public function getCC(){ return $this->cc; } 36 | public function getBCC(){ return $this->bcc; } 37 | public function getBody(){ return $this->body; } 38 | public function getAttachments(){ return $this->attachments; } 39 | public function isRead(){ return $this->read; } 40 | 41 | public function setSender($name, $email){ 42 | $this->from["name"] = $name; 43 | $this->from["email"] = $email; 44 | } 45 | 46 | public function setBody($bod){ $this->body = $bod; } 47 | public function setSubject($subj){ $this->subject = $subj; } 48 | 49 | public function addTo($name, $email){ $this->to[] = ["name"=>$name, "email"=>$email]; } 50 | public function addAttachment($filename, $filepath){ $this->attachments[] = ["name"=>$filename, "email"=>$filepath]; } 51 | 52 | public function toArray(){ 53 | $arr["id"] = $this->id; 54 | $arr["from"] = $this->from; 55 | $arr["to_primary"] = $this->to[0]; 56 | $arr["to"] = $this->to; 57 | $arr["cc"] = $this->cc; 58 | $arr["bcc"] = $this->bcc; 59 | $arr["reply_to"] = $this->reply_to; 60 | $arr["subject"] = $this->subject; 61 | $arr["body"] = $this->body; 62 | $arr["attachments"] = $this->attachments; 63 | $arr["datetime"] = $this->get_pretty_datetime(); 64 | $arr["attributes"] = [ 65 | "unread"=>!$this->read, 66 | "read"=>$this->read 67 | ]; 68 | 69 | return $arr; 70 | } 71 | 72 | 73 | 74 | function get_pretty_datetime(){ 75 | $time_difference = time() - $this->timestamp; 76 | 77 | if( $time_difference < 1 ) { return 'less than 1 second ago'; } 78 | $condition = array( 12 * 30 * 24 * 60 * 60 => 'year', 79 | 30 * 24 * 60 * 60 => 'month', 80 | 24 * 60 * 60 => 'day', 81 | 60 * 60 => 'hour', 82 | 60 => 'minute', 83 | 1 => 'second' 84 | ); 85 | 86 | foreach( $condition as $secs => $str ) 87 | { 88 | $d = $time_difference / $secs; 89 | 90 | if( $d >= 1 ) 91 | { 92 | $t = round( $d ); 93 | return 'about ' . $t . ' ' . $str . ( $t > 1 ? 's' : '' ) . ' ago'; 94 | } 95 | } 96 | } 97 | 98 | function setRead(){ 99 | $this->read = true; 100 | } 101 | } 102 | -------------------------------------------------------------------------------- /src/Controllers/MailPeekController.php: -------------------------------------------------------------------------------- 1 | getId()),0,16); 24 | $Mailbox = new Mailbox($peekInstanceID); 25 | 26 | $response["messages"] = $Mailbox->getAllMessages(); 27 | $response["meta"] = [ 28 | "unread_count" => $Mailbox->getUnreadCount() 29 | ]; 30 | 31 | return json_encode($response); 32 | } 33 | 34 | public function display_message($id){ 35 | 36 | $peekInstanceID = substr(md5(session()->getId()),0,16); 37 | $Mailbox = new Mailbox($peekInstanceID); 38 | 39 | $Msg = $Mailbox->getSingleMessage($id); 40 | 41 | if($Msg){ 42 | return view("laravel-mailpeek::message")->with(["Message"=>$Msg]); 43 | }else{ 44 | echo "Can not find message"; 45 | } 46 | } 47 | 48 | public function download_file($message_id, $file_name){ 49 | $peekInstanceID = substr(md5(session()->getId()),0,16); 50 | $Mailbox = new Mailbox($peekInstanceID); 51 | 52 | $file = Config::get("mailpeek.files_path") . "$peekInstanceID/$message_id/attachments/$file_name"; 53 | 54 | if(file_exists($file)){ 55 | return Response::download($file); 56 | } 57 | 58 | return redirect()->back(); 59 | } 60 | 61 | public function empty_mailbox(){ 62 | $peekInstanceID = substr(md5(session()->getId()),0,16); 63 | $Mailbox = new Mailbox($peekInstanceID); 64 | $Mailbox->cleanMailPeekBoxSession(); 65 | 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /src/MailPeekMailProvider.php: -------------------------------------------------------------------------------- 1 | app['config']['mail.driver'] == 'mailpeek') && 20 | ($this->app['config']['mailpeek.enabled'] == true) && 21 | in_array( Config("app.env") , $this->app['config']['mailpeek.enabled_environments']) 22 | ){ 23 | $this->registerPreviewSwiftMailer(); 24 | } else { 25 | parent::registerSwiftMailer(); 26 | } 27 | } 28 | /** 29 | * Register the Preview Swift Mailer instance. 30 | * 31 | * @return void 32 | */ 33 | protected function registerPreviewSwiftMailer() 34 | { 35 | $PeekInstanceID = substr(md5(session()->getId()), 0, 16); 36 | 37 | $this->app->singleton('swift.mailer', function($app) use($PeekInstanceID) { 38 | return new Swift_Mailer( new MailPeekTransport( 39 | $app->make('Illuminate\Filesystem\Filesystem'), 40 | $app['config']['mailpeek.files_path'] . $PeekInstanceID, 41 | $PeekInstanceID 42 | )); 43 | }); 44 | } 45 | } 46 | -------------------------------------------------------------------------------- /src/MailPeekProvider.php: -------------------------------------------------------------------------------- 1 | loadViewsFrom( __DIR__ . "/Views", "laravel-mailpeek"); 19 | $this->publishes([ 20 | __DIR__ . "/mailpeek-config.php" => config_path("mailpeek"), 21 | __DIR__ . "/Assets" => public_path(), 22 | ]); 23 | } 24 | 25 | /** 26 | * Register the application services. 27 | * 28 | * @return void 29 | */ 30 | public function register() 31 | { 32 | $enabled_environs = is_array($this->app['config']['mailpeek.enabled_environments']) ? $this->app['config']['mailpeek.enabled_environments'] : ["local"]; 33 | 34 | if(in_array( Config::get("app.env") , $enabled_environs)){ 35 | include __DIR__ . "/routes.php"; 36 | $this->app->make("Misma\MailPeek\Controllers\MailPeekController"); 37 | $this->mergeConfigFrom( __DIR__ . "/mailpeek-config.php", "mailpeek"); 38 | } 39 | 40 | } 41 | } -------------------------------------------------------------------------------- /src/Views/layout.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | MailPeek 10 | 11 | 12 |
{{ env('APP_NAME', "powered by MailPeek") }}
13 |
14 |
15 |
16 | 20 |
21 | 22 |
23 | 24 |

Folders

25 | 26 |
27 | 28 |
29 | 30 | 39 | 40 |
41 | 42 |
43 |
44 | Empty the mailbox 45 |
46 |
47 | 48 |
49 | 50 | 51 |
52 | 53 |
54 | 55 |
56 | 57 |

@{{ Messages.length }} Messages

58 | 59 |
60 | 61 |
62 | 63 |
64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 81 | 84 | 89 | 92 | 93 | 94 |
Sent ToSubjectAttachmentDate
76 | 77 | @{{ Message.to_primary.name }} <@{{ Message.to_primary.email }}> 78 | 82 | @{{ Message.subject }} 83 | 85 |
86 | @{{Message.attachments.length}} 87 |
88 |
90 | @{{ Message.datetime }} 91 |
95 |
96 |
97 |
98 |
99 |
100 |
101 | 102 | 103 | 104 | 105 | 106 | 107 | -------------------------------------------------------------------------------- /src/Views/message.blade.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Email : {{ $Message->getId() }} 6 | 7 | 8 | 9 | 10 | 56 | 57 | 62 | 63 |
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 27 | 28 | 29 | 30 | 35 | 36 | 37 | 38 | 43 | 44 | 45 | 46 | 53 | 54 |
From{{ $Message->getFrom() }}
Subject{{ $Message->getSubject() }}
To 23 | @foreach($Message->getTo() as $To) 24 |
{{ $To['name'] }} ({{ $To['email'] }})
25 | @endforeach 26 |
cc 31 | @foreach($Message->getCC() as $cc) 32 |
{{ $cc['name'] }} ({{ $cc['email'] }})
33 | @endforeach 34 |
bcc 39 | @foreach($Message->getBCC() as $bcc) 40 |
{{ $bcc['name'] }} ({{ $bcc['email'] }})
41 | @endforeach 42 |
Attachments 47 |
    48 | @foreach($Message->getAttachments() as $attachment) 49 |
  1. {{ $attachment['name'] }}
  2. 50 | @endforeach 51 |
52 |
55 |
58 |
59 | {!! $Message->getBody() !!} 60 |
61 |
64 | 65 | -------------------------------------------------------------------------------- /src/mailpeek-config.php: -------------------------------------------------------------------------------- 1 | true, 6 | 7 | "files_path" => storage_path("app/mailpeek/attachments"), 8 | 9 | "enabled_environments" => ["local"] 10 | 11 | ]; -------------------------------------------------------------------------------- /src/mailpeek.php: -------------------------------------------------------------------------------- 1 | env("MAILPEEK_ENABLED", true), 6 | 7 | ]; -------------------------------------------------------------------------------- /src/routes.php: -------------------------------------------------------------------------------- 1 | ['web']], function () { 15 | Route::get('/mailpeek', ["uses"=>"\Misma\MailPeek\Controllers\MailPeekController@test"]); 16 | Route::get('/mailpeek/get_mbox', ["uses"=>"\Misma\MailPeek\Controllers\MailPeekController@get_mailbox_data"]); 17 | Route::get('/mailpeek/doempty', ["uses"=>"\Misma\MailPeek\Controllers\MailPeekController@empty_mailbox"]); 18 | Route::get('/mailpeek/message/{id?}', ["uses"=>"\Misma\MailPeek\Controllers\MailPeekController@display_message"]); 19 | Route::get('/mailpeek/getfile/{mid?}/{fid?}', ["uses"=>"\Misma\MailPeek\Controllers\MailPeekController@download_file"]); 20 | }); 21 | --------------------------------------------------------------------------------