From f2ef7a981ff2d081d46adbd04a0edec3736ea278 Mon Sep 17 00:00:00 2001 From: chevereto Date: Mon, 6 May 2024 17:49:12 +0000 Subject: [PATCH] Automatic push 4.1.2 --- .htaccess | 10 +- .package/4.1.1.txt | 19 -- .package/4.1.2.txt | 20 ++ README.md | 205 +++++++++--------- app/composer.lock | 26 +-- app/env-default.php | 4 + app/legacy/commands/cron.php | 8 +- app/legacy/commands/langs.php | 3 + app/legacy/install/installer.php | 2 + app/legacy/load/app.php | 2 +- app/legacy/routes/dashboard.php | 68 ++++-- app/legacy/routes/image.php | 22 +- app/legacy/routes/json.php | 2 +- app/src/Legacy/Classes/Album.php | 28 ++- app/src/Legacy/Classes/Image.php | 69 +++++- app/src/Legacy/Classes/ImageResize.php | 3 +- app/src/Legacy/Classes/Search.php | 7 +- app/src/Legacy/Classes/Settings.php | 10 + app/src/Legacy/Classes/Upload.php | 12 +- app/src/Legacy/G/functions.php | 17 +- app/src/Legacy/functions.php | 4 +- app/upgrading.php | 7 +- content/legacy/system/style.css | 1 - content/legacy/themes/Peafowl/header.php | 10 +- .../legacy/themes/Peafowl/lib/chevereto.js | 110 +++++----- .../themes/Peafowl/lib/chevereto.min.js | 8 +- content/legacy/themes/Peafowl/lib/peafowl.css | 14 +- content/legacy/themes/Peafowl/lib/peafowl.js | 11 +- .../legacy/themes/Peafowl/lib/peafowl.min.css | 2 +- .../legacy/themes/Peafowl/lib/peafowl.min.js | 2 +- .../legacy/themes/Peafowl/snippets/embed.php | 24 +- .../themes/Peafowl/snippets/image.js.php | 1 + .../Peafowl/snippets/listing_tools_editor.php | 2 +- .../Peafowl/snippets/theme_colors.css.php | 4 +- .../Peafowl/snippets/viewer_template.php | 2 +- content/legacy/themes/Peafowl/style.css | 21 +- content/legacy/themes/Peafowl/style.min.css | 2 +- .../Peafowl/tpl_list_item/album/image.php | 3 +- .../themes/Peafowl/tpl_list_item/image.php | 2 +- .../Peafowl/tpl_list_item/image_plain.php | 2 +- .../Peafowl/tpl_list_item/user/image.php | 3 +- .../Peafowl/tpl_list_item/user/liked.php | 3 +- content/legacy/themes/Peafowl/views/album.php | 4 +- .../views/dashboard/settings/file-uploads.php | 8 + .../views/dashboard/settings/system.php | 12 +- .../views/dashboard/settings/theme.php | 9 - .../views/dashboard/settings/website.php | 8 +- .../views/dashboard/top-sub-bar/settings.php | 2 +- content/legacy/themes/Peafowl/views/image.php | 4 +- content/legacy/themes/Peafowl/views/user.php | 2 +- 50 files changed, 487 insertions(+), 337 deletions(-) delete mode 100644 .package/4.1.1.txt create mode 100644 .package/4.1.2.txt diff --git a/.htaccess b/.htaccess index bd7cf45..bc6a177 100644 --- a/.htaccess +++ b/.htaccess @@ -20,12 +20,12 @@ Options -MultiViews #RewriteRule images/.+\.(gif|jpe?g|a?png|bmp|webp) content/images/system/default/404.gif [NC,L] RewriteRule images/.+\.(gif|jpe?g|png|bmp|webp) - [NC,L,R=404] - # PHP front controller + # PHP front controller RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . index.php [L] - # Single PHP-entrypoint - RewriteCond %{THE_REQUEST} ^.+?\ [^?]+\.php[?\ ] [NC] - RewriteRule \.php$ - [NC,L,F,R=404] - \ No newline at end of file + # Single PHP-entrypoint + RewriteCond %{THE_REQUEST} ^.+?\ [^?]+\.php[?\ ] [NC] + RewriteRule \.php$ - [NC,L,F,R=404] + diff --git a/.package/4.1.1.txt b/.package/4.1.1.txt deleted file mode 100644 index aad804f..0000000 --- a/.package/4.1.1.txt +++ /dev/null @@ -1,19 +0,0 @@ -Chevereto 4.1.1 (2024-04-27) - -- 🎥 Added FFmpeg detection on Dashboard -- 🎥 Added support for MOV files (video/quicktime) -- 🎥 Improved detection of FFmpeg required functions proc_open and proc_close -- 🎥 Improved FFprobe handling when processing video -- 🎥 Improved video display for listing viewer -- 💅 Added display title to listing viewer -- 💅 Fixed files remark on Dashboard -- 💅 Fixed file remarks on Bulk importer stats -- 💅 Improved image viewer & natural zoom -- 💅 Improved menu display for mobile -- 💅 Updated homepage cover image -- 🔑 Improved feedback on license key handling -- 🐞 Fixed bug with missing scroll behavior -- 🐞 Fixed bug with not working URL upload -- 🐞 Fixed bug with video upload not working on iOS -- 🐞 Fixed bug with file-upload documentation link -- 🇨🇱 Updated Spanish translation \ No newline at end of file diff --git a/.package/4.1.2.txt b/.package/4.1.2.txt new file mode 100644 index 0000000..d74d295 --- /dev/null +++ b/.package/4.1.2.txt @@ -0,0 +1,20 @@ +Chevereto 4.1.2 (2024-05-06) + +- 🎥 Added support for custom FFmpeg and FFprobe binaries +- 🎥 Improved video display on listings and viewer +- ✅ Improved embed codes display +- ✅ Improved upgrading in systems without passthru +- 🖼️ Improved compatibility with jpg extension +- 🐘 Added Dashboard section for PHP configuration (ini files) +- 💅 Added feedback on CLI update command +- 💅 Added remark on Homepage settings when conflicts with single profile routing +- 💅 Fixed file references on /album +- 💅 Improved style for user settings button +- 💅 Improved style for user top menu +- 🐞 Fixed bug affecting album password when using encryption +- 🐞 Fixed bug affecting full screen video behavior +- 🐞 Fixed bug affecting not working URL upload editing +- 🐞 Fixed bug affecting wrong video image frame permissions +- 🐞 Fixed bug in album embed codes +- 🐞 Fixed bug in password protected album editing on listings +- 🐞 Fixed bug in Search class diff --git a/README.md b/README.md index 9e3c2b4..01acffd 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,5 @@ # Chevereto: Ultimate image and video sharing software -> 🔔 [Subscribe](https://chv.to/newsletter) to don't miss any update regarding Chevereto. -

Chevereto

@@ -16,6 +14,8 @@ [![Legacy stars](https://img.shields.io/github/stars/rodber/chevereto-free?style=flat-square&logo=github&label=Legacy%20stars&color=red)](https://github.com/rodber/chevereto-free) [![Awesome F/OSS](https://img.shields.io/badge/Awesome_F%2FOSS-Certified-black?colorA=&colorB=874efe&style=flat-square)](https://awsmfoss.com/chevereto/) +> 🔔 [Subscribe](https://chv.to/newsletter) to don't miss any update regarding Chevereto. + Chevereto enables to create a media sharing website on your own server. It's your hosting and your rules, say goodbye to closures and restrictions. ⭐️ [Live demo](https://demo.chevereto.com) Chevereto is a turnkey system which main use case is to provide a self-hosted platform for content creators, communities and businesses. It's features are all about media sharing, with a strong focus on user experience, privacy and security. On its pro edition Chevereto excels as a content management system with heavy business related features that you won't get on other systems. @@ -134,108 +134,111 @@ Chevereto is so **feature-rich**, mature and robust that we need three layers of ### Admin features -| Feature | Free | Lite | Pro | -| ----------------------------------------------------- | :---: | :---: | :---: | -| Dashboard (admin UI) | ✅ | ✅ | ✅ | -| System stats & usage | ✅ | ✅ | ✅ | -| Website privacy mode (public, private) | ✅ | ✅ | ✅ | -| Default timezone selection | ✅ | ✅ | ✅ | -| Uploadable file extensions | ✅ | ✅ | ✅ | -| Guest uploads auto delete | ✅ | ✅ | ✅ | -| Upload threads | ✅ | ✅ | ✅ | -| Upload maximum image size | ✅ | ✅ | ✅ | -| Upload Exif removal | ✅ | ✅ | ✅ | -| Upload max file size (users and guest) | ✅ | ✅ | ✅ | -| Upload path | ✅ | ✅ | ✅ | -| Upload file naming | ✅ | ✅ | ✅ | -| Upload thumb size | ✅ | ✅ | ✅ | -| Upload medium size and dimension | ✅ | ✅ | ✅ | -| Semantics | ✅ | ✅ | ✅ | -| Default palette | ✅ | ✅ | ✅ | -| Default font | ✅ | ✅ | ✅ | -| Image load max file size | ✅ | ✅ | ✅ | -| Image first tab | ✅ | ✅ | ✅ | -| Embed codes (content) | ✅ | ✅ | ✅ | -| Custom JS & CSS | ✅ | ✅ | ✅ | -| Universal CDN support | ✅ | ✅ | ✅ | -| Default language | ✅ | ✅ | ✅ | -| Homepage style | – | ✅ | ✅ | -| Homepage cover images | – | ✅ | ✅ | -| Homepage title & paragraph | – | ✅ | ✅ | -| Homepage call to action | – | ✅ | ✅ | -| Pages | – | ✅ | ✅ | -| Lock NSFW editing | – | ✅ | ✅ | -| User min age required | – | ✅ | ✅ | -| User avatar max file size | – | ✅ | ✅ | -| User background max file size | – | ✅ | ✅ | -| Guest API key | – | ✅ | ✅ | -| Available languages (configurable) | – | – | ✅ | -| Hide "Powered by Chevereto" | – | – | ✅ | -| Logo & branding | – | – | ✅ | -| Logo type (vector, image, text) | – | – | ✅ | -| Logo height | – | – | ✅ | -| Logo favicon image | – | – | ✅ | -| Routing (user, image, album) | – | – | ✅ | -| Routing root | – | – | ✅ | -| External services | – | – | ✅ | -| Comments API (Disqus, JS) | – | – | ✅ | -| Analytics code | – | – | ✅ | -| Akismet spam protection | – | – | ✅ | -| StopForumSpam spam protection | – | – | ✅ | -| CAPTCHA (reCAPTCHA, hCaptcha) | – | – | ✅ | -| CAPTCHA threshold | – | – | ✅ | -| Project Arachnid | – | – | ✅ | -| ModerateContent (auto approve, block, flag) | – | – | ✅ | -| OAuth2 login providers (Amazon, Google, Discord, etc) | – | – | ✅ | -| Banners | – | – | ✅ | -| Watermark uploads (guest, user, admin) | – | – | ✅ | -| Watermark file toggles | – | – | ✅ | -| Watermark size requirement | – | – | ✅ | -| Watermark custom image | – | – | ✅ | -| Watermark position | – | – | ✅ | -| Watermark percentage | – | – | ✅ | -| Watermark margin | – | – | ✅ | -| Watermark opacity | – | – | ✅ | +| Feature | Free | Lite | Pro | +| --------------------------------------------------------------------------------------------- | :---: | :---: | :---: | +| Dashboard (admin UI) | ✅ | ✅ | ✅ | +| System stats & usage | ✅ | ✅ | ✅ | +| Website name | ✅ | ✅ | ✅ | +| Website doctitle | ✅ | ✅ | ✅ | +| Website description | ✅ | ✅ | ✅ | +| Website privacy mode (public, private) | ✅ | ✅ | ✅ | +| Default timezone | ✅ | ✅ | ✅ | +| Uploadable file extensions | ✅ | ✅ | ✅ | +| Guest uploads auto delete | ✅ | ✅ | ✅ | +| Upload threads | ✅ | ✅ | ✅ | +| Upload maximum image size | ✅ | ✅ | ✅ | +| Upload Exif removal | ✅ | ✅ | ✅ | +| Upload max file size (users and guest) | ✅ | ✅ | ✅ | +| Upload path | ✅ | ✅ | ✅ | +| Upload file naming | ✅ | ✅ | ✅ | +| Upload thumb size | ✅ | ✅ | ✅ | +| Upload medium size and dimension | ✅ | ✅ | ✅ | +| Semantics | ✅ | ✅ | ✅ | +| Default palette | ✅ | ✅ | ✅ | +| Default font | ✅ | ✅ | ✅ | +| Image load max file size | ✅ | ✅ | ✅ | +| Image first tab | ✅ | ✅ | ✅ | +| Embed codes (content) | ✅ | ✅ | ✅ | +| Custom JS & CSS | ✅ | ✅ | ✅ | +| Universal CDN support | ✅ | ✅ | ✅ | +| [Default language](https://v4-admin.chevereto.com/settings/languages.html#default-language) | ✅ | ✅ | ✅ | +| Homepage style | – | ✅ | ✅ | +| Homepage cover images | – | ✅ | ✅ | +| Homepage title & paragraph | – | ✅ | ✅ | +| Homepage call to action | – | ✅ | ✅ | +| Pages | – | ✅ | ✅ | +| Lock NSFW editing | – | ✅ | ✅ | +| User min age required | – | ✅ | ✅ | +| User avatar max file size | – | ✅ | ✅ | +| User background max file size | – | ✅ | ✅ | +| Guest API key | – | ✅ | ✅ | +| [Enabled languages](https://v4-admin.chevereto.com/settings/languages.html#enabled-languages) | – | – | ✅ | +| Hide "Powered by Chevereto" | – | – | ✅ | +| Logo & branding | – | – | ✅ | +| Logo type (vector, image, text) | – | – | ✅ | +| Logo height | – | – | ✅ | +| Logo favicon image | – | – | ✅ | +| Routing (user, image, album) | – | – | ✅ | +| Routing root | – | – | ✅ | +| External services | – | – | ✅ | +| Comments API (Disqus, JS) | – | – | ✅ | +| Analytics code | – | – | ✅ | +| Akismet spam protection | – | – | ✅ | +| StopForumSpam spam protection | – | – | ✅ | +| CAPTCHA (reCAPTCHA, hCaptcha) | – | – | ✅ | +| CAPTCHA threshold | – | – | ✅ | +| Project Arachnid | – | – | ✅ | +| ModerateContent (auto approve, block, flag) | – | – | ✅ | +| OAuth2 login providers (Amazon, Google, Discord, etc) | – | – | ✅ | +| Banners | – | – | ✅ | +| Watermark uploads (guest, user, admin) | – | – | ✅ | +| Watermark file toggles | – | – | ✅ | +| Watermark size requirement | – | – | ✅ | +| Watermark custom image | – | – | ✅ | +| Watermark position | – | – | ✅ | +| Watermark percentage | – | – | ✅ | +| Watermark margin | – | – | ✅ | +| Watermark opacity | – | – | ✅ | ### Admin toggles -| Feature | Free | Lite | Pro | -| --------------------------- | :---: | :---: | :---: | -| Search (users and guest) | ✅ | ✅ | ✅ | -| Explore (users and guest) | ✅ | ✅ | ✅ | -| Random (users and guest) | ✅ | ✅ | ✅ | -| NSFW listings | ✅ | ✅ | ✅ | -| Blur NSFW content | ✅ | ✅ | ✅ | -| NSFW on random mode | ✅ | ✅ | ✅ | -| Banners on NSFW | ✅ | ✅ | ✅ | -| Uploads (users and guest) | ✅ | ✅ | ✅ | -| Uploads (URL) | ✅ | ✅ | ✅ | -| Upload moderation | ✅ | ✅ | ✅ | -| Upload embed codes | ✅ | ✅ | ✅ | -| Upload redirection | ✅ | ✅ | ✅ | -| Upload duplication | ✅ | ✅ | ✅ | -| Upload expiration | ✅ | ✅ | ✅ | -| Upload NSFW checkbox | ✅ | ✅ | ✅ | -| Download button | ✅ | ✅ | ✅ | -| Right click | ✅ | ✅ | ✅ | -| Show Exif data | ✅ | ✅ | ✅ | -| Social share buttons | ✅ | ✅ | ✅ | -| Automatic updates check | ✅ | ✅ | ✅ | -| Dump update query | ✅ | ✅ | ✅ | -| Debug errors | ✅ | ✅ | ✅ | -| Consent screen (age gate) | – | ✅ | ✅ | -| User sign up | – | ✅ | ✅ | -| User content delete | – | ✅ | ✅ | -| User notify sign up | – | ✅ | ✅ | -| User email confirmation | – | ✅ | ✅ | -| User email for social login | – | ✅ | ✅ | -| Auto language | – | – | ✅ | -| Language chooser | – | – | ✅ | -| SEO URLs (media and album) | – | – | ✅ | -| Cookie law compliance | – | – | ✅ | -| Flood protection | – | – | ✅ | -| Flood protection notify | – | – | ✅ | -| Watermarks | – | – | ✅ | +| Feature | Free | Lite | Pro | +| ------------------------------------------------------------------------------------------- | :---: | :---: | :---: | +| Search (users and guest) | ✅ | ✅ | ✅ | +| Explore (users and guest) | ✅ | ✅ | ✅ | +| Random (users and guest) | ✅ | ✅ | ✅ | +| NSFW listings | ✅ | ✅ | ✅ | +| Blur NSFW content | ✅ | ✅ | ✅ | +| NSFW on random mode | ✅ | ✅ | ✅ | +| Banners on NSFW | ✅ | ✅ | ✅ | +| Uploads (users and guest) | ✅ | ✅ | ✅ | +| Uploads (URL) | ✅ | ✅ | ✅ | +| Upload moderation | ✅ | ✅ | ✅ | +| Upload embed codes | ✅ | ✅ | ✅ | +| Upload redirection | ✅ | ✅ | ✅ | +| Upload duplication | ✅ | ✅ | ✅ | +| Upload expiration | ✅ | ✅ | ✅ | +| Upload NSFW checkbox | ✅ | ✅ | ✅ | +| Download button | ✅ | ✅ | ✅ | +| Right click | ✅ | ✅ | ✅ | +| Show Exif data | ✅ | ✅ | ✅ | +| Social share buttons | ✅ | ✅ | ✅ | +| Automatic updates check | ✅ | ✅ | ✅ | +| Dump update query | ✅ | ✅ | ✅ | +| Debug errors | ✅ | ✅ | ✅ | +| Consent screen (age gate) | – | ✅ | ✅ | +| User sign up | – | ✅ | ✅ | +| User content delete | – | ✅ | ✅ | +| User notify sign up | – | ✅ | ✅ | +| User email confirmation | – | ✅ | ✅ | +| User email for social login | – | ✅ | ✅ | +| [Auto language](https://v4-admin.chevereto.com/settings/languages.html#auto-language) | – | – | ✅ | +| [Language chooser](https://v4-admin.chevereto.com/settings/languages.html#language-chooser) | – | – | ✅ | +| SEO URLs (media and album) | – | – | ✅ | +| Cookie law compliance | – | – | ✅ | +| Flood protection | – | – | ✅ | +| Flood protection notify | – | – | ✅ | +| Watermarks | – | – | ✅ | ### System features diff --git a/app/composer.lock b/app/composer.lock index 15ad497..7dd1995 100644 --- a/app/composer.lock +++ b/app/composer.lock @@ -3277,20 +3277,20 @@ }, { "name": "ramsey/uuid", - "version": "4.7.5", + "version": "4.7.6", "source": { "type": "git", "url": "https://github.com/ramsey/uuid.git", - "reference": "5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e" + "reference": "91039bc1faa45ba123c4328958e620d382ec7088" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e", - "reference": "5f0df49ae5ad6efb7afa69e6bfab4e5b1e080d8e", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/91039bc1faa45ba123c4328958e620d382ec7088", + "reference": "91039bc1faa45ba123c4328958e620d382ec7088", "shasum": "" }, "require": { - "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11", + "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12", "ext-json": "*", "php": "^8.0", "ramsey/collection": "^1.2 || ^2.0" @@ -3353,7 +3353,7 @@ ], "support": { "issues": "https://github.com/ramsey/uuid/issues", - "source": "https://github.com/ramsey/uuid/tree/4.7.5" + "source": "https://github.com/ramsey/uuid/tree/4.7.6" }, "funding": [ { @@ -3365,7 +3365,7 @@ "type": "tidelift" } ], - "time": "2023-11-08T05:53:05+00:00" + "time": "2024-04-27T21:32:50+00:00" }, { "name": "react/cache", @@ -4083,16 +4083,16 @@ }, { "name": "symfony/cache", - "version": "v5.4.38", + "version": "v5.4.39", "source": { "type": "git", "url": "https://github.com/symfony/cache.git", - "reference": "223c3afac82e003a76931b71d77db408636a0de8" + "reference": "982237e35079fdcc31ab724f06b6131992c4fd24" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/cache/zipball/223c3afac82e003a76931b71d77db408636a0de8", - "reference": "223c3afac82e003a76931b71d77db408636a0de8", + "url": "https://api.github.com/repos/symfony/cache/zipball/982237e35079fdcc31ab724f06b6131992c4fd24", + "reference": "982237e35079fdcc31ab724f06b6131992c4fd24", "shasum": "" }, "require": { @@ -4160,7 +4160,7 @@ "psr6" ], "support": { - "source": "https://github.com/symfony/cache/tree/v5.4.38" + "source": "https://github.com/symfony/cache/tree/v5.4.39" }, "funding": [ { @@ -4176,7 +4176,7 @@ "type": "tidelift" } ], - "time": "2024-03-19T09:55:32+00:00" + "time": "2024-04-18T08:26:06+00:00" }, { "name": "symfony/cache-contracts", diff --git a/app/env-default.php b/app/env-default.php index 2367770..d1bd041 100644 --- a/app/env-default.php +++ b/app/env-default.php @@ -68,6 +68,8 @@ return [ 'CHEVERETO_ENABLE_UPLOAD_PLUGIN' => '1', 'CHEVERETO_ENABLE_UPLOAD_WATERMARK' => '1', 'CHEVERETO_ENABLE_USERS' => '1', + 'CHEVERETO_ENABLE_SEO_IMAGE_URL' => '1', + 'CHEVERETO_ENABLE_SEO_ALBUM_URL' => '1', 'CHEVERETO_ENCRYPTION_KEY' => '', 'CHEVERETO_ERROR_LOG' => 'php://stderr', 'CHEVERETO_HEADER_CLIENT_IP' => '', @@ -88,4 +90,6 @@ return [ 'CHEVERETO_SESSION_SAVE_HANDLER' => 'files', 'CHEVERETO_SESSION_SAVE_PATH' => '/tmp', 'CHEVERETO_EDITION' => 'pro', + 'CHEVERETO_BINARY_FFMPEG' => 'ffmpeg', + 'CHEVERETO_BINARY_FFPROBE' => 'ffprobe', ]; diff --git a/app/legacy/commands/cron.php b/app/legacy/commands/cron.php index bdede94..c138533 100644 --- a/app/legacy/commands/cron.php +++ b/app/legacy/commands/cron.php @@ -115,7 +115,7 @@ function removeDeleteLog(): void } function checkForNews(): void { - if (!checkoutUpdate('news_check_datetimegmt')) { + if (!checkoutUpdate('news_check_datetimegmt', 'PT4H')) { feedbackAlert('Skipping news check'); return; @@ -133,7 +133,7 @@ function checkForNews(): void } function checkForUpdates(): void { - if (!checkoutUpdate('update_check_datetimegmt')) { + if (!checkoutUpdate('update_check_datetimegmt', 'P1D')) { feedbackAlert('Skipping updates check'); return; @@ -149,10 +149,10 @@ function checkForUpdates(): void } echoLocked($job); } -function checkoutUpdate(string $datetimeSetting): bool +function checkoutUpdate(string $datetimeSetting, string $past): bool { return is_null(Settings::get($datetimeSetting)) - || datetime_add(Settings::get($datetimeSetting), 'P1D') < datetimegmt(); + || datetime_add(Settings::get($datetimeSetting), $past) < datetimegmt(); } function checkHtaccess() { diff --git a/app/legacy/commands/langs.php b/app/legacy/commands/langs.php index 2f3c6c1..86536a5 100644 --- a/app/legacy/commands/langs.php +++ b/app/legacy/commands/langs.php @@ -52,6 +52,9 @@ foreach ($languages as $lang) { ]); } echo "$lang\n"; + if (file_exists($language_override_file)) { + echo "$lang [override]\n"; + } } echo "---\n"; echo L10n::LOCALES_AVAILABLE_FILEPATH . "\n"; diff --git a/app/legacy/install/installer.php b/app/legacy/install/installer.php index 1423cc1..c1e06e5 100644 --- a/app/legacy/install/installer.php +++ b/app/legacy/install/installer.php @@ -604,6 +604,7 @@ $settings_updates = [ '4.1.1' => [ 'upload_enabled_image_formats' => 'jpg,png,bmp,gif,webp,mov,mp4,webm', ], + '4.1.2' => null, ]; $cheveretoFreeMap = [ '1.0.0' => '3.8.3', @@ -2053,6 +2054,7 @@ ALTER TABLE `%table_prefix%users` CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8m xr($sql_update); try { + logger("[STATUS] Updating Chevereto database (this may take a while)...\n"); $updated = $db->exec(); if ($updated) { $chevereto_version_installed = DB::get('settings', ['name' => 'chevereto_version_installed'])[0]['setting_value']; diff --git a/app/legacy/load/app.php b/app/legacy/load/app.php index 5f35748..2d1d5a0 100644 --- a/app/legacy/load/app.php +++ b/app/legacy/load/app.php @@ -9,5 +9,5 @@ * file that was distributed with this source code. */ -const APP_VERSION = '4.1.1'; +const APP_VERSION = '4.1.2'; const APP_VERSION_AKA = 'pulento'; diff --git a/app/legacy/routes/dashboard.php b/app/legacy/routes/dashboard.php index fc21e21..88e228d 100644 --- a/app/legacy/routes/dashboard.php +++ b/app/legacy/routes/dashboard.php @@ -39,6 +39,7 @@ use function Chevereto\Legacy\G\get_app_version; use function Chevereto\Legacy\G\get_base_url; use function Chevereto\Legacy\G\get_bytes; use function Chevereto\Legacy\G\get_client_ip; +use function Chevereto\Legacy\G\get_ffmpeg_error; use function Chevereto\Legacy\G\get_ini_bytes; use function Chevereto\Legacy\G\get_regex_match; use Chevereto\Legacy\G\Handler; @@ -69,6 +70,7 @@ use function Chevereto\Vars\server; use function Chevereto\Vars\session; use function Chevereto\Vars\sessionVar; use FFMpeg\FFMpeg; +use FFMpeg\FFProbe; use Intervention\Image\ImageManagerStatic; use PHPMailer\PHPMailer\SMTP; @@ -174,13 +176,13 @@ return function (Handler $handler) { 'languages' => _s('Languages'), 'email' => _s('Email'), 'tools' => _s('Tools'), - 'logo' => _s('Logo'), 'homepage' => _s('Homepage'), 'pages' => _s('Pages'), 'upload-plugin' => _s('Upload plugin'), 'consent-screen' => _s('Consent screen'), 'users' => _n('User', 'Users', 20), 'guest-api' => _s('Guests %s', 'API'), + 'logo' => _s('Logo'), 'external-storage' => _s('External storage'), 'routing' => _s('Routing'), 'external-services' => _s('External services'), @@ -231,7 +233,7 @@ return function (Handler $handler) { 'homepage' => ['lite', 'CHEVERETO_ENABLE_USERS'], 'ip-bans' => ['pro', 'CHEVERETO_ENABLE_IP_BANS'], 'login-providers' => ['pro', 'CHEVERETO_ENABLE_LOGIN_PROVIDERS'], - 'logo' => ['lite', 'CHEVERETO_ENABLE_LOGO'], + 'logo' => ['pro', 'CHEVERETO_ENABLE_LOGO'], 'pages' => ['lite', 'CHEVERETO_ENABLE_PAGES'], 'routing' => ['pro', 'CHEVERETO_ENABLE_ROUTING'], 'upload-plugin' => ['lite', 'CHEVERETO_ENABLE_UPLOAD_PLUGIN'], @@ -417,7 +419,6 @@ return function (Handler $handler) { $errorLogRemark .= '
docker logs ' . (gethostname() ?: 'chv-container') . ' -f 1>/dev/null
'; } } - $ffmpegContent = ' '; try { @@ -434,14 +435,43 @@ return function (Handler $handler) { ) ); } - $ffmpegContent .= FFMpeg::create()->getFFMpegDriver()->getVersion(); + $ffmpegErrors = []; + + try { + $ffmpeg = FFMpeg::create( + [ + 'ffmpeg.binaries' => env()['CHEVERETO_BINARY_FFMPEG'], + 'ffprobe.binaries' => env()['CHEVERETO_BINARY_FFPROBE'], + ] + ); + } catch (Throwable $e) { + $ffmpegErrors[] = get_ffmpeg_error($e); + } + + try { + $ffprobe = FFProbe::create( + [ + 'ffprobe.binaries' => env()['CHEVERETO_BINARY_FFPROBE'], + ] + ); + } catch (Throwable $e) { + $ffmpegErrors[] = get_ffmpeg_error($e); + } + if ($ffmpegErrors !== []) { + throw new Exception(implode(', ', $ffmpegErrors)); + } + + $ffprobe->getFFProbeDriver()->getName(); + $ffmpegContent .= 'FFmpeg bin:' + . env()['CHEVERETO_BINARY_FFMPEG'] + . ' version ' + . $ffmpeg->getFFMpegDriver()->getVersion() + . '
' + . ' FFprobe bin:' + . env()['CHEVERETO_BINARY_FFPROBE']; } catch (Throwable $e) { - $previous = $e->getPrevious() ? - ': ' . $e->getPrevious()->getMessage() : - ''; $ffmpegContent = ' Error: ' - . $e->getMessage() - . $previous + . get_ffmpeg_error($e) . ''; } @@ -534,6 +564,16 @@ return function (Handler $handler) { $mysqlVersion = $db->getAttr(PDO::ATTR_SERVER_VERSION); $db->closeCursor(); $mysqlServerInfo = $db->getAttr(PDO::ATTR_SERVER_INFO); + $phpIniLoaded = php_ini_loaded_file(); + $phpIniFiles = php_ini_scanned_files() ?: 'N/A'; + $phpIniFiles = explode(',', $phpIniFiles); + if ($phpIniLoaded) { + array_unshift($phpIniFiles, $phpIniLoaded); + } + $phpIniFiles = array_map(function ($v) { + return '
' . $v . '
'; + }, $phpIniFiles); + $phpIniFiles = implode('', $phpIniFiles); $system_values_more = [ 'links' => [ 'label' => _s('Links'), @@ -551,10 +591,6 @@ return function (Handler $handler) { 'label' => 'Error log', 'content' => ' ' . Config::system()->errorLog() . '' . $errorLogRemark, ], - 'php_version' => [ - 'label' => _s('PHP version'), - 'content' => ' ' . PHP_VERSION . ' ' . php_ini_loaded_file() - ], 'server' => [ 'label' => _s('Server'), 'content' => ' ' @@ -577,6 +613,12 @@ return function (Handler $handler) { . '
' . $mysqlServerInfo ], + 'php_version' => [ + 'label' => _s('PHP version'), + 'content' => ' ' + . PHP_VERSION + . $phpIniFiles + ], 'file_uploads' => [ 'label' => _s('File uploads'), 'content' => (int) ini_get('file_uploads') == 1 diff --git a/app/legacy/routes/image.php b/app/legacy/routes/image.php index 6eb81db..3489024 100644 --- a/app/legacy/routes/image.php +++ b/app/legacy/routes/image.php @@ -15,6 +15,7 @@ use Chevereto\Legacy\Classes\IpBan; use Chevereto\Legacy\Classes\Login; use Chevereto\Legacy\Classes\User; use function Chevereto\Legacy\encodeID; +use function Chevereto\Legacy\flatten_array; use function Chevereto\Legacy\G\get_current_url; use function Chevereto\Legacy\G\get_global; use Chevereto\Legacy\G\Handler; @@ -275,20 +276,23 @@ return function (Handler $handler) { $handler::setVar('privacy', $image['album']['privacy'] ?? ''); include_theme_file('snippets/embed'); $embed_share_tpl = get_global('embed_share_tpl'); - $sharing = [ - '%URL_VIEWER%' => $image['url_viewer'], - '%URL%' => $image['url'], - '%DISPLAY_URL%' => $image['display_url'], - '%DISPLAY_TITLE%' => $image['display_title'], - '%URL_FRAME%' => $image['url_frame'], - '%THUMB_URL%' => $image['thumb']['url'], - '%MEDIUM_URL%' => $image['medium']['url'] ?? '', - ]; + $sharing = []; + foreach (flatten_array($image) as $imageKey => $imageValue) { + $sharing['%' . strtoupper($imageKey) . '%'] = $imageValue; + } $embed = []; + $hasFrame = $image['url_frame'] !== ''; + $hasMedium = $image['medium']['url'] !== null; foreach ($embed_share_tpl as $code => $group) { $entries = []; $groupLabel = $group['label']; foreach ($group['options'] as $option => $optionValue) { + if (!$hasFrame && str_starts_with($option, 'frame-')) { + continue; + } + if (!$hasMedium && str_starts_with($option, 'medium-')) { + continue; + } $value = $optionValue['template']; if (is_array($value)) { $value = $value[$image['type']]; diff --git a/app/legacy/routes/json.php b/app/legacy/routes/json.php index ce1867c..585c545 100644 --- a/app/legacy/routes/json.php +++ b/app/legacy/routes/json.php @@ -391,7 +391,7 @@ return function (Handler $handler) { $json_array['album'] = array_filter_array($album, ['id', 'creation_ip', 'password', 'user', 'privacy_extra', 'privacy_notes'], 'rest'); $contents = []; foreach ($listing->outputAssoc() as $v) { - $contents[] = array_filter_array($v, ['title', 'id_encoded', 'url', 'url_short', 'path_viewer', 'url_viewer', 'filename', 'medium', 'thumb'], 'exclusion'); + $contents[] = array_filter_array($v, ['title', 'id_encoded', 'url', 'url_short', 'path_viewer', 'url_viewer', 'filename', 'medium', 'thumb', 'type', 'url_frame'], 'exclusion'); } $json_array['is_output_truncated'] = $album['image_count'] > $album_fetch ? 1 : 0; $json_array['contents'] = $contents; diff --git a/app/src/Legacy/Classes/Album.php b/app/src/Legacy/Classes/Album.php index 48afabe..06b4e2b 100644 --- a/app/src/Legacy/Classes/Album.php +++ b/app/src/Legacy/Classes/Album.php @@ -86,18 +86,10 @@ class Album if ($requester !== []) { $album_db['album_liked'] = (bool) $album_db['like_user_id']; } - $return = $album_db; - if (isset($return['album_password']) && hasEncryption()) { - try { - $return['album_password'] = decrypt($return['album_password']); - } catch (Throwable) { - $return['album_password'] = $return['album_password']; - } - } return $pretty - ? self::formatArray($return) - : $return; + ? self::formatArray($album_db) + : self::cipherAwareDbRow($album_db); } public static function getMultiple(array $ids, bool $pretty = false): array @@ -514,8 +506,22 @@ class Album $album['cta'] = $album['cta'] ?? '[]'; } + public static function cipherAwareDbRow(array &$dbrow): array + { + if (isset($dbrow['album_password']) && hasEncryption()) { + try { + $dbrow['album_password'] = decrypt($dbrow['album_password']); + } catch (Throwable) { + $dbrow['album_password'] = $dbrow['album_password']; + } + } + + return $dbrow; + } + public static function formatArray(array $dbrow, bool $safe = false): array { + self::cipherAwareDbRow($dbrow); $output = DB::formatRow($dbrow); if (!isset($output['user'])) { $output['user'] = []; @@ -555,7 +561,7 @@ class Album if (isset($session_password) && hasEncryption()) { $session_password = decrypt($session_password); } - if (!isset($session_password) || !hash_equals($session_password, $album['password'])) { + if (!isset($session_password) || !hash_equals($album['password'], $session_password)) { $removeValue = session()['password'] ?? null; unset($removeValue['album'][$album['id']]); sessionVar()->put('password', $removeValue); diff --git a/app/src/Legacy/Classes/Image.php b/app/src/Legacy/Classes/Image.php index b9d0dea..e615474 100644 --- a/app/src/Legacy/Classes/Image.php +++ b/app/src/Legacy/Classes/Image.php @@ -14,6 +14,8 @@ namespace Chevereto\Legacy\Classes; use function Chevere\Message\message; use function Chevere\String\randomString; use Chevere\Throwable\Exceptions\LogicException; +use function Chevereto\Encryption\decrypt; +use function Chevereto\Encryption\hasEncryption; use function Chevereto\Legacy\assertNotStopWords; use function Chevereto\Legacy\decodeID; use function Chevereto\Legacy\encodeID; @@ -31,6 +33,7 @@ use function Chevereto\Legacy\G\format_bytes; use function Chevereto\Legacy\G\get_basename_without_extension; use function Chevereto\Legacy\G\get_bytes; use function Chevereto\Legacy\G\get_client_ip; +use function Chevereto\Legacy\G\get_ffmpeg_error; use function Chevereto\Legacy\G\get_filename; use function Chevereto\Legacy\G\get_image_fileinfo as GGet_image_fileinfo; use function Chevereto\Legacy\G\get_public_url; @@ -790,9 +793,16 @@ class Image } $resizeSourceImage = $image_upload['uploaded']['file']; $uploadDir = dirname($resizeSourceImage); + $chainExtension = $image_upload['uploaded']['extension']; if ($image_upload['source']['type'] === 'video') { - $frameImage = $uploadDir . '/' . $image_upload['uploaded']['name'] . '.fr.jpeg'; + $chainExtension = 'jpeg'; + $frameImage = $uploadDir + . '/' + . $image_upload['uploaded']['name'] + . '.fr.' + . $chainExtension; rename($image_upload['uploaded']['frame'], $frameImage); + chmod($frameImage, 0644); $resizeSourceImage = $frameImage; $chain_mask[0] = 1; } @@ -810,11 +820,12 @@ class Image } else { $image_resize_options = ['width' => $params['width']]; } + $image_resize_options['extension'] = $image_upload['uploaded']['extension']; $image_upload['uploaded'] = self::resize( - $resizeSourceImage, - dirname($resizeSourceImage), - null, - $image_resize_options + source: $resizeSourceImage, + destination: dirname($resizeSourceImage), + filename: null, + options: $image_resize_options ); $image_upload['uploaded']['fileinfo']['is_360'] = $is_360; } @@ -824,6 +835,7 @@ class Image 'fitted' => true, 'width' => getSetting('upload_thumb_width'), 'height' => getSetting('upload_thumb_height'), + 'extension' => $chainExtension ]; $medium_size = getSetting('upload_medium_size'); $medium_fixed_dimension = getSetting('upload_medium_fixed_dimension'); @@ -870,11 +882,12 @@ class Image $image_medium_options['forced'] = true; $image_medium_options[$medium_fixed_dimension] = min($image_medium_options[$medium_fixed_dimension], $image_upload['uploaded']['fileinfo'][$medium_fixed_dimension]); } + $image_medium_options['extension'] = $chainExtension; $image_medium = self::resize( - $resizeSourceImage, - $uploadDir, - $image_upload['uploaded']['name'] . '.md', - $image_medium_options + source: $resizeSourceImage, + destination: $uploadDir, + filename: $image_upload['uploaded']['name'] . '.md', + options: $image_medium_options ); $chain_mask[3] = 1; } @@ -1246,6 +1259,7 @@ class Image 'original_filename' => $image_upload['source']['filename'], 'original_exifdata' => $original_exifdata, 'is_360' => $is360, + 'extension' => $image_upload['uploaded']['extension'], ]; if (!isset($values['date'])) { $populate_values = array_merge($populate_values, [ @@ -1478,7 +1492,6 @@ class Image $image = array_merge($image, get_fileinfo($targets['chain']['image']), $image_fileinfo); } - $image['file_resource'] = $targets; $image['url_viewer'] = self::getUrlViewer( $image['id_encoded'], @@ -1518,6 +1531,7 @@ class Image break; } + $displaySize = $image['medium']['size']; } elseif ( $image['size'] > get_bytes('200 KB') && $image['type'] === 1 @@ -1525,6 +1539,14 @@ class Image $display_url = $image['thumb']['url'] ?? ''; $display_width = getSetting('upload_thumb_width'); $display_height = getSetting('upload_thumb_height'); + $displaySize = $image['thumb']['size']; + } + if (isset($image['frame']['size'], $displaySize) + && $image['frame']['size'] < $displaySize + ) { + $display_url = $image['frame']['url']; + $display_width = $image['width']; + $display_height = $image['height']; } $image['duration'] = (int) ($image['duration'] ?? 0); $seconds = $image['duration'] ?? 0; @@ -1534,6 +1556,13 @@ class Image } else { $duration_time = ''; } + $image['medium'] = $image['medium'] ?? [ + 'filename' => null, + 'name' => null, + 'mime' => null, + 'extension' => null, + 'url' => null, + ]; $image['duration_time'] = $duration_time; $image['type'] = self::$types[$image['type']]; $image['display_url'] = $display_url; @@ -1562,6 +1591,13 @@ class Image } if (isset($output['album']['id']) || isset($output['user']['id'])) { $output['user'] = $output['user'] ?? []; + if (isset($output['album']['password']) && hasEncryption()) { + try { + $output['album']['password'] = decrypt($output['album']['password']); + } catch (Throwable) { + $output['album']['password'] = $output['album']['password']; + } + } Album::fill($output['album'], $output['user']); } else { unset($output['album']); @@ -1584,7 +1620,18 @@ class Image public static function getVideoFrame(string $file, int $time): string { $frameFile = Upload::getTempNam(sys_get_temp_dir()); - $ffmpeg = FFMpeg::create(); + + try { + $ffmpeg = FFMpeg::create( + [ + 'ffmpeg.binaries' => env()['CHEVERETO_BINARY_FFMPEG'], + 'ffprobe.binaries' => env()['CHEVERETO_BINARY_FFPROBE'], + ] + ); + } catch (Throwable $e) { + throw new Exception("FFprobe error: " . get_ffmpeg_error($e), 600); + } + $video = $ffmpeg->open($file); $video ->frame(TimeCode::fromSeconds($time)) diff --git a/app/src/Legacy/Classes/ImageResize.php b/app/src/Legacy/Classes/ImageResize.php index bf17209..37ce0f4 100644 --- a/app/src/Legacy/Classes/ImageResize.php +++ b/app/src/Legacy/Classes/ImageResize.php @@ -105,7 +105,8 @@ class ImageResize { $this->validateInput(); // Exception 1xx $source_filename = get_basename_without_extension($this->source); - $this->file_extension = $this->source_image_fileinfo['extension']; + $this->file_extension = $this->options['extension'] + ?? $this->source_image_fileinfo['extension']; if (!isset($this->filename)) { $this->filename = $source_filename; } diff --git a/app/src/Legacy/Classes/Search.php b/app/src/Legacy/Classes/Search.php index 06aa773..e68c6b4 100644 --- a/app/src/Legacy/Classes/Search.php +++ b/app/src/Legacy/Classes/Search.php @@ -83,9 +83,6 @@ class Search str_replace($v, '', $q_match) ) ); - if ($q_match === '') { - $q_match = null; - } $op = explode(':', $v); if (!in_array($op[0], ['category', 'ip', 'storage'])) { continue; @@ -134,7 +131,7 @@ class Search break; } } - if (isset($q_match)) { + if ($q_match !== '') { $q_value = $q_match; if ($this->DBEngine == 'InnoDB') { $q_value = trim($q_value, '><'); @@ -146,7 +143,7 @@ class Search $wheres = null; switch ($this->type) { case 'images': - if (isset($q_match)) { + if ($q_match !== '') { $wheres = 'WHERE MATCH(`image_name`,`image_title`,`image_description`,`image_original_filename`) AGAINST (:q IN BOOLEAN MODE)'; } if ($search_op_wheres !== []) { diff --git a/app/src/Legacy/Classes/Settings.php b/app/src/Legacy/Classes/Settings.php index 851e86c..c471dfd 100644 --- a/app/src/Legacy/Classes/Settings.php +++ b/app/src/Legacy/Classes/Settings.php @@ -386,6 +386,16 @@ class Settings 'watermark_target_min_width' => '100', ] ], + 'CHEVERETO_ENABLE_SEO_IMAGE_URL' => ['0', + [ + 'seo_image_urls' => false, + ] + ], + 'CHEVERETO_ENABLE_SEO_ALBUM_URL' => ['0', + [ + 'seo_album_urls' => false, + ] + ], ] as $envKey => $settingValues) { if (env()[$envKey] == $settingValues[0]) { foreach ($settingValues[1] as $k => $v) { diff --git a/app/src/Legacy/Classes/Upload.php b/app/src/Legacy/Classes/Upload.php index bb682e7..304b8bc 100644 --- a/app/src/Legacy/Classes/Upload.php +++ b/app/src/Legacy/Classes/Upload.php @@ -67,6 +67,8 @@ class Upload private array|string $source; + private string $source_extension; + private array $uploaded = []; public bool $detectFlood = true; @@ -145,6 +147,10 @@ class Upload $this->type = (is_image_url($this->source) || is_url($this->source)) ? 'url' : 'file'; + $this->source_extension = $this->type === 'url' + ? pathinfo($this->source, PATHINFO_EXTENSION) + : pathinfo($this->source['name'], PATHINFO_EXTENSION); + $this->source_extension = strtolower($this->source_extension); if ($this->type === 'url') { if (Settings::get('enable_uploads_url') === false) { throw new LogicException( @@ -202,6 +208,9 @@ class Upload } $this->source_name = get_basename_without_extension($this->type == 'url' ? $this->source : $this->source['name']); $this->extension = $this->source_image_fileinfo['extension']; + if ($this->extension === 'jpeg' && $this->source_extension === 'jpg') { + $this->extension = 'jpg'; + } if (!isset($this->name)) { $this->name = $this->source_name; } @@ -211,7 +220,7 @@ class Upload } $this->fixed_filename = preg_replace('/(.*)\.(th|md|original|lg)\.([\w]+)$/', '$1.$3', $this->name . '.' . $this->extension); $is_360 = false; - if ($this->extension == 'jpeg') { + if (in_array($this->extension, ['jpg', 'jpeg'])) { $xmpDataExtractor = new XmpMetadataExtractor(); $xmpData = $xmpDataExtractor->extractFromFile($this->downstream); $reader = \PHPExif\Reader\Reader::factory(\PHPExif\Reader\Reader::TYPE_NATIVE); @@ -319,6 +328,7 @@ class Upload 'fileinfo' => $fileInfo, 'frame' => $frameFile, 'frameinfo' => $frameFile ? get_image_fileinfo($frameFile) : [], + 'extension' => $this->extension, ]; } diff --git a/app/src/Legacy/G/functions.php b/app/src/Legacy/G/functions.php index c2db5f6..0f690bd 100644 --- a/app/src/Legacy/G/functions.php +++ b/app/src/Legacy/G/functions.php @@ -1957,15 +1957,28 @@ function extension_to_mime(string $ext): string ][$ext] ?? ''; } +function get_ffmpeg_error(Throwable $e): string +{ + $previous = $e->getPrevious() ? + (': ' . $e->getPrevious()->getMessage()) : + ''; + + return $e->getMessage() . $previous; +} + function get_video_fileinfo(string $file): array { clearstatcache(true, $file); - $ffprobe = FFProbe::create(); try { + $ffprobe = FFProbe::create( + [ + 'ffprobe.binaries' => env()['CHEVERETO_BINARY_FFPROBE'], + ] + ); $format = $ffprobe->format($file); } catch (Throwable $e) { - throw new Exception("FFprobe error: " . $e->getMessage(), 600); + throw new Exception("FFprobe error: " . get_ffmpeg_error($e), 600); } if (!($format->get('duration') > 0)) { throw new Exception("Invalid video file provided", 100); diff --git a/app/src/Legacy/functions.php b/app/src/Legacy/functions.php index f17b123..ba41a85 100644 --- a/app/src/Legacy/functions.php +++ b/app/src/Legacy/functions.php @@ -1007,7 +1007,7 @@ function loaderHandler( 'CHEVERETO_ENABLE_BANNERS' => '0', 'CHEVERETO_ENABLE_BULK_IMPORTER' => '0', 'CHEVERETO_ENABLE_CAPTCHA' => '0', - 'CHEVERETO_ENABLE_CDN' => '0', + 'CHEVERETO_ENABLE_CDN' => '1', 'CHEVERETO_ENABLE_CONSENT_SCREEN' => '0', 'CHEVERETO_ENABLE_COOKIE_COMPLIANCE' => '0', 'CHEVERETO_ENABLE_EXPOSE_PAID_FEATURES' => '1', @@ -1035,6 +1035,8 @@ function loaderHandler( 'CHEVERETO_ENABLE_UPLOAD_PLUGIN' => '0', 'CHEVERETO_ENABLE_UPLOAD_WATERMARK' => '0', 'CHEVERETO_ENABLE_USERS' => '0', + 'CHEVERETO_ENABLE_SEO_IMAGE_URL' => '0', + 'CHEVERETO_ENABLE_SEO_ALBUM_URL' => '0', 'CHEVERETO_MAX_USERS' => '1', 'CHEVERETO_EDITION' => 'free', )); diff --git a/app/upgrading.php b/app/upgrading.php index 8221898..b125cf3 100644 --- a/app/upgrading.php +++ b/app/upgrading.php @@ -200,13 +200,14 @@ if ($singleStep || $action === 'extract') { logger('Chevereto filesystem upgraded'); unlinkIfExists($lockUpgrading); $safeResult = false; - $command = $rootDir . '/app/bin/legacy -C update'; if (passthruEnabled()) { - logger('Command passthru'); + logger('Update command passthru'); + $command = $rootDir . '/app/bin/legacy -C update'; $safeResult = passthru($command); } if ($safeResult === false) { - logger('Continue with database update'); + logger('Continuing with database update at /update'); + $return = 'update'; } if (PHP_SAPI !== 'cli') { $continueUri = $rootUrl . $return; diff --git a/content/legacy/system/style.css b/content/legacy/system/style.css index e38d325..46a7d49 100644 --- a/content/legacy/system/style.css +++ b/content/legacy/system/style.css @@ -18,7 +18,6 @@ html { color: #000; font: 16px Helvetica, Arial, sans-serif; line-height: 1.3; - } .body--block { diff --git a/content/legacy/themes/Peafowl/header.php b/content/legacy/themes/Peafowl/header.php index edbc8db..f7e0e38 100644 --- a/content/legacy/themes/Peafowl/header.php +++ b/content/legacy/themes/Peafowl/header.php @@ -243,21 +243,18 @@ if (is_route('page') || is_route('plugin')) {
    -
  • - -
  • -
  • +
  • -
  • -
  • +
  • +
  • @@ -289,7 +286,6 @@ if (is_route('page') || is_route('plugin')) { } ?>
  • -
  • diff --git a/content/legacy/themes/Peafowl/lib/chevereto.js b/content/legacy/themes/Peafowl/lib/chevereto.js index a27c013..7540f0b 100644 --- a/content/legacy/themes/Peafowl/lib/chevereto.js +++ b/content/legacy/themes/Peafowl/lib/chevereto.js @@ -350,11 +350,10 @@ $(function () { "click", anywhere_upload_queue + " [data-action=edit]", function () { - var $item = $(this).closest("li"), - $queue = $item.closest("ul"), - id = $item.data("id"), - file = CHV.fn.uploader.files[id] - media = file.type.substring(0, file.type.indexOf("/")); + var $item = $(this).closest("li"); + var id = $item.data("id"); + var file = CHV.fn.uploader.files[id]; + var media = file.type.substring(0, file.type.indexOf("/")); var modal = PF.obj.modal.selectors.root; var queueObject = $.extend({}, file.formValues || file.parsedMeta); var injectKeys = ["album_id", "category_id", "nsfw"]; @@ -2720,14 +2719,12 @@ $(function () { }); } - if ( - typeof CHV.obj.config !== typeof undefined && + if (typeof CHV.obj.config !== typeof undefined && CHV.obj.config.listing.viewer ) { $(document).on( "click", - PF.obj.listing.selectors.list_item + - "[data-type=image] .image-container", + PF.obj.listing.selectors.list_item + "[data-type=image] .image-container", function (e) { e.preventDefault(); e.stopPropagation(); @@ -2745,14 +2742,16 @@ $(function () { ); } - $(document).on("contextmenu", CHV.fn.listingViewer.selectors.root, function ( - e - ) { - e.preventDefault(); - CHV.fn.listingViewer.zoom(); - PF.fn.keyFeedback.spawn(e); - return false; - }); + $(document).on( + "contextmenu", + CHV.fn.listingViewer.selectors.root, + function (e) { + e.preventDefault(); + CHV.fn.listingViewer.zoom(); + PF.fn.keyFeedback.spawn(e); + return false; + } + ); var UrlParams = PF.fn.deparam(window.location.search); if (UrlParams && "viewer" in UrlParams) { @@ -3294,16 +3293,22 @@ CHV.fn.listingViewer = { var $src = $(srcHtml).attr("src", this.object.image.url); $src.insertBefore(this.getEl("src")); var mediaTarget = $src.eq(0); - if(mediaTarget.attr('data-type') === 'video') { + var isVideo = mediaTarget.attr("data-media") == "video"; + if(isVideo) { mediaTarget.replaceWith( - '' + '' ); - mediaTarget.src = this.object.image.url; + $src.next().css("opacity", 0); + setTimeout(function() { + $src.next().remove(); + }, 200); } else { mediaTarget.attr("src", this.object.image.url); } $src.imagesLoaded(function () { - $src.next().remove(); + if(!isVideo) { + $src.next().remove(); + } }); }, close: function () { @@ -3471,9 +3476,9 @@ CHV.fn.viewerLoadImage = function () { var mediaTarget = CHV.obj.image_viewer.$container.find(".media").eq(1); var width = mediaTarget.css("width"); var height = mediaTarget.css("height"); - if(mediaTarget.attr('data-type') === 'video') { + if(mediaTarget.attr('data-media') === 'video') { mediaTarget.replaceWith( - '' + '' ); mediaTarget.src = CHV.obj.image_viewer.image.url; } else { @@ -4288,8 +4293,12 @@ CHV.fn.uploader = { }); } else { displayQueueIfNotVisible(); - // Detect true mimetype - var mimetype = "image/jpeg"; // Default unknown mimetype + var mimetype = "image/jpeg"; // default for URL uploads + if(file.hasOwnProperty("type")) { + mimetype = file.type; + } else { + file.type = mimetype; + } if (typeof data.buffer !== typeof undefined) { var buffer = new Uint8Array(data.buffer).subarray(0, 4); var header = ""; @@ -4316,6 +4325,7 @@ CHV.fn.uploader = { height: img.originalHeight, mimetype: mimetype, }; + setQueueReady($queue_item, img); } someFilesFailed(j, files, failed_files); @@ -4764,42 +4774,34 @@ CHV.fn.fillEmbedCodes = function (elements, parent, fn) { fn = "val"; } var embed_tpl = CHV.fn.uploader.selectors.root == parent ? "embed_upload_tpl" : "embed_share_tpl"; - var hasVideo = false; + var hasFrame = false; + var hasMedium = false; $.each(elements, function (key, value) { if (typeof value == typeof undefined) return; var image = "id_encoded" in value ? value : value.image; - if (!image.medium) { - image.medium = {}; - var imageProp = [ - "filename", - "name", - "width", - "height", - "extension", - "size", - "size_formatted", - "url", - ]; - for (var i = 0; i < imageProp.length; i++) { - image.medium[imageProp[i]] = image[imageProp[i]]; - } - if(image.type === 'video') { - image.medium.url = image.url_frame; - } - } var flatten_image = Object.flatten(image); + let itemHasFrame = image.url_frame !== ""; + let itemHasMedium = image.medium.url !== null; + if(itemHasFrame) { + hasFrame = true; + } + if(itemHasMedium) { + hasMedium = true; + } $.each(CHV.obj[embed_tpl], function (key, value) { $.each(value.options, function (k, v) { - var embed = v, - $embed = $("textarea[name=" + k + "]", parent), - template = v.template; + if(!itemHasFrame && k.startsWith('frame-')) { + return; + } + if(!itemHasMedium && k.startsWith('medium-')) { + return; + } + var $embed = $("textarea[name=" + k + "]", parent); + var template = v.template; if(typeof template === 'object' && template.hasOwnProperty(flatten_image["type"]) ) { template = template[flatten_image["type"]] } - if(flatten_image["type"] === "video") { - hasVideo = true; - } if(flatten_image["type"] !== "video") { template = template.replaceAll("%URL_FRAME%", ""); } @@ -4812,15 +4814,17 @@ CHV.fn.fillEmbedCodes = function (elements, parent, fn) { PF.fn.htmlEncode(PF.fn.htmlEncode(flatten_image[i])) ); } + let useWhitespace = $embed.data("size") == "thumb" && k !== "thumb-links"; $embed[fn]( $embed.val() + template + - ($embed.data("size") == "thumb" ? " " : "\n") + (useWhitespace ? " " : "\n") ); }); }); }); - $("option[value=frame-links]", parent).prop("hidden", !hasVideo); + $("option[value^=frame]", parent).prop("disabled", !hasFrame); + $("option[value^=medium-]", parent).prop("disabled", !hasMedium); $.each(CHV.obj[embed_tpl], function (key, value) { $.each(value.options, function (k, v) { var $embed = $("textarea[name=" + k + "]", parent); diff --git a/content/legacy/themes/Peafowl/lib/chevereto.min.js b/content/legacy/themes/Peafowl/lib/chevereto.min.js index ae58f2a..57c6d2e 100644 --- a/content/legacy/themes/Peafowl/lib/chevereto.min.js +++ b/content/legacy/themes/Peafowl/lib/chevereto.min.js @@ -1,4 +1,4 @@ -$(function(){function e(e){e=e.originalEvent;var t=!1;if(e.dataTransfer.types)for(var a=0;ae&&(a.height(e),a.closest(".antiscroll-wrap").antiscroll())}}function a(e){e.addClass("list-item-play-gif--loading");var t=e.closest(PF.obj.listing.selectors.list_item),a=$(".image-container",t),o=$("img",a),i=o.attr("src"),n=".md",r=i.lastIndexOf(n);if(-1==r)n=".th",r=i.lastIndexOf(n);var s=i.substr(0,r)+i.substr(r+n.length,i.length);a.append(a.html()),$load=t.find(".image-container img").eq(1).attr("src",s).addClass("hidden"),$load.imagesLoaded(function(){e.remove(),o.remove(),$("img",a).show(),$(this.elements).removeClass("hidden")})}function o(e,t){var a=$(e).closest(PF.obj.listing.selectors.list_item);CHV.fn.list_editor.blink(a),CHV.fn.list_editor.toggleSelectItem(a),PF.fn.keyFeedback.spawn(t),t.preventDefault(),t.stopPropagation()}var i;if($(window).resize(function(e){clearTimeout(i),i=setTimeout(function(){CHV.fn.uploader.boxSizer(),CHV.fn.bindSelectableItems(),CHV.fn.listingViewer.placeholderSizing(),prevWidth=$(window).width(),prevHeight=$(window).height()},10)}),window.opener&&($(window).on("load",function(e){window.opener.postMessage({id:window.name,requestAction:"postSettings"},"*")}),$(window).on("message",function(e){var t=e.originalEvent.data;void 0!==t.id&&void 0!==t.settings&&window.name===t.id&&(CHV.obj.opener.uploadPlugin[t.id]=t.settings)})),$("#home-cover, #maintenance-wrapper, #login").exists()){var n=$("#maintenance-wrapper").exists()?$("#maintenance-wrapper").css("background-image").slice(4,-1).replace(/^\"|\"$/g,""):$(".home-cover-img","#home-cover-slideshow").first().attr("data-src");function r(){$("body").addClass("load"),$("#maintenance-wrapper").exists()||$(".home-cover-img","#home-cover-slideshow").first().css("background-image","url("+n+")").addClass("animate-in--alt").removeAttr("data-src"),setTimeout(function(){setTimeout(function(){$("body").addClass("loaded")},1200),setTimeout(function(){l()},7e3)},600)}var s=function(){setTimeout(function(){l()},8e3)};function l(){var e=$(".home-cover-img[data-src]","#home-cover-slideshow").first(),t=$(".home-cover-img","#home-cover-slideshow");if(0==e.length){if(1==t.length)return;t.first().removeClass("animate-in"),$("#home-cover-slideshow").append(t.first()),setTimeout(function(){$(".home-cover-img:last","#home-cover-slideshow").addClass("animate-in")},20),setTimeout(function(){$(".home-cover-img:not(:last)","#home-cover-slideshow").removeClass("animate-in")},4e3),s()}else{var a=e.attr("data-src");$("").attr("src",a).on("load error",function(){$(this).remove(),e.css("background-image","url("+a+")").addClass("animate-in").removeAttr("data-src"),setTimeout(function(){$(".home-cover-img:not(:last)","#home-cover-slideshow").removeClass("animate-end animate-in--alt")},2e3),s()})}}n?$("").attr("src",n).on("load error",function(){$(this).remove(),r()}):r()}var d,c=CHV.fn.uploader.selectors.root,u=CHV.fn.uploader.selectors.queue,m=$(c),f=$(u);if($(document).on("click","[data-action=top-bar-upload]",function(e){$("body").is("#upload")||"js"!==$(this).data("link")||CHV.fn.uploader.toggle({reset:!1}),"page"!==$(this).data("link")&&(e.preventDefault(),e.stopPropagation())}),$(document).on("click mouseover mouseout","[data-action=palette]",function(e){clearTimeout(d),e.preventDefault();var t=$(this).data("palette");switch(e.type){case"mouseover":d=setTimeout(function(){CHV.fn.Palettes.preview(t)},1e3);break;case"mouseout":t=$("html").attr("data-palette")||"",CHV.fn.Palettes.set(t);break;case"click":e.stopPropagation(),$("[data-action=palette]","[data-content=palettes]").removeClass("current"),$(this).addClass("current"),CHV.fn.Palettes.set(t),CHV.fn.Palettes.save()}}),$(document).on("change","#palettes",function(e){CHV.fn.Palettes.set(this.value),CHV.fn.Palettes.save()}),$("[data-action=close-upload]",m).click(function(){m.is(":animated")||$("[data-action=top-bar-upload]","#top-bar").trigger("click")}),$("[data-action=reset-upload]",m).click(function(){CHV.fn.uploader.isUploading&&$("[data-action=cancel-upload-remaining], [data-action=cancel-upload]",m).trigger("click"),CHV.fn.uploader.reset()}),$("[data-action=cancel-upload-remaining], [data-action=cancel-upload]",m).click(function(){CHV.fn.uploader.isUploading=!1,$("[data-action=cancel]",f).click(),Object.size(CHV.fn.uploader.results.success)>0?CHV.fn.uploader.displayResults():CHV.fn.uploader.reset()}),$(document).on("click","[data-action=upload-privacy]:not(disabled)",function(e){e.isDefaultPrevented()||(current_privacy=$(this).data("privacy"),target_privacy="public"==current_privacy?"private":"public",this_lock=$(".icon",this).data("lock"),this_unlock=$(".icon",this).data("unlock"),$(".icon",this).removeClass(this_lock+" "+this_unlock).addClass("public"==current_privacy?this_lock:this_unlock),$(this).data("privacy",target_privacy),$("[data-action=upload-privacy-copy]").html($("[data-action=upload-privacy]").html()),$upload_button=$("[data-action=upload]",m),$upload_button.text($upload_button.data(target_privacy)),$(this).tipTip("hide"))}),$(CHV.fn.uploader.selectors.file+", "+CHV.fn.uploader.selectors.camera).on("change",function(e){$(CHV.fn.uploader.selectors.root).data("shown")?CHV.fn.uploader.add(e):CHV.fn.uploader.toggle({callback:function(e){CHV.fn.uploader.add(e)}},e)}).on("click",function(e){!$(this).data("login-needed")||PF.fn.is_user_logged()}),$(CHV.fn.uploader.selectors.root).exists()&&($("body").on({dragenter:function(t){if(t.preventDefault(),!e(t))return!1;$(CHV.fn.uploader.selectors.dropzone).exists()||$("body").append($('
    ').css({width:"100%",height:"100%",position:"fixed",zIndex:1e3,left:0,top:0}))}}),$(document).on({dragover:function(t){if(t.preventDefault(),!e(t))return!1;$(CHV.fn.uploader.selectors.root).data("shown")||CHV.fn.uploader.toggle({reset:!1})},dragleave:function(e){$(CHV.fn.uploader.selectors.dropzone).remove(),$.isEmptyObject(CHV.fn.uploader.files)&&CHV.fn.uploader.toggle()},drop:function(e){e.preventDefault(),CHV.fn.uploader.add(e),$(CHV.fn.uploader.selectors.dropzone).remove()}},CHV.fn.uploader.selectors.dropzone)),$(document).on("keyup change","[data-action=resize-combo-input]",function(e){var t=$(this).closest("[data-action=resize-combo-input]"),a=$("[name=form-width]",t),o=$("[name=form-height]",t),i=a.data("initial")/o.data("initial"),n={width:Math.round(a.prop("value")/i),height:Math.round(o.prop("value")*i)};$(e.target).is(a)?o.prop("value",Math.round(n.width)):a.prop("value",Math.round(n.height))}),$(document).on("click",u+" [data-action=edit]",function(){var e=$(this).closest("li"),t=(e.closest("ul"),e.data("id")),a=CHV.fn.uploader.files[t];media=a.type.substring(0,a.type.indexOf("/"));for(var o=PF.obj.modal.selectors.root,i=$.extend({},a.formValues||a.parsedMeta),n=["album_id","category_id","nsfw"],r=0;re.height&&(n.height=e.height,n.width=Math.round(n.height*r)),n.width>e.width&&(n.width=e.width,n.height=Math.round(n.width/r)),$.each(i,function(e,t){var i="[name=form-"+e.replace(/_/g,"-")+"]",r=$(i,o);if(!r.exists())return!0;if(r.is(":checkbox"))r.prop("checked",r.attr("value")==t);else if(r.is("select")){var s=r.find("[value="+t+"]");s.exists()||(s=r.find("option:first")),s.prop("selected",!0)}else r.prop("value",t);if("width"==e||"height"==e){var l=n[e],d=a.parsedMeta[e]>l?l:a.parsedMeta[e];r.prop("max",d).data("initial",a.parsedMeta[e]).prop("value",d),"image"!==media&&r.prop("disabled",!0).closest("[data-action=resize-combo-input]").hide()}}),"image/gif"!==a.parsedMeta.mimetype&&$("[ data-content=animated-gif-warning]",o).remove(),$(".image-preview",o).append($("",{class:"canvas checkered-background"}));var s=$(".queue-item[data-id="+t+"] .preview .canvas")[0],l=$(".image-preview .canvas",o)[0];l.width=s.width,l.height=s.height;var d=l.getContext("2d");d.drawImage(s,0,0)},confirm:function(){if(PF.fn.form_modal_has_changed()){var e=!1;return $.each(["width","height"],function(t,a){var i=$("[name=form-"+a+"]",o),n=parseInt(i.val()),r=parseInt(i.attr("min")),s=parseInt(i.attr("max"));if(n>s||n-1&&CHV.fn.uploader.clipboardImages.splice(r,1)}delete CHV.fn.uploader.files[a],CHV.fn.uploader.queueSize(),0==Object.size(CHV.fn.uploader.files)?"success"in CHV.fn.uploader&&"results"in CHV.fn.uploader&&(0!=Object.size(CHV.fn.uploader.results.success)||0!=Object.size(CHV.fn.uploader.results.error))||CHV.fn.uploader.reset():i&&0!==$("li.waiting",t).first().length&&CHV.fn.uploader.upload($("li.waiting",t).first())}}),$(document).on("click","[data-action=upload]",function(){void 0!==CHV.obj.logged_user||!1!==$("#upload-tos").prop("checked")?($("[data-group=upload], [data-group=upload-queue-ready]",m).hide(),m.removeClass("queueReady").addClass("queueUploading").find("[data-group=uploading]").show(),CHV.fn.uploader.queueSize(),CHV.fn.uploader.canAdd=!1,$queue_items=$("li",f),$queue_items.addClass("uploading waiting"),CHV.fn.uploader.timestamp=(new Date).getTime(),CHV.fn.uploader.upload($queue_items.first("li"))):PF.fn.growl.call("You must agree to the terms and privacy policy")}),$("body#user").exists()&&PF.obj.listing.query_string.page>1){var p=History.getState();if(p.data&&void 0!==p.data.scrollTop)$(window).scrollTop()!==p.data.scrollTop&&$(window).scrollTop(p.data.scrollTop);else{var g=$("#background-cover").height()-160;$("html, body").animate({scrollTop:g},0)}}$("#top-bar-shade").exists()&&$("#top-bar-shade").css("opacity")&&$("#top-bar-shade").data("initial-opacity",Number($("#top-bar-shade").css("opacity"))),CHV.fn.bindSelectableItems(),$("body#image").exists()&&($(CHV.obj.image_viewer.selector+" [data-load=full]").length>0&&($(document).on("click",CHV.obj.image_viewer.loader,function(e){CHV.fn.viewerLoadImage()}),$(CHV.obj.image_viewer.loader).data("size")>CHV.obj.config.image.load_max_filesize.getBytes()?$(CHV.obj.image_viewer.loader).css("display","block"):CHV.fn.viewerLoadImage()),new MutationObserver(()=>{$("html").height()>$(window).innerHeight()&&!$("html").hasClass("scrollbar-y")&&($("html").addClass("scrollbar-y"),$(document).data({width:$(this).width(),height:$(this).height()}))}).observe(document,{childList:!0}),$(document).on("keyup",function(e){var t=$(e.target),a=e.originalEvent;if(!t.is(":input")&&CHV.obj.image_viewer.$navigation.exists()&&("ArrowLeft"==a.key||"ArrowRight"==a.key)){var o=$("[data-action="+("ArrowLeft"==a.key?"prev":"next")+"]",CHV.obj.image_viewer.$navigation).attr("href");void 0!==o&&""!==o&&(window.location=$("[data-action="+("ArrowLeft"==a.key?"prev":"next")+"]",CHV.obj.image_viewer.$navigation).attr("href"))}})),$(document).on("click",CHV.obj.image_viewer.container+" img",function(e){$(CHV.obj.image_viewer.loader).exists()?$(CHV.obj.image_viewer.loader).trigger("click"):$(this).toggleClass("zoom-natural")}).on("contextmenu",CHV.obj.image_viewer.container,function(e){if(!CHV.obj.config.image.right_click)return e.preventDefault(),!1}),$(document).on("contextmenu","html.device-mobile a.image-container",function(e){e.preventDefault(),e.stopPropagation()}),$(document).on("keyup","input[data-dashboard-tool]",function(e){if(13==e.keyCode){var t=$("[data-action="+$(this).data("dashboard-tool")+"]");t.click()}}),$(document).on("click","[data-action=dashboardTool]",function(e){e.preventDefault();var t=$(this).data("tool"),a=$(this).data("data"),o=$.extend({},a),i={};for(var n in o){var r=$(o[n]).val();if($(o[n]).prop("disabled")||!r)return;i[n]=$(o[n]),o[n]=r}o.action=t;var s={type:"GET",cache:!1};s.data=o;var l,d=$(this).closest(".input-label"),c=!0;if(0!=c){for(var n in i);PF.fn.loading.inline($(".loading",d),{size:"small",valign:"middle"}),d.find(".btn .text").hide(),$.ajax(s).complete(function(e){var t=e.responseJSON;$(".loading",d).empty(),d.find(".btn .text").show(),200!=t.status_code||void 0===t.success.redirURL?PF.fn.growl.call(t[200==t.status_code?"success":"error"].message):window.location.href=t.success.redirURL})}else PF.fn.growl.expirable(l)}),$(document).on("click","[data-action=openerPostMessage]",function(e){if(window.opener){e.preventDefault();var t="data-action-target",a=$($(this).is("["+t+"]")?$(this).attr(t):this),o=a[a.is(":input")?"val":"html"]();window.opener.postMessage({id:window.name,message:o},"*")}}),$(document).on("click","[data-action=list-tools] [data-action]",function(e){var t=$(e.target),a=t.closest("[data-id]");a&&a.find("[data-action=select]").exists()&&(e.ctrlKey||e.metaKey)&&e.altKey&&(CHV.fn.list_editor.toggleSelectItem(a,!a.hasClass("selected")),e.preventDefault(),e.stopPropagation())}),PF.fn.listing.ajax.callback=function(e){200===e.status&&CHV.fn.list_editor.listMassActionSet("select")},$(document).on("click","[data-action=list-select-all]",function(e){if($(this).closest(".disabled").exists())return!1;CHV.fn.list_editor.selectAll(e)}),$(document).on("click","[data-action=list-clear-all]",function(){CHV.fn.list_editor.clearSelection()}),$(document).on("click","[data-action=share]",function(e){if(!$(PF.obj.modal.selectors.box).exists()){var t,a,o,i,n,r;t=$(".viewer:visible").exists()?$(PF.obj.listing.selectors.list_item+"[data-id="+$(".viewer").attr("data-id")+"]",".content-listing").first():$(this).closest(PF.obj.listing.selectors.list_item).first();var s="#modal-share";if(t.exists()){if(r=CHV.fn.modal.getTemplateWithPreview(s,t),void 0===t.attr("data-type"))return void console.error("Error: data-type not defined");n=t.find(".list-item-desc-title-link").first(),o=t.find(".image-container img").first().attr("src"),a=t.attr("data-url-short")}else r=$(s).html(),dealing_with=CHV.obj.resource.type,a=window.location.href,o=$("#image-viewer-container").find("img").first().attr("src"),n=$(".header > h1 > a");i=PF.fn.htmlEncode(n.text());var l=t.data("privacy")||CHV.obj.resource.privacy,d="";switch(l){case"private_but_link":d=PF.fn._s("Note: This content is private but anyone with the link will be able to see this.");break;case"password":d=PF.fn._s("Note: This content is password protected. Remember to pass the content password to share.");break;case"private":d=PF.fn._s('Note: This content is private. Change privacy to "public" to share.')}r=r.replaceAll("__url__",a).replaceAll("__image__",o).replaceAll("__title__",i).replaceAll("__privacy__",l).replaceAll("__privacy_notes__",d),PF.fn.modal.call({type:"html",buttons:!1,template:r})}}),$(document).on("click","[data-action=list-tools] [data-action]",function(e){if(e.isPropagationStopped())return!1;var t;t=$(".viewer:visible").exists()?$(PF.obj.listing.selectors.list_item+"[data-id="+$(".viewer").attr("data-id")+"]",".content-listing").first():$(this).closest(PF.obj.listing.selectors.list_item).first();var a=t.attr("data-id");if(void 0!==t.attr("data-type")){o=t.attr("data-type");var o,i=$("[data-type="+o+"][data-id="+a+"]");switch($(this).data("action")){case"select":CHV.fn.list_editor.toggleSelectItem(t,!t.hasClass("selected"));break;case"edit":var n="[data-modal=form-edit-single]";switch(o){case"image":$("[name=form-image-title]",n).attr({value:t.attr("data-title"),autocomplete:"off"}),$("[name=form-image-description]",n).html(PF.fn.htmlEncode(t.data("description"))),$("[name=form-album-id]",n).find("option").removeAttr("selected"),$("[name=form-album-id]",n).find("[value="+t.data("image"==o?"album-id":"id")+"]").attr("selected",!0),$("[name=form-category-id]",n).find("option").removeAttr("selected"),$("[name=form-category-id]",n).find("[value="+t.data("category-id")+"]").attr("selected",!0),$("[name=form-nsfw]",n).attr("checked","unsafe"==t.data("flag")),$("[name=form-album-name]",n).attr({value:"",autocomplete:"off"}),$("[name=form-album-description]",n).html(""),$("[name=form-privacy]",n).find("option").removeAttr("selected");break;case"album":$("[data-action=album-switch]",n).remove(),$("[name=form-album-name]",n).attr({value:t.data("name"),autocomplete:"off"}),$("[name=form-album-description]",n).html(PF.fn.htmlEncode(t.data("description"))),$("[name=form-privacy]",n).find("option").removeAttr("selected"),$("[name=form-privacy]",n).find("[value="+t.data("privacy")+"]").attr("selected",!0),"password"==t.data("privacy")?($("[data-combo-value=password]").show(),$("[name=form-album-password]",n).attr("value",t.data("password"))):($("[data-combo-value=password]").hide(),$("[name=form-album-password]",n).attr("value",""))}PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview(n,t),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.updateItem("[data-type="+o+"][data-id="+a+"]",e.responseJSON[o],"edit")}}},confirm:function(){var e=$(PF.obj.modal.selectors.root);if(("image"==o||"album"==o)&&$("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val())return PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1;if(PF.fn.form_modal_has_changed()){switch(PF.obj.modal.form_data={action:"edit",edit:t.data("type"),single:!0,owner:CHV.obj.resource.user.id,editing:{id:a,description:$("[name=form-"+o+"-description]",e).val()}},o){case"image":PF.obj.modal.form_data.editing.title=$("[name=form-image-title]",e).val(),PF.obj.modal.form_data.editing.category_id=$("[name=form-category-id]",e).val()||null,PF.obj.modal.form_data.editing.nsfw=$("[name=form-nsfw]",e).prop("checked")?1:0;break;case"album":PF.obj.modal.form_data.editing.name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.privacy&&(PF.obj.modal.form_data.editing.password=$("[name=form-album-password]",e).val())}return PF.obj.modal.form_data.editing.new_album=$("[data-content=form-new-album]",e).is(":visible"),PF.obj.modal.form_data.editing.new_album?(PF.obj.modal.form_data.editing.album_name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.album_privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.album_privacy&&(PF.obj.modal.form_data.editing.album_password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.editing.album_description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.editing.album_id=$("[name=form-album-id]",e).val(),!0}PF.fn.modal.close()}});break;case"create-album":case"move":var r="move"==$(this).data("action")?"form-move-single":"form-create-album";n="[data-modal="+r+"]";$("[name=form-album-id]",n).find("option").removeAttr("selected"),$("[name=form-album-id]",n).find("[value="+t.data("image"==o?"album-id":"id")+"]").attr("selected",!0),$("[name=form-album-name]",n).attr({value:"",autocomplete:"off"}),$("[name=form-album-description]",n).html(""),$("[name=form-privacy]",n).find("option").removeAttr("selected"),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview(n,i),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.updateMoveItemLists(e.responseJSON,o,i)}}},load:function(){},confirm:function(){var e=$(PF.obj.modal.selectors.root);return $("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val()?(PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1):PF.fn.form_modal_has_changed()?(PF.obj.modal.form_data={action:"edit",edit:t.data("type"),single:!0,owner:CHV.obj.resource.user.id,editing:{id:a}},PF.obj.modal.form_data.editing.new_album=$("[data-content=form-new-album]",e).is(":visible"),PF.obj.modal.form_data.editing.new_album?(PF.obj.modal.form_data.editing.album_name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.album_privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.album_privacy&&(PF.obj.modal.form_data.editing.album_password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.editing.album_description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.editing.album_id=$("[name=form-album-id]",e).val(),!0):void PF.fn.modal.close()}});break;case"approve":PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview("[data-modal=form-approve-single]",t),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.removeFromList(t,PF.fn._s("The content has been approved."))}}},confirm:function(){return PF.obj.modal.form_data={action:"approve",single:!0,approve:t.data("type"),approving:{id:a}},!0}});break;case"delete":PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview("[data-modal=form-delete-single]",t),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){"album"==o&&($("[name=form-album-id]","[data-modal]").find("[value="+a+"]").remove(),CHV.fn.list_editor.updateUserCounters("image",e.responseJSON.success.affected,"-")),CHV.fn.list_editor.deleteFromList(t),CHV.fn.listingViewer.close()}}},confirm:function(){return PF.obj.modal.form_data={action:"delete",single:!0,delete:t.data("type"),deleting:{id:a}},!0}});break;case"flag":$.ajax({type:"POST",data:{action:"edit",edit:"image",single:!0,editing:{id:a,nsfw:"unsafe"==t.data("flag")?0:1}}}).complete(function(e){var t=e.responseJSON;if(200==t.status_code){var a=1==t.image.nsfw?"unsafe":"safe";i.attr("data-flag",a).data("flag",a)}else PF.fn.growl.call(t.error.message);CHV.fn.list_editor.selectionCount()})}}else console.error("Error: data-type not defined")}),$(".pop-box-menu a","[data-content=list-selection]").click(function(e){var t=$(PF.obj.listing.selectors.content_listing_visible);if(void 0!==t.data("list")){dealing_with=t.data("list");var a=$(PF.obj.listing.selectors.list_item+".selected",t),o=$.map(a,function(e,t){return $(e).data("id")});switch(PF.fn.close_pops(),"list-select-all"!==$(this).data("action")&&e.stopPropagation(),$(this).data("action")){case"get-embed-codes":var i="[data-modal=form-embed-codes]",n=[];$("textarea",i).html(""),a.each(function(){var e={image:JSON.parse(decodeURIComponent($(this).data("object")))};"url"in e.image&&n.push(e)}),CHV.fn.fillEmbedCodes(n,i,"html"),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreviews(i,a),buttons:!1});break;case"clear":CHV.fn.list_editor.clearSelection();break;case"list-select-all":CHV.fn.list_editor.selectAll(e);break;case"move":case"create-album":i="move"==$(this).data("action")?"form-move-multiple":"form-create-album";var r="[data-modal="+i+"]",s=/image/.test(dealing_with)?"album-id":"id";$("[name=form-album-id]",r).find("[value=null]").remove(),$("[name=form-album-id]",r).find("option").removeAttr("selected"),$("[name=form-album-name]",r).attr({value:"",autocomplete:"off"}),$("[name=form-album-description]",r).html(""),$("[name=form-privacy]",r).find("option").removeAttr("selected");var l=a.first().data(s),d=!0;a.each(function(){if($(this).data(s)!==l)return d=!1,!1}),d||$("[name=form-album-id]",r).prepend('"),$("[name=form-album-id]",r).find("[value="+(d?a.first().data(s):"null")+"]").attr("selected",!0),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreviews(r,a),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.updateMoveItemLists(e.responseJSON,dealing_with,a)}}},load:function(){},confirm:function(){var e=$(PF.obj.modal.selectors.root),t=!1;if($("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val())return PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1;if($("[data-content=form-new-album]",e).is(":visible")&&(t=!0),PF.fn.form_modal_has_changed()){return PF.obj.modal.form_data={action:t?"create-album":"move",type:dealing_with,owner:CHV.obj.resource.user.id,multiple:!0,album:{ids:o,new:t}},t?(PF.obj.modal.form_data.album.name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.album.privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.album.privacy&&(PF.obj.modal.form_data.album.password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.album.description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.album.id=$("[name=form-album-id]",e).val(),!0}PF.fn.modal.close()}});break;case"approve":PF.fn.modal.call({template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-approve-multiple]",a),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.removeFromList(a,PF.fn._s("The content has been approved."))}}},confirm:function(){return PF.obj.modal.form_data={action:"approve",from:"list",approve:dealing_with,multiple:!0,approving:{ids:o}},!0}});break;case"delete":PF.fn.modal.call({template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-delete-multiple]",a),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){"albums"==dealing_with&&(a.each(function(){$("[name=form-album-id]","[data-modal]").find("[value="+$(this).data("id")+"]").remove()}),CHV.fn.list_editor.updateUserCounters("image",e.responseJSON.success.affected,"-")),CHV.fn.list_editor.deleteFromList(a)}}},confirm:function(){return PF.obj.modal.form_data={action:"delete",from:"list",delete:dealing_with,multiple:!0,deleting:{ids:o}},!0}});break;case"assign-category":var c=a.first().data("category-id"),u=!0;a.each(function(){if($(this).data("category-id")!==c)return u=!1,!1}),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-assign-category]",a),forced:!0,ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){a.each(function(){var t=e.responseJSON;$(this).data("category-id",t.category_id)}),CHV.fn.list_editor.clearSelection()}}},confirm:function(){var e=$(PF.obj.modal.selectors.root),t=$("[name=form-category-id]",e).val()||null;return u&&c==t?(PF.fn.modal.close(function(){CHV.fn.list_editor.clearSelection()}),!1):(PF.obj.modal.form_data={action:"edit-category",from:"list",multiple:!0,editing:{ids:o,category_id:t}},!0)}});break;case"flag-safe":case"flag-unsafe":var m=$(this).data("action"),f="flag-safe"==m?"safe":"unsafe";PF.fn.modal.call({template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-"+m+"]",a),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){a.each(function(){$(this).removeClass("safe unsafe").addClass(f).removeAttr("data-flag").attr("data-flag",f).data("flag",f)}),CHV.fn.list_editor.clearSelection()}}},confirm:function(){return PF.obj.modal.form_data={action:m,from:"list",multiple:!0,editing:{ids:o,nsfw:"flag-safe"==m?0:1}},!0}})}return!PF.fn.isDevice(["phone","phablet"])&&void 0}console.error("Error: data-list not defined")}),$(document).on("click","[data-action=disconnect]",function(){var e=$(this),t=e.data("connection");PF.fn.modal.confirm({message:e.data("confirm-message"),ajax:{data:{action:"disconnect",disconnect:t,user_id:CHV.obj.resource.user.id},deferred:{success:function(e){var a=e.responseJSON;$("[data-connection="+t+"]").fadeOut(function(){$($("[data-connect="+t+"]")).fadeIn(),$(this).remove(),0==$("[data-connection]").length&&$("[data-content=empty-message]").show(),PF.fn.growl.expirable(a.success.message)}),""!==a.success.redirect&&(window.location.href=a.success.redirect)},error:function(e){var t=e.responseJSON;PF.fn.growl.call(t.error.message)}}}})}),$(document).on("click","[data-action=delete-avatar]",function(){var e=$(".user-settings-avatar"),t=$(".loading-placeholder",e),a=$("#top-bar");t.removeClass("hidden"),PF.fn.loading.inline(t,{center:!0}),$.ajax({type:"POST",data:{action:"delete",delete:"avatar",owner:CHV.obj.resource.user.id}}).complete(function(o){t.addClass("hidden").empty(),200==o.status?(CHV.obj.logged_user.id==CHV.obj.resource.user.id&&($("img.user-image",a).hide(),$(".default-user-image",a).removeClass("hidden")),$(".default-user-image",e).removeClass("hidden").css({opacity:0}),$('[data-action="delete-avatar"]',e).parent().addClass("soft-hidden"),$("img.user-image",e).fadeOut(function(){$(".default-user-image",e).animate({opacity:1})})):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}),$(document).on("change","[data-content=user-avatar-upload-input]",function(e){e.preventDefault(),e.stopPropagation();var t=$(this),a=$(".user-settings-avatar"),o=$(".loading-placeholder",".user-settings-avatar"),i=$("#top-bar"),n=$(this)[0].files[0];if(!t.data("uploading"))if(0!=/^image\/.*$/.test(n.type))if(n.size>CHV.obj.config.user.avatar_max_filesize.getBytes())PF.fn.growl.call(PF.fn._s("Please select a picture of at most %s size.",CHV.obj.config.user.avatar_max_filesize));else{var r=$('[data-action="delete-avatar"]');o.removeClass("hidden"),PF.fn.loading.inline(o,{center:!0}),t.data("uploading",!0);var s=new FormData;s.append("source",n),s.append("action","upload"),s.append("type","file"),s.append("what","avatar"),s.append("owner",CHV.obj.resource.user.id),s.append("auth_token",PF.obj.config.auth_token),avatarXHR=new XMLHttpRequest,avatarXHR.open("POST",PF.obj.config.json_api,!0),avatarXHR.send(s),avatarXHR.onreadystatechange=function(){if(4==this.readyState){var e="json"!==this.responseType?JSON.parse(this.response):this.response,n=e.success.image;o.addClass("hidden").empty(),200==this.status?(change_avatar=function(e){r.parent().removeClass("soft-hidden"),$("img.user-image",e).attr("src",n.url).removeClass("hidden").show()},hide_default=function(e){$(".default-user-image",e).addClass("hidden")},hide_default(a),$(".btn-alt",a).closest("div").show(),change_avatar(a),CHV.obj.logged_user.id==CHV.obj.resource.user.id&&(change_avatar(i),hide_default(i)),PF.fn.growl.expirable(PF.fn._s("Profile image updated."))):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later.")), -t.data("uploading",!1)}}}else PF.fn.growl.call(PF.fn._s("Please select a valid image file type."))}),$(document).on("change","[data-content=user-background-upload-input]",function(e){e.preventDefault(),e.stopPropagation();var t=$(this),a=$("[data-content=user-background-cover]"),o=$("[data-content=user-background-cover-src]"),i=$(".loading-placeholder",a),n=($("#top-bar"),$(this)[0].files[0]);if(!t.data("uploading"))if(0!=/^image\/.*$/.test(n.type))if(n.size>CHV.obj.config.user.background_max_filesize.getBytes())PF.fn.growl.call(PF.fn._s("Please select a picture of at most %s size.",CHV.obj.config.user.background_max_filesize));else{i.removeClass("hidden"),PF.fn.loading.inline(i,{center:!0,size:"big",color:"#FFF"}),t.data("uploading",!0);var r=new FormData;r.append("source",n),r.append("action","upload"),r.append("type","file"),r.append("what","background"),r.append("owner",CHV.obj.resource.user.id),r.append("auth_token",PF.obj.config.auth_token),avatarXHR=new XMLHttpRequest,avatarXHR.open("POST",PF.obj.config.json_api,!0),avatarXHR.send(r),avatarXHR.onreadystatechange=function(){if(4==this.readyState){var e="json"!==this.responseType?JSON.parse(this.response):this.response,n=e.success.image;if(200==this.status){var r=$("");r.attr("src",n.url).imagesLoaded(function(){i.addClass("hidden").empty(),o.css("background-image","url("+n.url+")").hide().fadeIn(),$("[data-content=user-change-background]",a).removeClass("hidden"),$(a).removeClass("no-background"),$(".top-user").removeClass("no-background"),$("[data-content=user-upload-background]").hide(),$("[data-content=user-change-background]").show(),PF.fn.growl.expirable(PF.fn._s("Profile background image updated.")),r.remove()})}else i.addClass("hidden").empty(),PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."));t.data("uploading",!1)}}}else PF.fn.growl.call(PF.fn._s("Please select a valid image file type."))}),CHV.fn.user_background={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"background",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){$("[data-content=user-background-cover-src]").css("background-image","none"),$("[data-content=user-background-cover], .top-user").addClass("no-background"),$("[data-content=user-background-cover]").height(""),$("[data-content=user-upload-background]").removeClass("hidden").show(),$("[data-content=user-change-background]").hide()},done:function(e){PF.fn.modal.close(function(){PF.fn.growl.expirable(PF.fn._s("Profile background image deleted."))})}},error:function(e){PF.fn.growl.expirable(PF.fn._s("Error deleting profile background image."))}}}},CHV.fn.user_api={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"api_key",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){},done:function(e){PF.fn.modal.close(function(){location.reload()})}},error:function(e){PF.fn.growl.expirable(e.responseJSON.error.message)}}}},CHV.fn.user_two_factor={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"two_factor",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){},done:function(e){PF.fn.modal.close(function(){location.reload()})}},error:function(e){PF.fn.growl.expirable(e.responseJSON.error.message)}}}},CHV.str.mainform="[data-content=main-form]",CHV.obj.timezone={selector:"[data-content=timezone]",input:"#timezone-region"},$(document).on("keyup change",CHV.str.mainform+" :input",function(){$(this).is("[name=username]")&&$("[data-text=username]").text($(this).val())}),$(document).on("change",CHV.obj.timezone.input,function(){var e=$(this).val(),t=$("#timezone-combo-"+e);t.find("option:first").prop("selected",!0),$(CHV.obj.timezone.selector).val(t.val()).change()}),$(document).on("change","[id^=timezone-combo-]",function(){var e=$(this).val();$(CHV.obj.timezone.selector).val(e).change()}),$(document).on("keyup change blur","[name^=new-password]",function(){var e=$("[name=new-password]"),t=$("[name=new-password-confirm]"),a=e.val()==t.val(),o=t.closest(".input-password").find(".input-warning");0==o.exists()&&(o=$("[data-message=new-password-confirm]")),$(this).is(t)&&t.data("touched",!0),t.data("touched")&&o.text(a?"":o.data("text"))[a?"addClass":"removeClass"]("hidden-visibility")}),$(document).on("submit",CHV.obj.mainform,function(){switch($(this).data("type")){case"password":var e=$("[name=new-password]",this),t=$("[name=new-password-confirm]",this);if((""!==e.val()||""!==t.val())&&e.val()!==t.val())return e.highlight(),t.highlight(),PF.fn.growl.expirable(PF.fn._s("Passwords don't match")),!1}}),$(document).on("click","[data-action=check-for-updates]",function(){PF.fn.loading.fullscreen(),CHV.fn.system.checkUpdates(function(e){if(PF.fn.loading.destroy("fullscreen"),200===e.status){var t=e.responseJSON.software;-1==PF.fn.versionCompare(CHV.obj.system_info.version,t.current_version)?PF.fn.modal.simple({title:' '+PF.fn._s("Chevereto v%s available",t.current_version),message:"

    "+PF.fn._s("There is a new Chevereto version available with the following release notes.")+" "+PF.fn._s("Check %s for a complete changelog since you last upgrade.",''+CHV.obj.system_info.version+'')+'

    "+PF.fn._s("Check the %s for alternative update methods.",''+PF.fn._s("documentation")+"")+'

    ",html:!0}):PF.fn.growl.call(PF.fn._s("This website is running latest %s version",CHEVERETO.edition))}else PF.fn.growl.call(PF.fn._s("An error occurred. Please try again later."))})}),void 0!==PF.fn.get_url_var("checkUpdates")&&$("[data-action=check-for-updates]").trigger("click"),void 0!==PF.fn.get_url_var("upgrade")&&$("[data-action=upgrade]").trigger("click"),void 0!==PF.fn.get_url_var("license")&&$("[data-action='license']").trigger("click"),void 0!==PF.fn.get_url_var("welcome")&&PF.fn.modal.call({template:$("[data-modal=welcome]").html(),buttons:!1}),void 0!==PF.fn.get_url_var("installed")&&PF.fn.modal.simple({title:' '+PF.fn._s("Chevereto v%s installed",CHV.obj.system_info.version),message:"

    "+PF.fn._s('Usage of Chevereto Software must be in compliance with the software license terms known as "The Chevereto License".')+'

    ",html:!0}),$(document).on("click","[data-action=system-update]",function(e){if(!$("input#system-update").prop("checked"))return PF.fn.growl.call(PF.fn._s("Please review the system requirements before proceeding")),void e.preventDefault()}),$(document).on("click","[data-action=toggle-storage-https]",function(){CHV.fn.storage.toggleHttps($(this).closest("[data-content=storage]").data("storage-id"))}),$(document).on("click","[data-action=toggle-storage-active]",function(){CHV.fn.storage.toggleActive($(this).closest("[data-content=storage]").data("storage-id"))}),$(CHV.fn.uploader.selectors.root).exists()&&(CHV.fn.uploader.$pasteCatcher=$("
    ",{contenteditable:"true",id:CHV.fn.uploader.selectors.paste.replace(/#/,"")}),$("body").append(CHV.fn.uploader.$pasteCatcher),$(document).on("keydown",function(e){!e.ctrlKey&&!e.metaKey||"KeyV"!=e.originalEvent.code||$(e.target).is(":input")||(PF.fn.keyFeedback.spawn(e),CHV.fn.uploader.$pasteCatcher.focus(e))}),document.addEventListener("dragover",function(e){e.preventDefault()}),document.addEventListener("drop",function(e){if(CHV.obj.config.upload.url){e.preventDefault();var t,a=e.dataTransfer.getData("text/html"),o=/src="?([^"\s]+)"?\s*/;t=o.exec(a),t&&(CHV.fn.uploader.toggle({show:!0}),CHV.fn.uploader.add({},t[1]))}}),window.addEventListener("paste",CHV.fn.uploader.pasteImageHandler)),$(document).on("click","[data-action=like]",function(){if(PF.fn.is_user_logged()){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-liked]")?$(this):$(this).closest("[data-liked]"),a=!t.closest("[data-list], .viewer").exists()&&void 0!==CHV.obj.resource,o=t.is("[data-liked=1]"),i=o?"dislike":"like",n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").attr("data-id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").attr("data-type")},r=a?e:$("[data-type="+n.type+"][data-id="+n.id+"]"),s={type:"POST",data:{action:i},cache:!1};s.data[i]={object:n.type,id:n.id},$.ajax(s).complete(function(t){var i=t.responseJSON;e.data("XHR",!1),200===i.status_code?(a&&void 0!==i.content&&$("[data-text=likes-count]").html(i.content.likes),r.closest("[data-liked]").attr("data-liked",o?0:1)):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}else window.location.href=CHV.obj.vars.urls.login}),$(document).on("click","[data-action=album-cover]",function(){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-cover]")?$(this):$(this).closest("[data-cover]"),a=t.is("[data-cover=1]"),o=a?"album-cover-unset":"album-cover-set",i=(CHV.obj.resource.id,e.closest("[data-cover]")),n={type:"POST",data:{action:o},cache:!1};n.data[o]={album_id:i.data("album-id"),image_id:i.data("id")},$.ajax(n).complete(function(t){var o=t.responseJSON;e.data("XHR",!1),200===o.status_code?i.attr("data-cover",a?0:1):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}),$(document).on("click","[data-action=follow]",function(){if(PF.fn.is_user_logged()){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-followed]")?$(this):$(this).closest("[data-followed]"),a=void 0!==CHV.obj.resource,o=t.is("[data-followed=1]"),i=o?"unfollow":"follow",n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").data("id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").data("type")},r={type:"POST",data:{action:i},cache:!1};r.data[i]={object:n.type,id:n.id},$.ajax(r).complete(function(i){var n=i.responseJSON;if(e.data("XHR",!1),200===n.status_code){if(a&&void 0!==n.user_followed){var r=$("[data-text=followers-label]"),s={single:r.data("label-single"),plural:r.data("label-plural")};$("[data-text=followers-count]").html(n.user_followed.followers),r.html(PF.fn._n(s.single,s.plural,n.user_followed.followers))}t.attr("data-followed",o?0:1)}else PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}else PF.fn.modal.call({type:"login"})}),$(document).on("click","[data-action=user_ban],[data-action=user_unban]",function(){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).closest("[data-banned]"),a=!0,o=t.is("[data-banned=1]"),i=e.attr("data-action"),n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").data("id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").data("type")},r={type:"POST",data:{action:i},cache:!1};r.data[i]={user_id:n.id},$.ajax(r).complete(function(a){var i=a.responseJSON;e.data("XHR",!1),200===i.status_code?t.attr("data-banned",o?0:1):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}),$(document).on("click","[data-action=top-bar-notifications]",function(e){var a=this,o=$(this),i=$(".top-bar-notifications-container",o),n=$(".top-bar-notifications-list",o),r=$("ul",n),s=$(".loading",i);o.data("XHR")||(s.removeClass("hidden"),PF.fn.loading.inline(s,{size:"small",message:PF.fn._s("loading")}),$.ajax({type:"POST",data:{action:"notifications"},cache:!1}).complete(function(e){var l=e.responseJSON;if(200!==l.status_code)return PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later.")),o.data("XHR",!1),void s.addClass("hidden").html("");if(o.data("XHR",!0),s.remove(),l.html){n.removeClass("hidden"),r.html(l.html),t();var d=$("li.new",r);d.addClass("transition"),setTimeout(function(){d.removeClass("new"),$("[data-content=notifications-counter]",a).removeClass("on").html("0"),setTimeout(function(){d.removeClass("transition")},150)},1500)}else $(".empty",i).removeClass("hidden")}))}),$("#g-recaptcha").is(":empty")&&CHV.obj.config.captcha.enabled&&CHV.obj.config.captcha.sitekey&&("3"!=CHV.obj.config.captcha.version&&CHV.obj.config.captcha.isNeeded||$('label[for="recaptcha_response_field"]').remove()),$(document).on("click",PF.obj.listing.selectors.list_item+" a.image-container",function(e){var t=$(this).closest(PF.obj.listing.selectors.list_item),o=t.find("[data-action=load-image]");o.length>0&&(a(o),e.preventDefault())}),$(document).on("click",PF.obj.listing.selectors.list_item+" [data-action=load-image]",function(e){a($(this)),e.preventDefault(),e.stopPropagation()}),$(document).on("click","#album [data-tab=tab-embeds]",function(e){e.preventDefault,CHV.fn.album.showEmbedCodes()}),$("body").is("#upload")&&CHV.fn.uploader.toggle({show:!0}),$(document).on("keyup",function(e){if(!($(e.target).is(":input")||e.ctrlKey||e.metaKey||e.altKey)){var t=$("#fullscreen-modal:visible").exists(),a=$(".viewer"),o=$(".list-selection:visible"),i=o.find("[data-content=pop-selection]:visible:not(.disabled)"),n=$("body").hasClass("--viewer-shown"),r=$(CHV.fn.uploader.selectors.root+CHV.fn.uploader.selectors.show).exists(),s=e.originalEvent.code;if("Escape"===e.originalEvent.code){if(t)return;r&&CHV.fn.uploader.toggle({reset:!1})}if(a.exists()&&n){if(s in CHV.fn.listingViewer.keys){var l=["KeyW","Escape","ArrowLeft","ArrowRight"],d=CHV.fn.listingViewer.keys[s];-1==l.indexOf(s)?$("[data-action="+d+"]",CHV.fn.listingViewer.selectors.root).click():d in CHV.fn.listingViewer&&CHV.fn.listingViewer[d](),PF.fn.keyFeedback.spawn(e)}}else{var c,u={Period:"list-select-all",KeyK:"get-embed-codes",KeyZ:"clear",KeyA:"create-album",KeyM:"move",KeyO:"approve",Delete:"delete",KeyC:"assign-category",KeyV:"flag-safe",KeyF:"flag-unsafe",KeyH:"album-cover"},m={KeyE:"edit",KeyL:"like",KeyS:"share",KeyJ:"sub-album",KeyP:"upload-to-album"};d=u[s]||m[s];void 0!==d&&(o.exists()&&(n||t||parseInt($("[data-text=selection-count]:visible",i).text())>0&&(c=$("[data-action="+d+"]",o.closest(".list-selection")))),void 0===c&&(c=$("[data-action="+d+"]:visible").not("#content-listing-tabs *")),c instanceof jQuery&&c.length>0&&(c.first().trigger("click"),PF.fn.keyFeedback.spawn(e)))}}}),$(document).on("click",CHV.fn.listingViewer.selectors.root+" [data-action^=viewer-]",function(){var e=$(this).data("action").substring("viewer-".length);e in CHV.fn.listingViewer&&CHV.fn.listingViewer[e]()}),$(document).on("click","a[data-href]:not([rel=popup-link]):not(.popup-link)",function(){var e=$(this).attr("data-href"),t=$(this).attr("href");(e||t)&&(location.href=t||e)});var h,v=PF.obj.listing.selectors.list_item+", .image-container";($(document).on("contextmenu click",v,function(e){!$(".list-selection:visible").exists()||$(e.target).closest(".list-item-desc").exists()||$(this).closest(CHV.fn.listingViewer.selectors.root).exists()||"click"==e.type&&!e.ctrlKey&&!e.metaKey||o(this,e)}),navigator.userAgent.match(/(iPad|iPhone|iPod)/i))&&$(document).on("mouseup mousemove",v,function(e){return clearTimeout(h),!1}).on("mousedown",v,function(e){var t=this,a=e;return h=window.setTimeout(function(){$(".list-selection:visible").exists()&&!$(t).closest(CHV.fn.listingViewer.selectors.root).exists()&&o(t,a)},500),!1});void 0!==CHV.obj.config&&CHV.obj.config.listing.viewer&&$(document).on("click",PF.obj.listing.selectors.list_item+"[data-type=image] .image-container",function(e){if(e.preventDefault(),e.stopPropagation(),0!==e.clientX||0!==e.clientY){var t=$(this).closest(PF.obj.listing.selectors.list_item);t.exists()&&(e.ctrlKey||e.metaKey||CHV.fn.listingViewer.open(t))}else PF.fn.keyFeedback.spawn(e)}),$(document).on("contextmenu",CHV.fn.listingViewer.selectors.root,function(e){return e.preventDefault(),CHV.fn.listingViewer.zoom(),PF.fn.keyFeedback.spawn(e),!1});var b,_=PF.fn.deparam(window.location.search);if(_&&"viewer"in _){var C=$(PF.obj.listing.selectors.content_listing_visible);if("images"==C.data("list")){var w=$(PF.obj.listing.selectors.list_item,C)["next"==_.viewer?"first":"last"]();CHV.fn.listingViewer.open(w)}}$(window).on("DOMContentLoaded load resize scroll",function(){clearTimeout(b),b=setTimeout(function(){$(PF.obj.listing.selectors.list_item+":visible").each(function(){var e=$(this).find('[data-action="load-image"]').first(),t=PF.fn.deparam($(PF.obj.listing.selectors.list_item+"[data-id="+$(this).attr("data-id")+"]").closest(".content-listing").data("params-hidden")),o=t&&"is_animated"in t?t.is_animated:$(this).data("size")<=CHV.obj.config.image.load_max_filesize.getBytes();e.exists()&&o&&$(this).is_within_viewport(50)&&a(e)})},1e3)}),$(document).on("click","[data-action=logout]",function(){let e=$("form#form-logout");e.submit()}),Boolean(window.navigator.vibrate)&&$(document).on("click","button, .btn, .pop-btn, .top-btn-el, [data-action], .content-tabs a, .top-bar-logo a, .login-provider-button, .panel-share-networks li a, #image-viewer-loader",function(e){$(this).is("[data-action=top-bar-menu-full]")||(window.navigator.vibrate(0),window.navigator.vibrate(15))}),$(document).on("change keyup",CHV.fn.ctaForm.selectors.rows+" input[name^='cta-']",function(){CHV.fn.ctaForm.update($(this))}),$(document).on("click",CHV.fn.ctaForm.selectors.rows+" [data-action=cta-add]",function(){CHV.fn.ctaForm.insert($(this))}),$(document).on("click",CHV.fn.ctaForm.selectors.rows+" [data-action=cta-remove]",function(){CHV.fn.ctaForm.remove($(this)),0==CHV.fn.ctaForm.array.length&&$(CHV.fn.ctaForm.selectors.root+" "+CHV.fn.ctaForm.selectors.enable).prop("checked",!1).trigger("change")}),$(document).on("change",CHV.fn.ctaForm.selectors.root+" "+CHV.fn.ctaForm.selectors.enable,function(){let e=$(CHV.fn.ctaForm.selectors.combo,CHV.fn.ctaForm.selectors.root),t=$(this).is(":checked");e.toggleClass("soft-hidden",!t),t&&(0==CHV.fn.ctaForm.array.length&&CHV.fn.ctaForm.add(),CHV.fn.ctaForm.render()),CHV.fn.ctaForm.setEnable(t?1:0)}),$(document).on("change keyup",CHV.fn.ctaForm.selectors.root+" input[name^='cta-icon_']",function(){let e=CHV.fn.ctaForm.getRow($(this)),t=e.find("label[for^='cta-icon_'] [data-content=icon]");t.removeClass();let a=CHV.fn.ctaForm.getIconClass($(this).val());t.addClass(a)}),$(document).on("click","[href^='https://chevereto.com/']",function(e){let t=$(this).find(".badge--paid").exists();if(!t)return;let a=$(this).attr("href"),o=PF.fn._s("Get a license at %s to unlock all features and support.",'chevereto.com'),i=PF.fn._s("You can enter your license key in the dashboard panel.");e.preventDefault(),e.stopPropagation(),PF.fn.modal.simple({html:!0,title:' Upgrade Chevereto',message:"

    "+o+" "+i+'

    "})}),$(document).on("focus","input[name='form-album-password']",function(){$(this).get(0).type="text"}),$(document).on("blur","input[name='form-album-password']",function(){$(this).get(0).type="password"})}),"undefined"==typeof CHV&&(CHV={obj:{},fn:{},str:{}}),window.opener&&(CHV.obj.opener={uploadPlugin:{}}),CHV.fn.ctaButtons={selectors:{container:"[data-contains=cta-album]"},render:function(e=""){$(this.selectors.container).each(function(){$(this).html(e)})}},CHV.fn.ctaForm={enable:0,array:[],selectors:{root:"#cta-form",rows:"#cta-rows",enable:"#cta-enable",template:"#cta-row-template",combo:"#cta-combo",row:".cta-row"},update:function(e){let t=this.getPos(e),a=e.attr("name").match(/cta-(.*)?_\d+/)[1];this.array[t-1][a]=e.val()},add:function(e="",t="",a=""){this.array.push(this.getRowObject(e,t,a)),this.render()},insert:function(e){let t=this.getPos(e);this.array.splice(t,0,this.getRowObject()),this.render()},remove:function(e){let t=this.getPos(e);this.array.splice(t-1,1),this.render()},getRowObject:function(e="",t="",a=""){return{label:e,icon:t,href:a}},getIconClass:function(e){return/\s/g.test(e)?e:"fa-solid fa-"+e},getRow:function(e){return e.closest(this.selectors.row)},getPos:function(e){return this.getRow(e).data("pos")},getTemplateHtml:function(){return $(this.selectors.template).html()},getRowHtml:function(e,t){return this.getTemplateHtml().replaceAll(/%pos%/g,e).replaceAll(/%label%/g,t.label).replaceAll(/%href%/g,t.href).replaceAll(/%icon%/g,t.icon).replaceAll(/%iconClass%/g,this.getIconClass(t.icon))},render:function(){let e=$(this.selectors.root),t=e.find(this.selectors.rows),a=this;this.destroy(),$.each(this.array,function(e,o){t.append(a.getRowHtml(e+1,o))}),this.setEnable(this.enable),t.sortable({cursor:"grabbing",axis:"y",update:function(){let e=[];$(this).find(a.selectors.row).each(function(){let t=a.getPos($(this));e.push(a.array[t-1])}),a.array=e,a.render()}})},setEnable:function(e){let t=$(this.selectors.rows,this.selectors.root);this.enable=e;let a=1===this.enable;$("input[data-required]",t).each(function(){$(this).attr("required",a)})},destroy:function(){let e=$(this.selectors.root),t=e.find(this.selectors.rows);try{t.sortable("destroy")}catch(e){}t.empty()}},CHV.fn.album={showEmbedCodes:function(){var e=$(".content-listing-loading","#tab-embeds");if(e.exists()){var t=$("#embed-codes");$.ajax({url:PF.obj.config.json_api,type:"POST",dataType:"json",data:{action:"get-album-contents",albumid:CHV.obj.resource.id,auth_token:PF.obj.config.auth_token},cache:!1}).always(function(a){PF.fn.loading.destroy(e),200==a.status_code&&(CHV.fn.fillEmbedCodes(a.contents,"#tab-embeds"),$("#tab-embeds").addClass("visible"),t.removeClass("soft-hidden"))})}}},CHV.fn.modal={getTemplateWithPreview:function(e,t){var a=$(e).html(),o=$("
    "),i="",n=t.find(".image-container img").attr("src");return void 0!==n&&(i+='';var e=$(this).find(".image-container img");e.exists()?n+='':(n+='',n+=''),n+="",r++}),i.html(o).find(".image-preview").html(n),i.html()}},CHV.fn.listingViewer={selectors:{bodyShown:".--viewer-shown",content:".viewer-content",template:"#viewer-template",root:".viewer",rootShow:".viewer--show",rootHide:".viewer--hide",rootZero:".viewer--zero",rootNavPrev:".viewer--nav-prev",rootNavNext:".viewer--nav-next",src:".viewer-src",tools:".viewer-tools",loader:".viewer-loader",owner:".viewer-owner",ownerGuest:".viewer-owner--guest",ownerUser:".viewer-owner--user",inputMap:".viewer-kb-input"},keys:{ArrowLeft:"prev",ArrowRight:"next",Delete:"delete",Escape:"close",KeyA:"create-album",KeyE:"edit",KeyF:"flag",KeyL:"like",KeyM:"move",KeyO:"approve",KeyS:"share",KeyW:"zoom",Period:"select"},keymap:{"create-album":["A",PF.fn._s("Create album")],approve:["O",PF.fn._s("Approve")],close:["Esc",PF.fn._s("Close")],delete:["Del",PF.fn._s("Delete")],edit:["E",PF.fn._s("Edit")],flag:["F",PF.fn._s("Toggle flag")],like:["L",PF.fn._s("Like")],move:["M",PF.fn._n("Move")],next:["►",PF.fn._s("Next")],prev:["◄",PF.fn._s("Previous")],select:[".",PF.fn._s("Toggle select")],share:["S",PF.fn._s("Share")],zoom:["W",PF.fn._s("Zoom")]},loading:null,idleTimer:0,$item:null,show:function(){PF.fn.deparam(this.$item.closest(PF.obj.listing.selectors.content_listing_visible).data("params-hidden"));this.getEl("root").removeClass(this.selectors.rootHide.substring(1)).addClass(this.selectors.rootShow.substring(1)),$("body").addClass(this.selectors.bodyShown.substring(1));var e=new Hammer($(CHV.fn.listingViewer.selectors.root).get(0),{direction:Hammer.DIRECTION_VERTICAL});e.on("swipeleft swiperight",function(e){var t="left"==e.type.substring("swipe".length)?"next":"prev";CHV.fn.listingViewer[t]()}),this.getEl("root")[(PF.fn.isDevice(["phone","phablet"])?"add":"remove")+"Class"]("--over")},getItem:function(){return this.$item},getEl:function(e){var t=!e.startsWith("template")&&!e.startsWith("root")&&this.selectors.root;return t?$(this.selectors[e],t):$(this.selectors[e])},getObject:function(e){if(e||void 0===this.object){var t=decodeURIComponent(this.getItem().attr("data-object"));this.object=JSON&&JSON.parse(t)||$.parseJSON(t)}return this.object},placeholderSizing:function(){if(this.getEl("root").exists()){var e=Math.max(document.documentElement.clientWidth,window.innerWidth||0),t=Math.max(document.documentElement.clientHeight,window.innerHeight||0),a=e/t,o=this.getEl("src")[0],i=o.getAttribute("width"),n=o.getAttribute("height"),r=i/n,s=a0?"add":t.getItem()[o]().exists()?"add":"remove";a[n+"Class"](i.substring(1))}),$.each(this.getItem().get(0).attributes,function(e,t){if(!t.name.startsWith("data-"))return!0;a.attr(t.name,t.value)});var n=void 0===this.object.user?"user":"guest";n="owner"+(n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()),this.getEl(n).remove(),void 0!==this.object.user&&$(this.object.user.avatar?".default-user-image":"img.user-image",this.getEl("ownerUser")).remove();var r=this.getItem().find(".list-item-image-tools[data-action='list-tools']");this.getEl("tools").append(r.html());let s=this;this.getEl("tools").find(".list-tool[data-action]").each(function(){$(this).attr("title",$(this).attr("title")+" ("+s.keymap[$(this).attr("data-action")][0]+")")}),this.placeholderSizing(),this.trickyLoad()},zoom:function(){this.getEl("root").attr("data-cover","1"==this.getEl("root").attr("data-cover")?"0":"1")},remove:function(){this.getEl("root").remove()},getParsedTemplate:function(){var e=this.getObject(!0),t=this.getEl("template").html(),a=t.match(/%(\S+)%/g);return a&&$.each(a,function(a,o){var i,n=o.slice(1,-1).split(".");n.map(function(t){var a=i||e;t in a&&(i=a[t])});var r=new RegExp(o,"g");i=void 0===i?"":i,t=t.replace(r,i)}),t},insertEl:function(){var e=this.getParsedTemplate();this.getEl("rootZero").remove(),$(e).appendTo("body")},toggleIdle:function(e,t){var a=this;t=void 0===t||t;$("html")[(e?"add":"remove")+"Class"]("--idle"),e||(clearTimeout(a.idleTimer),t&&(a.idleTimer=setTimeout(function(){var e=$(".fullscreen"),t=a.getEl("root");a.toggleIdle(t.length>0&&0==e.length)},5e3)))},open:function(e){if(e.exists()){this.setItem(e),this.insertEl(),this.filler(),this.show(),this.toggleIdle(!1);var t=this;this.getEl("root").on("mousemove mouseout",function(){t.toggleIdle(!1)})}else this.getEl("rootZero").remove()},setItem:function(e){this.$item=e},trickyLoad:function(){if(this.object.image.url!=this.object.display_url){var e=this.getEl("src").parent().html(),t=$(e).attr("src",this.object.image.url);t.insertBefore(this.getEl("src"));var a=t.eq(0);"video"===a.attr("data-type")?(a.replaceWith(''),a.src=this.object.image.url):a.attr("src",this.object.image.url),t.imagesLoaded(function(){t.next().remove()})}},close:function(){var e=this;$(this.selectors.root).removeClass(this.selectors.rootShow.substring(1)).addClass(this.selectors.rootHide.substring(1)),$("body").removeClass(this.selectors.bodyShown.substring(1)),this.toggleIdle(!1,!1),null!==this.getItem()&&$(window).scrollTop(this.getItem().offset().top);var t=$("#top-bar, .follow-scroll");t.attr("data-scroll-lock","1"),setTimeout(function(){e.remove()},250),setTimeout(function(){t.removeAttr("data-scroll-lock")},300)},browse:function(e){var t=this.getItem()[e]();if(t.exists()){this.setItem(t),this.filler(!0);var a=$(PF.obj.listing.selectors.content_listing_visible).find("[data-action=load-more]"),o=t[e+"All"]().length;a.length>0&&o<=5&&!PF.obj.listing.calling&&"next"==e&&$("[data-action=load-more]").click()}else{var i=$("[data-pagination="+e+"]",PF.obj.listing.selectors.content_listing_pagination+":visible"),n=i.attr("href");if(!n)return;PF.fn.deparam(window.location.search);window.location.href=n+"&viewer="+e}},prev:function(){this.browse("prev")},next:function(){this.browse("next")}},CHV.obj.image_viewer={selector:"#image-viewer",container:"#image-viewer",navigation:".image-viewer-navigation",loading:"#image-viewer-loading",loader:"#image-viewer-loader"},CHV.obj.image_viewer.$container=$(CHV.obj.image_viewer.container),CHV.obj.image_viewer.$navigation=$(CHV.obj.image_viewer.navigation),CHV.obj.image_viewer.$loading=$(CHV.obj.image_viewer.loading),CHV.fn.system={checkUpdates:function(e){$.ajax({url:CHEVERETO.api.get.info+"/",data:{id:CHEVERETO.id},cache:!1}).always(function(t,a,o){"function"==typeof e&&e(o)})}},("MacIntel"===navigator.platform&&navigator.maxTouchPoints>0||"iPad"===navigator.platform)&&$("html").removeClass("device-nonmobile"),CHV.fn.bindSelectableItems=function(){var e="content-listing-wrapper",t="#"+e;$(t).exists()?$(t).hasClass("ui-selectable")&&$(t).selectable("destroy"):$("#content-listing-tabs").wrap("
    "),$("[data-content=list-selection]").exists()&&$("html.device-nonmobile "+t).selectable({delay:150,filter:PF.obj.listing.selectors.list_item,cancel:".content-empty, .header, #tab-share, #tab-info, .viewer-title, .header-link, .top-bar, .content-listing-pagination *, #fullscreen-modal, #top-user, #background-cover, .list-item-desc, .list-item-image-tools, [data-action=load-image], #tab-embeds",classes:{"ui-selected":"selected"},selected:function(e,t){$(t.selected).removeClass("ui-selected")},selecting:function(e,t){var a=$(t.selecting),o=a.hasClass("selected");CHV.fn.list_editor[(o?"unselect":"select")+"Item"](a)},unselecting:function(e,t){CHV.fn.list_editor.unselectItem($(t.unselecting))}})},CHV.fn.isCachedImage=function(e){var t=new Image;return t.src=e,t.complete||t.width+t.height>0},CHV.fn.viewerLoadImage=function(){if(CHV.obj.image_viewer.$loading.exists()&&(CHV.obj.image_viewer.$loading.removeClass("soft-hidden").css({zIndex:2}),PF.fn.loading.inline(CHV.obj.image_viewer.$loading,{color:"white",size:"small",center:!0,valign:!0}),CHV.obj.image_viewer.$loading.hide().fadeIn("slow")),$(CHV.obj.image_viewer.loader).remove(),CHV.obj.image_viewer.image.is_360)return PF.fn.loading.destroy(CHV.obj.image_viewer.$loading),pannellum.viewer("image-viewer-360",{autoLoad:!0,type:"equirectangular",panorama:CHV.obj.image_viewer.image.url,preview:CHV.obj.image_viewer.$container.find(".media").eq(0).attr("src"),pitch:2.3,yaw:-135.4,hfov:120}),$("#image-viewer-360").removeClass("soft-hidden"),void CHV.obj.image_viewer.$container.find(".media").eq(0).remove();CHV.obj.image_viewer.image.html=CHV.obj.image_viewer.$container.html(), -CHV.obj.image_viewer.$container.css("height",CHV.obj.image_viewer.$container.height()).prepend($(CHV.obj.image_viewer.image.html).css({top:0,zIndex:0,opacity:0,position:"absolute"})),CHV.obj.image_viewer.$container.find(".media").eq(0).css("zIndex",1);var e=CHV.obj.image_viewer.$container.find(".media").eq(1),t=e.css("width"),a=e.css("height");"video"===e.attr("data-type")?(e.replaceWith(''),e.src=CHV.obj.image_viewer.image.url):e.attr("src",CHV.obj.image_viewer.image.url),e.imagesLoaded(function(){CHV.obj.image_viewer.$container.find(".media").eq(1).css({position:"",display:"",opacity:1}),CHV.obj.image_viewer.$container.find(".media").eq(0).remove(),$(CHV.obj.image_viewer.container).css("height",""),PF.fn.loading.destroy(CHV.obj.image_viewer.$loading)})},CHV.obj.embed_share_tpl={},CHV.obj.embed_upload_tpl={},CHV.obj.topBar={transparencyScrollToggle:function(){var e=$(window).scrollTop();$("#top-bar")[(e>0?"remove":"add")+"Class"]("transparent")}},CHV.obj.uploaderReset={isUploading:!1,canAdd:!0,queueStatus:"ready",uploadThreads:0,uploadParsedIds:[],uploadProcessedIds:[],files:{},results:{success:{},error:{}},toggleWorking:0,filesAddId:0,clipboardImages:[]},CHV.fn.uploader={files:{},selectors:{root:"#anywhere-upload",show:".upload-box--show",queue:"#anywhere-upload-queue",queue_complete:".queue-complete",queue_item:".queue-item",close_cancel:"[data-button=close-cancel]",file:"#anywhere-upload-input",camera:"#anywhere-upload-input-camera",upload_item_template:"#anywhere-upload-item-template",item_progress_bar:"[data-content=progress-bar]",failed_result:"[data-content=failed-upload-result]",fullscreen_mask:"#fullscreen-uploader-mask",dropzone:"#uploader-dropzone",paste:"#anywhere-upload-paste",input:"[data-action=anywhere-upload-input]"},toggle:function(e,t){this.queueSize();var a=$("[data-action=top-bar-upload]",".top-bar"),o=!$(CHV.fn.uploader.selectors.root).data("shown");e=$.extend({callback:null,reset:!0},e);if(void 0!==e.show&&e.show&&(o=!0),PF.fn.growl.close(!0),PF.fn.close_pops(),!(1==this.toggleWorking||$(CHV.fn.uploader.selectors.root).is(":animated")||CHV.fn.uploader.isUploading||a.data("login-needed")&&!PF.fn.is_user_logged())){this.toggleWorking=1;var i={time:500,easing:null},n=function(){!o&&e.reset&&CHV.fn.uploader.reset(),PF.fn.topMenu.hide(),"function"==typeof e.callback&&e.callback(t),CHV.fn.uploader.boxSizer(),CHV.fn.uploader.toggleWorking=0};if($(CHV.fn.uploader.selectors.root)[(o?"add":"remove")+"Class"](this.selectors.show.substring(1)),o){if($("html").data({"followed-scroll":$("html").hasClass("followed-scroll"),"top-bar-box-shadow-prevent":!0}).removeClass("followed-scroll").addClass("overflow-hidden top-bar-box-shadow-none"),$("#top-bar").data({stock_classes:$("#top-bar").attr("class")}).addClass("scroll-up"),$(".current[data-nav]",".top-bar").each(function(){$(this).is("[data-action=top-bar-menu-full]")||$(this).removeClass("current").attr("data-current",1)}),PF.fn.isDevice("mobile")){var r=$(".upload-box-heading",$(CHV.fn.uploader.selectors.root));r.css({position:"relative",top:.5*($(window).height()-r.height())+"px"})}CHV.fn.uploader.focus(function(){setTimeout(function(){n()},i.time)})}else{$("#top-bar")[0].className=$("#top-bar").data("stock_classes"),$("[data-nav][data-current=1]",".top-bar").each(function(){$(this).addClass("current")}),setTimeout(function(){$(CHV.fn.uploader.selectors.fullscreen_mask).css({opacity:0})},.1*i.time),setTimeout(function(){$(CHV.fn.uploader.selectors.fullscreen_mask).remove()},i.time);var s=$(CHV.fn.uploader.selectors.root).outerHeight(),l=s-parseInt($(CHV.fn.uploader.selectors.root).data("initial-height"))+"px";$(CHV.fn.uploader.selectors.root).css({transform:"translate(0,-"+l+")"}),setTimeout(function(){$(CHV.fn.uploader.selectors.root).css({top:""}),n(),$("html,body").removeClass("overflow-hidden").data({"top-bar-box-shadow-prevent":!1}),$("#top-bar *").trigger("blur")},i.time)}$(CHV.fn.uploader.selectors.root).data("shown",o),a.toggleClass("current").removeClass("opened")}},reset:function(){$.extend(this,$.extend(!0,{},CHV.obj.uploaderReset)),$("li",this.selectors.queue).remove(),$(this.selectors.root).height("").css({"overflow-y":"","overflow-x":""}),$(this.selectors.queue).addClass("queueEmpty").removeClass(this.selectors.queue_complete.substring(1)),$(this.selectors.input,this.selectors.root).each(function(){$(this).prop("value",null)}),$("[data-group=upload-result] textarea",this.selectors.root).prop("value",""),$.each(["upload-queue-ready","uploading","upload-result","upload-queue-ready","upload-queue"],function(e,t){$("[data-group="+t+"]").hide()}),$("[data-group=upload]",this.selectors.root).show(),$("[name=upload-album-id]",this.selectors.root).prop("value",function(){var e=$("option[selected]",this);if(e.exists())return e.attr("value")}),$(this.selectors.root).removeClass("queueCompleted queueReady queueHasResults").addClass("queueEmpty").attr("data-queue-size",0),$("[name=upload-category-id]",this.selectors.root).prop("value",""),$("[name=upload-nsfw]",this.selectors.root).prop("checked",this.defaultChecked),this.boxSizer(!0)},focus:function(e){$(this.selectors.fullscreen_mask).exists()||($("body").is("#upload")||$("body").append($("
    ",{id:this.selectors.fullscreen_mask.replace("#",""),class:"fullscreen black"}).css({top:PF.fn.isDevice("phone")?0:$(CHV.fn.uploader.selectors.root).data("top")})),setTimeout(function(){$("body").is("#upload")||$(CHV.fn.uploader.selectors.fullscreen_mask).css({opacity:1}),setTimeout(function(){"function"==typeof e&&e()},PF.fn.isDevice(["phone","phablet"])?0:250)},1))},boxSizer:function(e){var t=$(this.selectors.root).is(this.selectors.show),a=t||e;t&&$("html").addClass("overflow-hidden"),a&&($(this.selectors.root).height(""),!$("body").is("#upload")&&$(this.selectors.root).height()>$(window).height()?($(this.selectors.root).height($(window).height()-$("#top-bar").height()).css({"overflow-y":"scroll","overflow-x":"auto"}),$("html").addClass("overflow-hidden")):$(this.selectors.root).css("overflow-y",""))},pasteURL:function(){var e=$("[name=urls]",PF.obj.modal.selectors.root),t=e.val();t&&(CHV.fn.uploader.toggle({show:!0}),CHV.fn.uploader.add({},t))},pasteImageHandler:function(e){if(!$(e.target).is(":input")){if(void 0!==e.clipboardData&&e.clipboardData.items)var t=e.clipboardData.items;else setTimeout(function(){return e.clipboardData={},e.clipboardData.items=[],$.each($("img",CHV.fn.uploader.$pasteCatcher),function(t,a){e.clipboardData.items.push(PF.fn.dataURItoBlob($(this).attr("src")))}),$(CHV.fn.uploader.selectors.paste).html(""),CHV.fn.uploader.pasteImageHandler(e)},1);if(t){const e=new Array,i=new Array,n=new RegExp("^(image|video)/","i");let r=$(CHV.fn.uploader.selectors.root).data("shown");for(var a=0;a{const o={1:"MEDIA_ERR_ABORTED",2:"MEDIA_ERR_NETWORK",3:"MEDIA_ERR_DECODE",4:"MEDIA_ERR_SRC_NOT_SUPPORTED"};var i=o[a.error.code];t({type:"error",error:i}),console.error("Error loading video",i)}),a.addEventListener("loadedmetadata",function(){const e=parseInt(a.duration/4);setTimeout(()=>{a.currentTime=e,a.pause()},200),a.addEventListener("seeked",()=>{const e=document.createElement("canvas");e.width=a.videoWidth,e.height=a.videoHeight;const o=e.getContext("2d");o.drawImage(a,0,0,e.width,e.height),o.canvas.toBlob(o=>{t(a,e)},"image/jpeg",.9)},!1)}),/iPad|iPhone|iPod|Safari/.test(navigator.userAgent)&&(a.autoplay=!0,a.playsInline=!0,a.muted=!0),a.preload="metadata",a.src=e}function d(e,t){e.show(),$(CHV.fn.uploader.selectors.root).addClass("queueReady").removeClass("queueEmpty"),$("[data-group=upload-queue-ready]",CHV.fn.uploader.selectors.root).show(),$("[data-group=upload]",CHV.fn.uploader.selectors.root).hide(),e.find(".load-url").remove(),e.find(".preview").removeClass("soft-hidden").show().append(t),$img=e.find(".preview").find("img,canvas"),$img.attr("class","canvas"),queue_item_h=e.height(),queue_item_w=e.width();var a=parseInt($img.attr("width"))||$img.width(),o=parseInt($img.attr("height"))||$img.height(),i=a/o;if($img.hide(),a>o||a==o){var r=oo&&$img.height(r).width(r*i)}if(a0){for(var o="",i=0;i"+PF.fn.htmlEncode(a[i].name)+" - "+PF.fn.htmlEncode(a[i].error)+"
  • ",delete CHV.fn.uploader.files[a[i].uid],$("li[data-id="+a[i].uid+"]",CHV.fn.uploader.selectors.queue).find("[data-action=cancel]").click();PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be loaded"),message:"
      "+o+"
    "})}else CHV.fn.uploader.focus();CHV.fn.uploader.boxSizer()}}if($(CHV.fn.uploader.selectors.queue_item+":not([data-id]) .preview:empty",CHV.fn.uploader.selectors.queue).first().closest("li").attr("data-id",t.uid),void 0!==t.type&&t.type.startsWith("video/")){var u=i(t.uid),m=r(t),p=URL.createObjectURL(t);l(p,function(e,a){++w,"error"===e.type?f.push({uid:t.uid,name:t.name.truncate_middle(),error:e.error}):(CHV.fn.uploader.files[t.uid].parsedMeta={title:m,width:e.videoWidth,height:e.videoHeight,mimetype:t.type},d(u,a)),c(w,s,f)})}else loadImage(t.url?t.url:t,function(e){++w;var o=i(t.uid);if("error"===e.type)f.push({uid:t.uid,name:t.name.truncate_middle(),error:"MEDIA_ERR_SRC_FORMAT"});else{n();var l="image/jpeg";if(void 0!==a.buffer){for(var u=new Uint8Array(a.buffer).subarray(0,4),m="",p=0;pCHV.obj.config.image.max_filesize.getBytes()?f.push({uid:u,name:g.name.truncate_middle()+" - "+PF.fn._s("File too big."),error:"MEDIA_ERR_FILE_SIZE"}):-1!=CHV.obj.config.upload.image_types.indexOf(p)||0!=/android/i.test(navigator.userAgent)?(i&&(g.md5=i),g.fromClipboard=1==e.clipboard,g.uid=u):f.push({uid:u,name:g.name.truncate_middle()+" - "+PF.fn._s("Invalid or unsupported file format."),error:"MEDIA_ERR_FILETYPE"})}for(u=0;u0&&0==s.length){var v="";for(u=0;u"+PF.fn.htmlEncode(f[u].name)+"";return void PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be added"),message:"
    • "+v+"
    "})}if(0==s.length)return}else{if(t=t.replace(/(<([^>]+)>)/g,"").replace(/(\[([^\]]+)\])/g,""),s=t.match_urls(),!s)return;s=s.array_unique(),s=$.map(s,function(e,t){return{uid:t,name:e,url:e}})}if($.isEmptyObject(this.files))for(u=0;u0){var i=[];for(var o in this.results.error)"object"==typeof this.results.error[o]&&(i[o]=this.results.error[o].error.message);i.length>0&&$(this.selectors.failed_result).html("
  • "+i.join("
  • ")+"
  • ")}else $(a.error,this.selectors.root).hide();if(!window.opener&&0==CHV.obj.config.upload.moderation&&CHV.obj.config.upload.redirect_single_upload&&1==Object.size(this.results.success)&&0==Object.size(this.results.error))return window.location.href=this.results.success[Object.keys(this.results.success)[0]].image.path_viewer,!1;if($("[data-text=queue-progress]",this.selectors.root).text(100),$("[data-group=uploading]",this.selectors.root).hide(),$(this.selectors.root).removeClass("queueUploading queueHasResults").addClass("queueCompleted"),$(this.selectors.queue).addClass(this.selectors.queue_complete.substring(1)),Object.size(this.results.success)>0&&$("[data-group=upload-result] textarea",this.selectors.root).exists()&&CHV.fn.fillEmbedCodes(this.results.success,CHV.fn.uploader.selectors.root,"val"),Object.size(this.results.success)>0&&Object.size(this.results.error)>0?$(a.mixed+", "+a.success,this.selectors.root).show():Object.size(this.results.success)>0?$(a.success,this.selectors.root).show():Object.size(this.results.error)>0&&$(a.error,this.selectors.root).show(),$(a.success,this.selectors.root).is(":visible")){$(a.success,this.selectors.root).find("[data-group^=user], [data-group=guest]").hide(),$(a.success,this.selectors.root).find("[data-group="+(PF.fn.is_user_logged()?"user":"guest")+"]").show();var n=Object.keys(this.results.success)[0];if(void 0!==this.results.success[n].image.album){var r=[];for(var s in this.results.success){var l=this.results.success[s].image;l.album&&l.album.id_encoded&&-1==r.indexOf(l.album.id_encoded)&&r.push(l.album.id_encoded)}var d={link:null,text:null};if(r.length<=1?(d.link=this.results.success[n].image.album.url,d.text=this.results.success[n].image.album.name):(d.link=this.results.success[n].image.user.url_albums,d.text=PF.fn._s("%s's Albums",this.results.success[n].image.user.name_short_html)),$("[data-text=upload-target]",this.selectors.root).text(d.text),$("[data-link=upload-target]",this.selectors.root).attr("href",d.link),PF.fn.is_user_logged()){var c=r.length>0?"album":"stream";$("[data-group=user-"+c+"]",this.selectors.root).show()}}}if(this.boxSizer(),this.queueStatus="done",window.opener&&void 0!==CHV.obj.opener.uploadPlugin[window.name]){if($('[data-action="copy"]',this.selectors.root).remove(),CHV.obj.opener.uploadPlugin[window.name].hasOwnProperty("autoInsert")&&CHV.obj.opener.uploadPlugin[window.name].autoInsert){var u=$(':input[name="'+CHV.obj.opener.uploadPlugin[window.name].autoInsert+'"]',CHV.fn.uploader.selectors.root),m=u.val();if(m)return window.opener.postMessage({id:window.name,message:m},"*"),void window.close()}}else $('[data-action="openerPostMessage"]',this.selectors.root).remove()}},$.extend(CHV.fn.uploader,$.extend(!0,{},CHV.obj.uploaderReset)),CHV.fn.fillEmbedCodes=function(e,t,a){void 0===a&&(a="val");var o=CHV.fn.uploader.selectors.root==t?"embed_upload_tpl":"embed_share_tpl",i=!1;$.each(e,function(e,n){if(void 0!==n){var r="id_encoded"in n?n:n.image;if(!r.medium){r.medium={};for(var s=["filename","name","width","height","extension","size","size_formatted","url"],l=0;l0&&$.each(CHV.obj.categories,function(o,i){return void 0!==e&&i.id==e||(i.url_key==$("[name=form-category-url_key]",t).val()?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("Category URL key already being used.")),$("[name=form-category-url_key]",t).highlight(),!1)))},edit:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.category.formFields,function(e,t){e="form-category-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-category-id]",e).val();return!!CHV.fn.category.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"category",editing:{}},$.each(CHV.fn.category.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-category-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=category][data-category-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=category-"+e+"]",a).html(PF.fn.htmlEncode(t))}),$("[data-link=category-url]").attr("href",t.url),CHV.obj.categories[t.id]=t,PF.fn.growl.expirable(PF.fn._s("The content has been edited."))}}},delete:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",'"'+o.name+'"'))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"category",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("Category successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=category][data-category-id="+t+"]").remove(),delete CHV.obj.categories[t]}}},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.category.validateForm()&&(PF.obj.modal.form_data={action:"add-category",category:{}},$.each(CHV.fn.category.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.category[a]=$("[name=form-category-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=dashboard-categories-list]",o=$("[data-content=category-dashboard-template]").html();$.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o),0==Object.size(CHV.obj.categories)&&(CHV.obj.categories={}),CHV.obj.categories[t.id]=t, -PF.fn.growl.call(PF.fn._s("Category %s added.",'"'+t.name+'"'))}}}},CHV.fn.ip_ban={formFields:["id","ip","expires","message"],validateForm:function(e){var t=PF.obj.modal.selectors.root,a=!1,o=$("[name=form-ip_ban-ip]",t).val();return!!CHV.fn.common.validateForm(t)&&(""!==$("[name=form-ip_ban-expires]",t).val()&&0==/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test($("[name=form-ip_ban-expires]",t).val())?(PF.fn.growl.call(PF.fn._s("Invalid expiration date.")),$("[name=form-ip_ban-expires]",t).highlight(),!1):(Object.size(CHV.obj.ip_bans)>0&&$.each(CHV.obj.ip_bans,function(t,i){return void 0!==e&&i.id==e||(i.ip==o?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("IP %s already banned.",o)),$("[name=form-ip_ban-ip]",t).highlight(),!1)))},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.ip_ban.validateForm()&&(PF.obj.modal.form_data={action:"add-ip_ban",ip_ban:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.ip_ban[a]=$("[name=form-ip_ban-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=dashboard-ip_bans-list]",o=$("[data-content=ip_ban-dashboard-template]").html();void 0!==o&&($.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o)),0==Object.size(CHV.obj.ip_bans)&&(CHV.obj.ip_bans={}),CHV.obj.ip_bans[t.id]=t,$("[data-content=ban_ip]").addClass("hidden"),$("[data-content=banned_ip]").removeClass("hidden"),PF.fn.growl.call(PF.fn._s("IP %s banned.",t.ip))},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},edit:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.ip_ban.formFields,function(e,t){e="form-ip_ban-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-ip_ban-id]",e).val();return!!CHV.fn.ip_ban.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"ip_ban",editing:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-ip_ban-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=ip_ban][data-ip_ban-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=ip_ban-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.ip_bans[t.id]=t},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},delete:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",o.ip))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"ip_ban",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("IP ban successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=ip_ban][data-ip_ban-id="+t+"]").remove(),delete CHV.obj.ip_bans[t]}}}},CHV.fn.storage={formFields:["id","name","api_id","bucket","server","service","capacity","region","key","secret","url","account_id","account_name","type_chain"],chain:["other","document","audio","video","image"],calling:!1,validateForm:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-storage-id]",e).val(),a=!0;if($.each($(":input",e),function(e,t){$(this).is(":hidden")?$(this).attr("required")&&$(this).removeAttr("required").attr("data-required",1):1==$(this).attr("data-required")&&$(this).attr("required","required"),$(this).is(":visible")&&""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),a=!1)}),!a)return PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1;var o,i=$("[name=form-storage-capacity]",e),n=i.val();return""!==n&&(0==/^[\d\.]+\s*[A-Za-z]{2}$/.test(n)||void 0===n.getBytes()?o=PF.fn._s("Invalid storage capacity value. Make sure to use a valid format."):void 0!==CHV.obj.storages[t]&&n.getBytes()0&&(t=String(t).formatBytes(2)),s.attr("value",t)),"form-storage-type_chain"===e){let e=(parseInt(t)>>>0).toString(2).paddingLeft("0".repeat(CHV.fn.storage.chain.length)).split("");CHV.fn.storage.chain.forEach(function(t,a){$("#storage_type_enable_"+t,i).removeAttr("checked").attr("checked",1==e[a])})}}),$("[data-combo-value]").addClass("soft-hidden"),$(n).removeClass("soft-hidden")},submit:function(){var e=PF.obj.modal.selectors.root;$("[name=form-storage-id]",e).val();if(!CHV.fn.storage.validateForm())return!1;PF.obj.modal.form_data={action:"edit",edit:"storage",editing:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.editing[a]=$(o,e).val()});let t=CHV.fn.storage.chain.map(function(t){return $("#storage_type_enable_"+t,e).prop("checked")?1:0});return PF.obj.modal.form_data.editing.type_chain=parseInt(t.join(""),2),!0},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=storage][data-storage-id="+t.id+"]",o=$("[data-action=toggle-storage-https]",a);$.each(t,function(e,t){$("[data-content=storage-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.storages[t.id]=t,CHV.fn.storage.toggleBoolDisplay(o,1==t.is_https)},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},add:{submit:function(){if(!CHV.fn.storage.validateForm())return!1;var e=PF.obj.modal.selectors.root;return PF.obj.modal.form_data={action:"add-storage",storage:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;"id"!=a&&(o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.storage[a]=$(o,e).val())}),!0},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=dashboard-storages-list]",o=$("[data-content=storage-dashboard-template]").html();$.each(t,function(e,t){var a=e.toUpperCase();if("is_https"==e||"is_active"==e)t=CHV.obj.storageTemplate.icon.replace("%TITLE%",CHV.obj.storageTemplate.messages[e]).replace("%ICON%",CHV.obj.storageTemplate.checkboxes[t]).replace("%PROP%",e.replace("is_",""));o=o.replace(new RegExp("%"+a+"%","g"),t||"")}),$(a).append(o),PF.fn.bindtipTip($("[data-storage-id="+t.id+"]")),0==CHV.obj.storages.length&&(CHV.obj.storages={}),CHV.obj.storages[t.id]=t},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},toggleBoolDisplay:function(e,t){var a={0:e.data("unchecked-icon"),1:e.data("checked-icon")};e.removeClass(a[0]+" "+a[1]).addClass(a[t?1:0])}},CHV.fn.common={validateForm:function(e){if(void 0===e)e=PF.obj.modal.selectors.root;var t=!0;return $.each($(":input:visible",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),!!t||(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},updateDoctitle:function(e){void 0!==CHV.obj.page_info&&(CHV.obj.page_info.pre_doctitle=e,CHV.obj.page_info.doctitle=CHV.obj.page_info.pre_doctitle+CHV.obj.page_info.pos_doctitle,document.title=CHV.obj.page_info.doctitle)}},CHV.fn.user={add:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"add-user",user:{username:$("[name=form-username]",e).val(),email:$("[name=form-email]",e).val(),password:$("[name=form-password]",e).val(),role:$("[name=form-role]",e).val()}},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){e.responseJSON;PF.fn.growl.expirable(PF.fn._s("%s added successfully.",PF.fn._n("User","Users",1)))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}},delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"user",owner:CHV.obj.resource.user.id,deleting:CHV.obj.resource.user},!0}},ban:{submit:function(){return PF.obj.modal.form_data={action:"ban",ban:"user",banning:CHV.obj.resource.user.id},!0},success:function(){}}},CHV.fn.submit_resource_approve=function(){return PF.obj.modal.form_data={action:"approve",approve:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,approving:CHV.obj.resource},!0},CHV.fn.complete_resource_approve={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){redir=CHV.obj.resource.url,window.location=redir})}},CHV.fn.submit_resource_delete=function(){return PF.obj.modal.form_data={action:"delete",delete:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,deleting:CHV.obj.resource},!0},CHV.fn.complete_resource_delete={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){var e;e="album"==CHV.obj.resource.type||"image"==CHV.obj.resource.type?CHV.obj.resource.parent_url:CHV.obj.resource.user?CHV.obj.resource.user.url:CHV.obj.resource.url,void 0!==e&&(window.location=e.replace(/\/?$/,"/")+"?deleted")})}},CHV.fn.list_editor={blink:function(e){e.addClass("ui-selecting"),setTimeout(function(){e.removeClass("ui-selecting")},200)},selectionCount:function(){var e=$(PF.obj.listing.selectors.content_listing);e.each(function(){var t=$("[data-content=pop-selection]","[data-content=list-selection][data-tab="+$(this).attr("id")+"]"),a=$(PF.obj.listing.selectors.list_item+".selected",this).length;if(all_count=$(PF.obj.listing.selectors.list_item,this).length,t.toggleClass("disabled",0==a),$("[data-text=selection-count]",t).text(a>0?a:""),"images"==e.data("list")&&a>0){var o=$(PF.obj.listing.selectors.list_item+".selected[data-flag=safe]",this).length>0,i=$(PF.obj.listing.selectors.list_item+".selected[data-flag=unsafe]",this).length>0;$("[data-action=flag-safe]",t)[(i?"remove":"add")+"Class"]("hidden"),$("[data-action=flag-unsafe]",t)[(o?"remove":"add")+"Class"]("hidden")}$(this).is(":visible")&&($("body").toggleClass("--has-selection",a>0),CHV.fn.list_editor.listMassActionSet(all_count==a?"clear":"select"))})},removeFromList:function(e,t){if(void 0!==e){e=e instanceof jQuery==0?$(e):e;var a=$(PF.obj.listing.selectors.content_listing_visible),o=e.length;e.fadeOut("fast");var i=e.first().data("type"),n=parseInt($("[data-text="+i+"-count]").text())-o;CHV.fn.list_editor.updateUserCounters(e.first().data("type"),o,"-"),e.promise().done(function(){$(document).removeClass(CHV.fn.listingViewer.selectors.bodyShown.substr(1));var i={};if(e.each(function(){$("[data-id="+$(this).data("id")+"]").each(function(){var e=$(this).closest(PF.obj.listing.selectors.content_listing).attr("id");i[e]||(i[e]=0),i[e]+=1})}),1==o?$("[data-id="+$(this).data("id")+"]").remove():e.each(function(){$("[data-id="+$(this).data("id")+"]").remove()}),PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(),CHV.fn.list_editor.selectionCount(),void 0!==t&&"string"==typeof t&&PF.fn.growl.expirable(t),$(PF.obj.listing.selectors.content_listing_pagination,a).exists()||0!=$(PF.obj.listing.selectors.list_item,a).length||(n=0),0==n)a.html(PF.obj.listing.template.empty),$(PF.obj.listing.selectors.content_listing+":not("+PF.obj.listing.selectors.content_listing_visible+")").data({empty:null,load:"ajax"}),$("[data-content=list-selection][data-tab="+a.attr("id")+"]").addClass("disabled");else if(0==$(PF.obj.listing.selectors.list_item,a).length){if($(PF.obj.listing.selectors.pad_content).height(0),$("[data-action=load-more]",a).exists())return $(PF.obj.listing.selectors.content_listing_visible).data("page",0),$("[data-action=load-more]",a).click(),void(PF.obj.listing.recolumnize=!0);var r=$("[data-pagination=next]",a);if(r.exists()){var s=r.attr("href"),l=PF.fn.deparam(s);return"page"in l&&l.page>1&&(s=s.changeURLParameterValue("page",l.page-1)),void(window.location=s)}}})}},deleteFromList:function(e){if(void 0===t)var t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been deleted."):null)},moveFromList:function(e,t){if(void 0===t)t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been moved."):null)},toggleSelectItem:function(e,t){if("boolean"!=typeof t)t=!e.hasClass("selected");var a,o,i,n=$(".viewer").is(":visible")?$("[data-type=image][data-id="+e.attr("data-id")+"]"):e,r=$("[data-action=select] .btn-icon",n);n.hasClass("unselect")||(n.addClass("unselect"),t?(Boolean(window.navigator.vibrate)&&window.navigator.vibrate([15,125,25]),n.addClass("selected"),a=r.data("icon-selected"),o=r.data("icon-unselected"),i=PF.fn._s("Unselect")):(n.removeClass("selected ui-selected"),a=r.data("icon-unselected"),o=r.data("icon-selected"),i=PF.fn._s("Select")),r.removeClass(o).addClass(a),setTimeout(function(){n.removeClass("unselect")},350),$("[data-action=select] .label",n).text(i),CHV.fn.list_editor.selectionCount())},selectItem:function(e){this.toggleSelectItem(e,!0)},unselectItem:function(e){this.toggleSelectItem(e,!1),e.removeClass("selected")},selectAll:function(e){this.selectItem($(PF.obj.listing.selectors.list_item+":visible:not(.selected)")),this.listMassActionSet("clear"),e.stopPropagation()},clearSelection:function(e){var t=$(PF.obj.listing.selectors.list_item+".selected",PF.obj.listing.selectors[e?"content_listing":"content_listing_visible"]);this.unselectItem(t),this.listMassActionSet("select")},listMassActionSet:function(e){var t="select"==e?"clear":"select",a=$("[data-text-select-all][data-action=list-"+t+"-all]:visible"),o=a.data("text-"+e+"-all");a.text(o).attr("data-action","list-"+e+"-all"),PF.fn.close_pops()},updateItem:function(e,t,a,o){if(e instanceof jQuery==0)e=$(e);var i=e.data("type"),n="image"==i?t.album:t;if(this.addAlbumtoModals(n),$("option[value="+n.id_encoded+"]","[name=form-album-id]").html(PF.fn.htmlEncode(n.name_with_privacy_readable_html)),void 0===a)a="edit";if("edit"==a||"move"==a){if("move"==a&&"album"==CHV.obj.resource.type)return void CHV.fn.list_editor.moveFromList(e,o);e.attr("data-description",t.description),"image"==i?(void 0!==t.title&&(e.attr("data-title",t.title),e.find("[title]").attr("title",t.title),$("[data-text=image-title]",e).text(PF.fn.htmlEncode(t.title))),void 0!==t.title_truncated&&$("[data-text=image-title-truncated]",e).html(PF.fn.htmlEncode(t.title_truncated)),void 0!==t.category_id&&e.attr("data-category-id",t.category_id),e.attr({"data-album-id":n.id_encoded,"data-flag":1==t.nsfw?"unsafe":"safe"}),$("[data-content=album-link]",e).attr("href",n.url)):e.attr({"data-privacy":n.privacy,"data-password":n.password,"data-name":n.name}),e.attr("data-privacy",n.privacy),$("[data-text=album-name]",e).html(PF.fn.htmlEncode(n.name)),PF.fn.growl.expirable("edit"==a?PF.fn._s("The content has been edited."):PF.fn._s("The content has been moved."))}},addAlbumtoModals:function(e){var t=!1;$("[name=form-album-id]","[data-modal]").each(function(){e.id_encoded&&!$("option[value="+e.id_encoded+"]",this).exists()&&($(this).append('"),t=!0)}),t&&CHV.fn.list_editor.updateUserCounters("album",1,"+")},updateAlbum:function(e){$("[data-id="+e.id_encoded+"]").each(function(){""!==e.html&&($(this).after(e.html),$(this).remove())})},updateUserCounters:function(e,t,a){if(void 0===a)a="+";var o,i,n=$("[data-text="+e+"-count]"),r=$("[data-text="+e+"-label]"),s=(t=parseInt(t),parseInt(n.html()));switch(a){case"+":o=s+t;break;case"-":o=s-t;break;case"=":o=t}i=o-s;var l=$("[data-text=total-"+n.data("text")+"]"),d=$("[data-text="+l.data("text")+"-label]"),c=parseInt(l.html()),u=c+i;n.text(o),l.text(u),r.text(r.data(1==o?"label-single":"label-plural")),d.text(r.data(1==u?"label-single":"label-plural"))},updateMoveItemLists:function(e,t,a){if(CHV.fn.list_editor.clearSelection(),/image/.test(t))"image"==t?CHV.fn.list_editor.updateItem("[data-type=image][data-id="+a.data("id")+"]",e.image,"move"):(a.each(function(){CHV.fn.list_editor.updateItem("[data-type=image][data-id="+$(this).data("id")+"]",e,"move",!1)}),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")));else{if(CHV.fn.list_editor.moveFromList(a,!1),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")),e.album)if(void 0!==e.albums_old?"true"==e.request.album.new:"true"==e.request.editing.new_album){CHV.fn.list_editor.addAlbumtoModals(e.album);var o=parseInt($("[data-text=album-count]").text())-1;$(PF.obj.listing.selectors.pad_content).each(function(){var t=$(this).find(PF.obj.listing.selectors.list_item).length;if(0!=t){var a=PF.fn.deparam($(this).closest(PF.obj.listing.selectors.content_listing).data("params"));"date_desc"!=a.sort&&o!=t||$(this)["date_desc"==a.sort?"prepend":"append"](e.album.html)}})}else CHV.fn.list_editor.updateAlbum(e.album);PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(0)}}},CHV.fn.import={errorHandler:function(e){PF.fn.growl.call(e.error.message)},reset:function(e){e=parseInt(e);CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importReset",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}})},updateStats:function(e){e=parseInt(e);"readyState"in CHV.obj.import.working[e].stats&&4!=CHV.obj.import.working[e].stats.readyState?console.error("Aborting stats timeout call (previous call is still not ready)"):(CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importStats",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}}))},delete:{submit:function(e){return PF.obj.modal.form_data={action:"importDelete",id:e},!0},deferred:{success:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s("Import ID %s removed",t.import.id)),$("[data-id="+t.import.id+"]",CHV.obj.import.sel.root).remove(),1==$("li",CHV.obj.import.sel.root).size()&&$(CHV.obj.import.sel.root).addClass("hidden")},error:function(e){CHV.fn.import.errorHandler(e.responseJSON)}}},parseTemplate:function(e,t){var a=CHV.obj.import.rowTpl;for(var o in CHV.obj.import.importTr)void 0!==e[o]&&(a=a.replaceAll("%"+o+"%",e[o]));a=a.replaceAll("%parse%",e.options.root),a=a.replaceAll("%shortParse%",e.options.root.charAt(0)),a=a.replaceAll("%displayStatus%",CHV.obj.import.statusesDisplay[e.status]);var i=$($.parseHTML(a)).attr("data-object",JSON.stringify(e));return i}},CHV.fn.Palettes={timeout:{},get:function(){return($("html").get(0).className.match(/(^|\s)palette-\S+/g)||[]).join(" ")},set:function(e){$("html").attr("data-palette",e).removeClass(this.get()).addClass("palette-"+e)},preview:function(e){$("html").removeClass(this.get()).addClass("palette-"+e)},save:function(){clearTimeout(this.timeout),this.timeout=setTimeout(function(){$.ajax({type:"POST",data:{action:"paletteSet",palette_id:CHV.obj.config.palettesId[$("html").attr("data-palette")]},cache:!1})},400)}},CHV.fn.license={set:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"set-license-key",key:$("[name=chevereto-license-key]",e).val()},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){let t=e.responseJSON,a=$("[data-action=upgrade]");if("free"===CHV.obj.system_info.edition)return a.removeClass("hidden"),void a.trigger("click");PF.fn.growl.call(PF.fn._s(t.success.message))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}}}; \ No newline at end of file +$(function(){function e(e){e=e.originalEvent;var t=!1;if(e.dataTransfer.types)for(var a=0;ae&&(a.height(e),a.closest(".antiscroll-wrap").antiscroll())}}function a(e){e.addClass("list-item-play-gif--loading");var t=e.closest(PF.obj.listing.selectors.list_item),a=$(".image-container",t),o=$("img",a),i=o.attr("src"),n=".md",r=i.lastIndexOf(n);if(-1==r)n=".th",r=i.lastIndexOf(n);var s=i.substr(0,r)+i.substr(r+n.length,i.length);a.append(a.html()),$load=t.find(".image-container img").eq(1).attr("src",s).addClass("hidden"),$load.imagesLoaded(function(){e.remove(),o.remove(),$("img",a).show(),$(this.elements).removeClass("hidden")})}function o(e,t){var a=$(e).closest(PF.obj.listing.selectors.list_item);CHV.fn.list_editor.blink(a),CHV.fn.list_editor.toggleSelectItem(a),PF.fn.keyFeedback.spawn(t),t.preventDefault(),t.stopPropagation()}var i;if($(window).resize(function(e){clearTimeout(i),i=setTimeout(function(){CHV.fn.uploader.boxSizer(),CHV.fn.bindSelectableItems(),CHV.fn.listingViewer.placeholderSizing(),prevWidth=$(window).width(),prevHeight=$(window).height()},10)}),window.opener&&($(window).on("load",function(e){window.opener.postMessage({id:window.name,requestAction:"postSettings"},"*")}),$(window).on("message",function(e){var t=e.originalEvent.data;void 0!==t.id&&void 0!==t.settings&&window.name===t.id&&(CHV.obj.opener.uploadPlugin[t.id]=t.settings)})),$("#home-cover, #maintenance-wrapper, #login").exists()){var n=$("#maintenance-wrapper").exists()?$("#maintenance-wrapper").css("background-image").slice(4,-1).replace(/^\"|\"$/g,""):$(".home-cover-img","#home-cover-slideshow").first().attr("data-src");function r(){$("body").addClass("load"),$("#maintenance-wrapper").exists()||$(".home-cover-img","#home-cover-slideshow").first().css("background-image","url("+n+")").addClass("animate-in--alt").removeAttr("data-src"),setTimeout(function(){setTimeout(function(){$("body").addClass("loaded")},1200),setTimeout(function(){l()},7e3)},600)}var s=function(){setTimeout(function(){l()},8e3)};function l(){var e=$(".home-cover-img[data-src]","#home-cover-slideshow").first(),t=$(".home-cover-img","#home-cover-slideshow");if(0==e.length){if(1==t.length)return;t.first().removeClass("animate-in"),$("#home-cover-slideshow").append(t.first()),setTimeout(function(){$(".home-cover-img:last","#home-cover-slideshow").addClass("animate-in")},20),setTimeout(function(){$(".home-cover-img:not(:last)","#home-cover-slideshow").removeClass("animate-in")},4e3),s()}else{var a=e.attr("data-src");$("").attr("src",a).on("load error",function(){$(this).remove(),e.css("background-image","url("+a+")").addClass("animate-in").removeAttr("data-src"),setTimeout(function(){$(".home-cover-img:not(:last)","#home-cover-slideshow").removeClass("animate-end animate-in--alt")},2e3),s()})}}n?$("").attr("src",n).on("load error",function(){$(this).remove(),r()}):r()}var d,c=CHV.fn.uploader.selectors.root,u=CHV.fn.uploader.selectors.queue,m=$(c),f=$(u);if($(document).on("click","[data-action=top-bar-upload]",function(e){$("body").is("#upload")||"js"!==$(this).data("link")||CHV.fn.uploader.toggle({reset:!1}),"page"!==$(this).data("link")&&(e.preventDefault(),e.stopPropagation())}),$(document).on("click mouseover mouseout","[data-action=palette]",function(e){clearTimeout(d),e.preventDefault();var t=$(this).data("palette");switch(e.type){case"mouseover":d=setTimeout(function(){CHV.fn.Palettes.preview(t)},1e3);break;case"mouseout":t=$("html").attr("data-palette")||"",CHV.fn.Palettes.set(t);break;case"click":e.stopPropagation(),$("[data-action=palette]","[data-content=palettes]").removeClass("current"),$(this).addClass("current"),CHV.fn.Palettes.set(t),CHV.fn.Palettes.save()}}),$(document).on("change","#palettes",function(e){CHV.fn.Palettes.set(this.value),CHV.fn.Palettes.save()}),$("[data-action=close-upload]",m).click(function(){m.is(":animated")||$("[data-action=top-bar-upload]","#top-bar").trigger("click")}),$("[data-action=reset-upload]",m).click(function(){CHV.fn.uploader.isUploading&&$("[data-action=cancel-upload-remaining], [data-action=cancel-upload]",m).trigger("click"),CHV.fn.uploader.reset()}),$("[data-action=cancel-upload-remaining], [data-action=cancel-upload]",m).click(function(){CHV.fn.uploader.isUploading=!1,$("[data-action=cancel]",f).click(),Object.size(CHV.fn.uploader.results.success)>0?CHV.fn.uploader.displayResults():CHV.fn.uploader.reset()}),$(document).on("click","[data-action=upload-privacy]:not(disabled)",function(e){e.isDefaultPrevented()||(current_privacy=$(this).data("privacy"),target_privacy="public"==current_privacy?"private":"public",this_lock=$(".icon",this).data("lock"),this_unlock=$(".icon",this).data("unlock"),$(".icon",this).removeClass(this_lock+" "+this_unlock).addClass("public"==current_privacy?this_lock:this_unlock),$(this).data("privacy",target_privacy),$("[data-action=upload-privacy-copy]").html($("[data-action=upload-privacy]").html()),$upload_button=$("[data-action=upload]",m),$upload_button.text($upload_button.data(target_privacy)),$(this).tipTip("hide"))}),$(CHV.fn.uploader.selectors.file+", "+CHV.fn.uploader.selectors.camera).on("change",function(e){$(CHV.fn.uploader.selectors.root).data("shown")?CHV.fn.uploader.add(e):CHV.fn.uploader.toggle({callback:function(e){CHV.fn.uploader.add(e)}},e)}).on("click",function(e){!$(this).data("login-needed")||PF.fn.is_user_logged()}),$(CHV.fn.uploader.selectors.root).exists()&&($("body").on({dragenter:function(t){if(t.preventDefault(),!e(t))return!1;$(CHV.fn.uploader.selectors.dropzone).exists()||$("body").append($('
    ').css({width:"100%",height:"100%",position:"fixed",zIndex:1e3,left:0,top:0}))}}),$(document).on({dragover:function(t){if(t.preventDefault(),!e(t))return!1;$(CHV.fn.uploader.selectors.root).data("shown")||CHV.fn.uploader.toggle({reset:!1})},dragleave:function(e){$(CHV.fn.uploader.selectors.dropzone).remove(),$.isEmptyObject(CHV.fn.uploader.files)&&CHV.fn.uploader.toggle()},drop:function(e){e.preventDefault(),CHV.fn.uploader.add(e),$(CHV.fn.uploader.selectors.dropzone).remove()}},CHV.fn.uploader.selectors.dropzone)),$(document).on("keyup change","[data-action=resize-combo-input]",function(e){var t=$(this).closest("[data-action=resize-combo-input]"),a=$("[name=form-width]",t),o=$("[name=form-height]",t),i=a.data("initial")/o.data("initial"),n={width:Math.round(a.prop("value")/i),height:Math.round(o.prop("value")*i)};$(e.target).is(a)?o.prop("value",Math.round(n.width)):a.prop("value",Math.round(n.height))}),$(document).on("click",u+" [data-action=edit]",function(){for(var e=$(this).closest("li"),t=e.data("id"),a=CHV.fn.uploader.files[t],o=a.type.substring(0,a.type.indexOf("/")),i=PF.obj.modal.selectors.root,n=$.extend({},a.formValues||a.parsedMeta),r=["album_id","category_id","nsfw"],s=0;se.height&&(r.height=e.height,r.width=Math.round(r.height*s)),r.width>e.width&&(r.width=e.width,r.height=Math.round(r.width/s)),$.each(n,function(e,t){var n="[name=form-"+e.replace(/_/g,"-")+"]",s=$(n,i);if(!s.exists())return!0;if(s.is(":checkbox"))s.prop("checked",s.attr("value")==t);else if(s.is("select")){var l=s.find("[value="+t+"]");l.exists()||(l=s.find("option:first")),l.prop("selected",!0)}else s.prop("value",t);if("width"==e||"height"==e){var d=r[e],c=a.parsedMeta[e]>d?d:a.parsedMeta[e];s.prop("max",c).data("initial",a.parsedMeta[e]).prop("value",c),"image"!==o&&s.prop("disabled",!0).closest("[data-action=resize-combo-input]").hide()}}),"image/gif"!==a.parsedMeta.mimetype&&$("[ data-content=animated-gif-warning]",i).remove(),$(".image-preview",i).append($("",{class:"canvas checkered-background"}));var l=$(".queue-item[data-id="+t+"] .preview .canvas")[0],d=$(".image-preview .canvas",i)[0];d.width=l.width,d.height=l.height;var c=d.getContext("2d");c.drawImage(l,0,0)},confirm:function(){if(PF.fn.form_modal_has_changed()){var e=!1;return $.each(["width","height"],function(t,a){var o=$("[name=form-"+a+"]",i),n=parseInt(o.val()),r=parseInt(o.attr("min")),s=parseInt(o.attr("max"));if(n>s||n-1&&CHV.fn.uploader.clipboardImages.splice(r,1)}delete CHV.fn.uploader.files[a],CHV.fn.uploader.queueSize(),0==Object.size(CHV.fn.uploader.files)?"success"in CHV.fn.uploader&&"results"in CHV.fn.uploader&&(0!=Object.size(CHV.fn.uploader.results.success)||0!=Object.size(CHV.fn.uploader.results.error))||CHV.fn.uploader.reset():i&&0!==$("li.waiting",t).first().length&&CHV.fn.uploader.upload($("li.waiting",t).first())}}),$(document).on("click","[data-action=upload]",function(){void 0!==CHV.obj.logged_user||!1!==$("#upload-tos").prop("checked")?($("[data-group=upload], [data-group=upload-queue-ready]",m).hide(),m.removeClass("queueReady").addClass("queueUploading").find("[data-group=uploading]").show(),CHV.fn.uploader.queueSize(),CHV.fn.uploader.canAdd=!1,$queue_items=$("li",f),$queue_items.addClass("uploading waiting"),CHV.fn.uploader.timestamp=(new Date).getTime(),CHV.fn.uploader.upload($queue_items.first("li"))):PF.fn.growl.call("You must agree to the terms and privacy policy")}),$("body#user").exists()&&PF.obj.listing.query_string.page>1){var p=History.getState();if(p.data&&void 0!==p.data.scrollTop)$(window).scrollTop()!==p.data.scrollTop&&$(window).scrollTop(p.data.scrollTop);else{var g=$("#background-cover").height()-160;$("html, body").animate({scrollTop:g},0)}}$("#top-bar-shade").exists()&&$("#top-bar-shade").css("opacity")&&$("#top-bar-shade").data("initial-opacity",Number($("#top-bar-shade").css("opacity"))),CHV.fn.bindSelectableItems(),$("body#image").exists()&&($(CHV.obj.image_viewer.selector+" [data-load=full]").length>0&&($(document).on("click",CHV.obj.image_viewer.loader,function(e){CHV.fn.viewerLoadImage()}),$(CHV.obj.image_viewer.loader).data("size")>CHV.obj.config.image.load_max_filesize.getBytes()?$(CHV.obj.image_viewer.loader).css("display","block"):CHV.fn.viewerLoadImage()),new MutationObserver(()=>{$("html").height()>$(window).innerHeight()&&!$("html").hasClass("scrollbar-y")&&($("html").addClass("scrollbar-y"),$(document).data({width:$(this).width(),height:$(this).height()}))}).observe(document,{childList:!0}),$(document).on("keyup",function(e){var t=$(e.target),a=e.originalEvent;if(!t.is(":input")&&CHV.obj.image_viewer.$navigation.exists()&&("ArrowLeft"==a.key||"ArrowRight"==a.key)){var o=$("[data-action="+("ArrowLeft"==a.key?"prev":"next")+"]",CHV.obj.image_viewer.$navigation).attr("href");void 0!==o&&""!==o&&(window.location=$("[data-action="+("ArrowLeft"==a.key?"prev":"next")+"]",CHV.obj.image_viewer.$navigation).attr("href"))}})),$(document).on("click",CHV.obj.image_viewer.container+" img",function(e){$(CHV.obj.image_viewer.loader).exists()?$(CHV.obj.image_viewer.loader).trigger("click"):$(this).toggleClass("zoom-natural")}).on("contextmenu",CHV.obj.image_viewer.container,function(e){if(!CHV.obj.config.image.right_click)return e.preventDefault(),!1}),$(document).on("contextmenu","html.device-mobile a.image-container",function(e){e.preventDefault(),e.stopPropagation()}),$(document).on("keyup","input[data-dashboard-tool]",function(e){if(13==e.keyCode){var t=$("[data-action="+$(this).data("dashboard-tool")+"]");t.click()}}),$(document).on("click","[data-action=dashboardTool]",function(e){e.preventDefault();var t=$(this).data("tool"),a=$(this).data("data"),o=$.extend({},a),i={};for(var n in o){var r=$(o[n]).val();if($(o[n]).prop("disabled")||!r)return;i[n]=$(o[n]),o[n]=r}o.action=t;var s={type:"GET",cache:!1};s.data=o;var l,d=$(this).closest(".input-label"),c=!0;if(0!=c){for(var n in i);PF.fn.loading.inline($(".loading",d),{size:"small",valign:"middle"}),d.find(".btn .text").hide(),$.ajax(s).complete(function(e){var t=e.responseJSON;$(".loading",d).empty(),d.find(".btn .text").show(),200!=t.status_code||void 0===t.success.redirURL?PF.fn.growl.call(t[200==t.status_code?"success":"error"].message):window.location.href=t.success.redirURL})}else PF.fn.growl.expirable(l)}),$(document).on("click","[data-action=openerPostMessage]",function(e){if(window.opener){e.preventDefault();var t="data-action-target",a=$($(this).is("["+t+"]")?$(this).attr(t):this),o=a[a.is(":input")?"val":"html"]();window.opener.postMessage({id:window.name,message:o},"*")}}),$(document).on("click","[data-action=list-tools] [data-action]",function(e){var t=$(e.target),a=t.closest("[data-id]");a&&a.find("[data-action=select]").exists()&&(e.ctrlKey||e.metaKey)&&e.altKey&&(CHV.fn.list_editor.toggleSelectItem(a,!a.hasClass("selected")),e.preventDefault(),e.stopPropagation())}),PF.fn.listing.ajax.callback=function(e){200===e.status&&CHV.fn.list_editor.listMassActionSet("select")},$(document).on("click","[data-action=list-select-all]",function(e){if($(this).closest(".disabled").exists())return!1;CHV.fn.list_editor.selectAll(e)}),$(document).on("click","[data-action=list-clear-all]",function(){CHV.fn.list_editor.clearSelection()}),$(document).on("click","[data-action=share]",function(e){if(!$(PF.obj.modal.selectors.box).exists()){var t,a,o,i,n,r;t=$(".viewer:visible").exists()?$(PF.obj.listing.selectors.list_item+"[data-id="+$(".viewer").attr("data-id")+"]",".content-listing").first():$(this).closest(PF.obj.listing.selectors.list_item).first();var s="#modal-share";if(t.exists()){if(r=CHV.fn.modal.getTemplateWithPreview(s,t),void 0===t.attr("data-type"))return void console.error("Error: data-type not defined");n=t.find(".list-item-desc-title-link").first(),o=t.find(".image-container img").first().attr("src"),a=t.attr("data-url-short")}else r=$(s).html(),dealing_with=CHV.obj.resource.type,a=window.location.href,o=$("#image-viewer-container").find("img").first().attr("src"),n=$(".header > h1 > a");i=PF.fn.htmlEncode(n.text());var l=t.data("privacy")||CHV.obj.resource.privacy,d="";switch(l){case"private_but_link":d=PF.fn._s("Note: This content is private but anyone with the link will be able to see this.");break;case"password":d=PF.fn._s("Note: This content is password protected. Remember to pass the content password to share.");break;case"private":d=PF.fn._s('Note: This content is private. Change privacy to "public" to share.')}r=r.replaceAll("__url__",a).replaceAll("__image__",o).replaceAll("__title__",i).replaceAll("__privacy__",l).replaceAll("__privacy_notes__",d),PF.fn.modal.call({type:"html",buttons:!1,template:r})}}),$(document).on("click","[data-action=list-tools] [data-action]",function(e){if(e.isPropagationStopped())return!1;var t;t=$(".viewer:visible").exists()?$(PF.obj.listing.selectors.list_item+"[data-id="+$(".viewer").attr("data-id")+"]",".content-listing").first():$(this).closest(PF.obj.listing.selectors.list_item).first();var a=t.attr("data-id");if(void 0!==t.attr("data-type")){o=t.attr("data-type");var o,i=$("[data-type="+o+"][data-id="+a+"]");switch($(this).data("action")){case"select":CHV.fn.list_editor.toggleSelectItem(t,!t.hasClass("selected"));break;case"edit":var n="[data-modal=form-edit-single]";switch(o){case"image":$("[name=form-image-title]",n).attr({value:t.attr("data-title"),autocomplete:"off"}),$("[name=form-image-description]",n).html(PF.fn.htmlEncode(t.data("description"))),$("[name=form-album-id]",n).find("option").removeAttr("selected"),$("[name=form-album-id]",n).find("[value="+t.data("image"==o?"album-id":"id")+"]").attr("selected",!0),$("[name=form-category-id]",n).find("option").removeAttr("selected"),$("[name=form-category-id]",n).find("[value="+t.data("category-id")+"]").attr("selected",!0),$("[name=form-nsfw]",n).attr("checked","unsafe"==t.data("flag")),$("[name=form-album-name]",n).attr({value:"",autocomplete:"off"}),$("[name=form-album-description]",n).html(""),$("[name=form-privacy]",n).find("option").removeAttr("selected");break;case"album":$("[data-action=album-switch]",n).remove(),$("[name=form-album-name]",n).attr({value:t.data("name"),autocomplete:"off"}),$("[name=form-album-description]",n).html(PF.fn.htmlEncode(t.data("description"))),$("[name=form-privacy]",n).find("option").removeAttr("selected"),$("[name=form-privacy]",n).find("[value="+t.data("privacy")+"]").attr("selected",!0),"password"==t.data("privacy")?($("[data-combo-value=password]").show(),$("[name=form-album-password]",n).attr("value",t.data("password"))):($("[data-combo-value=password]").hide(),$("[name=form-album-password]",n).attr("value",""))}PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview(n,t),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.updateItem("[data-type="+o+"][data-id="+a+"]",e.responseJSON[o],"edit")}}},confirm:function(){var e=$(PF.obj.modal.selectors.root);if(("image"==o||"album"==o)&&$("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val())return PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1;if(PF.fn.form_modal_has_changed()){switch(PF.obj.modal.form_data={action:"edit",edit:t.data("type"),single:!0,owner:CHV.obj.resource.user.id,editing:{id:a,description:$("[name=form-"+o+"-description]",e).val()}},o){case"image":PF.obj.modal.form_data.editing.title=$("[name=form-image-title]",e).val(),PF.obj.modal.form_data.editing.category_id=$("[name=form-category-id]",e).val()||null,PF.obj.modal.form_data.editing.nsfw=$("[name=form-nsfw]",e).prop("checked")?1:0;break;case"album":PF.obj.modal.form_data.editing.name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.privacy&&(PF.obj.modal.form_data.editing.password=$("[name=form-album-password]",e).val())}return PF.obj.modal.form_data.editing.new_album=$("[data-content=form-new-album]",e).is(":visible"),PF.obj.modal.form_data.editing.new_album?(PF.obj.modal.form_data.editing.album_name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.album_privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.album_privacy&&(PF.obj.modal.form_data.editing.album_password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.editing.album_description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.editing.album_id=$("[name=form-album-id]",e).val(),!0}PF.fn.modal.close()}});break;case"create-album":case"move":var r="move"==$(this).data("action")?"form-move-single":"form-create-album";n="[data-modal="+r+"]";$("[name=form-album-id]",n).find("option").removeAttr("selected"),$("[name=form-album-id]",n).find("[value="+t.data("image"==o?"album-id":"id")+"]").attr("selected",!0),$("[name=form-album-name]",n).attr({value:"",autocomplete:"off"}),$("[name=form-album-description]",n).html(""),$("[name=form-privacy]",n).find("option").removeAttr("selected"),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview(n,i),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.updateMoveItemLists(e.responseJSON,o,i)}}},load:function(){},confirm:function(){var e=$(PF.obj.modal.selectors.root);return $("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val()?(PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1):PF.fn.form_modal_has_changed()?(PF.obj.modal.form_data={action:"edit",edit:t.data("type"),single:!0,owner:CHV.obj.resource.user.id,editing:{id:a}},PF.obj.modal.form_data.editing.new_album=$("[data-content=form-new-album]",e).is(":visible"),PF.obj.modal.form_data.editing.new_album?(PF.obj.modal.form_data.editing.album_name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.album_privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.album_privacy&&(PF.obj.modal.form_data.editing.album_password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.editing.album_description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.editing.album_id=$("[name=form-album-id]",e).val(),!0):void PF.fn.modal.close()}});break;case"approve":PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview("[data-modal=form-approve-single]",t),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.removeFromList(t,PF.fn._s("The content has been approved."))}}},confirm:function(){return PF.obj.modal.form_data={action:"approve",single:!0,approve:t.data("type"),approving:{id:a}},!0}});break;case"delete":PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreview("[data-modal=form-delete-single]",t),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){"album"==o&&($("[name=form-album-id]","[data-modal]").find("[value="+a+"]").remove(),CHV.fn.list_editor.updateUserCounters("image",e.responseJSON.success.affected,"-")),CHV.fn.list_editor.deleteFromList(t),CHV.fn.listingViewer.close()}}},confirm:function(){return PF.obj.modal.form_data={action:"delete",single:!0,delete:t.data("type"),deleting:{id:a}},!0}});break;case"flag":$.ajax({type:"POST",data:{action:"edit",edit:"image",single:!0,editing:{id:a,nsfw:"unsafe"==t.data("flag")?0:1}}}).complete(function(e){var t=e.responseJSON;if(200==t.status_code){var a=1==t.image.nsfw?"unsafe":"safe";i.attr("data-flag",a).data("flag",a)}else PF.fn.growl.call(t.error.message);CHV.fn.list_editor.selectionCount()})}}else console.error("Error: data-type not defined")}),$(".pop-box-menu a","[data-content=list-selection]").click(function(e){var t=$(PF.obj.listing.selectors.content_listing_visible);if(void 0!==t.data("list")){dealing_with=t.data("list");var a=$(PF.obj.listing.selectors.list_item+".selected",t),o=$.map(a,function(e,t){return $(e).data("id")});switch(PF.fn.close_pops(),"list-select-all"!==$(this).data("action")&&e.stopPropagation(),$(this).data("action")){case"get-embed-codes":var i="[data-modal=form-embed-codes]",n=[];$("textarea",i).html(""),a.each(function(){var e={image:JSON.parse(decodeURIComponent($(this).data("object")))};"url"in e.image&&n.push(e)}),CHV.fn.fillEmbedCodes(n,i,"html"),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreviews(i,a),buttons:!1});break;case"clear":CHV.fn.list_editor.clearSelection();break;case"list-select-all":CHV.fn.list_editor.selectAll(e);break;case"move":case"create-album":i="move"==$(this).data("action")?"form-move-multiple":"form-create-album";var r="[data-modal="+i+"]",s=/image/.test(dealing_with)?"album-id":"id";$("[name=form-album-id]",r).find("[value=null]").remove(),$("[name=form-album-id]",r).find("option").removeAttr("selected"),$("[name=form-album-name]",r).attr({value:"",autocomplete:"off"}),$("[name=form-album-description]",r).html(""),$("[name=form-privacy]",r).find("option").removeAttr("selected");var l=a.first().data(s),d=!0;a.each(function(){if($(this).data(s)!==l)return d=!1,!1}),d||$("[name=form-album-id]",r).prepend('"),$("[name=form-album-id]",r).find("[value="+(d?a.first().data(s):"null")+"]").attr("selected",!0),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreviews(r,a),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.updateMoveItemLists(e.responseJSON,dealing_with,a)}}},load:function(){},confirm:function(){var e=$(PF.obj.modal.selectors.root),t=!1;if($("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val())return PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1;if($("[data-content=form-new-album]",e).is(":visible")&&(t=!0),PF.fn.form_modal_has_changed()){return PF.obj.modal.form_data={action:t?"create-album":"move",type:dealing_with,owner:CHV.obj.resource.user.id,multiple:!0,album:{ids:o,new:t}},t?(PF.obj.modal.form_data.album.name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.album.privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.album.privacy&&(PF.obj.modal.form_data.album.password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.album.description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.album.id=$("[name=form-album-id]",e).val(),!0}PF.fn.modal.close()}});break;case"approve":PF.fn.modal.call({template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-approve-multiple]",a),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){CHV.fn.list_editor.removeFromList(a,PF.fn._s("The content has been approved."))}}},confirm:function(){return PF.obj.modal.form_data={action:"approve",from:"list",approve:dealing_with,multiple:!0,approving:{ids:o}},!0}});break;case"delete":PF.fn.modal.call({template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-delete-multiple]",a),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){"albums"==dealing_with&&(a.each(function(){$("[name=form-album-id]","[data-modal]").find("[value="+$(this).data("id")+"]").remove()}),CHV.fn.list_editor.updateUserCounters("image",e.responseJSON.success.affected,"-")),CHV.fn.list_editor.deleteFromList(a)}}},confirm:function(){return PF.obj.modal.form_data={action:"delete",from:"list",delete:dealing_with,multiple:!0,deleting:{ids:o}},!0}});break;case"assign-category":var c=a.first().data("category-id"),u=!0;a.each(function(){if($(this).data("category-id")!==c)return u=!1,!1}),PF.fn.modal.call({type:"html",template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-assign-category]",a),forced:!0,ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){a.each(function(){var t=e.responseJSON;$(this).data("category-id",t.category_id)}),CHV.fn.list_editor.clearSelection()}}},confirm:function(){var e=$(PF.obj.modal.selectors.root),t=$("[name=form-category-id]",e).val()||null;return u&&c==t?(PF.fn.modal.close(function(){CHV.fn.list_editor.clearSelection()}),!1):(PF.obj.modal.form_data={action:"edit-category",from:"list",multiple:!0,editing:{ids:o,category_id:t}},!0)}});break;case"flag-safe":case"flag-unsafe":var m=$(this).data("action"),f="flag-safe"==m?"safe":"unsafe";PF.fn.modal.call({template:CHV.fn.modal.getTemplateWithPreviews("[data-modal=form-"+m+"]",a),button_submit:PF.fn._s("Confirm"),ajax:{url:PF.obj.config.json_api,deferred:{success:function(e){a.each(function(){$(this).removeClass("safe unsafe").addClass(f).removeAttr("data-flag").attr("data-flag",f).data("flag",f)}),CHV.fn.list_editor.clearSelection()}}},confirm:function(){return PF.obj.modal.form_data={action:m,from:"list",multiple:!0,editing:{ids:o,nsfw:"flag-safe"==m?0:1}},!0}})}return!PF.fn.isDevice(["phone","phablet"])&&void 0}console.error("Error: data-list not defined")}),$(document).on("click","[data-action=disconnect]",function(){var e=$(this),t=e.data("connection");PF.fn.modal.confirm({message:e.data("confirm-message"),ajax:{data:{action:"disconnect",disconnect:t,user_id:CHV.obj.resource.user.id},deferred:{success:function(e){var a=e.responseJSON;$("[data-connection="+t+"]").fadeOut(function(){$($("[data-connect="+t+"]")).fadeIn(),$(this).remove(),0==$("[data-connection]").length&&$("[data-content=empty-message]").show(),PF.fn.growl.expirable(a.success.message)}),""!==a.success.redirect&&(window.location.href=a.success.redirect)},error:function(e){var t=e.responseJSON;PF.fn.growl.call(t.error.message)}}}})}),$(document).on("click","[data-action=delete-avatar]",function(){var e=$(".user-settings-avatar"),t=$(".loading-placeholder",e),a=$("#top-bar");t.removeClass("hidden"),PF.fn.loading.inline(t,{center:!0}),$.ajax({type:"POST",data:{action:"delete",delete:"avatar",owner:CHV.obj.resource.user.id}}).complete(function(o){t.addClass("hidden").empty(),200==o.status?(CHV.obj.logged_user.id==CHV.obj.resource.user.id&&($("img.user-image",a).hide(),$(".default-user-image",a).removeClass("hidden")),$(".default-user-image",e).removeClass("hidden").css({opacity:0}),$('[data-action="delete-avatar"]',e).parent().addClass("soft-hidden"),$("img.user-image",e).fadeOut(function(){$(".default-user-image",e).animate({opacity:1})})):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}),$(document).on("change","[data-content=user-avatar-upload-input]",function(e){e.preventDefault(),e.stopPropagation();var t=$(this),a=$(".user-settings-avatar"),o=$(".loading-placeholder",".user-settings-avatar"),i=$("#top-bar"),n=$(this)[0].files[0];if(!t.data("uploading"))if(0!=/^image\/.*$/.test(n.type))if(n.size>CHV.obj.config.user.avatar_max_filesize.getBytes())PF.fn.growl.call(PF.fn._s("Please select a picture of at most %s size.",CHV.obj.config.user.avatar_max_filesize));else{var r=$('[data-action="delete-avatar"]');o.removeClass("hidden"),PF.fn.loading.inline(o,{center:!0}),t.data("uploading",!0);var s=new FormData;s.append("source",n),s.append("action","upload"),s.append("type","file"),s.append("what","avatar"),s.append("owner",CHV.obj.resource.user.id),s.append("auth_token",PF.obj.config.auth_token),avatarXHR=new XMLHttpRequest,avatarXHR.open("POST",PF.obj.config.json_api,!0),avatarXHR.send(s),avatarXHR.onreadystatechange=function(){if(4==this.readyState){var e="json"!==this.responseType?JSON.parse(this.response):this.response,n=e.success.image;o.addClass("hidden").empty(),200==this.status?(change_avatar=function(e){r.parent().removeClass("soft-hidden"),$("img.user-image",e).attr("src",n.url).removeClass("hidden").show()},hide_default=function(e){$(".default-user-image",e).addClass("hidden")},hide_default(a),$(".btn-alt",a).closest("div").show(),change_avatar(a),CHV.obj.logged_user.id==CHV.obj.resource.user.id&&(change_avatar(i),hide_default(i)),PF.fn.growl.expirable(PF.fn._s("Profile image updated."))):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later.")),t.data("uploading",!1)}} +}else PF.fn.growl.call(PF.fn._s("Please select a valid image file type."))}),$(document).on("change","[data-content=user-background-upload-input]",function(e){e.preventDefault(),e.stopPropagation();var t=$(this),a=$("[data-content=user-background-cover]"),o=$("[data-content=user-background-cover-src]"),i=$(".loading-placeholder",a),n=($("#top-bar"),$(this)[0].files[0]);if(!t.data("uploading"))if(0!=/^image\/.*$/.test(n.type))if(n.size>CHV.obj.config.user.background_max_filesize.getBytes())PF.fn.growl.call(PF.fn._s("Please select a picture of at most %s size.",CHV.obj.config.user.background_max_filesize));else{i.removeClass("hidden"),PF.fn.loading.inline(i,{center:!0,size:"big",color:"#FFF"}),t.data("uploading",!0);var r=new FormData;r.append("source",n),r.append("action","upload"),r.append("type","file"),r.append("what","background"),r.append("owner",CHV.obj.resource.user.id),r.append("auth_token",PF.obj.config.auth_token),avatarXHR=new XMLHttpRequest,avatarXHR.open("POST",PF.obj.config.json_api,!0),avatarXHR.send(r),avatarXHR.onreadystatechange=function(){if(4==this.readyState){var e="json"!==this.responseType?JSON.parse(this.response):this.response,n=e.success.image;if(200==this.status){var r=$("");r.attr("src",n.url).imagesLoaded(function(){i.addClass("hidden").empty(),o.css("background-image","url("+n.url+")").hide().fadeIn(),$("[data-content=user-change-background]",a).removeClass("hidden"),$(a).removeClass("no-background"),$(".top-user").removeClass("no-background"),$("[data-content=user-upload-background]").hide(),$("[data-content=user-change-background]").show(),PF.fn.growl.expirable(PF.fn._s("Profile background image updated.")),r.remove()})}else i.addClass("hidden").empty(),PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."));t.data("uploading",!1)}}}else PF.fn.growl.call(PF.fn._s("Please select a valid image file type."))}),CHV.fn.user_background={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"background",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){$("[data-content=user-background-cover-src]").css("background-image","none"),$("[data-content=user-background-cover], .top-user").addClass("no-background"),$("[data-content=user-background-cover]").height(""),$("[data-content=user-upload-background]").removeClass("hidden").show(),$("[data-content=user-change-background]").hide()},done:function(e){PF.fn.modal.close(function(){PF.fn.growl.expirable(PF.fn._s("Profile background image deleted."))})}},error:function(e){PF.fn.growl.expirable(PF.fn._s("Error deleting profile background image."))}}}},CHV.fn.user_api={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"api_key",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){},done:function(e){PF.fn.modal.close(function(){location.reload()})}},error:function(e){PF.fn.growl.expirable(e.responseJSON.error.message)}}}},CHV.fn.user_two_factor={delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"two_factor",owner:CHV.obj.resource.user.id},!0},deferred:{success:{before:function(e){},done:function(e){PF.fn.modal.close(function(){location.reload()})}},error:function(e){PF.fn.growl.expirable(e.responseJSON.error.message)}}}},CHV.str.mainform="[data-content=main-form]",CHV.obj.timezone={selector:"[data-content=timezone]",input:"#timezone-region"},$(document).on("keyup change",CHV.str.mainform+" :input",function(){$(this).is("[name=username]")&&$("[data-text=username]").text($(this).val())}),$(document).on("change",CHV.obj.timezone.input,function(){var e=$(this).val(),t=$("#timezone-combo-"+e);t.find("option:first").prop("selected",!0),$(CHV.obj.timezone.selector).val(t.val()).change()}),$(document).on("change","[id^=timezone-combo-]",function(){var e=$(this).val();$(CHV.obj.timezone.selector).val(e).change()}),$(document).on("keyup change blur","[name^=new-password]",function(){var e=$("[name=new-password]"),t=$("[name=new-password-confirm]"),a=e.val()==t.val(),o=t.closest(".input-password").find(".input-warning");0==o.exists()&&(o=$("[data-message=new-password-confirm]")),$(this).is(t)&&t.data("touched",!0),t.data("touched")&&o.text(a?"":o.data("text"))[a?"addClass":"removeClass"]("hidden-visibility")}),$(document).on("submit",CHV.obj.mainform,function(){switch($(this).data("type")){case"password":var e=$("[name=new-password]",this),t=$("[name=new-password-confirm]",this);if((""!==e.val()||""!==t.val())&&e.val()!==t.val())return e.highlight(),t.highlight(),PF.fn.growl.expirable(PF.fn._s("Passwords don't match")),!1}}),$(document).on("click","[data-action=check-for-updates]",function(){PF.fn.loading.fullscreen(),CHV.fn.system.checkUpdates(function(e){if(PF.fn.loading.destroy("fullscreen"),200===e.status){var t=e.responseJSON.software;-1==PF.fn.versionCompare(CHV.obj.system_info.version,t.current_version)?PF.fn.modal.simple({title:' '+PF.fn._s("Chevereto v%s available",t.current_version),message:"

    "+PF.fn._s("There is a new Chevereto version available with the following release notes.")+" "+PF.fn._s("Check %s for a complete changelog since you last upgrade.",''+CHV.obj.system_info.version+'')+'

    "+PF.fn._s("Check the %s for alternative update methods.",''+PF.fn._s("documentation")+"")+'

    ",html:!0}):PF.fn.growl.call(PF.fn._s("This website is running latest %s version",CHEVERETO.edition))}else PF.fn.growl.call(PF.fn._s("An error occurred. Please try again later."))})}),void 0!==PF.fn.get_url_var("checkUpdates")&&$("[data-action=check-for-updates]").trigger("click"),void 0!==PF.fn.get_url_var("upgrade")&&$("[data-action=upgrade]").trigger("click"),void 0!==PF.fn.get_url_var("license")&&$("[data-action='license']").trigger("click"),void 0!==PF.fn.get_url_var("welcome")&&PF.fn.modal.call({template:$("[data-modal=welcome]").html(),buttons:!1}),void 0!==PF.fn.get_url_var("installed")&&PF.fn.modal.simple({title:' '+PF.fn._s("Chevereto v%s installed",CHV.obj.system_info.version),message:"

    "+PF.fn._s('Usage of Chevereto Software must be in compliance with the software license terms known as "The Chevereto License".')+'

    ",html:!0}),$(document).on("click","[data-action=system-update]",function(e){if(!$("input#system-update").prop("checked"))return PF.fn.growl.call(PF.fn._s("Please review the system requirements before proceeding")),void e.preventDefault()}),$(document).on("click","[data-action=toggle-storage-https]",function(){CHV.fn.storage.toggleHttps($(this).closest("[data-content=storage]").data("storage-id"))}),$(document).on("click","[data-action=toggle-storage-active]",function(){CHV.fn.storage.toggleActive($(this).closest("[data-content=storage]").data("storage-id"))}),$(CHV.fn.uploader.selectors.root).exists()&&(CHV.fn.uploader.$pasteCatcher=$("
    ",{contenteditable:"true",id:CHV.fn.uploader.selectors.paste.replace(/#/,"")}),$("body").append(CHV.fn.uploader.$pasteCatcher),$(document).on("keydown",function(e){!e.ctrlKey&&!e.metaKey||"KeyV"!=e.originalEvent.code||$(e.target).is(":input")||(PF.fn.keyFeedback.spawn(e),CHV.fn.uploader.$pasteCatcher.focus(e))}),document.addEventListener("dragover",function(e){e.preventDefault()}),document.addEventListener("drop",function(e){if(CHV.obj.config.upload.url){e.preventDefault();var t,a=e.dataTransfer.getData("text/html"),o=/src="?([^"\s]+)"?\s*/;t=o.exec(a),t&&(CHV.fn.uploader.toggle({show:!0}),CHV.fn.uploader.add({},t[1]))}}),window.addEventListener("paste",CHV.fn.uploader.pasteImageHandler)),$(document).on("click","[data-action=like]",function(){if(PF.fn.is_user_logged()){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-liked]")?$(this):$(this).closest("[data-liked]"),a=!t.closest("[data-list], .viewer").exists()&&void 0!==CHV.obj.resource,o=t.is("[data-liked=1]"),i=o?"dislike":"like",n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").attr("data-id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").attr("data-type")},r=a?e:$("[data-type="+n.type+"][data-id="+n.id+"]"),s={type:"POST",data:{action:i},cache:!1};s.data[i]={object:n.type,id:n.id},$.ajax(s).complete(function(t){var i=t.responseJSON;e.data("XHR",!1),200===i.status_code?(a&&void 0!==i.content&&$("[data-text=likes-count]").html(i.content.likes),r.closest("[data-liked]").attr("data-liked",o?0:1)):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}else window.location.href=CHV.obj.vars.urls.login}),$(document).on("click","[data-action=album-cover]",function(){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-cover]")?$(this):$(this).closest("[data-cover]"),a=t.is("[data-cover=1]"),o=a?"album-cover-unset":"album-cover-set",i=(CHV.obj.resource.id,e.closest("[data-cover]")),n={type:"POST",data:{action:o},cache:!1};n.data[o]={album_id:i.data("album-id"),image_id:i.data("id")},$.ajax(n).complete(function(t){var o=t.responseJSON;e.data("XHR",!1),200===o.status_code?i.attr("data-cover",a?0:1):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}),$(document).on("click","[data-action=follow]",function(){if(PF.fn.is_user_logged()){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).is("[data-followed]")?$(this):$(this).closest("[data-followed]"),a=void 0!==CHV.obj.resource,o=t.is("[data-followed=1]"),i=o?"unfollow":"follow",n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").data("id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").data("type")},r={type:"POST",data:{action:i},cache:!1};r.data[i]={object:n.type,id:n.id},$.ajax(r).complete(function(i){var n=i.responseJSON;if(e.data("XHR",!1),200===n.status_code){if(a&&void 0!==n.user_followed){var r=$("[data-text=followers-label]"),s={single:r.data("label-single"),plural:r.data("label-plural")};$("[data-text=followers-count]").html(n.user_followed.followers),r.html(PF.fn._n(s.single,s.plural,n.user_followed.followers))}t.attr("data-followed",o?0:1)}else PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}else PF.fn.modal.call({type:"login"})}),$(document).on("click","[data-action=user_ban],[data-action=user_unban]",function(){var e=$(this);if(!e.data("XHR")){e.data("XHR",!0);var t=$(this).closest("[data-banned]"),a=!0,o=t.is("[data-banned=1]"),i=e.attr("data-action"),n={id:a?CHV.obj.resource.id:$(this).closest("[data-id]").data("id"),type:a?CHV.obj.resource.type:$(this).closest("[data-type]").data("type")},r={type:"POST",data:{action:i},cache:!1};r.data[i]={user_id:n.id},$.ajax(r).complete(function(a){var i=a.responseJSON;e.data("XHR",!1),200===i.status_code?t.attr("data-banned",o?0:1):PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later."))})}}),$(document).on("click","[data-action=top-bar-notifications]",function(e){var a=this,o=$(this),i=$(".top-bar-notifications-container",o),n=$(".top-bar-notifications-list",o),r=$("ul",n),s=$(".loading",i);o.data("XHR")||(s.removeClass("hidden"),PF.fn.loading.inline(s,{size:"small",message:PF.fn._s("loading")}),$.ajax({type:"POST",data:{action:"notifications"},cache:!1}).complete(function(e){var l=e.responseJSON;if(200!==l.status_code)return PF.fn.growl.expirable(PF.fn._s("An error occurred. Please try again later.")),o.data("XHR",!1),void s.addClass("hidden").html("");if(o.data("XHR",!0),s.remove(),l.html){n.removeClass("hidden"),r.html(l.html),t();var d=$("li.new",r);d.addClass("transition"),setTimeout(function(){d.removeClass("new"),$("[data-content=notifications-counter]",a).removeClass("on").html("0"),setTimeout(function(){d.removeClass("transition")},150)},1500)}else $(".empty",i).removeClass("hidden")}))}),$("#g-recaptcha").is(":empty")&&CHV.obj.config.captcha.enabled&&CHV.obj.config.captcha.sitekey&&("3"!=CHV.obj.config.captcha.version&&CHV.obj.config.captcha.isNeeded||$('label[for="recaptcha_response_field"]').remove()),$(document).on("click",PF.obj.listing.selectors.list_item+" a.image-container",function(e){var t=$(this).closest(PF.obj.listing.selectors.list_item),o=t.find("[data-action=load-image]");o.length>0&&(a(o),e.preventDefault())}),$(document).on("click",PF.obj.listing.selectors.list_item+" [data-action=load-image]",function(e){a($(this)),e.preventDefault(),e.stopPropagation()}),$(document).on("click","#album [data-tab=tab-embeds]",function(e){e.preventDefault,CHV.fn.album.showEmbedCodes()}),$("body").is("#upload")&&CHV.fn.uploader.toggle({show:!0}),$(document).on("keyup",function(e){if(!($(e.target).is(":input")||e.ctrlKey||e.metaKey||e.altKey)){var t=$("#fullscreen-modal:visible").exists(),a=$(".viewer"),o=$(".list-selection:visible"),i=o.find("[data-content=pop-selection]:visible:not(.disabled)"),n=$("body").hasClass("--viewer-shown"),r=$(CHV.fn.uploader.selectors.root+CHV.fn.uploader.selectors.show).exists(),s=e.originalEvent.code;if("Escape"===e.originalEvent.code){if(t)return;r&&CHV.fn.uploader.toggle({reset:!1})}if(a.exists()&&n){if(s in CHV.fn.listingViewer.keys){var l=["KeyW","Escape","ArrowLeft","ArrowRight"],d=CHV.fn.listingViewer.keys[s];-1==l.indexOf(s)?$("[data-action="+d+"]",CHV.fn.listingViewer.selectors.root).click():d in CHV.fn.listingViewer&&CHV.fn.listingViewer[d](),PF.fn.keyFeedback.spawn(e)}}else{var c,u={Period:"list-select-all",KeyK:"get-embed-codes",KeyZ:"clear",KeyA:"create-album",KeyM:"move",KeyO:"approve",Delete:"delete",KeyC:"assign-category",KeyV:"flag-safe",KeyF:"flag-unsafe",KeyH:"album-cover"},m={KeyE:"edit",KeyL:"like",KeyS:"share",KeyJ:"sub-album",KeyP:"upload-to-album"};d=u[s]||m[s];void 0!==d&&(o.exists()&&(n||t||parseInt($("[data-text=selection-count]:visible",i).text())>0&&(c=$("[data-action="+d+"]",o.closest(".list-selection")))),void 0===c&&(c=$("[data-action="+d+"]:visible").not("#content-listing-tabs *")),c instanceof jQuery&&c.length>0&&(c.first().trigger("click"),PF.fn.keyFeedback.spawn(e)))}}}),$(document).on("click",CHV.fn.listingViewer.selectors.root+" [data-action^=viewer-]",function(){var e=$(this).data("action").substring("viewer-".length);e in CHV.fn.listingViewer&&CHV.fn.listingViewer[e]()}),$(document).on("click","a[data-href]:not([rel=popup-link]):not(.popup-link)",function(){var e=$(this).attr("data-href"),t=$(this).attr("href");(e||t)&&(location.href=t||e)});var h,v=PF.obj.listing.selectors.list_item+", .image-container";($(document).on("contextmenu click",v,function(e){!$(".list-selection:visible").exists()||$(e.target).closest(".list-item-desc").exists()||$(this).closest(CHV.fn.listingViewer.selectors.root).exists()||"click"==e.type&&!e.ctrlKey&&!e.metaKey||o(this,e)}),navigator.userAgent.match(/(iPad|iPhone|iPod)/i))&&$(document).on("mouseup mousemove",v,function(e){return clearTimeout(h),!1}).on("mousedown",v,function(e){var t=this,a=e;return h=window.setTimeout(function(){$(".list-selection:visible").exists()&&!$(t).closest(CHV.fn.listingViewer.selectors.root).exists()&&o(t,a)},500),!1});void 0!==CHV.obj.config&&CHV.obj.config.listing.viewer&&$(document).on("click",PF.obj.listing.selectors.list_item+"[data-type=image] .image-container",function(e){if(e.preventDefault(),e.stopPropagation(),0!==e.clientX||0!==e.clientY){var t=$(this).closest(PF.obj.listing.selectors.list_item);t.exists()&&(e.ctrlKey||e.metaKey||CHV.fn.listingViewer.open(t))}else PF.fn.keyFeedback.spawn(e)}),$(document).on("contextmenu",CHV.fn.listingViewer.selectors.root,function(e){return e.preventDefault(),CHV.fn.listingViewer.zoom(),PF.fn.keyFeedback.spawn(e),!1});var b,_=PF.fn.deparam(window.location.search);if(_&&"viewer"in _){var C=$(PF.obj.listing.selectors.content_listing_visible);if("images"==C.data("list")){var w=$(PF.obj.listing.selectors.list_item,C)["next"==_.viewer?"first":"last"]();CHV.fn.listingViewer.open(w)}}$(window).on("DOMContentLoaded load resize scroll",function(){clearTimeout(b),b=setTimeout(function(){$(PF.obj.listing.selectors.list_item+":visible").each(function(){var e=$(this).find('[data-action="load-image"]').first(),t=PF.fn.deparam($(PF.obj.listing.selectors.list_item+"[data-id="+$(this).attr("data-id")+"]").closest(".content-listing").data("params-hidden")),o=t&&"is_animated"in t?t.is_animated:$(this).data("size")<=CHV.obj.config.image.load_max_filesize.getBytes();e.exists()&&o&&$(this).is_within_viewport(50)&&a(e)})},1e3)}),$(document).on("click","[data-action=logout]",function(){let e=$("form#form-logout");e.submit()}),Boolean(window.navigator.vibrate)&&$(document).on("click","button, .btn, .pop-btn, .top-btn-el, [data-action], .content-tabs a, .top-bar-logo a, .login-provider-button, .panel-share-networks li a, #image-viewer-loader",function(e){$(this).is("[data-action=top-bar-menu-full]")||(window.navigator.vibrate(0),window.navigator.vibrate(15))}),$(document).on("change keyup",CHV.fn.ctaForm.selectors.rows+" input[name^='cta-']",function(){CHV.fn.ctaForm.update($(this))}),$(document).on("click",CHV.fn.ctaForm.selectors.rows+" [data-action=cta-add]",function(){CHV.fn.ctaForm.insert($(this))}),$(document).on("click",CHV.fn.ctaForm.selectors.rows+" [data-action=cta-remove]",function(){CHV.fn.ctaForm.remove($(this)),0==CHV.fn.ctaForm.array.length&&$(CHV.fn.ctaForm.selectors.root+" "+CHV.fn.ctaForm.selectors.enable).prop("checked",!1).trigger("change")}),$(document).on("change",CHV.fn.ctaForm.selectors.root+" "+CHV.fn.ctaForm.selectors.enable,function(){let e=$(CHV.fn.ctaForm.selectors.combo,CHV.fn.ctaForm.selectors.root),t=$(this).is(":checked");e.toggleClass("soft-hidden",!t),t&&(0==CHV.fn.ctaForm.array.length&&CHV.fn.ctaForm.add(),CHV.fn.ctaForm.render()),CHV.fn.ctaForm.setEnable(t?1:0)}),$(document).on("change keyup",CHV.fn.ctaForm.selectors.root+" input[name^='cta-icon_']",function(){let e=CHV.fn.ctaForm.getRow($(this)),t=e.find("label[for^='cta-icon_'] [data-content=icon]");t.removeClass();let a=CHV.fn.ctaForm.getIconClass($(this).val());t.addClass(a)}),$(document).on("click","[href^='https://chevereto.com/']",function(e){let t=$(this).find(".badge--paid").exists();if(!t)return;let a=$(this).attr("href"),o=PF.fn._s("Get a license at %s to unlock all features and support.",'chevereto.com'),i=PF.fn._s("You can enter your license key in the dashboard panel.");e.preventDefault(),e.stopPropagation(),PF.fn.modal.simple({html:!0,title:' Upgrade Chevereto',message:"

    "+o+" "+i+'

    "})}),$(document).on("focus","input[name='form-album-password']",function(){$(this).get(0).type="text"}),$(document).on("blur","input[name='form-album-password']",function(){$(this).get(0).type="password"})}),"undefined"==typeof CHV&&(CHV={obj:{},fn:{},str:{}}),window.opener&&(CHV.obj.opener={uploadPlugin:{}}),CHV.fn.ctaButtons={selectors:{container:"[data-contains=cta-album]"},render:function(e=""){$(this.selectors.container).each(function(){$(this).html(e)})}},CHV.fn.ctaForm={enable:0,array:[],selectors:{root:"#cta-form",rows:"#cta-rows",enable:"#cta-enable",template:"#cta-row-template",combo:"#cta-combo",row:".cta-row"},update:function(e){let t=this.getPos(e),a=e.attr("name").match(/cta-(.*)?_\d+/)[1];this.array[t-1][a]=e.val()},add:function(e="",t="",a=""){this.array.push(this.getRowObject(e,t,a)),this.render()},insert:function(e){let t=this.getPos(e);this.array.splice(t,0,this.getRowObject()),this.render()},remove:function(e){let t=this.getPos(e);this.array.splice(t-1,1),this.render()},getRowObject:function(e="",t="",a=""){return{label:e,icon:t,href:a}},getIconClass:function(e){return/\s/g.test(e)?e:"fa-solid fa-"+e},getRow:function(e){return e.closest(this.selectors.row)},getPos:function(e){return this.getRow(e).data("pos")},getTemplateHtml:function(){return $(this.selectors.template).html()},getRowHtml:function(e,t){return this.getTemplateHtml().replaceAll(/%pos%/g,e).replaceAll(/%label%/g,t.label).replaceAll(/%href%/g,t.href).replaceAll(/%icon%/g,t.icon).replaceAll(/%iconClass%/g,this.getIconClass(t.icon))},render:function(){let e=$(this.selectors.root),t=e.find(this.selectors.rows),a=this;this.destroy(),$.each(this.array,function(e,o){t.append(a.getRowHtml(e+1,o))}),this.setEnable(this.enable),t.sortable({cursor:"grabbing",axis:"y",update:function(){let e=[];$(this).find(a.selectors.row).each(function(){let t=a.getPos($(this));e.push(a.array[t-1])}),a.array=e,a.render()}})},setEnable:function(e){let t=$(this.selectors.rows,this.selectors.root);this.enable=e;let a=1===this.enable;$("input[data-required]",t).each(function(){$(this).attr("required",a)})},destroy:function(){let e=$(this.selectors.root),t=e.find(this.selectors.rows);try{t.sortable("destroy")}catch(e){}t.empty()}},CHV.fn.album={showEmbedCodes:function(){var e=$(".content-listing-loading","#tab-embeds");if(e.exists()){var t=$("#embed-codes");$.ajax({url:PF.obj.config.json_api,type:"POST",dataType:"json",data:{action:"get-album-contents",albumid:CHV.obj.resource.id,auth_token:PF.obj.config.auth_token},cache:!1}).always(function(a){PF.fn.loading.destroy(e),200==a.status_code&&(CHV.fn.fillEmbedCodes(a.contents,"#tab-embeds"),$("#tab-embeds").addClass("visible"),t.removeClass("soft-hidden"))})}}},CHV.fn.modal={getTemplateWithPreview:function(e,t){var a=$(e).html(),o=$("
    "),i="",n=t.find(".image-container img").attr("src");return void 0!==n&&(i+='';var e=$(this).find(".image-container img");e.exists()?n+='':(n+='',n+=''),n+="",r++}),i.html(o).find(".image-preview").html(n),i.html()}},CHV.fn.listingViewer={selectors:{bodyShown:".--viewer-shown",content:".viewer-content",template:"#viewer-template",root:".viewer",rootShow:".viewer--show",rootHide:".viewer--hide",rootZero:".viewer--zero",rootNavPrev:".viewer--nav-prev",rootNavNext:".viewer--nav-next",src:".viewer-src",tools:".viewer-tools",loader:".viewer-loader",owner:".viewer-owner",ownerGuest:".viewer-owner--guest",ownerUser:".viewer-owner--user",inputMap:".viewer-kb-input"},keys:{ArrowLeft:"prev",ArrowRight:"next",Delete:"delete",Escape:"close",KeyA:"create-album",KeyE:"edit",KeyF:"flag",KeyL:"like",KeyM:"move",KeyO:"approve",KeyS:"share",KeyW:"zoom",Period:"select"},keymap:{"create-album":["A",PF.fn._s("Create album")],approve:["O",PF.fn._s("Approve")],close:["Esc",PF.fn._s("Close")],delete:["Del",PF.fn._s("Delete")],edit:["E",PF.fn._s("Edit")],flag:["F",PF.fn._s("Toggle flag")],like:["L",PF.fn._s("Like")],move:["M",PF.fn._n("Move")],next:["►",PF.fn._s("Next")],prev:["◄",PF.fn._s("Previous")],select:[".",PF.fn._s("Toggle select")],share:["S",PF.fn._s("Share")],zoom:["W",PF.fn._s("Zoom")]},loading:null,idleTimer:0,$item:null,show:function(){PF.fn.deparam(this.$item.closest(PF.obj.listing.selectors.content_listing_visible).data("params-hidden"));this.getEl("root").removeClass(this.selectors.rootHide.substring(1)).addClass(this.selectors.rootShow.substring(1)),$("body").addClass(this.selectors.bodyShown.substring(1));var e=new Hammer($(CHV.fn.listingViewer.selectors.root).get(0),{direction:Hammer.DIRECTION_VERTICAL});e.on("swipeleft swiperight",function(e){var t="left"==e.type.substring("swipe".length)?"next":"prev";CHV.fn.listingViewer[t]()}),this.getEl("root")[(PF.fn.isDevice(["phone","phablet"])?"add":"remove")+"Class"]("--over")},getItem:function(){return this.$item},getEl:function(e){var t=!e.startsWith("template")&&!e.startsWith("root")&&this.selectors.root;return t?$(this.selectors[e],t):$(this.selectors[e])},getObject:function(e){if(e||void 0===this.object){var t=decodeURIComponent(this.getItem().attr("data-object"));this.object=JSON&&JSON.parse(t)||$.parseJSON(t)}return this.object},placeholderSizing:function(){if(this.getEl("root").exists()){var e=Math.max(document.documentElement.clientWidth,window.innerWidth||0),t=Math.max(document.documentElement.clientHeight,window.innerHeight||0),a=e/t,o=this.getEl("src")[0],i=o.getAttribute("width"),n=o.getAttribute("height"),r=i/n,s=a0?"add":t.getItem()[o]().exists()?"add":"remove";a[n+"Class"](i.substring(1))}),$.each(this.getItem().get(0).attributes,function(e,t){if(!t.name.startsWith("data-"))return!0;a.attr(t.name,t.value)});var n=void 0===this.object.user?"user":"guest";n="owner"+(n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()),this.getEl(n).remove(),void 0!==this.object.user&&$(this.object.user.avatar?".default-user-image":"img.user-image",this.getEl("ownerUser")).remove();var r=this.getItem().find(".list-item-image-tools[data-action='list-tools']");this.getEl("tools").append(r.html());let s=this;this.getEl("tools").find(".list-tool[data-action]").each(function(){$(this).attr("title",$(this).attr("title")+" ("+s.keymap[$(this).attr("data-action")][0]+")")}),this.placeholderSizing(),this.trickyLoad()},zoom:function(){this.getEl("root").attr("data-cover","1"==this.getEl("root").attr("data-cover")?"0":"1")},remove:function(){this.getEl("root").remove()},getParsedTemplate:function(){var e=this.getObject(!0),t=this.getEl("template").html(),a=t.match(/%(\S+)%/g);return a&&$.each(a,function(a,o){var i,n=o.slice(1,-1).split(".");n.map(function(t){var a=i||e;t in a&&(i=a[t])});var r=new RegExp(o,"g");i=void 0===i?"":i,t=t.replace(r,i)}),t},insertEl:function(){var e=this.getParsedTemplate();this.getEl("rootZero").remove(),$(e).appendTo("body")},toggleIdle:function(e,t){var a=this;t=void 0===t||t;$("html")[(e?"add":"remove")+"Class"]("--idle"),e||(clearTimeout(a.idleTimer),t&&(a.idleTimer=setTimeout(function(){var e=$(".fullscreen"),t=a.getEl("root");a.toggleIdle(t.length>0&&0==e.length)},5e3)))},open:function(e){if(e.exists()){this.setItem(e),this.insertEl(),this.filler(),this.show(),this.toggleIdle(!1);var t=this;this.getEl("root").on("mousemove mouseout",function(){t.toggleIdle(!1)})}else this.getEl("rootZero").remove()},setItem:function(e){this.$item=e},trickyLoad:function(){if(this.object.image.url!=this.object.display_url){var e=this.getEl("src").parent().html(),t=$(e).attr("src",this.object.image.url);t.insertBefore(this.getEl("src"));var a=t.eq(0),o="video"==a.attr("data-media");o?(a.replaceWith(''),t.next().css("opacity",0),setTimeout(function(){t.next().remove()},200)):a.attr("src",this.object.image.url),t.imagesLoaded(function(){o||t.next().remove()})}},close:function(){var e=this;$(this.selectors.root).removeClass(this.selectors.rootShow.substring(1)).addClass(this.selectors.rootHide.substring(1)),$("body").removeClass(this.selectors.bodyShown.substring(1)),this.toggleIdle(!1,!1),null!==this.getItem()&&$(window).scrollTop(this.getItem().offset().top);var t=$("#top-bar, .follow-scroll");t.attr("data-scroll-lock","1"),setTimeout(function(){e.remove()},250),setTimeout(function(){t.removeAttr("data-scroll-lock")},300)},browse:function(e){var t=this.getItem()[e]();if(t.exists()){this.setItem(t),this.filler(!0);var a=$(PF.obj.listing.selectors.content_listing_visible).find("[data-action=load-more]"),o=t[e+"All"]().length;a.length>0&&o<=5&&!PF.obj.listing.calling&&"next"==e&&$("[data-action=load-more]").click()}else{var i=$("[data-pagination="+e+"]",PF.obj.listing.selectors.content_listing_pagination+":visible"),n=i.attr("href");if(!n)return;PF.fn.deparam(window.location.search);window.location.href=n+"&viewer="+e}},prev:function(){this.browse("prev")},next:function(){this.browse("next")}},CHV.obj.image_viewer={selector:"#image-viewer",container:"#image-viewer",navigation:".image-viewer-navigation",loading:"#image-viewer-loading",loader:"#image-viewer-loader"},CHV.obj.image_viewer.$container=$(CHV.obj.image_viewer.container),CHV.obj.image_viewer.$navigation=$(CHV.obj.image_viewer.navigation),CHV.obj.image_viewer.$loading=$(CHV.obj.image_viewer.loading),CHV.fn.system={checkUpdates:function(e){$.ajax({url:CHEVERETO.api.get.info+"/",data:{id:CHEVERETO.id},cache:!1}).always(function(t,a,o){"function"==typeof e&&e(o)})}},("MacIntel"===navigator.platform&&navigator.maxTouchPoints>0||"iPad"===navigator.platform)&&$("html").removeClass("device-nonmobile"),CHV.fn.bindSelectableItems=function(){var e="content-listing-wrapper",t="#"+e;$(t).exists()?$(t).hasClass("ui-selectable")&&$(t).selectable("destroy"):$("#content-listing-tabs").wrap("
    "),$("[data-content=list-selection]").exists()&&$("html.device-nonmobile "+t).selectable({delay:150,filter:PF.obj.listing.selectors.list_item,cancel:".content-empty, .header, #tab-share, #tab-info, .viewer-title, .header-link, .top-bar, .content-listing-pagination *, #fullscreen-modal, #top-user, #background-cover, .list-item-desc, .list-item-image-tools, [data-action=load-image], #tab-embeds",classes:{"ui-selected":"selected"},selected:function(e,t){$(t.selected).removeClass("ui-selected")},selecting:function(e,t){var a=$(t.selecting),o=a.hasClass("selected");CHV.fn.list_editor[(o?"unselect":"select")+"Item"](a)},unselecting:function(e,t){CHV.fn.list_editor.unselectItem($(t.unselecting))}})},CHV.fn.isCachedImage=function(e){var t=new Image;return t.src=e,t.complete||t.width+t.height>0},CHV.fn.viewerLoadImage=function(){if(CHV.obj.image_viewer.$loading.exists()&&(CHV.obj.image_viewer.$loading.removeClass("soft-hidden").css({zIndex:2}),PF.fn.loading.inline(CHV.obj.image_viewer.$loading,{color:"white",size:"small",center:!0,valign:!0}),CHV.obj.image_viewer.$loading.hide().fadeIn("slow")),$(CHV.obj.image_viewer.loader).remove(),CHV.obj.image_viewer.image.is_360)return PF.fn.loading.destroy(CHV.obj.image_viewer.$loading),pannellum.viewer("image-viewer-360",{autoLoad:!0,type:"equirectangular",panorama:CHV.obj.image_viewer.image.url,preview:CHV.obj.image_viewer.$container.find(".media").eq(0).attr("src"),pitch:2.3,yaw:-135.4,hfov:120}),$("#image-viewer-360").removeClass("soft-hidden"),void CHV.obj.image_viewer.$container.find(".media").eq(0).remove() +;CHV.obj.image_viewer.image.html=CHV.obj.image_viewer.$container.html(),CHV.obj.image_viewer.$container.css("height",CHV.obj.image_viewer.$container.height()).prepend($(CHV.obj.image_viewer.image.html).css({top:0,zIndex:0,opacity:0,position:"absolute"})),CHV.obj.image_viewer.$container.find(".media").eq(0).css("zIndex",1);var e=CHV.obj.image_viewer.$container.find(".media").eq(1),t=e.css("width"),a=e.css("height");"video"===e.attr("data-media")?(e.replaceWith(''),e.src=CHV.obj.image_viewer.image.url):e.attr("src",CHV.obj.image_viewer.image.url),e.imagesLoaded(function(){CHV.obj.image_viewer.$container.find(".media").eq(1).css({position:"",display:"",opacity:1}),CHV.obj.image_viewer.$container.find(".media").eq(0).remove(),$(CHV.obj.image_viewer.container).css("height",""),PF.fn.loading.destroy(CHV.obj.image_viewer.$loading)})},CHV.obj.embed_share_tpl={},CHV.obj.embed_upload_tpl={},CHV.obj.topBar={transparencyScrollToggle:function(){var e=$(window).scrollTop();$("#top-bar")[(e>0?"remove":"add")+"Class"]("transparent")}},CHV.obj.uploaderReset={isUploading:!1,canAdd:!0,queueStatus:"ready",uploadThreads:0,uploadParsedIds:[],uploadProcessedIds:[],files:{},results:{success:{},error:{}},toggleWorking:0,filesAddId:0,clipboardImages:[]},CHV.fn.uploader={files:{},selectors:{root:"#anywhere-upload",show:".upload-box--show",queue:"#anywhere-upload-queue",queue_complete:".queue-complete",queue_item:".queue-item",close_cancel:"[data-button=close-cancel]",file:"#anywhere-upload-input",camera:"#anywhere-upload-input-camera",upload_item_template:"#anywhere-upload-item-template",item_progress_bar:"[data-content=progress-bar]",failed_result:"[data-content=failed-upload-result]",fullscreen_mask:"#fullscreen-uploader-mask",dropzone:"#uploader-dropzone",paste:"#anywhere-upload-paste",input:"[data-action=anywhere-upload-input]"},toggle:function(e,t){this.queueSize();var a=$("[data-action=top-bar-upload]",".top-bar"),o=!$(CHV.fn.uploader.selectors.root).data("shown");e=$.extend({callback:null,reset:!0},e);if(void 0!==e.show&&e.show&&(o=!0),PF.fn.growl.close(!0),PF.fn.close_pops(),!(1==this.toggleWorking||$(CHV.fn.uploader.selectors.root).is(":animated")||CHV.fn.uploader.isUploading||a.data("login-needed")&&!PF.fn.is_user_logged())){this.toggleWorking=1;var i={time:500,easing:null},n=function(){!o&&e.reset&&CHV.fn.uploader.reset(),PF.fn.topMenu.hide(),"function"==typeof e.callback&&e.callback(t),CHV.fn.uploader.boxSizer(),CHV.fn.uploader.toggleWorking=0};if($(CHV.fn.uploader.selectors.root)[(o?"add":"remove")+"Class"](this.selectors.show.substring(1)),o){if($("html").data({"followed-scroll":$("html").hasClass("followed-scroll"),"top-bar-box-shadow-prevent":!0}).removeClass("followed-scroll").addClass("overflow-hidden top-bar-box-shadow-none"),$("#top-bar").data({stock_classes:$("#top-bar").attr("class")}).addClass("scroll-up"),$(".current[data-nav]",".top-bar").each(function(){$(this).is("[data-action=top-bar-menu-full]")||$(this).removeClass("current").attr("data-current",1)}),PF.fn.isDevice("mobile")){var r=$(".upload-box-heading",$(CHV.fn.uploader.selectors.root));r.css({position:"relative",top:.5*($(window).height()-r.height())+"px"})}CHV.fn.uploader.focus(function(){setTimeout(function(){n()},i.time)})}else{$("#top-bar")[0].className=$("#top-bar").data("stock_classes"),$("[data-nav][data-current=1]",".top-bar").each(function(){$(this).addClass("current")}),setTimeout(function(){$(CHV.fn.uploader.selectors.fullscreen_mask).css({opacity:0})},.1*i.time),setTimeout(function(){$(CHV.fn.uploader.selectors.fullscreen_mask).remove()},i.time);var s=$(CHV.fn.uploader.selectors.root).outerHeight(),l=s-parseInt($(CHV.fn.uploader.selectors.root).data("initial-height"))+"px";$(CHV.fn.uploader.selectors.root).css({transform:"translate(0,-"+l+")"}),setTimeout(function(){$(CHV.fn.uploader.selectors.root).css({top:""}),n(),$("html,body").removeClass("overflow-hidden").data({"top-bar-box-shadow-prevent":!1}),$("#top-bar *").trigger("blur")},i.time)}$(CHV.fn.uploader.selectors.root).data("shown",o),a.toggleClass("current").removeClass("opened")}},reset:function(){$.extend(this,$.extend(!0,{},CHV.obj.uploaderReset)),$("li",this.selectors.queue).remove(),$(this.selectors.root).height("").css({"overflow-y":"","overflow-x":""}),$(this.selectors.queue).addClass("queueEmpty").removeClass(this.selectors.queue_complete.substring(1)),$(this.selectors.input,this.selectors.root).each(function(){$(this).prop("value",null)}),$("[data-group=upload-result] textarea",this.selectors.root).prop("value",""),$.each(["upload-queue-ready","uploading","upload-result","upload-queue-ready","upload-queue"],function(e,t){$("[data-group="+t+"]").hide()}),$("[data-group=upload]",this.selectors.root).show(),$("[name=upload-album-id]",this.selectors.root).prop("value",function(){var e=$("option[selected]",this);if(e.exists())return e.attr("value")}),$(this.selectors.root).removeClass("queueCompleted queueReady queueHasResults").addClass("queueEmpty").attr("data-queue-size",0),$("[name=upload-category-id]",this.selectors.root).prop("value",""),$("[name=upload-nsfw]",this.selectors.root).prop("checked",this.defaultChecked),this.boxSizer(!0)},focus:function(e){$(this.selectors.fullscreen_mask).exists()||($("body").is("#upload")||$("body").append($("
    ",{id:this.selectors.fullscreen_mask.replace("#",""),class:"fullscreen black"}).css({top:PF.fn.isDevice("phone")?0:$(CHV.fn.uploader.selectors.root).data("top")})),setTimeout(function(){$("body").is("#upload")||$(CHV.fn.uploader.selectors.fullscreen_mask).css({opacity:1}),setTimeout(function(){"function"==typeof e&&e()},PF.fn.isDevice(["phone","phablet"])?0:250)},1))},boxSizer:function(e){var t=$(this.selectors.root).is(this.selectors.show),a=t||e;t&&$("html").addClass("overflow-hidden"),a&&($(this.selectors.root).height(""),!$("body").is("#upload")&&$(this.selectors.root).height()>$(window).height()?($(this.selectors.root).height($(window).height()-$("#top-bar").height()).css({"overflow-y":"scroll","overflow-x":"auto"}),$("html").addClass("overflow-hidden")):$(this.selectors.root).css("overflow-y",""))},pasteURL:function(){var e=$("[name=urls]",PF.obj.modal.selectors.root),t=e.val();t&&(CHV.fn.uploader.toggle({show:!0}),CHV.fn.uploader.add({},t))},pasteImageHandler:function(e){if(!$(e.target).is(":input")){if(void 0!==e.clipboardData&&e.clipboardData.items)var t=e.clipboardData.items;else setTimeout(function(){return e.clipboardData={},e.clipboardData.items=[],$.each($("img",CHV.fn.uploader.$pasteCatcher),function(t,a){e.clipboardData.items.push(PF.fn.dataURItoBlob($(this).attr("src")))}),$(CHV.fn.uploader.selectors.paste).html(""),CHV.fn.uploader.pasteImageHandler(e)},1);if(t){const e=new Array,i=new Array,n=new RegExp("^(image|video)/","i");let r=$(CHV.fn.uploader.selectors.root).data("shown");for(var a=0;a{const o={1:"MEDIA_ERR_ABORTED",2:"MEDIA_ERR_NETWORK",3:"MEDIA_ERR_DECODE",4:"MEDIA_ERR_SRC_NOT_SUPPORTED"};var i=o[a.error.code];t({type:"error",error:i}),console.error("Error loading video",i)}),a.addEventListener("loadedmetadata",function(){const e=parseInt(a.duration/4);setTimeout(()=>{a.currentTime=e,a.pause()},200),a.addEventListener("seeked",()=>{const e=document.createElement("canvas");e.width=a.videoWidth,e.height=a.videoHeight;const o=e.getContext("2d");o.drawImage(a,0,0,e.width,e.height),o.canvas.toBlob(o=>{t(a,e)},"image/jpeg",.9)},!1)}),/iPad|iPhone|iPod|Safari/.test(navigator.userAgent)&&(a.autoplay=!0,a.playsInline=!0,a.muted=!0),a.preload="metadata",a.src=e}function d(e,t){e.show(),$(CHV.fn.uploader.selectors.root).addClass("queueReady").removeClass("queueEmpty"),$("[data-group=upload-queue-ready]",CHV.fn.uploader.selectors.root).show(),$("[data-group=upload]",CHV.fn.uploader.selectors.root).hide(),e.find(".load-url").remove(),e.find(".preview").removeClass("soft-hidden").show().append(t),$img=e.find(".preview").find("img,canvas"),$img.attr("class","canvas"),queue_item_h=e.height(),queue_item_w=e.width();var a=parseInt($img.attr("width"))||$img.width(),o=parseInt($img.attr("height"))||$img.height(),i=a/o;if($img.hide(),a>o||a==o){var r=oo&&$img.height(r).width(r*i)}if(a0){for(var o="",i=0;i"+PF.fn.htmlEncode(a[i].name)+" - "+PF.fn.htmlEncode(a[i].error)+"",delete CHV.fn.uploader.files[a[i].uid],$("li[data-id="+a[i].uid+"]",CHV.fn.uploader.selectors.queue).find("[data-action=cancel]").click();PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be loaded"),message:"
      "+o+"
    "})}else CHV.fn.uploader.focus();CHV.fn.uploader.boxSizer()}}if($(CHV.fn.uploader.selectors.queue_item+":not([data-id]) .preview:empty",CHV.fn.uploader.selectors.queue).first().closest("li").attr("data-id",t.uid),void 0!==t.type&&t.type.startsWith("video/")){var u=i(t.uid),m=r(t),p=URL.createObjectURL(t);l(p,function(e,a){++w,"error"===e.type?f.push({uid:t.uid,name:t.name.truncate_middle(),error:e.error}):(CHV.fn.uploader.files[t.uid].parsedMeta={title:m,width:e.videoWidth,height:e.videoHeight,mimetype:t.type},d(u,a)),c(w,s,f)})}else loadImage(t.url?t.url:t,function(e){++w;var o=i(t.uid);if("error"===e.type)f.push({uid:t.uid,name:t.name.truncate_middle(),error:"MEDIA_ERR_SRC_FORMAT"});else{n();var l="image/jpeg";if(t.hasOwnProperty("type")?l=t.type:t.type=l,void 0!==a.buffer){for(var u=new Uint8Array(a.buffer).subarray(0,4),m="",p=0;pCHV.obj.config.image.max_filesize.getBytes()?f.push({uid:u,name:g.name.truncate_middle()+" - "+PF.fn._s("File too big."),error:"MEDIA_ERR_FILE_SIZE"}):-1!=CHV.obj.config.upload.image_types.indexOf(p)||0!=/android/i.test(navigator.userAgent)?(i&&(g.md5=i),g.fromClipboard=1==e.clipboard,g.uid=u):f.push({uid:u,name:g.name.truncate_middle()+" - "+PF.fn._s("Invalid or unsupported file format."),error:"MEDIA_ERR_FILETYPE"})}for(u=0;u0&&0==s.length){var v="";for(u=0;u"+PF.fn.htmlEncode(f[u].name)+"";return void PF.fn.modal.simple({title:PF.fn._s("Some files couldn't be added"),message:"
    • "+v+"
    "})}if(0==s.length)return}else{if(t=t.replace(/(<([^>]+)>)/g,"").replace(/(\[([^\]]+)\])/g,""),s=t.match_urls(),!s)return;s=s.array_unique(),s=$.map(s,function(e,t){return{uid:t,name:e,url:e}})}if($.isEmptyObject(this.files))for(u=0;u0){var i=[];for(var o in this.results.error)"object"==typeof this.results.error[o]&&(i[o]=this.results.error[o].error.message);i.length>0&&$(this.selectors.failed_result).html("
  • "+i.join("
  • ")+"
  • ")}else $(a.error,this.selectors.root).hide();if(!window.opener&&0==CHV.obj.config.upload.moderation&&CHV.obj.config.upload.redirect_single_upload&&1==Object.size(this.results.success)&&0==Object.size(this.results.error))return window.location.href=this.results.success[Object.keys(this.results.success)[0]].image.path_viewer,!1;if($("[data-text=queue-progress]",this.selectors.root).text(100),$("[data-group=uploading]",this.selectors.root).hide(),$(this.selectors.root).removeClass("queueUploading queueHasResults").addClass("queueCompleted"),$(this.selectors.queue).addClass(this.selectors.queue_complete.substring(1)),Object.size(this.results.success)>0&&$("[data-group=upload-result] textarea",this.selectors.root).exists()&&CHV.fn.fillEmbedCodes(this.results.success,CHV.fn.uploader.selectors.root,"val"),Object.size(this.results.success)>0&&Object.size(this.results.error)>0?$(a.mixed+", "+a.success,this.selectors.root).show():Object.size(this.results.success)>0?$(a.success,this.selectors.root).show():Object.size(this.results.error)>0&&$(a.error,this.selectors.root).show(),$(a.success,this.selectors.root).is(":visible")){$(a.success,this.selectors.root).find("[data-group^=user], [data-group=guest]").hide(),$(a.success,this.selectors.root).find("[data-group="+(PF.fn.is_user_logged()?"user":"guest")+"]").show();var n=Object.keys(this.results.success)[0];if(void 0!==this.results.success[n].image.album){var r=[];for(var s in this.results.success){var l=this.results.success[s].image;l.album&&l.album.id_encoded&&-1==r.indexOf(l.album.id_encoded)&&r.push(l.album.id_encoded)}var d={link:null,text:null};if(r.length<=1?(d.link=this.results.success[n].image.album.url,d.text=this.results.success[n].image.album.name):(d.link=this.results.success[n].image.user.url_albums,d.text=PF.fn._s("%s's Albums",this.results.success[n].image.user.name_short_html)),$("[data-text=upload-target]",this.selectors.root).text(d.text),$("[data-link=upload-target]",this.selectors.root).attr("href",d.link),PF.fn.is_user_logged()){var c=r.length>0?"album":"stream";$("[data-group=user-"+c+"]",this.selectors.root).show()}}}if(this.boxSizer(),this.queueStatus="done",window.opener&&void 0!==CHV.obj.opener.uploadPlugin[window.name]){if($('[data-action="copy"]',this.selectors.root).remove(),CHV.obj.opener.uploadPlugin[window.name].hasOwnProperty("autoInsert")&&CHV.obj.opener.uploadPlugin[window.name].autoInsert){var u=$(':input[name="'+CHV.obj.opener.uploadPlugin[window.name].autoInsert+'"]',CHV.fn.uploader.selectors.root),m=u.val();if(m)return window.opener.postMessage({id:window.name,message:m},"*"),void window.close()}}else $('[data-action="openerPostMessage"]',this.selectors.root).remove()}},$.extend(CHV.fn.uploader,$.extend(!0,{},CHV.obj.uploaderReset)),CHV.fn.fillEmbedCodes=function(e,t,a){void 0===a&&(a="val");var o=CHV.fn.uploader.selectors.root==t?"embed_upload_tpl":"embed_share_tpl",i=!1,n=!1;$.each(e,function(e,r){if(void 0===r)return;var s="id_encoded"in r?r:r.image,l=Object.flatten(s);let d=""!==s.url_frame,c=null!==s.medium.url;d&&(i=!0),c&&(n=!0),$.each(CHV.obj[o],function(e,o){$.each(o.options,function(e,o){if(!d&&e.startsWith("frame-"))return;if(!c&&e.startsWith("medium-"))return;var i=$("textarea[name="+e+"]",t),n=o.template;for(var r in"object"==typeof n&&n.hasOwnProperty(l.type)&&(n=n[l.type]),"video"!==l.type&&(n=n.replaceAll("%URL_FRAME%","")),l)l.hasOwnProperty(r)&&(n=n.replace(new RegExp("%"+r.toUpperCase()+"%","g"),PF.fn.htmlEncode(PF.fn.htmlEncode(l[r]))));let s="thumb"==i.data("size")&&"thumb-links"!==e;i[a](i.val()+n+(s?" ":"\n"))})})}),$("option[value^=frame]",t).prop("disabled",!i),$("option[value^=medium-]",t).prop("disabled",!n),$.each(CHV.obj[o],function(e,o){$.each(o.options,function(e,o){var i=$("textarea[name="+e+"]",t);i[a]($.trim(i.val()))})})},CHV.fn.resource_privacy_toggle=function(e){CHV.obj.resource.privacy=e,e||(e="public"),$("[data-content=privacy-private]").hide(),"public"!==e&&$("[data-content=privacy-private]").show()},CHV.fn.submit_create_album=function(){var e=$(PF.obj.modal.selectors.root);return""==$("[name=form-album-name]",e).val()?(PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1):(PF.obj.modal.form_data={action:"create-album",type:"album",album:{parent_id:$("[name=form-album-parent-id]",e).val(),name:$("[name=form-album-name]",e).val(),description:$("[name=form-album-description]",e).val(),privacy:$("[name=form-privacy]",e).val(),password:"password"==$("[name=form-privacy]",e).val()?$("[name=form-album-password]",e).val():null,new:!0}},!0)},CHV.fn.complete_create_album={success:function(e){var t=e.responseJSON.album;window.location=t.url},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}},CHV.fn.submit_upload_edit=function(){var e=$(PF.obj.modal.selectors.root),t=!1;return $("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val()?(PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1):($("[data-content=form-new-album]",e).is(":visible")&&(t=!0),PF.obj.modal.form_data={action:t?"create-album":"move",type:"images",album:{ids:$.map(CHV.fn.uploader.results.success,function(e){return e.image.id_encoded}),new:t}},t?(PF.obj.modal.form_data.album.name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.album.description=$("[name=form-album-description]",e).val(),PF.obj.modal.form_data.album.privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.album.privacy&&(PF.obj.modal.form_data.album.password=$("[name=form-album-password]",e).val())):PF.obj.modal.form_data.album.id=$("[name=form-album-id]",e).val(),!0)},CHV.fn.complete_upload_edit={success:function(e){var t=e.responseJSON.album;window.location=t.url},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}},CHV.fn.before_image_edit=function(){var e=$("[data-ajax-deferred='CHV.fn.complete_image_edit']");$("[data-content=form-new-album]",e).hide(),$("#move-existing-album",e).show()},CHV.fn.submit_image_edit=function(){var e=$(PF.obj.modal.selectors.root),t=!1;return $("[data-content=form-new-album]",e).is(":visible")&&""==$("[name=form-album-name]",e).val()?(PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1):($("[data-content=form-new-album]",e).is(":visible")&&(t=!0),PF.obj.modal.form_data={action:"edit",edit:"image",editing:{id:CHV.obj.resource.id,category_id:$("[name=form-category-id]",e).val()||null,title:$("[name=form-image-title]",e).val()||null,description:$("[name=form-image-description]",e).val()||null,nsfw:$("[name=form-nsfw]",e).prop("checked")?1:0,new_album:t}},t?(PF.obj.modal.form_data.editing.album_privacy=$("[name=form-privacy]",e).val(),"password"==PF.obj.modal.form_data.editing.album_privacy&&(PF.obj.modal.form_data.editing.album_password=$("[name=form-album-password]",e).val()),PF.obj.modal.form_data.editing.album_name=$("[name=form-album-name]",e).val(),PF.obj.modal.form_data.editing.album_description=$("[name=form-album-description]",e).val()):PF.obj.modal.form_data.editing.album_id=$("[name=form-album-id]",e).val(),!0)},CHV.fn.complete_image_edit={success:function(e){var t=e.responseJSON.image;if(t.album.id_encoded||(t.album.id_encoded=""),CHV.obj.image_viewer.album.id_encoded!==t.album.id_encoded){CHV.obj.image_viewer.album.id_encoded=t.album.id_encoded;var a={html:t.album.slice&&t.album.slice.html?t.album.slice.html:null,prev:t.album.slice&&t.album.slice.prev?t.album.slice.prev:null,next:t.album.slice&&t.album.slice.next?t.album.slice.next:null};$("[data-content=album-slice]").html(a.html),$("[data-content=album-panel-title]")[a.html?"show":"hide"](),$("a[data-action=prev]").attr("href",a.prev),$("a[data-action=next]").attr("href",a.next),$("a[data-action]",".image-viewer-navigation").each(function(){$(this)[void 0===$(this).attr("href")?"addClass":"removeClass"]("hidden")})}CHV.fn.resource_privacy_toggle(t.album.privacy),$.each(["description","title"],function(e,a){var o=$("[data-text=image-"+a+"]");o.html(PF.fn.nl2br(PF.fn.htmlEncode(t[a]))),""!==o.html()&&o.show()}),CHV.fn.common.updateDoctitle(t.title),PF.fn.growl.expirable(PF.fn._s("File edited successfully.")),CHV.fn.list_editor.addAlbumtoModals(t.album);var o=$("[data-submit-fn='CHV.fn.submit_image_edit']");$.each(["description","name","password"],function(e,t){var a=$("[name=form-album-"+t+"]",o);a.is("textarea")?a.val("").html(""):a.val("").attr("value","")}),$("[name=form-privacy] option",o).each(function(){$(this).removeAttr("selected")}),$("[data-combo-value=password]",o).hide(),$("[name=form-album-id]",o).find("option").removeAttr("selected"),$("[name=form-album-id]",o).find("[value="+t.album.id_encoded+"]").attr("selected",!0)}},CHV.fn.albumEdit={before:function(){var e="[data-before-fn='CHV.fn.albumEdit.before']";$("[data-action=album-switch]",e).remove();var t=$(CHV.fn.ctaForm.selectors.enable,e);CHV.fn.ctaForm.destroy(),CHV.fn.ctaForm.enable&&t.prop("checked",!0).trigger("change")},load:function(){var e=$(CHV.fn.ctaForm.selectors.enable,PF.obj.modal.selectors.root);e.is(":checked")&&e.prop("checked",!0).trigger("change")},submit:function(){var e=$(PF.obj.modal.selectors.root);return $("[name=form-album-name]",e).val()?(PF.obj.modal.form_data={action:"edit",edit:"album",editing:{id:CHV.obj.resource.id,name:$("[name=form-album-name]",e).val(),privacy:$("[name=form-privacy]",e).val(),description:$("[name=form-album-description]",e).val(),cta_enable:+CHV.fn.ctaForm.enable,cta:JSON.stringify(CHV.fn.ctaForm.array)}},"password"==PF.obj.modal.form_data.editing.privacy&&(PF.obj.modal.form_data.editing.password=$("[name=form-album-password]",e).val()),!0):(PF.fn.growl.call(PF.fn._s("You must enter the album name.")),$("[name=form-album-name]",e).highlight(),!1)},complete:{success:function(e){var t=e.responseJSON.album;$("[data-text=album-name]").html(PF.fn.htmlEncode(t.name)),$("[data-text=album-description]").html(PF.fn.htmlEncode(t.description)),CHV.fn.resource_privacy_toggle(t.privacy);var a=CHV.obj.resource.type;CHV.obj.resource.type=null,CHV.fn.list_editor.updateItem($(PF.obj.listing.selectors.list_item,PF.obj.listing.selectors.content_listing_visible),e.responseJSON),CHV.obj.resource.type=a,$("[data-modal]").each(function(){$("option[value="+t.id_encoded+"]",this).text(t.name+("public"!==t.privacy?" ("+PF.fn._s("private")+")":""))}),CHV.fn.common.updateDoctitle(t.name),CHV.fn.ctaButtons.render(t.cta_html),PF.fn.growl.expirable(PF.fn._s("The content has been edited."))}}},CHV.fn.category={formFields:["id","name","url_key","description"],validateForm:function(e){var t=PF.obj.modal.selectors.root,a=!1;return!!CHV.fn.common.validateForm(t)&&(!1===/^[-\w]+$/.test($("[name=form-category-url_key]",t).val())?(PF.fn.growl.call(PF.fn._s("Invalid URL key.")),$("[name=form-category-url_key]",t).highlight(),!1):(Object.size(CHV.obj.categories)>0&&$.each(CHV.obj.categories,function(o,i){return void 0!==e&&i.id==e||(i.url_key==$("[name=form-category-url_key]",t).val()?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("Category URL key already being used.")),$("[name=form-category-url_key]",t).highlight(),!1)))},edit:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.category.formFields,function(e,t){e="form-category-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-category-id]",e).val();return!!CHV.fn.category.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"category",editing:{}},$.each(CHV.fn.category.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-category-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=category][data-category-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=category-"+e+"]",a).html(PF.fn.htmlEncode(t))}),$("[data-link=category-url]").attr("href",t.url),CHV.obj.categories[t.id]=t,PF.fn.growl.expirable(PF.fn._s("The content has been edited."))}}},delete:{before:function(e){var t=$(e.target),a=t.data("category-id"),o=CHV.obj.categories[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",'"'+o.name+'"'))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"category",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("Category successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=category][data-category-id="+t+"]").remove(),delete CHV.obj.categories[t]}}},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.category.validateForm()&&(PF.obj.modal.form_data={action:"add-category",category:{}},$.each(CHV.fn.category.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.category[a]=$("[name=form-category-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.category,a="[data-content=dashboard-categories-list]",o=$("[data-content=category-dashboard-template]").html();$.each(t,function(e,t){ +o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o),0==Object.size(CHV.obj.categories)&&(CHV.obj.categories={}),CHV.obj.categories[t.id]=t,PF.fn.growl.call(PF.fn._s("Category %s added.",'"'+t.name+'"'))}}}},CHV.fn.ip_ban={formFields:["id","ip","expires","message"],validateForm:function(e){var t=PF.obj.modal.selectors.root,a=!1,o=$("[name=form-ip_ban-ip]",t).val();return!!CHV.fn.common.validateForm(t)&&(""!==$("[name=form-ip_ban-expires]",t).val()&&0==/^\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}$/.test($("[name=form-ip_ban-expires]",t).val())?(PF.fn.growl.call(PF.fn._s("Invalid expiration date.")),$("[name=form-ip_ban-expires]",t).highlight(),!1):(Object.size(CHV.obj.ip_bans)>0&&$.each(CHV.obj.ip_bans,function(t,i){return void 0!==e&&i.id==e||(i.ip==o?(a=!0,!1):void 0)}),!a||(PF.fn.growl.call(PF.fn._s("IP %s already banned.",o)),$("[name=form-ip_ban-ip]",t).highlight(),!1)))},add:{submit:function(){var e=PF.obj.modal.selectors.root;return!!CHV.fn.ip_ban.validateForm()&&(PF.obj.modal.form_data={action:"add-ip_ban",ip_ban:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){"id"!=a&&(PF.obj.modal.form_data.ip_ban[a]=$("[name=form-ip_ban-"+a+"]",e).val())}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=dashboard-ip_bans-list]",o=$("[data-content=ip_ban-dashboard-template]").html();void 0!==o&&($.each(t,function(e,t){o=o.replace(new RegExp("%"+e.toUpperCase()+"%","g"),t||"")}),$(a).append(o)),0==Object.size(CHV.obj.ip_bans)&&(CHV.obj.ip_bans={}),CHV.obj.ip_bans[t.id]=t,$("[data-content=ban_ip]").addClass("hidden"),$("[data-content=banned_ip]").removeClass("hidden"),PF.fn.growl.call(PF.fn._s("IP %s banned.",t.ip))},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},edit:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a],i="[data-modal="+t.data("target")+"]";$.each(CHV.fn.ip_ban.formFields,function(e,t){e="form-ip_ban-"+t,t=o[t];var a=$("[name="+e+"]",i);a.is("textarea")?a.html(PF.fn.htmlEncode(t)):a.attr("value",t)})},submit:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-ip_ban-id]",e).val();return!!CHV.fn.ip_ban.validateForm(t)&&(PF.obj.modal.form_data={action:"edit",edit:"ip_ban",editing:{}},$.each(CHV.fn.ip_ban.formFields,function(t,a){PF.obj.modal.form_data.editing[a]=$("[name=form-ip_ban-"+a+"]",e).val()}),!0)},complete:{success:function(e){var t=e.responseJSON.ip_ban,a="[data-content=ip_ban][data-ip_ban-id="+t.id+"]";$.each(t,function(e,t){$("[data-content=ip_ban-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.ip_bans[t.id]=t},error:function(e){var t=e.responseJSON.error;PF.fn.growl.call(PF.fn._s(t.message))}}},delete:{before:function(e){var t=$(e.target),a=t.data("ip_ban-id"),o=CHV.obj.ip_bans[a];t.attr("data-confirm",t.attr("data-confirm").replace("%s",o.ip))},submit:function(e){return PF.obj.modal.form_data={action:"delete",delete:"ip_ban",deleting:{id:e}},!0},complete:{success:function(e){PF.fn.growl.expirable(PF.fn._s("IP ban successfully deleted."));var t=e.responseJSON.request.deleting.id;$("[data-content=ip_ban][data-ip_ban-id="+t+"]").remove(),delete CHV.obj.ip_bans[t]}}}},CHV.fn.storage={formFields:["id","name","api_id","bucket","server","service","capacity","region","key","secret","url","account_id","account_name","type_chain"],chain:["other","document","audio","video","image"],calling:!1,validateForm:function(){var e=PF.obj.modal.selectors.root,t=$("[name=form-storage-id]",e).val(),a=!0;if($.each($(":input",e),function(e,t){$(this).is(":hidden")?$(this).attr("required")&&$(this).removeAttr("required").attr("data-required",1):1==$(this).attr("data-required")&&$(this).attr("required","required"),$(this).is(":visible")&&""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),a=!1)}),!a)return PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1;var o,i=$("[name=form-storage-capacity]",e),n=i.val();return""!==n&&(0==/^[\d\.]+\s*[A-Za-z]{2}$/.test(n)||void 0===n.getBytes()?o=PF.fn._s("Invalid storage capacity value. Make sure to use a valid format."):void 0!==CHV.obj.storages[t]&&n.getBytes()0&&(t=String(t).formatBytes(2)),s.attr("value",t)),"form-storage-type_chain"===e){let e=(parseInt(t)>>>0).toString(2).paddingLeft("0".repeat(CHV.fn.storage.chain.length)).split("");CHV.fn.storage.chain.forEach(function(t,a){$("#storage_type_enable_"+t,i).removeAttr("checked").attr("checked",1==e[a])})}}),$("[data-combo-value]").addClass("soft-hidden"),$(n).removeClass("soft-hidden")},submit:function(){var e=PF.obj.modal.selectors.root;$("[name=form-storage-id]",e).val();if(!CHV.fn.storage.validateForm())return!1;PF.obj.modal.form_data={action:"edit",edit:"storage",editing:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.editing[a]=$(o,e).val()});let t=CHV.fn.storage.chain.map(function(t){return $("#storage_type_enable_"+t,e).prop("checked")?1:0});return PF.obj.modal.form_data.editing.type_chain=parseInt(t.join(""),2),!0},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=storage][data-storage-id="+t.id+"]",o=$("[data-action=toggle-storage-https]",a);$.each(t,function(e,t){$("[data-content=storage-"+e+"]",a).html(PF.fn.htmlEncode(t))}),CHV.obj.storages[t.id]=t,CHV.fn.storage.toggleBoolDisplay(o,1==t.is_https)},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},add:{submit:function(){if(!CHV.fn.storage.validateForm())return!1;var e=PF.obj.modal.selectors.root;return PF.obj.modal.form_data={action:"add-storage",storage:{}},$.each(CHV.fn.storage.formFields,function(t,a){var o;"id"!=a&&(o="[name=form-storage-"+a+"]","hidden"!==$(o,e).attr("type")&&(o+=":visible"),PF.obj.modal.form_data.storage[a]=$(o,e).val())}),!0},complete:{success:function(e){var t=e.responseJSON.storage,a="[data-content=dashboard-storages-list]",o=$("[data-content=storage-dashboard-template]").html();$.each(t,function(e,t){var a=e.toUpperCase();if("is_https"==e||"is_active"==e)t=CHV.obj.storageTemplate.icon.replace("%TITLE%",CHV.obj.storageTemplate.messages[e]).replace("%ICON%",CHV.obj.storageTemplate.checkboxes[t]).replace("%PROP%",e.replace("is_",""));o=o.replace(new RegExp("%"+a+"%","g"),t||"")}),$(a).append(o),PF.fn.bindtipTip($("[data-storage-id="+t.id+"]")),0==CHV.obj.storages.length&&(CHV.obj.storages={}),CHV.obj.storages[t.id]=t},error:function(e){var t=e.responseJSON,a=t.error.message;PF.fn.growl.call(a)}}},toggleBoolDisplay:function(e,t){var a={0:e.data("unchecked-icon"),1:e.data("checked-icon")};e.removeClass(a[0]+" "+a[1]).addClass(a[t?1:0])}},CHV.fn.common={validateForm:function(e){if(void 0===e)e=PF.obj.modal.selectors.root;var t=!0;return $.each($(":input:visible",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),!!t||(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},updateDoctitle:function(e){void 0!==CHV.obj.page_info&&(CHV.obj.page_info.pre_doctitle=e,CHV.obj.page_info.doctitle=CHV.obj.page_info.pre_doctitle+CHV.obj.page_info.pos_doctitle,document.title=CHV.obj.page_info.doctitle)}},CHV.fn.user={add:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"add-user",user:{username:$("[name=form-username]",e).val(),email:$("[name=form-email]",e).val(),password:$("[name=form-password]",e).val(),role:$("[name=form-role]",e).val()}},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){e.responseJSON;PF.fn.growl.expirable(PF.fn._s("%s added successfully.",PF.fn._n("User","Users",1)))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}},delete:{submit:function(){return PF.obj.modal.form_data={action:"delete",delete:"user",owner:CHV.obj.resource.user.id,deleting:CHV.obj.resource.user},!0}},ban:{submit:function(){return PF.obj.modal.form_data={action:"ban",ban:"user",banning:CHV.obj.resource.user.id},!0},success:function(){}}},CHV.fn.submit_resource_approve=function(){return PF.obj.modal.form_data={action:"approve",approve:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,approving:CHV.obj.resource},!0},CHV.fn.complete_resource_approve={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){redir=CHV.obj.resource.url,window.location=redir})}},CHV.fn.submit_resource_delete=function(){return PF.obj.modal.form_data={action:"delete",delete:CHV.obj.resource.type,from:"resource",owner:void 0!==CHV.obj.resource.user?CHV.obj.resource.user.id:null,deleting:CHV.obj.resource},!0},CHV.fn.complete_resource_delete={success:function(e){e.responseJSON;$("body").fadeOut("normal",function(){var e;e="album"==CHV.obj.resource.type||"image"==CHV.obj.resource.type?CHV.obj.resource.parent_url:CHV.obj.resource.user?CHV.obj.resource.user.url:CHV.obj.resource.url,void 0!==e&&(window.location=e.replace(/\/?$/,"/")+"?deleted")})}},CHV.fn.list_editor={blink:function(e){e.addClass("ui-selecting"),setTimeout(function(){e.removeClass("ui-selecting")},200)},selectionCount:function(){var e=$(PF.obj.listing.selectors.content_listing);e.each(function(){var t=$("[data-content=pop-selection]","[data-content=list-selection][data-tab="+$(this).attr("id")+"]"),a=$(PF.obj.listing.selectors.list_item+".selected",this).length;if(all_count=$(PF.obj.listing.selectors.list_item,this).length,t.toggleClass("disabled",0==a),$("[data-text=selection-count]",t).text(a>0?a:""),"images"==e.data("list")&&a>0){var o=$(PF.obj.listing.selectors.list_item+".selected[data-flag=safe]",this).length>0,i=$(PF.obj.listing.selectors.list_item+".selected[data-flag=unsafe]",this).length>0;$("[data-action=flag-safe]",t)[(i?"remove":"add")+"Class"]("hidden"),$("[data-action=flag-unsafe]",t)[(o?"remove":"add")+"Class"]("hidden")}$(this).is(":visible")&&($("body").toggleClass("--has-selection",a>0),CHV.fn.list_editor.listMassActionSet(all_count==a?"clear":"select"))})},removeFromList:function(e,t){if(void 0!==e){e=e instanceof jQuery==0?$(e):e;var a=$(PF.obj.listing.selectors.content_listing_visible),o=e.length;e.fadeOut("fast");var i=e.first().data("type"),n=parseInt($("[data-text="+i+"-count]").text())-o;CHV.fn.list_editor.updateUserCounters(e.first().data("type"),o,"-"),e.promise().done(function(){$(document).removeClass(CHV.fn.listingViewer.selectors.bodyShown.substr(1));var i={};if(e.each(function(){$("[data-id="+$(this).data("id")+"]").each(function(){var e=$(this).closest(PF.obj.listing.selectors.content_listing).attr("id");i[e]||(i[e]=0),i[e]+=1})}),1==o?$("[data-id="+$(this).data("id")+"]").remove():e.each(function(){$("[data-id="+$(this).data("id")+"]").remove()}),PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(),CHV.fn.list_editor.selectionCount(),void 0!==t&&"string"==typeof t&&PF.fn.growl.expirable(t),$(PF.obj.listing.selectors.content_listing_pagination,a).exists()||0!=$(PF.obj.listing.selectors.list_item,a).length||(n=0),0==n)a.html(PF.obj.listing.template.empty),$(PF.obj.listing.selectors.content_listing+":not("+PF.obj.listing.selectors.content_listing_visible+")").data({empty:null,load:"ajax"}),$("[data-content=list-selection][data-tab="+a.attr("id")+"]").addClass("disabled");else if(0==$(PF.obj.listing.selectors.list_item,a).length){if($(PF.obj.listing.selectors.pad_content).height(0),$("[data-action=load-more]",a).exists())return $(PF.obj.listing.selectors.content_listing_visible).data("page",0),$("[data-action=load-more]",a).click(),void(PF.obj.listing.recolumnize=!0);var r=$("[data-pagination=next]",a);if(r.exists()){var s=r.attr("href"),l=PF.fn.deparam(s);return"page"in l&&l.page>1&&(s=s.changeURLParameterValue("page",l.page-1)),void(window.location=s)}}})}},deleteFromList:function(e){if(void 0===t)var t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been deleted."):null)},moveFromList:function(e,t){if(void 0===t)t=!0;e=e instanceof jQuery==0?$(e):e;this.removeFromList(e,t?PF.fn._s("The content has been moved."):null)},toggleSelectItem:function(e,t){if("boolean"!=typeof t)t=!e.hasClass("selected");var a,o,i,n=$(".viewer").is(":visible")?$("[data-type=image][data-id="+e.attr("data-id")+"]"):e,r=$("[data-action=select] .btn-icon",n);n.hasClass("unselect")||(n.addClass("unselect"),t?(Boolean(window.navigator.vibrate)&&window.navigator.vibrate([15,125,25]),n.addClass("selected"),a=r.data("icon-selected"),o=r.data("icon-unselected"),i=PF.fn._s("Unselect")):(n.removeClass("selected ui-selected"),a=r.data("icon-unselected"),o=r.data("icon-selected"),i=PF.fn._s("Select")),r.removeClass(o).addClass(a),setTimeout(function(){n.removeClass("unselect")},350),$("[data-action=select] .label",n).text(i),CHV.fn.list_editor.selectionCount())},selectItem:function(e){this.toggleSelectItem(e,!0)},unselectItem:function(e){this.toggleSelectItem(e,!1),e.removeClass("selected")},selectAll:function(e){this.selectItem($(PF.obj.listing.selectors.list_item+":visible:not(.selected)")),this.listMassActionSet("clear"),e.stopPropagation()},clearSelection:function(e){var t=$(PF.obj.listing.selectors.list_item+".selected",PF.obj.listing.selectors[e?"content_listing":"content_listing_visible"]);this.unselectItem(t),this.listMassActionSet("select")},listMassActionSet:function(e){var t="select"==e?"clear":"select",a=$("[data-text-select-all][data-action=list-"+t+"-all]:visible"),o=a.data("text-"+e+"-all");a.text(o).attr("data-action","list-"+e+"-all"),PF.fn.close_pops()},updateItem:function(e,t,a,o){if(e instanceof jQuery==0)e=$(e);var i=e.data("type"),n="image"==i?t.album:t;if(this.addAlbumtoModals(n),$("option[value="+n.id_encoded+"]","[name=form-album-id]").html(PF.fn.htmlEncode(n.name_with_privacy_readable_html)),void 0===a)a="edit";if("edit"==a||"move"==a){if("move"==a&&"album"==CHV.obj.resource.type)return void CHV.fn.list_editor.moveFromList(e,o);e.attr("data-description",t.description),"image"==i?(void 0!==t.title&&(e.attr("data-title",t.title),e.find("[title]").attr("title",t.title),$("[data-text=image-title]",e).text(PF.fn.htmlEncode(t.title))),void 0!==t.title_truncated&&$("[data-text=image-title-truncated]",e).html(PF.fn.htmlEncode(t.title_truncated)),void 0!==t.category_id&&e.attr("data-category-id",t.category_id),e.attr({"data-album-id":n.id_encoded,"data-flag":1==t.nsfw?"unsafe":"safe"}),$("[data-content=album-link]",e).attr("href",n.url)):e.attr({"data-privacy":n.privacy,"data-password":n.password,"data-name":n.name}),e.attr("data-privacy",n.privacy),$("[data-text=album-name]",e).html(PF.fn.htmlEncode(n.name)),PF.fn.growl.expirable("edit"==a?PF.fn._s("The content has been edited."):PF.fn._s("The content has been moved."))}},addAlbumtoModals:function(e){var t=!1;$("[name=form-album-id]","[data-modal]").each(function(){e.id_encoded&&!$("option[value="+e.id_encoded+"]",this).exists()&&($(this).append('"),t=!0)}),t&&CHV.fn.list_editor.updateUserCounters("album",1,"+")},updateAlbum:function(e){$("[data-id="+e.id_encoded+"]").each(function(){""!==e.html&&($(this).after(e.html),$(this).remove())})},updateUserCounters:function(e,t,a){if(void 0===a)a="+";var o,i,n=$("[data-text="+e+"-count]"),r=$("[data-text="+e+"-label]"),s=(t=parseInt(t),parseInt(n.html()));switch(a){case"+":o=s+t;break;case"-":o=s-t;break;case"=":o=t}i=o-s;var l=$("[data-text=total-"+n.data("text")+"]"),d=$("[data-text="+l.data("text")+"-label]"),c=parseInt(l.html()),u=c+i;n.text(o),l.text(u),r.text(r.data(1==o?"label-single":"label-plural")),d.text(r.data(1==u?"label-single":"label-plural"))},updateMoveItemLists:function(e,t,a){if(CHV.fn.list_editor.clearSelection(),/image/.test(t))"image"==t?CHV.fn.list_editor.updateItem("[data-type=image][data-id="+a.data("id")+"]",e.image,"move"):(a.each(function(){CHV.fn.list_editor.updateItem("[data-type=image][data-id="+$(this).data("id")+"]",e,"move",!1)}),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")));else{if(CHV.fn.list_editor.moveFromList(a,!1),PF.fn.growl.expirable(PF.fn._s("The content has been moved.")),e.album)if(void 0!==e.albums_old?"true"==e.request.album.new:"true"==e.request.editing.new_album){CHV.fn.list_editor.addAlbumtoModals(e.album);var o=parseInt($("[data-text=album-count]").text())-1;$(PF.obj.listing.selectors.pad_content).each(function(){var t=$(this).find(PF.obj.listing.selectors.list_item).length;if(0!=t){var a=PF.fn.deparam($(this).closest(PF.obj.listing.selectors.content_listing).data("params"));"date_desc"!=a.sort&&o!=t||$(this)["date_desc"==a.sort?"prepend":"append"](e.album.html)}})}else CHV.fn.list_editor.updateAlbum(e.album);PF.fn.listing.columnizerQueue(),PF.fn.listing.refresh(0)}}},CHV.fn.import={errorHandler:function(e){PF.fn.growl.call(e.error.message)},reset:function(e){e=parseInt(e);CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importReset",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}})},updateStats:function(e){e=parseInt(e);"readyState"in CHV.obj.import.working[e].stats&&4!=CHV.obj.import.working[e].stats.readyState?console.error("Aborting stats timeout call (previous call is still not ready)"):(CHV.obj.import.working[e].stats=$.ajax({type:"POST",data:{action:"importStats",id:e}}),CHV.obj.import.working[e].stats.complete(function(t){var a=t.responseJSON;if(a){var o=CHV.fn.import.parseTemplate(a.import);$("[data-id="+a.import.id+"]",CHV.obj.import.sel.root).replaceWith(o),"working"!=a.import.status&&clearInterval(CHV.obj.import.working[e].interval)}}))},delete:{submit:function(e){return PF.obj.modal.form_data={action:"importDelete",id:e},!0},deferred:{success:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s("Import ID %s removed",t.import.id)),$("[data-id="+t.import.id+"]",CHV.obj.import.sel.root).remove(),1==$("li",CHV.obj.import.sel.root).size()&&$(CHV.obj.import.sel.root).addClass("hidden")},error:function(e){CHV.fn.import.errorHandler(e.responseJSON)}}},parseTemplate:function(e,t){var a=CHV.obj.import.rowTpl;for(var o in CHV.obj.import.importTr)void 0!==e[o]&&(a=a.replaceAll("%"+o+"%",e[o]));a=a.replaceAll("%parse%",e.options.root),a=a.replaceAll("%shortParse%",e.options.root.charAt(0)),a=a.replaceAll("%displayStatus%",CHV.obj.import.statusesDisplay[e.status]);var i=$($.parseHTML(a)).attr("data-object",JSON.stringify(e));return i}},CHV.fn.Palettes={timeout:{},get:function(){return($("html").get(0).className.match(/(^|\s)palette-\S+/g)||[]).join(" ")},set:function(e){$("html").attr("data-palette",e).removeClass(this.get()).addClass("palette-"+e)},preview:function(e){$("html").removeClass(this.get()).addClass("palette-"+e)},save:function(){clearTimeout(this.timeout),this.timeout=setTimeout(function(){$.ajax({type:"POST",data:{action:"paletteSet",palette_id:CHV.obj.config.palettesId[$("html").attr("data-palette")]},cache:!1})},400)}},CHV.fn.license={set:{submit:function(){var e=$(PF.obj.modal.selectors.root),t=!0;return $.each($(":input",e),function(e,a){""==$(this).val()&&$(this).attr("required")&&($(this).highlight(),t=!1)}),t?(PF.obj.modal.form_data={action:"set-license-key",key:$("[name=chevereto-license-key]",e).val()},!0):(PF.fn.growl.call(PF.fn._s("Please fill all the required fields.")),!1)},complete:{success:function(e){let t=e.responseJSON,a=$("[data-action=upgrade]");if("free"===CHV.obj.system_info.edition)return a.removeClass("hidden"),void a.trigger("click");PF.fn.growl.call(PF.fn._s(t.success.message))},error:function(e){var t=e.responseJSON;PF.fn.growl.call(PF.fn._s(t.error.message))}}}}; \ No newline at end of file diff --git a/content/legacy/themes/Peafowl/lib/peafowl.css b/content/legacy/themes/Peafowl/lib/peafowl.css index beff18f..c688341 100644 --- a/content/legacy/themes/Peafowl/lib/peafowl.css +++ b/content/legacy/themes/Peafowl/lib/peafowl.css @@ -1114,7 +1114,6 @@ textarea { } .btn-icon { - /* font-size: 14px; */ width: 18px; display: inline-block; text-align: center; @@ -1775,12 +1774,9 @@ html:not(.phone) .pop-box-menu a:hover, .pop-box-menu a.focus { color: var(--menuItemHoverText); } -.pop-box-menu li.current a { - background: rgba(0, 0, 0, .05); -} - -.pop-box-menu li.current a:not(:hover) .btn-icon { - color: var(--colorAccent); +.pop-box-menu li.current a, .pop-box-menu li.current a:hover { + color: var(--buttonDefaultText); + background: var(--buttonDefaultBackground); } .pop-box-menu ul { @@ -5258,9 +5254,9 @@ a.cookie-law-close:hover { } .pop-box-menu li:hover .badge { - color: var(--menuItemHoverBackground); + /* color: var(--menuItemHoverBackground); background-color: var(--menuItemHoverText); - border-color: transparent; + border-color: transparent; */ } .r1 { diff --git a/content/legacy/themes/Peafowl/lib/peafowl.js b/content/legacy/themes/Peafowl/lib/peafowl.js index bb78200..59a238a 100644 --- a/content/legacy/themes/Peafowl/lib/peafowl.js +++ b/content/legacy/themes/Peafowl/lib/peafowl.js @@ -1317,7 +1317,7 @@ $(function () { }); $(window).on("fullscreenchange", function () { - $("html").toggleClass("--fullscreen", document.fullscreenElement); + $("html").toggleClass("--fullscreen", document.fullscreenElement !== null); }); }); @@ -1703,13 +1703,12 @@ Object.size = function (obj) { * Flatten an object */ Object.flatten = function (obj, prefix) { - if (typeof prefix == "undefined") var prefix = ""; - + if (typeof prefix == "undefined") { + var prefix = ""; + } var result = {}; - $.each(obj, function (key, value) { - if (!value) return; - if (typeof value == "object") { + if (value !== null && typeof value == "object") { result = $.extend({}, result, Object.flatten(value, prefix + key + "_")); } else { result[prefix + key] = value; diff --git a/content/legacy/themes/Peafowl/lib/peafowl.min.css b/content/legacy/themes/Peafowl/lib/peafowl.min.css index 0b7f060..d124a01 100644 --- a/content/legacy/themes/Peafowl/lib/peafowl.min.css +++ b/content/legacy/themes/Peafowl/lib/peafowl.min.css @@ -1 +1 @@ -:root{--colorBlue:#3498db;--colorBlueHover:#2980b9;--colorGreen:#2ecc71;--colorGreenHover:#27ae60;--colorOrange:#e67e22;--colorOrangeHover:#d35400;--colorPurple:#9b59b6;--colorPurpleHover:#8e44ad;--colorRed:#e74c3c;--colorRedHover:#c0392b;--colorYellow:#f1c40f;--colorYellowHover:#f39c12}:root{--colorSuccess:var(--colorGreen);--colorFail:var(--colorRed);--alertAccent:#f1c40f;--alertBackground:#fff5b3;--alertText:#161c1d;--backgroundDarkAlpha:rgb(0 0 0 / 80%);--backgroundLightAlpha:rgb(255 255 255 / 90%);--bodyBackground:#FFF;--bodyEmpty:#e2e8e9;--bodySeparator:#e2e8e9;--bodyText:#161c1d;--bodyTextDisabled:#c5d1d3;--bodyTextSubtle:#6c7779;--buttonAccentBackground:var(--colorAccent);--buttonAccentHoverBackground:var(--colorAccentStrong);--buttonAccentHoverText:var(--buttonAccentText);--buttonAccentText:#FFF;--buttonDefaultBackground:#d9e1e2;--buttonDefaultBorder:var(--buttonDefaultBackground);--buttonDefaultHoverBackground:#c0def2;--buttonDefaultHoverBorder:var(--buttonDefaultHoverBackground);--buttonDefaultHoverText:var(--colorAccentStrong);--buttonDefaultText:#161c1d;--colorAccent:var(--colorBlue);--colorAccentStrong:var(--colorBlueHover);--inputBackground:#ecf0f1;--inputPlaceholderText:#8aa2a8;--inputText:#161c1d;--linkText:var(--colorAccent);--menuBackground:rgb(236 240 241 / 80%);--menuItemHoverBackground:var(--colorAccent);--menuItemHoverText:#FFF;--menuItemText:#161c1d;--menuSeparator:rgb(11 14 15 / 10%);--menuText:#161c1d;--modalBackground:var(--bodyBackground);--modalText:#161c1d;--topBarBackground:rgb(255 255 255);--topBarText:#161c1d;--viewerBackground:#323232;--listItemText:#FFF}*{-ms-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;border:0;list-style:none}@media screen and (-webkit-min-device-pixel-ratio:0){.phone input:focus,.phone select:focus,.phone textarea:focus{font-size:16px!important}}.btn,.btn-container,.input-search,.link,.list-item,.no-select,.pop-btn-text,.top-btn-text,.user-select-none{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.animate{transition:all .2s ease-in-out}.animate--slow{transition-duration:.4s}[type=search]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}::-webkit-input-placeholder{color:var(--inputPlaceholderText);line-height:140%}:-moz-placeholder{color:var(--inputPlaceholderText);opacity:1}::-moz-placeholder{color:var(--inputPlaceholderText);opacity:1}:-ms-input-placeholder{color:var(--inputPlaceholderText)}:focus::-webkit-input-placeholder{color:var(--inputPlaceholderText)}:focus:-moz-placeholder{color:var(--inputPlaceholderText)}:focus::-moz-placeholder{color:var(--inputPlaceholderText)}focus:-ms-input-placeholder{color:var(--inputPlaceholderText)}::-moz-focus-inner{border:0;padding:0;margin:0}::-ms-clear{display:none}body{min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;-webkit-font-smoothing:subpixel-antialiased}[type=submit]:focus,button:focus{outline:0}html{height:100%;height:-webkit-fill-available}body,html{min-height:100vh;min-height:100dvh;font-family:Helvetica,Arial,sans-serif;color:var(--bodyText);font-size:16px;background:var(--bodyBackground);-webkit-text-size-adjust:100%}kbd{font-family:inherit}.pointer-events-none{pointer-events:none}#menu-fullscreen,#pop-box-mask.fullscreen{height:100%}#menu-fullscreen,.pop-box{transition:transform 350ms cubic-bezier(.4,0,0,1),opacity 350ms cubic-bezier(.4,0,0,1)}#menu-fullscreen>ul{position:relative;z-index:1000;background:var(--topBarBackground);color:var(--topBarText)}body.no-margin-top{margin-top:0;padding-top:0}.content-width{width:100%;-webkit-margin-end:auto;margin-inline-end:auto;-webkit-margin-start:auto;margin-inline-start:auto;position:relative;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}.phone .top-bar .content-width{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:0;padding-inline-end:0}a{color:var(--linkText);text-decoration:none;cursor:pointer;outline:0}a[rel=external]::after{font-weight:900;font-family:"Font Awesome 5 Free";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;-webkit-margin-start:.25em;margin-inline-start:.25em;content:"\f35d";font-size:90%}a[role=button]:hover{text-decoration:none}a:focus,a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{font-weight:400;line-height:1}.ui-selectable-helper{background:var(--colorAccent);border:2px dashed var(--topBarBackground);position:absolute;z-index:500;opacity:.6}.image-container{transition:transform 180ms cubic-bezier(.25,1,.5,1)}.selected .image-container,.ui-selecting.selected .image-container{transform:scale(.5)}.selected .list-item-play-gif,.ui-selecting.selected .list-item-play-gif{transform:scale(.75)}.selected .image-container img,.selected .image-container svg,.ui-selecting.selected .image-container img,.ui-selecting.selected .image-container svg{border-radius:.5em;-webkit-transform:translateZ(0)}.hidden{display:none!important}.visible{display:block!important}.fab.soft-hidden,.far.soft-hidden,.fas.soft-hidden,.soft-hidden{display:none}.soft-visible{display:block}.hidden-visibility{visibility:hidden;position:absolute;top:0}.touch-scroll{overflow:auto;-webkit-overflow-scrolling:touch}.or-separator{border-top:1px solid var(--bodySeparator);text-align:center;margin:10px 0 10px 0}.tone-dark .or-separator{border-color:rgba(255,255,255,.1)}.or-separator span{font-size:.93em;font-weight:400;color:var(--bodySeparator);text-transform:uppercase;text-align:center;background:var(--bodyBackground);display:inline-block;position:relative;padding:0 10px;top:-10px}.highlight{color:var(--alertText);background:var(--alertBackground)}.highlight:empty{display:none}.line-through{text-decoration:line-through}.line-separator{width:100%;height:1px;background:var(--bodySeparator);display:block;margin:20px 0}.number-figures,a.number-figures{font-size:1.21em;line-height:1.21em;color:inherit;text-decoration:none;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;-webkit-margin-start:0;margin-inline-start:0;-webkit-border-start:1px solid var(--bodySeparator);border-inline-start:1px solid var(--bodySeparator);text-align:center}.tone-dark .number-figures,.tone-dark a.number-figures{border-color:#212121}.number-figures:first-child{-webkit-padding-start:0;padding-inline-start:0;-webkit-border-start:none;border-inline-start:none}.number-figures:last-child{-webkit-padding-end:0;padding-inline-end:0}.number-figures b{font-weight:inherit}.number-figures .icon-heart4{position:relative;top:1px}.number-figures span:not(.icon){color:var(--bodyTextSubtle);text-transform:uppercase;font-size:.6em}a.number-figures:hover,a.number-figures:hover *{color:var(--linkText)}.loading-indicator,.loading-text{display:inline-block;line-height:inherit;vertical-align:top}.loading-text{-webkit-margin-start:5px;margin-inline-start:5px}.btn-alt{color:var(--bodyTextSubtle);font-size:13px;font-size:.93rem;margin:0 5px;display:inline!important}.btn-alt a:first-letter{text-transform:capitalize}.phone .btn-alt{margin:5px 0 0}.btn-alt a{-webkit-margin-start:5px;margin-inline-start:5px;cursor:pointer}a.link{font-size:13px;font-size:.93rem;text-decoration:none;font-weight:400}.pop-box-menu a.link--delete,.tone-dark .pop-box-menu a.link--delete,[data-action=delete],a.link--delete{color:#e74c3c}.tone-dark html:not(.phone) .pop-box-menu a.link--delete:hover,html:not(.phone) .pop-box-menu a.link--delete:hover{background-color:#e74c3c}a.link--approve{color:#2ecc71}a.link span.icon,a.link:hover span.icon{text-decoration:none}a.link:hover span{text-decoration:underline}.disabled,.disabled a{color:var(--bodyTextDisabled)}.tone-dark .disabled,.tone-dark .disabled a{color:#444}.disabled a{text-decoration:none;cursor:default}.optional{font-size:50%;color:var(--bodyTextSubtle);font-weight:400}.text-shadow{text-shadow:2px 2px 3px rgba(0,0,0,.75);-webkit-filter:dropshadow(color=#000000, offx=2, offy=2);filter:dropshadow(color=#000000, offx=2, offy=2)}.box-shadow{box-shadow:2px 2px 3px 0 rgba(0,0,0,.45)}.silent-links a,a.silent-links{color:inherit}.close-box .icon-circle{color:var(--bodyText);position:relative}.close-box .icon-close-box{color:#fff;position:absolute;inset-inline-start:0;top:0}.transparent-canvas{background-image:url(data:image/gif;base64,R0lGODlhEAAQAIAAAP///9/f3yH5BAAHAP8ALAAAAAAQABAAAAIfjG+gq4jM3IFLJgpswNly/XkcBpIiVaInlLJr9FZWAQA7);background-repeat:repeat}.transparent-canvas.dark{background-image:url(data:image/gif;base64,R0lGODlhEAAQAIAAAOfn58rKyiH5BAAHAP8ALAAAAAAQABAAAAIfjG+gq4jM3IFLJgpswNly/XkcBpIiVaInlLJr9FZWAQA7)}input,select,textarea{font-family:inherit;font-size:inherit;-ms-appearance:none;border-radius:3px;display:inline-block;border:1px solid transparent;background:var(--inputBackground);color:var(--inputText)}input:-webkit-autofill,select:-webkit-autofill,textarea:-webkit-autofill{-webkit-text-fill-color:var(--inputText)!important}.input-focus,input.search:focus,input:focus,select:focus,textarea:focus{border-color:var(--colorAccent)}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,select:-webkit-autofill,select:-webkit-autofill:focus,select:-webkit-autofill:hover{-webkit-text-fill-color:inherit;-webkit-box-shadow:inset 0 0 0 9999px transparent;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}select{font:inherit;outline:0}.text-input,textarea{outline:0}input[type=checkbox],input[type=radio]{border-radius:0;border:none;position:relative;vertical-align:baseline}.input-line-height,.text-input,input[type=text]{height:36px}.input-line-height{line-height:36px}.text-input,input[type=text]:not(.text-input),textarea{padding:7px 10px;width:100%}.ie7 .text-input,.ie7 input[type=text],.ie7 textarea{padding:10px;width:328px;height:14px}.ie8 .text-input,.ie8 input[type=text],.ie8 textarea,.ie9 .text-input,.ie9 input[type=text],.ie9 textarea{height:auto}.tone-dark .input-focus,.tone-dark input.search:focus,.tone-dark input:focus,.tone-dark select:focus,.tone-dark textarea:focus{border-color:var(--colorAccent);box-shadow:0 0 8px 0 rgba(0,167,218,.75)}.input,.input-label{position:relative;overflow:visible;scroll-snap-align:start}.input{margin:10px 0;font-size:1em}.input.first-child,.input:first-child{margin-top:0}.input-label{margin:20px 0}.input-label.first-child,.input:first-child{margin-top:0}.input-label h3,.input-label label,.input-label-label{font-weight:600;padding-bottom:5px;display:inline-block;font-size:1em}.input-label h3{display:block}.input-label h3 a,.input-label label a{font-weight:400}.input-label label .caption,.input-label label .optional{font-weight:400;font-size:.92em}.input-label .btn-alt{position:absolute;inset-inline-start:100%;top:23px;line-height:36px;-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:0;margin-inline-end:0}.phone .input-label .btn-alt{position:static;-webkit-margin-start:0;margin-inline-start:0}.checkbox-label,.input-label{position:relative;font-size:.93em}.input .icon-input-submit{background:0 0;font-size:1.82em;color:#d9d9d9;position:absolute;inset-inline-end:.21em;top:.21em;cursor:pointer;line-height:1}.tone-dark .input .icon-input-submit{color:#666}.input .icon-input-submit.focus,.input .icon-input-submit:focus,.input .icon-input-submit:hover{color:var(--colorAccent)}.ie7 .input .icon-input-submit{top:2px}.ui-autocomplete{max-height:130px;overflow-y:auto;overflow-x:hidden}* html .ui-autocomplete{height:125px}.autocomplete-list{position:absolute;display:none;z-index:1}.autocomplete-list .ui-autocomplete{position:absolute;top:0;inset-inline-start:0}.autocomplete-list ul{border:1px solid var(--bodyTextDisabled)}.autocomplete-list a{color:inherit;background:Window;padding:7px 10px;display:block;text-decoration:none;cursor:default}.autocomplete-list a.ui-state-focus{background:Highlight;color:HighlightText}.input-column{width:350px}.input-warning{color:var(--bodyTextSubtle);position:absolute;inset-inline-end:0;top:0}.input-below{margin-top:5px;display:block;position:static}.red-warning{color:#d74634}.input-password .input-password-strength{position:absolute;inset-inline-end:11px;top:50%;margin-top:5px}.fancy-fieldset .input-password{display:flex;align-items:center}.fancy-fieldset .input-password-strength{inset-inline-end:0;top:auto;margin-top:0}.input-password-strength{background:var(--bodyEmpty)}.tone-dark .input-password-strength{background:#1f1f1f}.input-password-strength,.input-password-strength span{display:block;width:50px;height:8px}.input-password-strength span{width:0%;background-color:transparent}.input-password-strength [data-veredict=very-weak]{background-color:#e74c3c}.input-password-strength [data-veredict=weak]{background-color:#e67e22}.input-password-strength [data-veredict=average],.input-password-strength [data-veredict=strong],.input-password-strength [data-veredict=stronger]{background-color:#2ecc71}.checkbox-label{font-size:1em;display:block;margin:5px 0;position:relative}.checkbox-label:last-child{margin-bottom:0}.checkbox-label input{position:absolute;padding:0;margin:0;-webkit-margin-start:-20px;margin-inline-start:-20px}.btn-alt.checkbox-label input{position:static;vertical-align:text-top;-webkit-margin-end:4px;margin-inline-end:4px}.phone .btn-alt.checkbox-label{display:block!important;margin:10px 0}.checkbox-label label{-webkit-padding-start:20px;padding-inline-start:20px;font-weight:400;margin:0;padding-bottom:0}.fancy-box .checkbox-label label{display:flex;align-items:flex-start}.input-search{position:relative}input.search{font-size:1em;border-radius:200px;padding:0 25px 0 32px;-webkit-padding-end:3.0666rem;padding-inline-end:3.0666rem;-webkit-padding-start:2.3571rem;padding-inline-start:2.3571rem;line-height:100%;height:26px;height:1.86rem;width:100%;border:1px solid transparent;top:0;inset-inline-start:0;outline:0;vertical-align:text-bottom}input.search.one-icon-padding,input.search.two-icon-padding{-webkit-padding-end:30px;padding-inline-end:30px;-webkit-padding-end:2rem;padding-inline-end:2rem}input.search.two-icon-padding{-webkit-padding-start:30px;padding-inline-start:30px;-webkit-padding-start:2rem;padding-inline-start:2rem}.top-bar input.search{-webkit-padding-start:39px;padding-inline-start:39px;-webkit-padding-start:2.46rem;padding-inline-start:2.46rem;top:-2px;position:relative;-webkit-padding-end:34px;padding-inline-end:34px;background:0 0;border:transparent;box-shadow:none!important}.top-bar input{color:var(--topBarText)}.ie7 input.search,.ie8 input.search,.ie9 input.search{-webkit-padding-end:10px;padding-inline-end:10px;line-height:26px;height:26px}.ie7 input.search{padding:0;width:200px}.input-search span{position:absolute;cursor:pointer}.input-search .icon--search{inset-inline-start:12px;top:6px;color:var(--inputText)}.top-bar .input-search .icon--search{top:4px;top:.24rem}.tone-dark .top-bar .input-search .icon--search,.tone-dark .top-bar .input-search input.search{color:#fff}.input-search .icon--search,.top-btn-text .icon--search{font-size:16px;width:16px;font-size:1.143rem;width:1.143rem}.input-search .icon--close,.input-search .icon--settings{padding:4px;top:0;font-size:1em}.input-search .icon--settings{inset-inline-end:22px}.input-search .icon--close{inset-inline-end:4px;color:var(--inputText)}.ie7 .input-search .icon--close,.ie8 .input-search .icon--close,.ie9 .input-search .icon--close{display:none}select{-webkit-padding-start:7px!important;padding-inline-start:7px!important}.ie7 select{width:100%!important;padding:0!important;height:auto!important}select option{padding:4px 10px;margin:0}textarea{resize:both;height:80px}.input-upload{position:relative}.user-settings-avatar{min-height:160px;height:auto}.user-settings-avatar-container{position:relative}.user-settings-avatar-container,.user-settings-avatar-container .user-image{font-size:160px;width:1em;height:1em}.user-settings-avatar .loading-placeholder{position:absolute;inset-inline-start:0;top:0;background:var(--bodyEmpty)}.tone-dark .user-settings-avatar .loading-placeholder{background:rgba(0,0,0,.6)}.phone .user-settings-avatar-container{margin:0 auto 10px!important}.input-upload .btn-container{margin:0 0 5px 0}.input-upload .btn-alt{-webkit-margin-start:0;margin-inline-start:0}.arrow-down{border-width:4px 4px 0 4px;border-color:#333 transparent transparent transparent;border-color:#333 transparent transparent transparent;content:""}.arrow-down{border-style:solid;display:inline-block;height:0;width:0;vertical-align:middle}.sign-services li{display:inline-block;margin:0 4px 4px 0}.sign-service{font-size:.93em;padding:0 8px;line-height:30px;height:29px}.sign-service .btn-icon{font-size:inherit;width:auto}.sign-services-compact .btn-text{display:none}.link-service,.sign-service{color:#fff;display:inline-block;text-decoration:none!important}.link-service span,.sign-service{border-radius:3px}.link-service{font-weight:400;height:28px;position:relative}.link-service span{display:block;line-height:28px;text-align:center!important}.link-service .btn-icon{width:28px;height:28px;-webkit-margin-end:4px;margin-inline-end:4px;position:absolute;inset-inline-start:0;top:0}.link-service span.sign-text{padding:0 20px;-webkit-margin-start:32px;margin-inline-start:32px}.btn-social .btn-icon,.sign-service .icon{color:#fff;position:relative;display:inline-block}.btn-container{margin-top:20px;margin-bottom:20px;position:relative}.btn{height:36px;line-height:36px;font-family:inherit;font-size:1em;font-weight:400;padding:0 10px;border-radius:3px;cursor:pointer;display:inline-block;text-decoration:none;border:1px solid transparent;white-space:nowrap}.btn,.btn:active,.btn:focus,.btn:hover{text-decoration:none}.btn.default:active,.btn:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-icon{width:18px;display:inline-block;text-align:center}.btn-text{-webkit-margin-start:4px;margin-inline-start:4px}.btn-text:empty{display:none}.btn-big{font-size:16px;font-size:1.143rem;height:38px;line-height:38px;-webkit-padding-start:1em;padding-inline-start:1em;-webkit-padding-end:1em;padding-inline-end:1em}.btn-small{height:30px;line-height:30px;font-size:.92em}.btn-input{font-weight:600;font-size:.93em;-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px}.btn-32{width:32px;height:32px;text-align:center;display:inline-block}.btn-32 .btn-icon{font-size:18px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.btn-capsule{border-radius:100px;border-color:rgba(255,255,255,.5);background-color:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background-image:none;height:auto;color:#fff;text-shadow:none;font-size:.93em;height:28px;line-height:28px;font-weight:400;padding:0 15px;box-shadow:none;-webkit-filter:none;filter:none}.btn-capsule:hover{background-color:rgba(0,0,0,.7)}.no-rgba .btn-capsule{border-color:#666;background-color:none;zoom:1}.btn-capsule:active{box-shadow:none}.btn-capsule .btn-icon{font-size:.93em}.btn.accent{color:var(--buttonAccentText);border:1px solid transparent;background:var(--buttonAccentBackground)}.btn.accent:not(.outline):hover{color:var(--buttonAccentHoverText);background:var(--buttonAccentHoverBackground)}.btn.accent.outline{color:var(--buttonAccentBackground);border-color:var(--buttonAccentBackground);box-shadow:none}.btn.accent.outline:hover{color:var(--buttonAccentHoverBackground);border-color:var(--buttonAccentHoverBackground)}.btn.default{color:var(--buttonDefaultText);border-color:var(--buttonDefaultBorder);background:var(--buttonDefaultBackground)}.btn.default--hover:not(.outline),.btn.default:not(.outline):hover{color:var(--buttonDefaultHoverText);background:var(--buttonDefaultHoverBackground);border-color:var(--buttonDefaultHoverBorder)}.btn.default.outline{color:var(--buttonDefaultBackground);border-color:var(--buttonDefaultBackground);box-shadow:none}.btn.default.outline:hover{color:var(--buttonDefaultHoverBackground);border-color:var(--buttonDefaultHoverBackground)}.btn.disabled,.btn.disabled:hover{color:var(--bodyTextSubtle);background-color:var(--buttonDefaultBackground);background-image:none;box-shadow:none;cursor:default}.tone-dark .btn.disabled,.tone-dark .btn.disabled:hover{color:#666;background-color:#212121}.btn.disabled.outline,.btn.disabled.outline:hover{color:var(--bodyTextSubtle);border-color:var(--bodyTextSubtle)}.btn.plain,.btn.plain:hover{background:0 0;text-shadow:none;border-color:transparent;box-shadow:none;padding:0;color:inherit}.tone-dark .btn.plain,.tone-dark .btn.plain:hover{background:0 0}.btn.plain:active{box-shadow:none}.btn.active{background-image:none;background-color:var(--colorAccent);border-color:var(--colorAccent);-webkit-filter:none;filter:none}.btn.grey,.btn.grey.off:hover{background-color:#eee}.btn.grey:hover{background-color:#e9e9e9}.btn.grey.outline{color:#eee}.btn.orange,.btn.orange.off:hover{border-color:#fe771d;background-color:#fe771d}.btn.orange:hover{background-color:#fe6b0a}.btn.orange.outline{color:#fe771d}.btn.purple,.btn.purple.off:hover{border-color:#8e44ad;background-color:#8e44ad}.btn.purple:hover{background-color:#8e44ad}.btn.purple.outline{color:#8e44ad}.btn.blue,.btn.blue.off:hover{border-color:var(--colorBlue);background-color:var(--colorBlue)}.btn.blue:hover{background-color:#2879b0}.btn.blue.outline{color:var(--colorBlue)}.btn.green,.btn.green.off:hover{background-color:var(--colorGreen)}.btn.green:not(.outline):hover{background-color:var(--colorGreenHover)}.btn.green.outline{color:var(--colorGreen);border-color:var(--colorGreenHover)}.btn.red,.btn.red.off:hover{border-color:var(--colorRed);background-color:var(--colorRed)}.btn.red:not(.outline):hover{background-color:var(--colorRedHover)}.btn.red.outline{color:var(--colorRed)}.btn.red.outline:hover{color:var(--colorRedHover);border-color:var(--colorRedHover)}.btn.white,.btn.white.off:hover{border-color:#fff;background-color:#fff}.btn.white:hover{background-color:#fff}.btn.white.outline{color:#fff}.btn.black,.btn.black.off:hover{border-color:#3a3a3a;background-color:#3a3a3a}.btn.black:hover{background-color:#343434}.btn.black.outline{color:#3a3a3a}.btn.active,.btn.black,.btn.blue,.btn.green,.btn.orange,.btn.red{color:#fff;border:1px solid transparent}.btn.grey,.btn.white{color:var(--bodyText)}.btn.off{cursor:default}.btn.off:active{box-shadow:none}.btn-social{color:var(--buttonDefaultText);background:var(--buttonDefaultBackground);background-image:none;box-shadow:none;border:1px solid transparent}.btn-social.btn-at .btn-icon,.btn-social.btn-share .btn-icon{color:var(--buttonDefaultText)}.btn-social,.btn-social:hover{text-decoration:none;text-shadow:none}.btn-twitter,.link-twitter span{background:#55acee}.btn-facebook,.link-facebook span{background:#3b5998}.btn-google,.btn-google-plus,.link-google span,.link-google-plus span{background:#d74836}.btn-mail{background:#ccc;color:var(--bodyText)}.btn-mail span{color:var(--bodyText)}.btn-tumblr{background:#35465c}.btn-pinterest{background:#bd081c}.btn-stumbleupon{background:#eb4924}.btn-blogger{background:#f57d00}.btn-whatsapp{background:#43d854}.btn-telegram{background:#08c}.btn-weixin{background:#7bb32e}.btn-weibo{background:#df2029}.btn-qzone{background:#ffce00}.btn-qq{background:#121214}.btn-reddit{background:#ff4500}.btn-reddit .btn-icon{color:#fff}.btn-vk,.link-vk span{background:#45668e}.btn.outline,.btn.outline:hover{background:0 0;border:1px solid;box-shadow:none}.pop-btn,.top-btn-el,a[data-modal]{-webkit-tap-highlight-color:transparent}.pop-btn *,.top-btn-el *{-webkit-tap-highlight-color:rgba(0,0,0,.2)}.pop-btn,.top-btn-el{display:inline-block;position:relative;cursor:pointer}.pop-box-inner{cursor:default;display:block;-webkit-overflow-scrolling:touch;overflow:auto}.pop-box-inner form{margin-top:-20px;margin-bottom:-20px}.btn.pop-btn .pop-box{line-height:100%}.pop-btn-text{color:var(--linkText);cursor:pointer}.ie7 .pop-btn-text,.ie8 .pop-btn-text{-webkit-padding-end:0;padding-inline-end:0}.pop-btn-text .arrow-down{vertical-align:middle;-webkit-margin-start:5px;margin-inline-start:5px;border-top-color:var(--linkText)}.pop-btn.disabled{cursor:default}.pop-btn.disabled .pop-btn-text{color:var(--bodyTextDisabled);cursor:default}.pop-btn.disabled .arrow-down{border-top-color:var(--bodyTextDisabled)}.tone-dark .pop-btn.disabled .arrow-down{border-top-color:#444}.pop-box{color:var(--menuText);background:var(--menuBackground);-webkit-backdrop-filter:blur(15px) saturate(1.8);backdrop-filter:blur(15px) saturate(1.8);display:none;font-size:.93em;z-index:200;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid var(--menuSeparator)}.phablet .pop-box,.phone .pop-box{font-size:inherit}.pop-box .or-separator{border-top-color:var(--menuSeparator)}.phablet .pop-box .or-separator,.phone .pop-box .or-separator{border-top-color:var(--topBarText);opacity:.25}@media (min-width:992px){.pop-box{position:absolute;top:20px;min-height:20px;min-width:190px;box-shadow:0 4px 14px rgba(0,0,0,.25);border-radius:5px;box-sizing:content-box;--columnGutter:5px;--columnWidth:230px;--columnWidthOuter:calc(var(--columnWidth) + var(--columnGutter))}.header--height .pop-box{min-width:240px}.pop-box,.pop-box.left-anchor{inset-inline-start:0}.pop-box.anchor-center{inset-inline-start:50%!important}.pop-box.anchor-right{inset-inline-start:auto;inset-inline-end:0}.pop-box.pbcols1{width:calc(1 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols2{width:calc(2 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols3{width:calc(3 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols4{width:calc(4 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols5{width:calc(5 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols1 li,.pop-box.pbcols2 li,.pop-box.pbcols3 li,.pop-box.pbcols4 li,.pop-box.pbcols5 li{border-radius:5px}.pop-box-menucols ul{padding:10px 0;overflow:auto}.pop-box-menucols li{width:var(--columnWidth);float:left;margin:0 0 0 5px}[dir=rtl] .pop-box-menucols li{float:right}.pop-box-menucols li:first-child a,.pop-box-menucols li:last-child a{border-radius:0}}.pop-box-menu{font-size:.8125rem;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.phablet .pop-box-menu,.phone .pop-box-menu{font-size:inherit}.pop-box-label{color:inherit;margin:10px;text-transform:uppercase;font-weight:700;font-size:90%;cursor:default;line-height:2}.pop-box-block{padding:0 10px}.pop-box-block .current::before{font-weight:900;font-family:"Font Awesome 5 Free";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;-webkit-margin-end:.25em;margin-inline-end:.25em;content:"\f205";font-size:90%}.pop-box-menu .menu-item,.pop-box-menu a{display:block;padding:6px 10px;text-decoration:none;font-weight:400;line-height:143%;color:var(--menuItemText)}.pop-box-block a{display:inline-block;padding:6px;border-radius:.25em;line-height:1}.phablet .pop-box,.phone .pop-box{color:var(--topBarText)}.phablet .pop-box-menu .menu-item,.phablet .pop-box-menu a,.phone .pop-box-menu .menu-item,.phone .pop-box-menu a{padding:10px;color:inherit}.phablet .pop-box-menu li.with-icon a .btn-icon,.phone .pop-box-menu li.with-icon a .btn-icon{top:11px}@media (min-width:992px){.pop-box-menu .menu-item,.pop-box-menu a{border-bottom:0}}.pop-box-menu a.focus,html:not(.phone) .pop-box-menu a:hover{background:var(--menuItemHoverBackground);color:var(--menuItemHoverText)}.pop-box-menu li.current a{background:rgba(0,0,0,.05)}.pop-box-menu li.current a:not(:hover) .btn-icon{color:var(--colorAccent)}.pop-box-menu ul{display:block;padding:0}@media (min-width:992px){.pop-box-menu ul{margin:5px 0}}.pop-box-menu li{display:block;text-align:start;overflow:hidden;position:relative}.pop-box-menu li.with-icon a{-webkit-padding-start:36px;padding-inline-start:36px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}html:not(.phone):not(.phablet) .header--height .pop-box-menu li a{-webkit-padding-end:25px;padding-inline-end:25px}.pop-box-menu li a kbd{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:10px;border-radius:2px;display:block;line-height:1;font-size:.9em;opacity:.5}.pop-box-menu li a:hover kbd{opacity:1}.phablet .pop-box-menu li a kbd,.phone .pop-box-menu li a kbd{display:none}.pop-box-menu li.with-icon a .btn-icon{position:absolute;inset-inline-start:10px;top:8px}.pop-box-menu li.current,.pop-box-menu li.current a{font-weight:600}.pop-box-menu li.current a:hover{cursor:default}.pop-box-userdetails{padding:10px;width:120%;min-width:230px;cursor:default;inset-inline-start:42px;line-height:normal;top:0!important;margin-top:0!important}.phablet .pop-box,.phone .pop-box{position:fixed;bottom:0;inset-inline-start:0!important;width:100%;top:auto!important;background:var(--topBarBackground);color:var(--topBarText)}.pop-box-header{font-weight:700;padding:15px 10px;position:relative;text-align:start;color:var(--topBarText)}.pop-box-header .icon--close{position:absolute;inset-inline-end:10px;top:50%;margin-top:-7px;font-size:14px;text-align:end}@media (min-width:992px){.pop-box-header{display:none}}.top-bar-placeholder{-webkit-backface-visibility:hidden;backface-visibility:hidden}.top-bar,.top-bar ul li.pop-btn,.top-bar ul li.top-btn-el,.top-bar-placeholder{height:50px}.top-btn-create-account,.top-btn-text{line-height:50px}.top-btn-text{-webkit-tap-highlight-color:transparent}.follow-scroll,.top-bar{transition:top .4s ease-in-out}.top-bar--:focus-within,.top-bar.scroll-up{top:0}.follow-scroll--:focus-within,.scroll-up.follow-scroll{top:50px!important}.scroll-down{top:-100%}.top-bar,.top-sub-bar{left:0;right:0;width:100%;position:-webkit-sticky;position:sticky;height:50px}.top-bar{color:var(--topBarText);z-index:900}.top-bar--main{z-index:910}.top-sub-bar{color:var(--bodyText);z-index:500;overflow:visible}body.pop-box-show .top-sub-bar--1{z-index:1}body.landing .top-bar,body.split .top-bar{position:fixed}.phablet .pop-box-show .top-bar,.phone .pop-box-show .top-bar{z-index:1}.follow-scroll-wrapper.position-fixed,.top-bar::before,.top-sub-bar::before{background:var(--topBarBackground);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.top-sub-bar::before{background:var(--bodyBackground)}.top-bar::before,.top-sub-bar::before{-webkit-backface-visibility:hidden;backface-visibility:hidden}.top-bar::before,.top-sub-bar::before{width:100%;height:calc(100% + .5px);position:absolute;content:" "}.top-bar .content-width,.top-sub-bar .content-width{position:relative;height:100%;-webkit-padding-start:5px;padding-inline-start:5px;-webkit-padding-end:5px;padding-inline-end:5px}.top-bar-logo{width:100%;height:100%;position:absolute;top:0;text-align:center;inset-inline-start:0}.top-bar-logo img{height:20px}.top-bar-logo>a{display:inline-block;vertical-align:top;position:relative;top:50%;transform:translateY(-50%);text-decoration:none;font-weight:400;font-size:24px;color:var(--topBarText)}.top-bar-logo img{display:block;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}.top-bar ul{list-style:none}.top-bar li.pop-btn,.top-bar li.top-btn-el{float:left;-webkit-padding-end:5px;padding-inline-end:5px;-webkit-padding-start:5px;padding-inline-start:5px;position:relative}[dir=rtl] .top-bar li.pop-btn,[dir=rtl] .top-bar li.top-btn-el{float:right}@media (min-width:992px){.top-bar li.pop-btn,.top-bar li.top-btn-el{-webkit-padding-end:10px;padding-inline-end:10px;-webkit-padding-start:10px;padding-inline-start:10px}.top-bar .top-bar-notifications.pop-btn{-webkit-padding-end:0;padding-inline-end:0}}.top-bar ul .pop-btn.current,.top-bar ul .top-btn-el.current{border-bottom:3px solid var(--colorAccent)}.top-bar ul .pop-btn.current .top-btn-text,.top-bar ul .top-btn-el.current .top-btn-text{text-shadow:none;box-shadow:none}.top-bar ul li.top-btn-el a{text-decoration:none;color:inherit}.tone-light .top-bar .top-bar ul .pop-btn.current .top-btn-text,.tone-light .top-bar .top-bar ul .top-btn-el.current .top-btn-text{color:var(--bodyText)}.top-bar-right li.pop-btn:last-child,.top-bar-right li.pop-btn:last-child .arrow-down{-webkit-margin-end:0;margin-inline-end:0}.top-btn-create-account,.top-btn-text{display:block;font-weight:400;font-size:1em;height:100%}#menu-fullscreen .btn.top-btn-create-account,.btn.top-btn-create-account:not(.grey):not(.white),.top-btn-text{color:inherit}.top-btn-text{text-decoration:none;color:var(--topBarText)}.top-bar #menu-fullscreen .top-btn-text{color:var(--topBarText)}body.landing .top-btn-text{color:var(--topBarText)}.top-btn-text .icon{-webkit-margin-end:7px;margin-inline-end:7px;position:relative;top:0;display:inline-block;font-size:16px;width:16px;font-size:1.143rem;width:1.4rem;line-height:50px;text-align:center}.current .top-btn-text .icon{color:var(--colorAccent)}.top-btn-text .btn-text{-webkit-margin-start:0;margin-inline-start:0}.top-btn-text .arrow-down{position:relative;margin:0 0 0 5px}.top-btn-text .btn-text{vertical-align:top}.top-btn-text .icon{-webkit-margin-end:0;margin-inline-end:0}#menu-fullscreen .top-bar-notifications .btn-text{display:inline-block}#menu-fullscreen #top-bar-user,#menu-fullscreen [data-nav=upload]{display:none}#top-bar [data-nav=upload]{-webkit-padding-end:5px;padding-inline-end:5px;-webkit-padding-start:5px;padding-inline-start:5px}.top-bar-notifications-container{-webkit-margin-end:2px;margin-inline-end:2px;cursor:default}.top-bar-notifications-header{font-size:.93em;line-height:1;padding:12px 10px;overflow:auto}.top-bar-notifications-header,.top-bar-notifications-list li{border-bottom:1px solid var(--menuSeparator)}.tone-dark .top-bar-notifications-header,.tone-dark .top-bar-notifications-list li{border-color:#333}.top-bar-notifications-header h2{font-size:1em;font-weight:700;float:left}[dir=rtl] .top-bar-notifications-header h2{float:right}.top-bar-notifications-header a{float:right}[dir=rtl] .top-bar-notifications-header a{float:left}.top-bar-notifications-list li{display:block;text-decoration:none;padding:10px;position:relative;min-height:68px;-webkit-padding-start:68px;padding-inline-start:68px}.top-bar-notifications-list li:last-child{border-bottom:0}.top-bar-notifications-list li:hover{background:rgba(0,0,0,.02)}.tone-dark .top-bar-notifications-list li:hover{background:rgba(0,0,0,.2)}.top-bar-notifications-list li.transition{transition:background-color 150ms linear}.top-bar-notifications-list li.new,.top-bar-notifications-list li.persistent{background:#fffad9}.tone-dark .top-bar-notifications-list li.new,.tone-dark .top-bar-notifications-list li.persistent{background:#333}.ie7 .top-bar-notifications-list li{min-height:48px}.top-bar-notifications-list li .user-image{width:48px;height:48px;position:absolute;left:10px;top:10px}.top-bar-notifications-list li .user-image img{width:100%;height:100%;display:block}.top-bar-notifications-list li .user-image span.icon{font-size:48px;width:48px;height:48px;-webkit-margin-start:-24px;margin-inline-start:-24px;margin-top:-24px}.top-bar-notifications-list li .how-long-ago{display:block;font-size:11px;color:var(--bodyTextSubtle)}.top-bar-notifications .top-btn-number{position:absolute;z-index:1;border-radius:100px;zoom:.75;inset-inline-end:-8px;top:10px;visibility:hidden}.top-bar-notifications .top-btn-number.on{visibility:visible}@media (min-width:992px){.top-bar .pop-box{margin:10px;z-index:200}}.top-bar-search-input{-webkit-margin-start:-10px;margin-inline-start:-10px;-webkit-margin-end:10px!important;margin-inline-end:10px!important}.top-bar-search-input .icon--close{inset-inline-end:-4px}.top-bar-search-input .icon--settings{inset-inline-end:14px}.top-bar .top-bar-search-input .icon--search{color:var(--colorAccent)}.top-bar-search-input .input-search{position:relative;top:50%;margin-top:-13px}.top-bar-search-input input{font-size:1em;border-width:0;-webkit-padding-start:36px;padding-inline-start:36px}.tone-light .top-bar .top-bar-search-input input{border-width:1px}.top-bar-left .pop-box{inset-inline-start:-10px}.phone .top-bar-left li{-webkit-padding-end:0;padding-inline-end:0}.phone .top-bar-right li{-webkit-padding-start:0;padding-inline-start:0}.top-bar-right .pop-box{inset-inline-start:auto;inset-inline-end:-10px}.top-bar--main .pop-box{top:calc(50% + 10px)}#top-predictive-search.pop-box{width:200px;inset-inline-start:0;font-size:100%}.top-bar .pop-account .or-separator{margin-top:30px;margin-bottom:30px}.top-btn-create-account{text-decoration:none;display:inline;padding:4px 12px;height:26px}.top-bar .opened .top-btn-text span:not(.btn-text),.top-bar .top-btn-text:hover span:not(.btn-text){color:var(--linkText)}.phone .top-bar .top-btn-text:hover span:not(.btn-text){color:inherit}.phone .top-bar .current .top-btn-text:hover span:not(.btn-text){color:var(--linkText)}.ios .top-bar .top-btn-text span:not(.btn-text):not(.top-btn-number):hover{color:var(--bodyText)}.ios .top-bar .opened .top-btn-text span:not(.btn-text),.ios .top-bar .opened .top-btn-text:not(.top-btn-number){color:var(--linkText)}.top-bar .btn:hover:not(.white):not(.grey),.top-bar .btn:not(.white):not(.grey),.top-bar .opened .btn:not(.white):not(.grey){color:#fff}.current .top-btn-create-account:hover{background:inherit}.current .top-btn-create-account{padding:0;background:0 0}.top-btn-number{background:#555;color:#ddd;font-size:12px;font-weight:400;border-radius:3px;padding:0 7px;position:relative;display:block;line-height:22px;height:22px;top:-2px}#menu-fullscreen .top-btn-number{display:inline-block;position:absolute;-webkit-margin-end:5px;margin-inline-end:5px;top:10px;vertical-align:text-bottom;inset-inline-start:30px;inset-inline-end:auto}.opened .top-btn-number.on,.tone-light.ios .top-bar .top-btn-number.on,.tone-light.top-bar .top-btn-number.on,.top-bar .top-btn-text:hover .top-btn-number.on,.top-btn-number.on,.top-btn-number.on:hover{background:#d90000;color:#fff}.pop-account .pop-box-inner{padding:20px 10px;cursor:default}.pop-account .title,.pop-account h2{font-size:1em;text-align:center;margin-top:5px;font-weight:400;display:block}.pop-account .sign-services{margin:15px 0 11px 0}.pop-account input.text-input,.pop-account input[type=password],.pop-account input[type=text]{width:100%}.ie7 .pop-account input.text-input{width:266px;height:auto}.pop-account .checkbox-label{display:inline-block;margin:0}#top-bar-user .top-btn-text .user-image{position:relative;top:50%;margin-top:-13px;width:1em;height:1em;float:left;font-size:26px;background:0 0;color:inherit;-webkit-margin-end:0;margin-inline-end:0}[dir=rtl] #top-bar-user .top-btn-text .user-image{float:right}#top-bar-user-menu.pop-box{width:150px}.header{position:relative}.header-icon{color:var(--colorAccent)}.header-tabs{min-height:50px}.header.follow-scroll{-webkit-margin-end:-10px;margin-inline-end:-10px;-webkit-margin-start:-10px;margin-inline-start:-10px;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;overflow:visible;position:-webkit-sticky;position:sticky;min-height:50px}.tone-dark .header{border-bottom-color:#212121}.header.fixed.follow-scroll{border-bottom:0}.header .header-title,.header h1{font-size:1em}.header>*{vertical-align:middle}.header .heading,.header .heading *,.header>.header-title,.header>h1{word-break:break-word}.header-tabs .heading,.header-tabs .heading *,.header-tabs>.header-title,.header-tabs>h1{line-height:50px}.header .heading,.header>.header-title,.header>h1{font-size:22px;font-weight:400;display:inline-block;color:inherit}.header .header-title a,.header h1 a{color:inherit;text-decoration:none}.header .header-title strong,.header .heading strong,.header h1 strong{font-weight:inherit}.header.header-tabs .header-title,.header.header-tabs h1{-webkit-margin-end:5px;margin-inline-end:5px;-webkit-margin-start:5px;margin-inline-start:5px}.header ul.content-tabs{display:inline-block}.phablet .header ul.content-tabs,.phone .header ul.content-tabs{float:none;display:inline-block;left:0;right:0;position:absolute;z-index:1;white-space:nowrap}.phablet .header.follow-scroll ul.content-tabs,.phone .header.follow-scroll ul.content-tabs{position:absolute;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}.phablet .header:not(.follow-scroll) ul.content-tabs,.phone .header:not(.follow-scroll) ul.content-tabs{top:auto}.header-content-left{float:left}[dir=rtl] .header-content-left{float:right}.header-content-right{float:right;height:auto;-webkit-margin-start:auto;margin-inline-start:auto}[dir=rtl] .header-content-right{float:left}@media (max-width:340px){.header-content-right.breaks-ui{clear:both;position:static!important;-webkit-margin-start:0;margin-inline-start:0}}.phablet .header-content-right:not(.phablet-float-none),.phone .header-content-right:not(.phone-float-none){position:absolute;inset-inline-end:0;top:0;float:right}[dir=rtl].phablet .header-content-right:not(.phablet-float-none),[dir=rtl].phone .header-content-right:not(.phone-float-none){float:left}.header-content-right .number-figures{margin-top:14px;-webkit-border-start:1px solid var(--bodySeparator);border-inline-start:1px solid var(--bodySeparator)}.header-content-right .number-figures:first-child{-webkit-border-start:0;border-inline-start:0}.header .header-link{font-size:1em;display:inline-block}.header .pop-btn.breadcrum-item{margin-top:0}.header .user-image{font-size:30px;width:1em;height:1em;margin-top:10px;float:left}[dir=rtl] .header .user-image{float:right}.header.header-content{position:relative;min-height:40px;border:0}.header.header-content .heading,.header.header-content .heading *{line-height:40px;height:40px}.header-content img{max-height:40px}.header-content .user-image{width:1em;height:1em;font-size:40px;margin-top:0;top:0}.header .user-image img,.header-content .user-image img{width:100%;height:100%;display:block}.header-description{line-height:1.4;max-height:10vh;overflow-y:scroll;overflow:auto}.header-description:empty{display:none}.header-description p{margin:10px 0}.header-content-breadcrum{float:left}[dir=rtl] .header-content-breadcrum{float:right}.breadcrum-item :not(.btn){line-height:normal}.breadcrum-text,.header-content-breadcrum .breadcrum-item{line-height:40px}.breadcrum-text,.breadcrum-text a{color:inherit}.breadcrum-text{font-weight:400}.breadcrum-item{-webkit-margin-end:10px;margin-inline-end:10px;position:relative;float:left}[dir=rtl] .breadcrum-item{float:right}.breadcrum-text a:hover{color:var(--linkText);text-decoration:none}.breadcrum-text .user-link{-webkit-margin-start:5px;margin-inline-start:5px}.header-content-breadcrum .arrow,.header-content-breadcrum .arrow-down,.header-content-breadcrum .arrow-right{-webkit-margin-start:5px;margin-inline-start:5px;position:relative}.header-content-breadcrum a:hover .arrow-down{border-top-color:var(--linkText)}.header-content-breadcrum a:hover .arrow-right{border-left-color:var(--linkText)}.header-content-breadcrum .pop-box h2{font-size:1.07em;line-height:1.2}.header-content-breadcrum .pop-box h2 a{line-height:1}.header-content .btn{-webkit-margin-start:5px;margin-inline-start:5px;float:left;display:block}[dir=rtl] .header-content .btn{float:right}.header-content .btn:last-child{-webkit-margin-end:0;margin-inline-end:0}.follow-scroll{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;z-index:1}.follow-scroll-wrapper{left:0;right:0;z-index:50}.follow-scroll-wrapper.position-fixed .header{margin-bottom:-1px!important}.follow-scroll-placeholder{-webkit-backface-visibility:hidden;backface-visibility:hidden}.phablet .header:not(.header-tabs) .tab-menu,.phone .header:not(.header-tabs) .tab-menu{color:var(--buttonDefaultText);background:var(--buttonDefaultBackground);border-radius:4px;height:auto;line-height:1em;min-height:1em;padding:10px}.phablet .header:not(.header-tabs) .tab-menu:not(.--hide),.phone .header:not(.header-tabs) .tab-menu:not(.--hide){color:var(--buttonDefaultHoverText);background:var(--buttonDefaultHoverBackground);margin-bottom:10px}.phablet .header .tab-menu.--hide .tab-menu--show,.phablet .header .tab-menu:not(.--hide) .tab-menu--hide,.phone .header .tab-menu.--hide .tab-menu--show,.phone .header .tab-menu:not(.--hide) .tab-menu--hide{display:none}.tab-menu{cursor:pointer;line-height:50px;min-height:50px}.tab-menu.--hide .btn-icon[data-content=tab-icon]{color:var(--colorAccent)}.tab-menu.--hide{color:var(--buttonDefaultText)}.tab-menu:not(.--hide){color:var(--buttonDefaultHoverText)}.content-tabs-container{position:relative;display:inline-block}.phablet .content-tabs-container--mobile,.phone .content-tabs-container--mobile{box-shadow:0 6px 4px rgba(0,0,0,.25);inset-inline-start:-10px;width:calc(100% + 15px)}.phablet .content-tabs-wrap,.phone .content-tabs-wrap{height:50px;overflow-y:hidden;position:relative;-webkit-overflow-scrolling:touch;overflow-x:scroll;position:relative;display:none;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:var(--bodyBackground)}.content-tabs-wrap::-webkit-scrollbar{display:none}.content-tabs-wrap{display:inline-block;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.content-tabs li{scroll-snap-align:start}.content-tabs li:not(.current){transition-duration:.2s;transition-property:background-color}.content-tabs a{font-weight:400;color:inherit;text-decoration:none;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}.phone .content-tabs li:last-child{-webkit-margin-end:15px;margin-inline-end:15px}.content-tabs-shade{content:" ";background:-webkit-linear-gradient(0deg,rgba(255,255,255,0),var(--bodyBackground));width:15px;height:100%;position:absolute;inset-inline-end:0;top:0;pointer-events:none;z-index:2}[dir=rtl] .content-tabs-shade{background:-webkit-linear-gradient(180deg,rgba(255,255,255,0),var(--bodyBackground))}.phablet .content-tabs a,.phone .content-tabs a{color:var(--menuItemText)}.content-tabs li.disabled a{cursor:default}.tab-menu .--show{display:none}.tab-menu.current .--show{display:inline-block}.tab-menu.current .--hide{display:none}.content-tabs li{float:left;font-size:1em}[dir=rtl] .content-tabs li{float:right}.phablet .content-tabs li,.phone .content-tabs li{float:none;border-bottom:0;display:inline-block}.content-tabs-vertical li{float:none;margin:0;-webkit-border-start:2px solid transparent;border-inline-start:2px solid transparent}.content-tabs-vertical li>*{-webkit-padding-end:20px;padding-inline-end:20px;-webkit-padding-start:20px;padding-inline-start:20px}.header-content-right .content-tabs li{-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:0;margin-inline-end:0}.content-tabs a,.content-tabs li{height:50px;line-height:50px;display:block}.content-tabs-vertical a,.content-tabs-vertical li{height:38px;line-height:38px}.content-tabs li.current,.content-tabs li.visited,.content-tabs li.visited:hover{border-color:var(--colorAccent);border-style:solid;border-bottom-width:3px}.content-tabs li.current .btn-icon{color:var(--colorAccent)}.content-tabs li:not(.current):hover{background:var(--bodyEmpty)}.content-tabs li:not(.current):hover a .btn-icon{color:var(--colorAccent)}.content-tabs li.disabled:hover{border-bottom:0}.content-tabs li.current{border-color:var(--colorAccent)}.content-tabs li.visited{border-bottom-color:transparent}.content-tabs li.current.visited{border-color:#d93600}.content-tabs li.visited,.content-tabs li.visited a{color:#d93600}.content-tabs-vertical li.current,.content-tabs-vertical li:hover{border-bottom-width:0;border-left-width:2px}.content-tabs .tab-count{font-weight:400;color:var(--bodyTextSubtle)}.content-tabs .tab-count-block{font-weight:400;background:#d90000;border-radius:3px;padding:1px 4px;position:relative;top:-1px}.content-tabs .current .tab-count-block,.content-tabs .tab-count-block{color:#fff}.content-tabs li.disabled *{color:var(--bodyTextDisabled)}.header--centering{display:flex;align-items:center;flex-wrap:wrap}.header--height{overflow:visible;height:50px}.list-selection *{line-height:normal}#tabbed-content-group{margin-top:20px;padding-bottom:20px;position:relative}.content-listing .viewer-kb{opacity:0;position:fixed;bottom:-100px;z-index:1;left:0;right:0;background:linear-gradient(0deg,var(--topBarBackground) 0,rgba(0,0,0,0) 100%)}.--has-selection .content-listing.visible .viewer-kb{opacity:1;bottom:0}.content-listing .viewer-kb-input{color:var(--menuText);background:var(--menuBackground);border-radius:.5em;margin:1em;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 4px 14px rgb(0 0 0 / 25%)}#content-listing-tabs #tabbed-content-group{margin-top:0}#content-listing-tabs{padding-bottom:0;-webkit-margin-start:-10px;margin-inline-start:-10px;-webkit-margin-end:-10px;margin-inline-end:-10px}.tabbed-content{display:none;width:100%;overflow:hidden}.title{font-size:.93em;font-weight:700;margin-bottom:5px}.title.grid-columns{-webkit-margin-end:10px;margin-inline-end:10px;text-align:end;line-height:2}.phablet .title.grid-columns,.phone .title.grid-columns{-webkit-margin-end:0!important;margin-inline-end:0!important;text-align:start}.tabbed-content-section{overflow:auto}.tabbed-content-list{line-height:1.8}.tabbed-listing .tabbed-content{overflow:hidden}.table-li{display:table;width:100%}.table-li>li{padding-top:8px;padding-bottom:8px;border-bottom:1px solid var(--bodySeparator);list-style:none!important}.tabbed-content-list.table-li-hover>li:hover{background:var(--bodyEmpty)}.tabbed-content-list .table-li-header{font-weight:700}.tabbed-content-list.table-li-hover .table-li-header:hover,.tone-dark .tabbed-content-list.table-li-hover .table-li-header:hover{background:0 0}.table-li ul li:last-child{border-bottom:none}.desktop .table-li--mobile-display,.laptop .table-li--mobile-display,.largescreen .table-li--mobile-display,.phablet .table-li--mobile-display,.tablet .table-li--mobile-display{display:none!important}.viewer-title{flex-grow:1;order:2;font-size:1.43em;line-height:1.43em;-webkit-padding-end:2em;padding-inline-end:2em}.panel-description:empty{display:none;margin:0!important;padding:0!important}.panel-description .description-text{font-size:1em}.panel-description .description-meta{font-size:.93em}.panel-description .exif-meta{-webkit-padding-start:1.57em;padding-inline-start:1.57em;position:relative}.panel-description .exif-meta .camera-icon{color:var(--bodyTextDisabled);position:absolute;inset-inline-start:0;top:.21em;font-size:1.14em}.panel-description .exif-meta .exif-data{display:block;font-size:1em}.panel-thumbs{z-index:1;bottom:0;left:0;right:0;background:var(--viewerBackground)}.panel-thumb-list{overflow-x:auto;overflow-y:hidden;white-space:nowrap;text-align:center;height:50px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}.panel-thumb-list:empty{display:none}.panel-thumb-list li{position:relative;font-size:0;border-top:3px solid transparent;display:inline-block;line-height:50px}.panel-thumb-list li.current{border-color:var(--colorAccent)}.list-item-desc .panel-thumb-list li:hover img,.panel-thumb-list li.current img{opacity:1}.phablet .panel-thumb-list li.more-link,.phone .panel-thumb-list li.more-link{clear:both;line-height:100%;padding:10px 0}.panel-thumb-list img{display:block;width:47px;height:47px;opacity:.4;transition:opacity 350ms ease}.panel-thumb-list li:hover img{opacity:1}.panel-share-item{margin-bottom:30px}.panel-share-item:last-child{margin-bottom:0}.panel-share-item .pre-title{-webkit-padding-start:200px;padding-inline-start:200px;line-height:20px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--bodySeparator);font-weight:700}.tone-dark .panel-share-item .pre-title{border-color:#212121}.phablet .panel-share-item .pre-title,.phone .panel-share-item .pre-title{-webkit-padding-start:0;padding-inline-start:0}.panel-share-item .title{line-height:32px}.panel-share-item .grid-columns{position:relative}.panel-share-input-label{margin-bottom:10px;overflow:auto}.panel-share-input-label:last-child{margin-bottom:0}.panel-share-input{position:relative}.panel-share-networks{overflow:auto;text-align:center}.panel-share-networks h4.title{line-height:32px}.panel-share-networks li{display:inline-block;-webkit-margin-end:5px;margin-inline-end:5px;margin-bottom:5px}.panel-share-networks li a{display:block;width:32px;height:32px;position:relative}.panel-report h4.title{line-height:36px}.text-content{font-size:16px}.text-content li,.text-content p{line-height:160%;margin:10px 0}.text-content h1,.text-content h2,.text-content h3,.text-content h4{margin:40px 0 20px 0;font-weight:400;line-height:120%}.text-content h1{font-size:1.375em}.text-content h2{font-size:1.25em}.text-content h3{font-size:1.125em}.text-content h4{font-size:1.07em}.text-content h5{font-size:1em}.text-content h6{font-size:1em}.text-content ol,.text-content ul{-webkit-margin-start:20px;margin-inline-start:20px}.text-content li{list-style:disc outside;margin-top:0;margin-bottom:0}.form-content{position:relative}.signup-services-column h2{font-size:17px}.signup-services-column ul{margin:10px 0}.signup-services-column li:first-child{-webkit-margin-start:0;margin-inline-start:0}.signup-services-column li:last-child{-webkit-margin-end:0;margin-inline-end:0}.form-content .content-tabs-vertical{-webkit-margin-end:10px;margin-inline-end:10px;position:absolute;inset-inline-start:0;top:0}.form-content .content-tabs-vertical.position-fixed{position:fixed;inset-inline-start:auto;top:auto}.tabbed-input-column{-webkit-margin-start:200px;margin-inline-start:200px}.phablet .tabbed-input-column,.phone .tabbed-input-column{-webkit-margin-start:0;margin-inline-start:0}.account-link{position:relative}a.account-linked-profile{width:48px;height:48px;display:block}a.account-linked-profile img{width:100%;height:100%;display:block;border:0}.text-overflow-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}html.menu-fullscreen-visible{overflow:hidden}#menu-fullscreen{position:fixed;left:0;top:0;bottom:0;right:0;height:100vh;height:100dvh;width:100vw;width:100dvw;overflow:auto}#menu-fullscreen>ul>li{display:block;float:none;border-bottom:0;margin:0!important;position:relative}#menu-fullscreen>ul>li .top-btn-text{padding:0 10px;background:inherit}#menu-fullscreen>ul>li .icon{-webkit-margin-end:7px;margin-inline-end:7px}#menu-fullscreen>ul>li .input-search .icon{-webkit-margin-end:0;margin-inline-end:0}#menu-fullscreen>ul>li a{text-decoration:none}#menu-fullscreen .input-search{margin:0;-webkit-margin-end:10px;margin-inline-end:10px;top:12px;width:auto}#menu-fullscreen .menu-fullscreen-show{display:block}#menu-fullscreen .menu-fullscreen-hide{display:none}body.upload-box-visible{margin-top:300px}body.upload-box-visible.no-margin-top{margin-top:280px}body.upload-box-visible .upload-box{display:block}.upload-box{clear:both;background:var(--bodyBackground)}.upload-box--fixed{position:fixed;left:0;right:0;z-index:200;background:var(--bodyBackground)}body:not(#upload) .upload-box--fixed{padding-top:50px;overflow:auto}.phone .upload-box--fixed{top:0;z-index:500;max-height:100%;overflow-y:auto;overflow-x:hidden}.upload-box--hidden{transform:translateY(-100%);top:-1px}.upload-box--show{transform:translateY(0)}.upload-box-inner{padding:40px 0;position:relative}.phone .upload-box-inner{padding:20px 0}.upload-box-inner .position-absolute{position:absolute;text-transform:uppercase;top:20px;line-height:20px}#upload .upload-box[data-queue-size="0"] .upload-box-heading,.phone .upload-box[data-queue-size="0"] .upload-box-heading{position:fixed;top:50%;left:0;right:0;transform:translateY(-50%);padding:10px}.upload-box-heading{text-align:center}.upload-box-heading .icon{font-size:100px;height:1em;display:inline-block;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;text-decoration:none;-webkit-tap-highlight-color:transparent}.upload-box-heading .heading,.upload-box-heading h2{font-size:26px;margin:10px 0;display:block}.upload-box-heading .heading a,.upload-box-heading h2 a{color:inherit;text-decoration:none}.upload-box-status-text{font-size:1em;line-height:1.4}.upload-box-allowed-files{inset-inline-start:0;font-size:11px;font-size:.79rem;color:var(--bodyTextSubtle)}.upload-box-close{text-decoration:none;inset-inline-end:0;font-size:11px;line-height:11px;font-size:.79rem;line-height:1em;color:var(--bodyText)}.tone-dark .upload-box-close{color:#ccc}.upload-box-close:hover{text-decoration:none}.upload-box-close a{color:inherit;text-decoration:none}.upload-box-close .btn-icon{font-size:.9em;display:inline}@media (min-width:340px){.upload-input-col{width:310px}}.page-not-found{border-radius:10px;background:var(--bodyEmpty);text-align:center;padding:30px;font-size:16px;margin-top:20px}.page-not-found h1{font-size:30px;margin-bottom:10px}.page-not-found .input-search{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:20px}.page-not-found .input-search .icon--search{font-size:20px;inset-inline-start:14px;top:8px}.page-not-found .input-search .icon--close{top:3px;inset-inline-end:6px}.page-not-found input.search{height:36px;width:100%;font-size:15px;-webkit-padding-end:30px;padding-inline-end:30px;-webkit-padding-start:40px;padding-inline-start:40px}.ie7 .page-not-found input.search,.ie8 .page-not-found input.search,.ie9 .page-not-found input.search{-webkit-padding-end:10px;padding-inline-end:10px;line-height:36px}.content-listing{overflow:hidden;position:relative;clear:both}.pad-content-listing{width:calc(100% + 10px);-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:relative}.list-item{display:inline-block}.js .content-listing{height:0}.js .jsly.content-listing{height:auto}.list-item .disabled-mask{width:100%;height:100%;position:absolute;top:0;inset-inline-start:0;background:rgba(255,255,255,.5);z-index:1}.list-item:hover .hover-display,.phablet .list-item .hover-display,.phone .list-item .hover-display{display:block}.list-item.masked:hover .hover-display{display:none}.list-item .hover-display,html.--idle .list-item .hover-display:not(.idle-display),html.--idle .list-item-image-tools>div{opacity:0;transition:all 350ms ease}html:not(.--idle) .list-item:hover .hover-display{opacity:1}.phablet .list-item .hover-display,.phone .list-item .hover-display{opacity:1;transition:none}.list-item-image{position:relative;display:block;overflow:hidden;min-height:260px;text-align:center;background:var(--bodyEmpty);content-visibility:auto;contain:layout style paint}.list-item-image .image-container{display:inline-block;text-align:center;vertical-align:bottom;text-decoration:none;font-size:64px;width:100%;height:100%}.js .list-item-image .image-container.--media{width:100%;height:100%}.list-item-image .image-container .media,.list-item-image .image-container img,.list-item-image .image-container svg,.list-item-image .image-container video{display:block;position:relative;width:100%!important;height:100%;-o-object-fit:cover;object-fit:cover}.list-item-image .image-container .icon.empty{font-size:.9em}.list-item-image .image-container .empty{color:var(--bodyText);text-decoration:none}.selected .list-item-image .image-container .icon.empty{color:#fff}.list-item-image-btn{padding:5px 8px 5px 28px;font-size:.93em;background:var(--bodyBackground);position:absolute;top:10px;cursor:pointer;border-radius:2px}.list-item-image-btn.list-image-like-btn{inset-inline-start:10px}.list-item-image-btn span{font-size:15px;position:absolute;inset-inline-start:8px;top:50%;margin-top:-8px}.ie7 .list-item-image-btn span{inset-inline-start:4px;top:2px}.list-item-image-btn:hover span{color:var(--colorAccent)}.list-item-image-btn.liked{background:var(--colorAccent);color:#fff;display:block}.list-item-image-btn.liked:hover{background:#d90000}.list-item-image-btn.liked:hover span.icon-like{font-size:11px;padding:0;inset-inline-start:10px;color:#fff;margin-top:-6px}.list-item-image-btn.liked:hover span.icon-like:before{content:"\e01f"}.list-item-desc-title{width:100%;height:100%;padding:0 10px;inset-inline-start:0;bottom:10px;text-decoration:none}.list-item-desc-title>*{padding-bottom:5px;margin-bottom:-2.5px;-webkit-padding-start:5px;padding-inline-start:5px;-webkit-margin-start:-5px;margin-inline-start:-5px}.list-item-from{bottom:0;line-height:1}.phablet .content-listing:not([data-list=users]).list-item-desc-title,.phone .content-listing:not([data-list=users]).list-item-desc-title{display:none}.list-item-desc-title--center-y{top:50%;transform:translateY(-50%)}.list-item-desc-title-link{font-size:1.1em;font-weight:600;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100%)}@media (min-width:320px){.list-item-desc-title-link{width:calc(100% - 20px)}}.list-item-title{padding-top:0;padding-bottom:0;font-weight:400;text-align:center;height:40px;overflow:hidden}.list-item-title,.list-item-title *{font-size:1em;line-height:40px}.list-item-title a{font-weight:400;color:var(--bodyText)}.list-item-alt{background:#f9f9f9}.list-item-desc-height{height:100%}.list-item-overflow{height:110%;overflow:hidden}.list-item-desc{width:100%;font-size:.93em;line-height:1;box-shadow:0 1px 0 rgba(0,0,0,.1),0 0 0 transparent;border-bottom:1px solid rgba(0,0,0,.2)}.list-item-desc a,.list-item-desc b,.list-item-desc strong,.list-item.masked:hover .list-item-desc a,.list-item.masked:hover .list-item-title a{color:inherit}.tone-dark .list-item-desc a,.tone-dark .list-item-desc b,.tone-dark .list-item-desc strong,.tone-dark .list-item.masked:hover .list-item-desc a,.tone-dark .list-item.masked:hover .list-item-title a{color:inherit}.list-item:hover .list-item-desc a,.list-item:hover .list-item-title a{color:var(--linkText)}.list-item-desc .user,.list-item-desc a.user img{border-radius:100%}.list-item-desc .user{float:left;margin-top:-20px;-webkit-margin-end:8px;margin-inline-end:8px;padding:3px;background:var(--bodyBackground);width:50px;height:50px}[dir=rtl] .list-item-desc .user{float:right}.tone-dark .list-item-desc .user{background:#101010}.list-item-desc .user:hover{background:var(--linkText)}.tone-dark .list-item-desc .user:hover{background:inherit}.phablet .content-listing[data-list=images] .list-item-desc,.phone .content-listing[data-list=images] .list-item-desc{display:none}.list-item-desc strong{display:block}.list-item-card{border-radius:3px;min-height:82px}.list-item-card .user-image{display:block}.list-item-thumbs-container{overflow:hidden}.list-item-thumbs{overflow:auto;background:#f9f9f9;width:101%;margin-top:2px;margin-bottom:0;-webkit-margin-start:-1px;margin-inline-start:-1px}.list-item-thumbs li{background:#f6f6f6;-webkit-border-end:1px solid;border-inline-end:1px solid;-webkit-border-start:1px solid;border-inline-start:1px solid;border-color:#fff;float:left}[dir=rtl] .list-item-thumbs li{float:right}.list-item-desc{color:inherit;background:0 0;border:0;box-shadow:none;text-shadow:1px 1px 5px rgba(0,0,0,.5);opacity:0;transition:all 350ms ease;bottom:5px;position:absolute}.desktop .list-item .list-item-desc,.laptop .list-item .list-item-desc,.largescreen .list-item .list-item-desc,.list-item:hover .list-item-desc,.phablet .list-item .list-item-desc,.phone .list-item .list-item-desc,.tablet .list-item .list-item-desc{opacity:1}.list-item-desc *,.list-item-desc a,.list-item:hover .list-item-desc a{color:var(--listItemText)}.list-item-desc .list-item-overflow{bottom:0;inset-inline-start:0;padding:10px;position:absolute;height:auto}.content-listing-loading,.content-listing-more{text-align:center;margin:20px 0}.content-listing-more{display:none}.content-listing-loading{height:32px}.content-listing-loading .loading-indicator{position:static}.content-listing-pagination{text-align:center;font-size:1.3em;padding:0;color:inherit;font-weight:400;margin-top:20px}.js .content-listing-pagination{display:none}.content-listing-pagination.visible{display:flex!important}.content-listing-pagination a{text-decoration:none;font-weight:inherit;color:inherit;padding:6px 10px;display:block;border-radius:4px}.content-listing-pagination li.pagination-prev{text-align:end}.content-listing-pagination li.pagination-next{text-align:start}.content-listing-pagination a:hover{color:var(--linkText);background:var(--bodyEmpty)}.content-listing-pagination a.current{color:inherit}.tone-dark .content-listing-pagination a.current{color:#fff}.tone-dark .content-listing-pagination a:hover{background:#1f1f1f}.phone .content-listing-pagination li.pagination-page{display:none}.content-listing-pagination li,.phone .content-listing-pagination li.pagination-page.pagination-current{display:inline-block}.content-listing-pagination li.pagination-next,.content-listing-pagination li.pagination-prev{flex-grow:4}.content-listing-pagination li.pagination-current{flex-grow:1}.content-listing-pagination .pagination-current a,.content-listing-pagination .pagination-current a:hover{color:inherit;background:initial;cursor:default}.pagination-disabled{visibility:hidden}.content-empty{padding:4em 2em;text-align:center;font-size:inherit;color:var(--bodyText)}.content-empty .icon{color:var(--bodyEmpty);font-size:90px;width:90px;height:90px;display:inline-block}.tone-dark .content-empty,.tone-dark .content-empty .icon{color:#444}.content-empty .message,.content-empty h2{font-size:16px;margin-top:10px;line-height:160%}.tone-dark .content-empty .message,.tone-dark .content-empty h2{color:#444}.sort-listing{display:none}.sort-listing .selection-count:before{content:" (";white-space:pre}.sort-listing .selection-count:after{content:")"}.disabled.sort-listing .selection-count:after,.disabled.sort-listing .selection-count:before{display:none}.user-image{display:inline-block}.user-image path{fill:red}.user-image,.user-image img{display:block;border-radius:3px}.default-user-image{color:var(--bodyText);text-align:center;position:relative;border-radius:100%;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:var(--backgroundLightAlpha)}.checkered-background{background-image:linear-gradient(45deg,rgba(0,0,0,.1) 25%,transparent 25%),linear-gradient(135deg,rgba(0,0,0,.1) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.1) 75%),linear-gradient(135deg,transparent 75%,rgba(0,0,0,.1) 75%);background-size:25px 25px;background-position:0 0,12.5px 0,12.5px -12.5px,0 12.5px}.default-user-image .icon{color:inherit;position:absolute;inset-inline-start:50%;top:50%;display:block;line-height:100%;font-size:1em;width:1em;height:1em;-webkit-margin-start:-.5em;margin-inline-start:-.5em;margin-top:-.5em}.default-user-image.size-70,img.user-image.size-70{width:70px;height:70px}.default-user-image.size-70 .icon{font-size:38px;-webkit-margin-start:-19px;margin-inline-start:-19px;margin-top:-19px}.default-user-image.size-60,img.user-image.size-60{width:60px;height:60px}.default-user-image.size-60 .icon{font-size:32px;-webkit-margin-start:-16px;margin-inline-start:-16px;margin-top:-16px}.default-user-image.size-40,img.user-image.size-40{width:40px;height:40px}.default-user-image.size-40 .icon{font-size:22px;-webkit-margin-start:-11px;margin-inline-start:-11px;margin-top:-11px}.user-social-networks{font-size:1em}.user-social-networks,.user-social-networks a{text-decoration:none;color:var(--bodyTextSubtle)}.user-social-networks a{padding:2px}.user-social-networks a:hover{color:var(--bodyText)}.top-user{position:relative;height:110px;margin-top:10px;margin-bottom:10px;height:auto}.phablet .top-user,.tablet .top-user,.top-user.no-background{min-height:160px}.top-user>div{position:absolute;top:0}.top-user .top-user-credentials{position:static;-webkit-padding-end:220px;padding-inline-end:220px;clear:both;overflow:visible}.top-user.user-has-no-background .top-user-credentials{overflow:auto}.phone .top-user .top-user-credentials{-webkit-padding-end:0;padding-inline-end:0;-webkit-padding-start:0;padding-inline-start:0;width:100%;margin-bottom:10px;text-align:center;margin-top:-160px}.top-user-avatar{font-size:160px}.desktop .top-user:not(.no-background) .top-user-avatar,.laptop .top-user:not(.no-background) .top-user-avatar{position:absolute;left:50%;-webkit-margin-start:calc(-.5em - 10px);margin-inline-start:calc(-.5em - 10px);top:-.5em}.phablet .top-user .user-image,.tablet .top-user .user-image{border:0;-webkit-margin-end:10px;margin-inline-end:10px}.top-user .user-image{font-size:1em;width:1em;height:1em;float:left;border-radius:100%}.top-user:not(.no-background) .user-image{border:10px solid var(--bodyBackground)}.top-user:not(.no-background) img.user-image{background:var(--bodyBackground);border:10px solid transparent;box-sizing:content-box;background:rgb(255 255 255 / 10%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.phablet .top-user:not(.no-background) .user-image,.tablet .top-user:not(.no-background) .user-image{border:0}.top-user.no-background .user-image{-webkit-margin-end:10px;margin-inline-end:10px}.phone .top-user.no-background .top-user-credentials{margin-top:initial}.phone .top-user .top-user-credentials>a{display:inline-block}.top-user .header-content-right{inset-inline-end:0}.top-user .header-content-right>*{margin-bottom:10px}.top-user .header-content-right>:last-child{margin-bottom:0}.phone .top-user .header-content-right{position:relative}.phone .top-user .header-content-right>div{margin:10px auto;text-align:center}.phone .top-user .input-search{position:relative;top:auto}.phone .top-user .input-search form{position:relative}.phone .top-user .number-figures{line-height:28px}.top-user h1{font-size:26px;font-weight:700;margin-bottom:5px;margin-top:10px;color:var(--bodyText)}.no-margin-top .top-user h1,.phone .top-user h1{margin-top:0}.top-user h1 a{color:inherit;text-decoration:none}.top-user .user-meta{margin-bottom:10px}.user-meta .icon--lock{-webkit-margin-end:5px;margin-inline-end:5px}[dir=rtl] .top-user .user-image{float:right}.phone .top-user .user-image{float:none;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-bottom:10px}.phone body.no-margin-top .top-user .user-image{margin-top:10px}.top-user .user-image.no-border{border:none}.top-user .number-figures{margin-top:0}.user-card.avatar{-webkit-padding-start:70px;padding-inline-start:70px}.user-card.no-avatar{-webkit-padding-start:0;padding-inline-start:0}.user-card .or-separator{margin-top:5px;margin-bottom:5px}.user-card .user-link{font-size:.93em}.user-card-header h2{font-size:15px;font-weight:400;margin-top:0;margin-bottom:2px}.user-card-header h2 a{color:inherit;text-decoration:none}.tone-dark .user-card-header h2 a{color:#fff}.user-card-header div{color:var(--bodyTextSubtle)}.user-card-footer{overflow:hidden}.user-card-footer .user-social-networks{margin-top:3px}.top-user .input-search .icon--close{top:4px;inset-inline-end:8px}.ad-space{text-align:center}.ad-margin-vertical{margin-top:20px;margin-bottom:20px}.ad-margin-horizontal{-webkit-margin-start:20px;margin-inline-start:20px;-webkit-margin-end:20px;margin-inline-end:20px}[role=menu]{position:relative;overflow:visible}.menu-box,[role=menu]>.menu-box{z-index:300}[role=menu]>.menu-box{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-height:10px;display:block;visibility:hidden;transition:350ms all ease-in-out;opacity:0;transform:translateY(-5px);transform-origin:top;max-height:100vh;max-height:100dvh}[role=menu].opened>.menu-box{visibility:visible;opacity:1;transform:translateY(0)}@media (min-width:768px){[role=menu]>.menu-box{transition:none}}.menu-box{border:0}.menu-box,.menu-box .menu-box-sub>.sub,.menu-box .menu-box-sub>ul{background:var(--bodyBackground);border-radius:3px;box-shadow:0 0 15px 0 rgba(0,0,0,.2);color:var(--bodyText);font-size:14px;font-weight:400;position:absolute;top:100%;list-style:none;min-width:190px;padding:0;margin:0}.menu-box--static{position:static;max-width:190px}.menu-box :not(a),.menu-box [role*=button]{color:var(--bodyText)}.tone-dark .menu-box :not(a),.tone-dark .menu-box [role*=button]{color:#fff}.menu-box ul{margin:0;padding:0}.float-left .menu-box,.pull-left .menu-box,menu-box.anchor-left{inset-inline-start:0}.float-right .menu-box,.menu-box--anchor-right,.pull-right .menu-box{inset-inline-end:0}.menu-box .separator,.menu-box [role=separator],.menu-box hr{display:block;margin:0;padding:0;height:0;border:0;border-top:1px solid #ebebeb}.menu-box--border-separators>*{border-bottom:1px solid #ebebeb}.menu-box--border-separators>:last-child{border-bottom:0}.menu-box--border-separators>hr{display:none}.menu-box .sub,.menu-box [role*=button],.menu-box [role=box],.menu-box li{padding:10px;list-style:none;position:relative;line-height:1.4;clear:both;min-height:40px;display:block}.menu-box [role=box]{cursor:default}.menu-box [role*=button]{-webkit-padding-start:35px;padding-inline-start:35px;-webkit-border-start:2px solid transparent;border-inline-start:2px solid transparent;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:start}.menu-box--multiline [role*=button]{white-space:normal}.menu-box--noicons li:not([role=button]){-webkit-padding-start:0;padding-inline-start:0}.menu-box--noicons [role=button]{-webkit-padding-start:10px;padding-inline-start:10px;color:inherit}.menu-box [role=button]:hover{border-left-color:#a66bbe}.menu-box .disabled[role=button]{cursor:not-allowed;background:0 0;border-color:transparent!important;opacity:.5}.menu-box li.menu-box-sub{-webkit-padding-end:34px;padding-inline-end:34px}.menu-box .menu-box-sub>.sub,.menu-box .menu-box-sub>ul{display:none}.menu-box .menu-box-sub:hover>.sub,.menu-box .menu-box-sub:hover>ul{display:block}.menu-box [role*=button]>.icon,.menu-box li>.icon{font-size:16px;width:16px;height:16px;text-align:center;position:absolute;inset-inline-start:8px;top:50%;margin-top:-8px}.menu-box .menu-box-sub>.icon{inset-inline-start:auto;inset-inline-end:10px}.menu-box .menu-box-sub .sub,.menu-box .menu-box-sub ul{cursor:default;position:absolute;top:0;inset-inline-start:100%}.menu-box .meta{font-size:.93em;display:block}.menu-box .empty{font-size:1em;text-align:center;padding:40px 20px}.menu-box .empty>.icon{font-size:64px;margin-bottom:10px;display:block;color:#ebebeb;position:static}.arrow-navigator a{color:var(--colorAccent);display:block;text-decoration:none;text-align:center;height:40px;width:40px;position:absolute;top:50%;margin-top:-20px;opacity:.7;padding:10px}.arrow-navigator a.disabled{display:none}.arrow-navigator a:hover{opacity:1}.arrow-navigator a span{display:inline-block;font-size:20px;width:1em;height:1em;text-align:center}.growl{color:var(--alertText);font-size:1.1em;line-height:1.2;background:var(--alertBackground);padding:1em;-webkit-padding-end:2em;padding-inline-end:2em;text-align:center;overflow:visible;position:fixed;width:500px;inset-inline-start:50%;top:45px;z-index:9999;cursor:default;-webkit-border-start:5px solid var(--alertAccent);border-inline-start:5px solid var(--alertAccent);box-shadow:0 0 15px 5px rgba(0,0,0,.15);border-radius:4px;-webkit-margin-start:-250px;margin-inline-start:-250px}.growl:empty{display:none}.phone .growl{left:10px;right:10px;width:auto;-webkit-margin-start:auto;margin-inline-start:auto}.growl.static{-webkit-margin-start:auto;margin-inline-start:auto;position:static;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;box-shadow:none;z-index:initial;margin:auto;width:auto}.growl.static.inline{margin:initial;text-align:start;display:inline-block;-webkit-padding-end:1em;padding-inline-end:1em;-webkit-padding-start:1em;padding-inline-start:1em}.growl .icon{font-size:14px;text-align:center;position:absolute;inset-inline-end:5px;top:7px;cursor:pointer;padding:10px;color:var(--alertText)}.growl-debug-message{text-align:start}.growl-debug-trace{overflow-x:auto;font-size:80%;margin-top:10px}.growl-debug-status{font-style:italic;margin-top:10px;margin-bottom:10px}.flex-center{margin:auto}.width-full{width:100%}.height-full{height:100%}.width-min-full{min-width:100%}.height-min-full{min-height:100%}.fullscreen{position:fixed;top:0;inset-inline-start:0;width:100%;height:100%;overflow:auto;z-index:1000;opacity:0;transition:opacity 350ms linear}.fullscreen.black,.fullscreen.white{-webkit-backdrop-filter:blur(35px) saturate(1.8);backdrop-filter:blur(35px) saturate(1.8)}.black-bkg,.fullscreen.black{background:var(--backgroundDarkAlpha)}.fullscreen.white,.white-bkg{background:var(--backgroundLightAlpha)}.fullscreen.soft-white,.soft-white-bkg{background:rgba(255,255,255,.6)}.ie9 .fullscreen{-webkit-filter:none;filter:none}.fullscreen-loader{width:150px;height:150px;text-align:center;border-radius:10px;color:#fff;margin-top:-75px;-webkit-margin-start:-75px;margin-inline-start:-75px;position:absolute;top:50%;inset-inline-start:50%;zoom:1}.loading-txt{position:absolute;bottom:15px;inset-inline-start:0;text-align:center;width:100%}#fullscreen-modal{display:none}#fullscreen-modal.--show{display:grid;align-items:center}.ie9 #fullscreen-modal{-webkit-filter:none;filter:none}#fullscreen-modal-box{width:670px;margin:0 auto;padding:20px;position:relative;box-shadow:0 0 50px 6px rgba(0,0,0,.25);border-radius:10px;background:var(--modalBackground);color:var(--modalText)}.--has-scrollbar #fullscreen-modal-box{border-radius:0}.phone #fullscreen-modal-box{width:100%;margin:0;max-height:100%;-webkit-overflow-scrolling:touch;border-radius:0;padding:20px}#fullscreen-modal-box .modal-box-title,#fullscreen-modal-box h1{display:block;margin-top:0;margin-bottom:20px;font-size:20px;line-height:1.2;-webkit-padding-end:32px;padding-inline-end:32px}#fullscreen-modal-box h2{font-size:1.14em}#fullscreen-modal-box h2 *{font-weight:400}#fullscreen-modal-box .or-separator{margin-top:16px}#fullscreen-modal-box p{font-size:1em;line-height:160%;margin-top:10px;margin-bottom:10px}#fullscreen-modal-box p:firt-child{margin-top:0}#fullscreen-modal-box .btn-container{margin-bottom:0}#fullscreen-modal-box .close-modal.icon--close{position:absolute;inset-inline-end:10px;top:15px;cursor:pointer;display:block;padding:10px}.phone #fullscreen-modal-box .close-modal.icon--close,.phone #fullscreen-modal-box .close-modal.icon--close:hover{inset-inline-end:10px}.modal-form textarea{height:70px;resize:none}.fancy-box{padding:20px;background:var(--bodyBackground);box-shadow:0 0 50px 6px rgb(0 0 0 / 25%);border-radius:10px}.fancy-box p{-webkit-margin-before:1em;margin-block-start:1em;-webkit-margin-after:1em;margin-block-end:1em}.fancy-box .or-separator{height:1px;margin:0}#fullscreen-changes-confirm{background:var(--bodyBackground);padding:40px 0;margin-top:75px;position:absolute;text-align:center;top:50%;width:100%;box-shadow:0 4px 16px rgba(0,0,0,.25)}.tone-dark #fullscreen-changes-confirm{background:#1e1e1e}#fullscreen-changes-confirm h2{font-size:18px;line-height:18px;color:inherit}.fullscreen-viewer{background:#000;background:rgba(0,0,0,.9);color:#bbb;display:none}.fullscreen-viewer-top{height:50px;width:100%;background:#000}.fullscreen-viewer-navigation,.fullscreen-viewer-top-user{margin-top:8px}.fullscreen-viewer-top-user img{width:34px;height:34px;-webkit-margin-end:10px;margin-inline-end:10px}.fullscreen-viewer-navigation{font-size:16px;font-size:1.143rem;height:26px;position:relative;z-index:100}.fullscreen-viewer-navigation a{display:inline-block;color:#bbb;color:rgba(255,255,255,.7);text-decoration:none;padding:8px}.fullscreen-viewer-navigation a:hover{color:#fff}.fullscreen-viewer-navigation a.disabled{color:#bbb;color:rgba(255,255,255,.4);cursor:default}.fullscreen-viewer-content{text-align:center;height:100%;position:relative;display:none}.fullscreen-viewer-content img{max-width:100%;max-height:100%;box-shadow:0 0 6px 0 #000}#cookie-law-banner{position:fixed;padding:10px;width:100%;bottom:0;background:rgba(0,0,0,.8);color:#fff;font-size:1.2em;z-index:1000}#cookie-law-banner p{-webkit-padding-end:20px;padding-inline-end:20px}a.cookie-law-close{color:inherit;text-decoration:none;position:absolute;inset-inline-end:0;top:3px;font-size:.72em;opacity:.5}a.cookie-law-close:hover{opacity:1}.badge--paid{text-transform:uppercase;text-align:center;border-radius:3px;padding:2px 5px;display:inline-block;line-height:1;border:1px solid var(--buttonDefaultBorder);color:var(--buttonDefaultHoverText);background-color:var(--buttonDefaultHoverBackground);border-color:var(--buttonDefaultHoverBorder);font-weight:400}.pop-box-menu li .badge{position:absolute;inset-inline-end:8px;top:8px}.badge{vertical-align:text-bottom;font-size:.7143em;transform-origin:right;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.badge+label,.btn .badge{-webkit-margin-start:5px;margin-inline-start:5px}.pop-box-menu li.paid a{-webkit-padding-end:52px;padding-inline-end:52px}.pop-box-menu li:hover .badge{color:var(--menuItemHoverBackground);background-color:var(--menuItemHoverText);border-color:transparent}.r1{height:30px}.r2{height:70px}.r3{height:110px}.r4{height:150px}.r5{height:190px}.r6{height:230px}.r7{height:270px}.r8{height:310px}.r9{height:350px}.r10{height:390px}.r11{height:430px}.r12{height:470px}.r13{height:510px}.r14{height:550px}.r15{height:590px}.r16{height:630px}.r17{height:670px}.r18{height:710px}.r19{height:750px}.r20{height:790px}.r11{height:830px}.r22{height:870px}.r23{height:910px}.r24{height:950px}.columns-container{overflow:auto}.grid-columns{display:block;float:left}[dir=rtl] .grid-columns{float:right}.gutter-margin-right,.gutter-margin-right-bottom{-webkit-margin-end:1px;margin-inline-end:1px}.gutter-margin-bottom,.gutter-margin-left-bottom,.gutter-margin-right-bottom{margin-bottom:1px}.gutter-margin-left,.gutter-margin-left-bottom{-webkit-margin-start:1px;margin-inline-start:1px}.gutter-width{width:5px}.col-1-min{min-width:30px}.col-2-min{min-width:70px}.col-3-min{min-width:110px}.col-4-min{min-width:150px}.col-5-min{min-width:190px}.col-6-min{min-width:230px}.col-7-min{min-width:270px}.col-8-min{min-width:310px}.col-9-min{min-width:350px}.col-10-min{min-width:390px}.col-11-min{min-width:430px}.col-12-min{min-width:470px}.col-13-min{min-width:510px}.col-14-min{min-width:550px}.col-15-min{min-width:590px}.col-16-min{min-width:630px}.col-17-min{min-width:670px}.col-18-min{min-width:710px}.col-19-min{min-width:750px}.col-20-min{min-width:790px}.col-21-min{min-width:830px}.col-22-min{min-width:870px}.col-23-min{min-width:910px}.col-24-min{min-width:950px}.col-1-max{max-width:30px}.col-2-max{max-width:70px}.col-3-max{max-width:110px}.col-4-max{max-width:150px}.col-5-max{max-width:190px}.col-6-max{max-width:230px}.col-7-max{max-width:270px}.col-8-max{max-width:310px}.col-9-max{max-width:350px}.col-10-max{max-width:390px}.col-11-max{max-width:430px}.col-12-max{max-width:470px}.col-13-max{max-width:510px}.col-14-max{max-width:550px}.col-15-max{max-width:590px}.col-16-max{max-width:630px}.col-17-max{max-width:670px}.col-18-max{max-width:710px}.col-19-max{max-width:750px}.col-20-max{max-width:790px}.col-21-max{max-width:830px}.col-22-max{max-width:870px}.col-23-max{max-width:910px}.col-24-max{max-width:950px}@media (min-width:768px){.c1{width:30px}.c2{width:70px}.c3{width:110px}.c4{width:150px}.c5{width:190px}.c6{width:230px}.c7{width:270px}.c8{width:310px}.c9{width:350px}.c10{width:390px}.c11{width:430px}.c12{width:470px}.c13{width:510px}.c14{width:550px}.c15{width:590px}.c16{width:630px}.c17{width:670px}.c18{width:710px}.fluid-column.c1{width:3.157%}.fluid-column.c2{width:7.368%}.fluid-column.c3{width:11.578%}.fluid-column.c4{width:15.789%}.fluid-column.c5{width:20%}.fluid-column.c6{width:24.21%}.fluid-column.c7{width:28.421%}.fluid-column.c8{width:32.631%}.fluid-column.c9{width:36.842%}.fluid-column.c10{width:41.052%}.fluid-column.c11{width:45.263%}.fluid-column.c12{width:49.473%}.fluid-column.c13{width:53.684%}.fluid-column.c14{width:57.894%}.fluid-column.c15{width:62.105%}.fluid-column.c16{width:66.315%}.fluid-column.c17{width:70.526%}.fluid-column.c18{width:74.736%}}@media (min-width:992px){.content-width{width:100%;min-width:970px}.c19{width:750px}.c20{width:790px}.c21{width:830px}.c22{width:870px}.c23{width:910px}.c24{width:950px}.fluid-column.c19{width:78.947%}.fluid-column.c20{width:83.157%}.fluid-column.c21{width:87.368%}.fluid-column.c22{width:91.578%}.fluid-column.c23{width:95.789%}.fluid-column.c24{width:100%}.top-btn-text .btn-text{-webkit-margin-start:7px;margin-inline-start:7px}.pop-box .arrow-down{border-width:6px 6px 0 6px}}@media (min-width:992px) and (max-width:1920px){.content-width{max-width:1800px}}@media (min-width:1921px) and (max-width:2560px){.content-width{max-width:2440px}}@media (min-width:3840px){.content-width{max-width:3720px}}.color-body-text-subtle{color:var(--bodyTextSubtle)}.color-accent{color:var(--colorAccent)}.color-success{color:var(--colorSuccess)}.color-fail{color:var(--colorFail)}.color-white{color:#fff!important}.color-black{color:#333!important}.color-grey{color:#ccc!important}.color-green{color:#27ae61!important}.color-red{color:#e74c3c!important}.color-blue{color:var(--colorBlue)!important}.color-orange{color:#d35400!important}.color-purple{color:#8e44ad!important}.color-inherit{color:inherit!important}.color-initial{color:initial!important}.height-auto{height:auto}.width-auto{width:auto}.height-100p{height:100%}.width-100p{width:100%}.color-facebook{color:#3b5998}.color-twitter{color:#1da1f2}.color-google{color:#ea4335}.color-vk{color:#45668e}.border-color-facebook{border-color:#3b5998}.border-color-twitter{border-color:#1da1f2}.border-color-google{border-color:#ea4335}.border-color-vk{border-color:#45668e}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}.background-black{background:#000!important}.background-white{background:#fff!important}.background-transparent{background:0 0!important}.background-gradient-white-left{background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,1) 35%,rgba(255,255,255,1) 100%)}.background-gradient-white-right{background:linear-gradient(to right,rgba(255,255,255,1) 0,rgba(255,255,255,1) 80%,rgba(255,255,255,0) 100%)}.font-weight-bold{font-weight:700!important}.font-weight-normal{font-weight:400!important}.cursor-pointer{cursor:pointer!important}.cursor-grab{cursor:-webkit-grab;cursor:grab}.cursor-grabbing{cursor:-webkit-grabbing;cursor:grabbing}.cursor-default{cursor:default!important}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.font-size-small{font-size:small!important}.font-size-medium{font-size:medium!important}.font-size-large{font-size:large!important}.font-size-inherit{font-size:inherit!important}.font-size-10{font-size:10px!important}.font-size-11{font-size:11px!important}.font-size-12{font-size:12px!important}.font-size-13{font-size:13px!important}.font-size-14{font-size:14px!important}.font-size-15{font-size:15px!important}.font-size-16{font-size:16px!important}.font-size-17{font-size:17px!important}.font-size-18{font-size:18px!important}.height-100p{height:100%!important}.height-120p{height:120%!important}.top-0{top:0}.top-10{top:10px}.top-20{top:20px}.top-30{top:30px}.top-40{top:40px}.right-0{inset-inline-end:0}.right-10{inset-inline-end:10px}.right-20{inset-inline-end:20px}.right-30{inset-inline-end:30px}.right-40{inset-inline-end:40px}.bottom-0{bottom:0}.bottom-10{bottom:10px}.bottom-20{bottom:20px}.bottom-30{bottom:30px}.bottom-40{bottom:40px}.left-0{inset-inline-start:0}.left-10{inset-inline-start:10px}.left-20{inset-inline-start:20px}.left-30{inset-inline-start:30px}.left-40{inset-inline-start:40px}.display-none{display:none}.display-none-forced{display:none!important}.display-block{display:block}.display-block-forced{display:block!important}.display-flex{display:-moz-flex;display:flex}.visibility-hidden{visibility:hidden}.clear-both{clear:both}.float-left{float:left}[dir=rtl] .float-left{float:right}.float-right{float:right}[dir=rtl] .float-right{float:left}.border-0,.no-border{border:none}.border-top-0{border-top:0}.border-right-0{-webkit-border-end:0;border-inline-end:0}.border-bottom-0{border-bottom:0}.border-left-0{-webkit-border-start:0;border-inline-start:0}.box-shadow-none{box-shadow:none}.word-break-break-all{word-break:break-all}.word-break-break-word{word-break:break-word}.margin-0{margin:0!important}.margin-5{margin:5px!important}.margin-10{margin:10px!important}.margin-20{margin:20px!important}.margin-30{margin:20px!important}.margin-40{margin:20px!important}.margin-top-0,.phablet .phablet-margin-top-0,.phone .phone-margin-top-0{margin-top:0!important}.margin-top-5,.phablet .phablet-margin-top-5,.phone .phone-margin-top-5{margin-top:5px!important}.margin-top-10,.phablet .phablet-margin-top-10,.phone .phone-margin-top-10{margin-top:10px!important}.margin-top-20,.phablet .phablet-margin-top-20,.phone .phone-margin-top-20{margin-top:20px!important}.margin-top-30{margin-top:30px!important}.margin-top-40{margin-top:40px!important}.margin-right-auto{-webkit-margin-end:auto!important;margin-inline-end:auto!important}.margin-right-0,.phablet .phablet-margin-right-0,.phone .phone-margin-right-0{-webkit-margin-end:0!important;margin-inline-end:0!important}.margin-right-035em{-webkit-margin-end:.35em!important;margin-inline-end:.35em!important}.margin-right-5{-webkit-margin-end:5px!important;margin-inline-end:5px!important}.margin-right-10{-webkit-margin-end:10px!important;margin-inline-end:10px!important}.margin-right-20{-webkit-margin-end:20px!important;margin-inline-end:20px!important}.margin-right-30{-webkit-margin-end:30px!important;margin-inline-end:30px!important}.margin-right-40{-webkit-margin-end:40px!important;margin-inline-end:40px!important}.margin-bottom-0,.phablet .phablet-margin-bottom-0,.phone .phone-margin-bottom-0{margin-bottom:0!important}.margin-bottom-5{margin-bottom:5px!important}.margin-bottom-10,.phablet .phablet-margin-bottom-10,.phone .phone-margin-bottom-10{margin-bottom:10px!important}.margin-bottom-20,.phablet .phablet-margin-bottom-20,.phone .phone-margin-bottom-20{margin-bottom:20px!important}.margin-bottom-30{margin-bottom:30px!important}.margin-bottom-40{margin-bottom:40px!important}.margin-left-auto{-webkit-margin-start:auto!important;margin-inline-start:auto!important}.margin-left-0,.phablet .phablet-margin-left-0,.phone .phone-margin-left-0{-webkit-margin-start:0!important;margin-inline-start:0!important}.margin-right--10{-webkit-margin-end:-10px!important;margin-inline-end:-10px!important}.margin-left--10{-webkit-margin-start:-10px!important;margin-inline-start:-10px!important}.margin-left-5{-webkit-margin-start:5px!important;margin-inline-start:5px!important}.margin-left-10{-webkit-margin-start:10px!important;margin-inline-start:10px!important}.margin-left-20{-webkit-margin-start:20px!important;margin-inline-start:20px!important}.margin-left-30{-webkit-margin-start:30px!important;margin-inline-start:30px!important}.margin-left-40{-webkit-margin-start:40px!important;margin-inline-start:40px!important}.padding-5{padding:5px!important}.padding-10{padding:10px!important}.padding-20{padding:20px!important}.padding-30{padding:20px!important}.padding-40{padding:20px!important}.padding-top-5{padding-top:5px!important}.padding-top-0{padding-top:0!important}.padding-top-10{padding-top:10px!important}.padding-top-20{padding-top:20px!important}.padding-top-30{padding-top:30px!important}.padding-top-40{padding-top:40px!important}.padding-right-5{-webkit-padding-end:5px!important;padding-inline-end:5px!important}.padding-right-0{-webkit-padding-end:0!important;padding-inline-end:0!important}.padding-right-10{-webkit-padding-end:10px!important;padding-inline-end:10px!important}.padding-right-20{-webkit-padding-end:20px!important;padding-inline-end:20px!important}.padding-right-30{-webkit-padding-end:30px!important;padding-inline-end:30px!important}.padding-right-40{-webkit-padding-end:40px!important;padding-inline-end:40px!important}.padding-bottom-5{padding-bottom:5px!important}.padding-bottom-0{padding-bottom:0!important}.padding-bottom-10{padding-bottom:10px!important}.padding-bottom-20{padding-bottom:20px!important}.padding-bottom-30{padding-bottom:30px!important}.padding-bottom-40{padding-bottom:40px!important}.padding-left-5{-webkit-padding-start:5px!important;padding-inline-start:5px!important}.padding-left-0{-webkit-padding-start:0!important;padding-inline-start:0!important}.padding-left-10{-webkit-padding-start:10px!important;padding-inline-start:10px!important}.padding-left-20{-webkit-padding-start:20px!important;padding-inline-start:20px!important}.padding-left-30{-webkit-padding-start:30px!important;padding-inline-start:30px!important}.padding-left-40{-webkit-padding-start:40px!important;padding-inline-start:40px!important}.position-sticky{position:-webkit-sticky;position:sticky}.position-static{position:static}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.text-align-left{text-align:start}.text-align-center{text-align:center}.text-align-right{text-align:end}.text-align-justify{text-align:justify}.text-decoration-none{text-decoration:none!important}.display-block{display:block}.display-inline{display:inline}.display-inline-table{display:inline-table}.display-inline-block{display:inline-block}.display-table-cell{display:table-cell}.word-break-break-all{word-break:break-all}.list-style-position-inside li{list-style-position:inside!important}.list-style-position-outside li{list-style-position:outside!important}.list-style-type-disc li{list-style-type:disc!important}.list-style-type-decimal li{list-style-type:decimal!important}.center-box{-webkit-margin-end:auto!important;margin-inline-end:auto!important;-webkit-margin-start:auto!important;margin-inline-start:auto!important}.display-inline-block,.display-table-cell{zoom:1}.vertical-align-middle{vertical-align:middle!important}.resize-vertical{resize:vertical!important}.no-resize,.resize-none{resize:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-y-auto{overflow-y:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-y-visible{overflow-y:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-scroll{overflow-y:scroll!important}.text-transform-capitalize{text-transform:capitalize}.text-transform-uppercase{text-transform:uppercase}.default-margin-top{margin-top:20px}.default-margin-bottom{margin-bottom:20px}.float-none{float:none!important;clear:both!important}.desktop .desktop-hide,.laptop .laptop-hide,.largescreen .desktop-hide,.phablet .phablet-hide,.phone .phone-hide,.tablet .tablet-hide{display:none!important}.desktop .desktop-display-block,.desktop .desktop-show,.laptop .laptop-display-block,.laptop .laptop-show,.largescreen .desktop-display-block,.largescreen .desktop-show,.phablet .phablet-display-block,.phablet .phablet-show,.phone .phone-display-block,.phone .phone-show,.tablet .tablet-display-block,.tablet .tablet-show{display:block!important}.desktop .desktop-display-inline,.laptop .laptop-display-inline,.phablet .phablet-display-inline,.phone .phone-display-inline,.tablet .tablet-display-inline{display:inline!important}.desktop .desktop-display-inline-block,.laptop .laptop-display-inline-block,.phablet .phablet-display-inline-block,.phone .phone-display-inline-block,.tablet .tablet-display-inline-block{display:inline-block!important}.image-responsive{max-width:100%!important;width:auto!important}.desktop .desktop-float-none,.laptop .laptop-float-none,.phablet .phablet-float-none,.phone .phone-float-none,.tablet .tablet-float-none{float:none;clear:both}.phablet .grid-columns,.phone .grid-columns{float:none;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0;margin-inline-end:0}.phablet .phablet-float-left,.phone .phone-float-left{float:left!important}[dir=rtl].phablet .phablet-float-left,[dir=rtl].phone .phone-float-left{float:right!important}.phablet .phablet-c1,.phone .fluid-column.phablet-c1,.phone .fluid-column.phone-c1,.phone .phone-c1{width:100%}.phablet .phablet-text-align-left,.phone .phone-text-align-left{text-align:left!important}.phablet .phablet-text-align-center,.phone .phone-text-align-center{text-align:center!important}#tiptip_holder{display:none;position:absolute;top:0;inset-inline-start:0;z-index:99999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_right{-webkit-padding-start:5px;padding-inline-start:5px}#tiptip_holder.tip_left{-webkit-padding-end:5px;padding-inline-end:5px}#tiptip_content{font-size:12px;color:#fff;padding:6px 8px;background-color:#333;background-color:rgba(0,0,0,.8);word-break:break-word}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-7px;margin-inline-start:-7px;border-top-color:#333;border-top-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_top #tiptip_arrow_inner{border-top-color:#fff;border-top-color:rgba(255,255,255,.95)}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-7px;margin-inline-start:-7px;border-bottom-color:#333;border-bottom-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_bottom #tiptip_arrow_inner{border-bottom-color:#fff;border-bottom-color:rgba(255,255,255,.95)}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-6px;margin-inline-start:-6px;border-right-color:#333;border-right-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_right #tiptip_arrow_inner{border-right-color:#fff;border-right-color:rgba(255,255,255,.95)}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-6px;margin-inline-start:-6px;border-left-color:#333;border-left-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_left #tiptip_arrow_inner{border-left-color:#fff;border-left-color:rgba(255,255,255,.95)}.antiscroll-wrap{display:block;position:relative;overflow:hidden}.antiscroll-scrollbar{background:gray;background:rgba(0,0,0,.5);border-radius:7px;box-shadow:0 0 1px #fff;position:absolute;opacity:0;-webkit-transition:linear 350ms opacity;-moz-transition:linear 350ms opacity;-o-transition:linear 350ms opacity}.antiscroll-scrollbar-shown{opacity:1}.antiscroll-scrollbar-horizontal{height:7px;-webkit-margin-start:2px;margin-inline-start:2px;bottom:2px;inset-inline-start:0}.antiscroll-scrollbar-vertical{width:7px;margin-top:2px;inset-inline-end:2px;top:0}.antiscroll-inner{overflow:scroll}.antiscroll-inner::-webkit-scrollbar{width:0;height:0}.antiscroll-inner::scrollbar{width:0;height:0}#recaptcha_table.recaptcha_theme_clean #recaptcha_image{border:0!important}#recaptcha_response_field{height:auto}.copy-hover-display button.copy-input,.copy-hover-display button.input-action{visibility:hidden}.copy-hover-display:hover button.copy-input,.copy-hover-display:hover button.input-action,.phablet button.copy-input,.phablet button.input-action,.phone button.copy-input,.phone button.input-action{visibility:visible}button.copy-input,button.input-action{position:absolute;inset-inline-end:7px;top:.8181em;text-transform:uppercase;cursor:pointer;line-height:1;font-size:11px;padding:4px 6px;border-radius:4px;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button.copy-input,button.input-action{background:var(--buttonDefaultBackground);color:var(--buttonDefaultText)}button:hover.copy-input,button:hover.input-action{background:var(--buttonDefaultHoverBackground);color:var(--buttonDefaultHoverText)}.shake{-webkit-animation:shake .82s cubic-bezier(.36,.07,.19,.97) both;animation:shake .82s cubic-bezier(.36,.07,.19,.97) both}@-webkit-keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.key-feedback{line-height:1;background:rgba(0,0,0,.7);position:fixed;z-index:10000;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);bottom:1.5em;transition:all .5s;opacity:0;text-align:center;color:#fff;font-weight:700;font-size:45px;padding:1em;border-radius:.5em;inset-inline-start:50%;transform:translateX(-50%);border:4px solid rgba(255,255,255,.9);box-shadow:0 0 50px 6px rgb(0 0 0 / 25%);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}img.qr{display:inline-block}.fa-vkontakte:before{content:"\f189"}.fab.fa-mailru{font-family:"Font Awesome 5 Free";font-weight:900}.fa-mailru:before{content:"\f1fa"}.fa-stackexchange:before{content:"\f18d"}.fa-twitchtv:before{content:"\f1e8"}.fa-wechat:before{content:"\f1d7"} \ No newline at end of file +:root{--colorBlue:#3498db;--colorBlueHover:#2980b9;--colorGreen:#2ecc71;--colorGreenHover:#27ae60;--colorOrange:#e67e22;--colorOrangeHover:#d35400;--colorPurple:#9b59b6;--colorPurpleHover:#8e44ad;--colorRed:#e74c3c;--colorRedHover:#c0392b;--colorYellow:#f1c40f;--colorYellowHover:#f39c12}:root{--colorSuccess:var(--colorGreen);--colorFail:var(--colorRed);--alertAccent:#f1c40f;--alertBackground:#fff5b3;--alertText:#161c1d;--backgroundDarkAlpha:rgb(0 0 0 / 80%);--backgroundLightAlpha:rgb(255 255 255 / 90%);--bodyBackground:#FFF;--bodyEmpty:#e2e8e9;--bodySeparator:#e2e8e9;--bodyText:#161c1d;--bodyTextDisabled:#c5d1d3;--bodyTextSubtle:#6c7779;--buttonAccentBackground:var(--colorAccent);--buttonAccentHoverBackground:var(--colorAccentStrong);--buttonAccentHoverText:var(--buttonAccentText);--buttonAccentText:#FFF;--buttonDefaultBackground:#d9e1e2;--buttonDefaultBorder:var(--buttonDefaultBackground);--buttonDefaultHoverBackground:#c0def2;--buttonDefaultHoverBorder:var(--buttonDefaultHoverBackground);--buttonDefaultHoverText:var(--colorAccentStrong);--buttonDefaultText:#161c1d;--colorAccent:var(--colorBlue);--colorAccentStrong:var(--colorBlueHover);--inputBackground:#ecf0f1;--inputPlaceholderText:#8aa2a8;--inputText:#161c1d;--linkText:var(--colorAccent);--menuBackground:rgb(236 240 241 / 80%);--menuItemHoverBackground:var(--colorAccent);--menuItemHoverText:#FFF;--menuItemText:#161c1d;--menuSeparator:rgb(11 14 15 / 10%);--menuText:#161c1d;--modalBackground:var(--bodyBackground);--modalText:#161c1d;--topBarBackground:rgb(255 255 255);--topBarText:#161c1d;--viewerBackground:#323232;--listItemText:#FFF}*{-ms-box-sizing:border-box;box-sizing:border-box;margin:0;padding:0;border:0;list-style:none}@media screen and (-webkit-min-device-pixel-ratio:0){.phone input:focus,.phone select:focus,.phone textarea:focus{font-size:16px!important}}.btn,.btn-container,.input-search,.link,.list-item,.no-select,.pop-btn-text,.top-btn-text,.user-select-none{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.animate{transition:all .2s ease-in-out}.animate--slow{transition-duration:.4s}[type=search]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}::-webkit-input-placeholder{color:var(--inputPlaceholderText);line-height:140%}:-moz-placeholder{color:var(--inputPlaceholderText);opacity:1}::-moz-placeholder{color:var(--inputPlaceholderText);opacity:1}:-ms-input-placeholder{color:var(--inputPlaceholderText)}:focus::-webkit-input-placeholder{color:var(--inputPlaceholderText)}:focus:-moz-placeholder{color:var(--inputPlaceholderText)}:focus::-moz-placeholder{color:var(--inputPlaceholderText)}focus:-ms-input-placeholder{color:var(--inputPlaceholderText)}::-moz-focus-inner{border:0;padding:0;margin:0}::-ms-clear{display:none}body{min-height:100vh;min-height:100dvh;min-height:-webkit-fill-available;-webkit-font-smoothing:subpixel-antialiased}[type=submit]:focus,button:focus{outline:0}html{height:100%;height:-webkit-fill-available}body,html{min-height:100vh;min-height:100dvh;font-family:Helvetica,Arial,sans-serif;color:var(--bodyText);font-size:16px;background:var(--bodyBackground);-webkit-text-size-adjust:100%}kbd{font-family:inherit}.pointer-events-none{pointer-events:none}#menu-fullscreen,#pop-box-mask.fullscreen{height:100%}#menu-fullscreen,.pop-box{transition:transform 350ms cubic-bezier(.4,0,0,1),opacity 350ms cubic-bezier(.4,0,0,1)}#menu-fullscreen>ul{position:relative;z-index:1000;background:var(--topBarBackground);color:var(--topBarText)}body.no-margin-top{margin-top:0;padding-top:0}.content-width{width:100%;-webkit-margin-end:auto;margin-inline-end:auto;-webkit-margin-start:auto;margin-inline-start:auto;position:relative;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}.phone .top-bar .content-width{-webkit-padding-start:0;padding-inline-start:0;-webkit-padding-end:0;padding-inline-end:0}a{color:var(--linkText);text-decoration:none;cursor:pointer;outline:0}a[rel=external]::after{font-weight:900;font-family:"Font Awesome 5 Free";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;-webkit-margin-start:.25em;margin-inline-start:.25em;content:"\f35d";font-size:90%}a[role=button]:hover{text-decoration:none}a:focus,a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{font-weight:400;line-height:1}.ui-selectable-helper{background:var(--colorAccent);border:2px dashed var(--topBarBackground);position:absolute;z-index:500;opacity:.6}.image-container{transition:transform 180ms cubic-bezier(.25,1,.5,1)}.selected .image-container,.ui-selecting.selected .image-container{transform:scale(.5)}.selected .list-item-play-gif,.ui-selecting.selected .list-item-play-gif{transform:scale(.75)}.selected .image-container img,.selected .image-container svg,.ui-selecting.selected .image-container img,.ui-selecting.selected .image-container svg{border-radius:.5em;-webkit-transform:translateZ(0)}.hidden{display:none!important}.visible{display:block!important}.fab.soft-hidden,.far.soft-hidden,.fas.soft-hidden,.soft-hidden{display:none}.soft-visible{display:block}.hidden-visibility{visibility:hidden;position:absolute;top:0}.touch-scroll{overflow:auto;-webkit-overflow-scrolling:touch}.or-separator{border-top:1px solid var(--bodySeparator);text-align:center;margin:10px 0 10px 0}.tone-dark .or-separator{border-color:rgba(255,255,255,.1)}.or-separator span{font-size:.93em;font-weight:400;color:var(--bodySeparator);text-transform:uppercase;text-align:center;background:var(--bodyBackground);display:inline-block;position:relative;padding:0 10px;top:-10px}.highlight{color:var(--alertText);background:var(--alertBackground)}.highlight:empty{display:none}.line-through{text-decoration:line-through}.line-separator{width:100%;height:1px;background:var(--bodySeparator);display:block;margin:20px 0}.number-figures,a.number-figures{font-size:1.21em;line-height:1.21em;color:inherit;text-decoration:none;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;-webkit-margin-start:0;margin-inline-start:0;-webkit-border-start:1px solid var(--bodySeparator);border-inline-start:1px solid var(--bodySeparator);text-align:center}.tone-dark .number-figures,.tone-dark a.number-figures{border-color:#212121}.number-figures:first-child{-webkit-padding-start:0;padding-inline-start:0;-webkit-border-start:none;border-inline-start:none}.number-figures:last-child{-webkit-padding-end:0;padding-inline-end:0}.number-figures b{font-weight:inherit}.number-figures .icon-heart4{position:relative;top:1px}.number-figures span:not(.icon){color:var(--bodyTextSubtle);text-transform:uppercase;font-size:.6em}a.number-figures:hover,a.number-figures:hover *{color:var(--linkText)}.loading-indicator,.loading-text{display:inline-block;line-height:inherit;vertical-align:top}.loading-text{-webkit-margin-start:5px;margin-inline-start:5px}.btn-alt{color:var(--bodyTextSubtle);font-size:13px;font-size:.93rem;margin:0 5px;display:inline!important}.btn-alt a:first-letter{text-transform:capitalize}.phone .btn-alt{margin:5px 0 0}.btn-alt a{-webkit-margin-start:5px;margin-inline-start:5px;cursor:pointer}a.link{font-size:13px;font-size:.93rem;text-decoration:none;font-weight:400}.pop-box-menu a.link--delete,.tone-dark .pop-box-menu a.link--delete,[data-action=delete],a.link--delete{color:#e74c3c}.tone-dark html:not(.phone) .pop-box-menu a.link--delete:hover,html:not(.phone) .pop-box-menu a.link--delete:hover{background-color:#e74c3c}a.link--approve{color:#2ecc71}a.link span.icon,a.link:hover span.icon{text-decoration:none}a.link:hover span{text-decoration:underline}.disabled,.disabled a{color:var(--bodyTextDisabled)}.tone-dark .disabled,.tone-dark .disabled a{color:#444}.disabled a{text-decoration:none;cursor:default}.optional{font-size:50%;color:var(--bodyTextSubtle);font-weight:400}.text-shadow{text-shadow:2px 2px 3px rgba(0,0,0,.75);-webkit-filter:dropshadow(color=#000000, offx=2, offy=2);filter:dropshadow(color=#000000, offx=2, offy=2)}.box-shadow{box-shadow:2px 2px 3px 0 rgba(0,0,0,.45)}.silent-links a,a.silent-links{color:inherit}.close-box .icon-circle{color:var(--bodyText);position:relative}.close-box .icon-close-box{color:#fff;position:absolute;inset-inline-start:0;top:0}.transparent-canvas{background-image:url(data:image/gif;base64,R0lGODlhEAAQAIAAAP///9/f3yH5BAAHAP8ALAAAAAAQABAAAAIfjG+gq4jM3IFLJgpswNly/XkcBpIiVaInlLJr9FZWAQA7);background-repeat:repeat}.transparent-canvas.dark{background-image:url(data:image/gif;base64,R0lGODlhEAAQAIAAAOfn58rKyiH5BAAHAP8ALAAAAAAQABAAAAIfjG+gq4jM3IFLJgpswNly/XkcBpIiVaInlLJr9FZWAQA7)}input,select,textarea{font-family:inherit;font-size:inherit;-ms-appearance:none;border-radius:3px;display:inline-block;border:1px solid transparent;background:var(--inputBackground);color:var(--inputText)}input:-webkit-autofill,select:-webkit-autofill,textarea:-webkit-autofill{-webkit-text-fill-color:var(--inputText)!important}.input-focus,input.search:focus,input:focus,select:focus,textarea:focus{border-color:var(--colorAccent)}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover,select:-webkit-autofill,select:-webkit-autofill:focus,select:-webkit-autofill:hover{-webkit-text-fill-color:inherit;-webkit-box-shadow:inset 0 0 0 9999px transparent;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}select{font:inherit;outline:0}.text-input,textarea{outline:0}input[type=checkbox],input[type=radio]{border-radius:0;border:none;position:relative;vertical-align:baseline}.input-line-height,.text-input,input[type=text]{height:36px}.input-line-height{line-height:36px}.text-input,input[type=text]:not(.text-input),textarea{padding:7px 10px;width:100%}.ie7 .text-input,.ie7 input[type=text],.ie7 textarea{padding:10px;width:328px;height:14px}.ie8 .text-input,.ie8 input[type=text],.ie8 textarea,.ie9 .text-input,.ie9 input[type=text],.ie9 textarea{height:auto}.tone-dark .input-focus,.tone-dark input.search:focus,.tone-dark input:focus,.tone-dark select:focus,.tone-dark textarea:focus{border-color:var(--colorAccent);box-shadow:0 0 8px 0 rgba(0,167,218,.75)}.input,.input-label{position:relative;overflow:visible;scroll-snap-align:start}.input{margin:10px 0;font-size:1em}.input.first-child,.input:first-child{margin-top:0}.input-label{margin:20px 0}.input-label.first-child,.input:first-child{margin-top:0}.input-label h3,.input-label label,.input-label-label{font-weight:600;padding-bottom:5px;display:inline-block;font-size:1em}.input-label h3{display:block}.input-label h3 a,.input-label label a{font-weight:400}.input-label label .caption,.input-label label .optional{font-weight:400;font-size:.92em}.input-label .btn-alt{position:absolute;inset-inline-start:100%;top:23px;line-height:36px;-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:0;margin-inline-end:0}.phone .input-label .btn-alt{position:static;-webkit-margin-start:0;margin-inline-start:0}.checkbox-label,.input-label{position:relative;font-size:.93em}.input .icon-input-submit{background:0 0;font-size:1.82em;color:#d9d9d9;position:absolute;inset-inline-end:.21em;top:.21em;cursor:pointer;line-height:1}.tone-dark .input .icon-input-submit{color:#666}.input .icon-input-submit.focus,.input .icon-input-submit:focus,.input .icon-input-submit:hover{color:var(--colorAccent)}.ie7 .input .icon-input-submit{top:2px}.ui-autocomplete{max-height:130px;overflow-y:auto;overflow-x:hidden}* html .ui-autocomplete{height:125px}.autocomplete-list{position:absolute;display:none;z-index:1}.autocomplete-list .ui-autocomplete{position:absolute;top:0;inset-inline-start:0}.autocomplete-list ul{border:1px solid var(--bodyTextDisabled)}.autocomplete-list a{color:inherit;background:Window;padding:7px 10px;display:block;text-decoration:none;cursor:default}.autocomplete-list a.ui-state-focus{background:Highlight;color:HighlightText}.input-column{width:350px}.input-warning{color:var(--bodyTextSubtle);position:absolute;inset-inline-end:0;top:0}.input-below{margin-top:5px;display:block;position:static}.red-warning{color:#d74634}.input-password .input-password-strength{position:absolute;inset-inline-end:11px;top:50%;margin-top:5px}.fancy-fieldset .input-password{display:flex;align-items:center}.fancy-fieldset .input-password-strength{inset-inline-end:0;top:auto;margin-top:0}.input-password-strength{background:var(--bodyEmpty)}.tone-dark .input-password-strength{background:#1f1f1f}.input-password-strength,.input-password-strength span{display:block;width:50px;height:8px}.input-password-strength span{width:0%;background-color:transparent}.input-password-strength [data-veredict=very-weak]{background-color:#e74c3c}.input-password-strength [data-veredict=weak]{background-color:#e67e22}.input-password-strength [data-veredict=average],.input-password-strength [data-veredict=strong],.input-password-strength [data-veredict=stronger]{background-color:#2ecc71}.checkbox-label{font-size:1em;display:block;margin:5px 0;position:relative}.checkbox-label:last-child{margin-bottom:0}.checkbox-label input{position:absolute;padding:0;margin:0;-webkit-margin-start:-20px;margin-inline-start:-20px}.btn-alt.checkbox-label input{position:static;vertical-align:text-top;-webkit-margin-end:4px;margin-inline-end:4px}.phone .btn-alt.checkbox-label{display:block!important;margin:10px 0}.checkbox-label label{-webkit-padding-start:20px;padding-inline-start:20px;font-weight:400;margin:0;padding-bottom:0}.fancy-box .checkbox-label label{display:flex;align-items:flex-start}.input-search{position:relative}input.search{font-size:1em;border-radius:200px;padding:0 25px 0 32px;-webkit-padding-end:3.0666rem;padding-inline-end:3.0666rem;-webkit-padding-start:2.3571rem;padding-inline-start:2.3571rem;line-height:100%;height:26px;height:1.86rem;width:100%;border:1px solid transparent;top:0;inset-inline-start:0;outline:0;vertical-align:text-bottom}input.search.one-icon-padding,input.search.two-icon-padding{-webkit-padding-end:30px;padding-inline-end:30px;-webkit-padding-end:2rem;padding-inline-end:2rem}input.search.two-icon-padding{-webkit-padding-start:30px;padding-inline-start:30px;-webkit-padding-start:2rem;padding-inline-start:2rem}.top-bar input.search{-webkit-padding-start:39px;padding-inline-start:39px;-webkit-padding-start:2.46rem;padding-inline-start:2.46rem;top:-2px;position:relative;-webkit-padding-end:34px;padding-inline-end:34px;background:0 0;border:transparent;box-shadow:none!important}.top-bar input{color:var(--topBarText)}.ie7 input.search,.ie8 input.search,.ie9 input.search{-webkit-padding-end:10px;padding-inline-end:10px;line-height:26px;height:26px}.ie7 input.search{padding:0;width:200px}.input-search span{position:absolute;cursor:pointer}.input-search .icon--search{inset-inline-start:12px;top:6px;color:var(--inputText)}.top-bar .input-search .icon--search{top:4px;top:.24rem}.tone-dark .top-bar .input-search .icon--search,.tone-dark .top-bar .input-search input.search{color:#fff}.input-search .icon--search,.top-btn-text .icon--search{font-size:16px;width:16px;font-size:1.143rem;width:1.143rem}.input-search .icon--close,.input-search .icon--settings{padding:4px;top:0;font-size:1em}.input-search .icon--settings{inset-inline-end:22px}.input-search .icon--close{inset-inline-end:4px;color:var(--inputText)}.ie7 .input-search .icon--close,.ie8 .input-search .icon--close,.ie9 .input-search .icon--close{display:none}select{-webkit-padding-start:7px!important;padding-inline-start:7px!important}.ie7 select{width:100%!important;padding:0!important;height:auto!important}select option{padding:4px 10px;margin:0}textarea{resize:both;height:80px}.input-upload{position:relative}.user-settings-avatar{min-height:160px;height:auto}.user-settings-avatar-container{position:relative}.user-settings-avatar-container,.user-settings-avatar-container .user-image{font-size:160px;width:1em;height:1em}.user-settings-avatar .loading-placeholder{position:absolute;inset-inline-start:0;top:0;background:var(--bodyEmpty)}.tone-dark .user-settings-avatar .loading-placeholder{background:rgba(0,0,0,.6)}.phone .user-settings-avatar-container{margin:0 auto 10px!important}.input-upload .btn-container{margin:0 0 5px 0}.input-upload .btn-alt{-webkit-margin-start:0;margin-inline-start:0}.arrow-down{border-width:4px 4px 0 4px;border-color:#333 transparent transparent transparent;border-color:#333 transparent transparent transparent;content:""}.arrow-down{border-style:solid;display:inline-block;height:0;width:0;vertical-align:middle}.sign-services li{display:inline-block;margin:0 4px 4px 0}.sign-service{font-size:.93em;padding:0 8px;line-height:30px;height:29px}.sign-service .btn-icon{font-size:inherit;width:auto}.sign-services-compact .btn-text{display:none}.link-service,.sign-service{color:#fff;display:inline-block;text-decoration:none!important}.link-service span,.sign-service{border-radius:3px}.link-service{font-weight:400;height:28px;position:relative}.link-service span{display:block;line-height:28px;text-align:center!important}.link-service .btn-icon{width:28px;height:28px;-webkit-margin-end:4px;margin-inline-end:4px;position:absolute;inset-inline-start:0;top:0}.link-service span.sign-text{padding:0 20px;-webkit-margin-start:32px;margin-inline-start:32px}.btn-social .btn-icon,.sign-service .icon{color:#fff;position:relative;display:inline-block}.btn-container{margin-top:20px;margin-bottom:20px;position:relative}.btn{height:36px;line-height:36px;font-family:inherit;font-size:1em;font-weight:400;padding:0 10px;border-radius:3px;cursor:pointer;display:inline-block;text-decoration:none;border:1px solid transparent;white-space:nowrap}.btn,.btn:active,.btn:focus,.btn:hover{text-decoration:none}.btn.default:active,.btn:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-icon{width:18px;display:inline-block;text-align:center}.btn-text{-webkit-margin-start:4px;margin-inline-start:4px}.btn-text:empty{display:none}.btn-big{font-size:16px;font-size:1.143rem;height:38px;line-height:38px;-webkit-padding-start:1em;padding-inline-start:1em;-webkit-padding-end:1em;padding-inline-end:1em}.btn-small{height:30px;line-height:30px;font-size:.92em}.btn-input{font-weight:600;font-size:.93em;-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px}.btn-32{width:32px;height:32px;text-align:center;display:inline-block}.btn-32 .btn-icon{font-size:18px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.btn-capsule{border-radius:100px;border-color:rgba(255,255,255,.5);background-color:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background-image:none;height:auto;color:#fff;text-shadow:none;font-size:.93em;height:28px;line-height:28px;font-weight:400;padding:0 15px;box-shadow:none;-webkit-filter:none;filter:none}.btn-capsule:hover{background-color:rgba(0,0,0,.7)}.no-rgba .btn-capsule{border-color:#666;background-color:none;zoom:1}.btn-capsule:active{box-shadow:none}.btn-capsule .btn-icon{font-size:.93em}.btn.accent{color:var(--buttonAccentText);border:1px solid transparent;background:var(--buttonAccentBackground)}.btn.accent:not(.outline):hover{color:var(--buttonAccentHoverText);background:var(--buttonAccentHoverBackground)}.btn.accent.outline{color:var(--buttonAccentBackground);border-color:var(--buttonAccentBackground);box-shadow:none}.btn.accent.outline:hover{color:var(--buttonAccentHoverBackground);border-color:var(--buttonAccentHoverBackground)}.btn.default{color:var(--buttonDefaultText);border-color:var(--buttonDefaultBorder);background:var(--buttonDefaultBackground)}.btn.default--hover:not(.outline),.btn.default:not(.outline):hover{color:var(--buttonDefaultHoverText);background:var(--buttonDefaultHoverBackground);border-color:var(--buttonDefaultHoverBorder)}.btn.default.outline{color:var(--buttonDefaultBackground);border-color:var(--buttonDefaultBackground);box-shadow:none}.btn.default.outline:hover{color:var(--buttonDefaultHoverBackground);border-color:var(--buttonDefaultHoverBackground)}.btn.disabled,.btn.disabled:hover{color:var(--bodyTextSubtle);background-color:var(--buttonDefaultBackground);background-image:none;box-shadow:none;cursor:default}.tone-dark .btn.disabled,.tone-dark .btn.disabled:hover{color:#666;background-color:#212121}.btn.disabled.outline,.btn.disabled.outline:hover{color:var(--bodyTextSubtle);border-color:var(--bodyTextSubtle)}.btn.plain,.btn.plain:hover{background:0 0;text-shadow:none;border-color:transparent;box-shadow:none;padding:0;color:inherit}.tone-dark .btn.plain,.tone-dark .btn.plain:hover{background:0 0}.btn.plain:active{box-shadow:none}.btn.active{background-image:none;background-color:var(--colorAccent);border-color:var(--colorAccent);-webkit-filter:none;filter:none}.btn.grey,.btn.grey.off:hover{background-color:#eee}.btn.grey:hover{background-color:#e9e9e9}.btn.grey.outline{color:#eee}.btn.orange,.btn.orange.off:hover{border-color:#fe771d;background-color:#fe771d}.btn.orange:hover{background-color:#fe6b0a}.btn.orange.outline{color:#fe771d}.btn.purple,.btn.purple.off:hover{border-color:#8e44ad;background-color:#8e44ad}.btn.purple:hover{background-color:#8e44ad}.btn.purple.outline{color:#8e44ad}.btn.blue,.btn.blue.off:hover{border-color:var(--colorBlue);background-color:var(--colorBlue)}.btn.blue:hover{background-color:#2879b0}.btn.blue.outline{color:var(--colorBlue)}.btn.green,.btn.green.off:hover{background-color:var(--colorGreen)}.btn.green:not(.outline):hover{background-color:var(--colorGreenHover)}.btn.green.outline{color:var(--colorGreen);border-color:var(--colorGreenHover)}.btn.red,.btn.red.off:hover{border-color:var(--colorRed);background-color:var(--colorRed)}.btn.red:not(.outline):hover{background-color:var(--colorRedHover)}.btn.red.outline{color:var(--colorRed)}.btn.red.outline:hover{color:var(--colorRedHover);border-color:var(--colorRedHover)}.btn.white,.btn.white.off:hover{border-color:#fff;background-color:#fff}.btn.white:hover{background-color:#fff}.btn.white.outline{color:#fff}.btn.black,.btn.black.off:hover{border-color:#3a3a3a;background-color:#3a3a3a}.btn.black:hover{background-color:#343434}.btn.black.outline{color:#3a3a3a}.btn.active,.btn.black,.btn.blue,.btn.green,.btn.orange,.btn.red{color:#fff;border:1px solid transparent}.btn.grey,.btn.white{color:var(--bodyText)}.btn.off{cursor:default}.btn.off:active{box-shadow:none}.btn-social{color:var(--buttonDefaultText);background:var(--buttonDefaultBackground);background-image:none;box-shadow:none;border:1px solid transparent}.btn-social.btn-at .btn-icon,.btn-social.btn-share .btn-icon{color:var(--buttonDefaultText)}.btn-social,.btn-social:hover{text-decoration:none;text-shadow:none}.btn-twitter,.link-twitter span{background:#55acee}.btn-facebook,.link-facebook span{background:#3b5998}.btn-google,.btn-google-plus,.link-google span,.link-google-plus span{background:#d74836}.btn-mail{background:#ccc;color:var(--bodyText)}.btn-mail span{color:var(--bodyText)}.btn-tumblr{background:#35465c}.btn-pinterest{background:#bd081c}.btn-stumbleupon{background:#eb4924}.btn-blogger{background:#f57d00}.btn-whatsapp{background:#43d854}.btn-telegram{background:#08c}.btn-weixin{background:#7bb32e}.btn-weibo{background:#df2029}.btn-qzone{background:#ffce00}.btn-qq{background:#121214}.btn-reddit{background:#ff4500}.btn-reddit .btn-icon{color:#fff}.btn-vk,.link-vk span{background:#45668e}.btn.outline,.btn.outline:hover{background:0 0;border:1px solid;box-shadow:none}.pop-btn,.top-btn-el,a[data-modal]{-webkit-tap-highlight-color:transparent}.pop-btn *,.top-btn-el *{-webkit-tap-highlight-color:rgba(0,0,0,.2)}.pop-btn,.top-btn-el{display:inline-block;position:relative;cursor:pointer}.pop-box-inner{cursor:default;display:block;-webkit-overflow-scrolling:touch;overflow:auto}.pop-box-inner form{margin-top:-20px;margin-bottom:-20px}.btn.pop-btn .pop-box{line-height:100%}.pop-btn-text{color:var(--linkText);cursor:pointer}.ie7 .pop-btn-text,.ie8 .pop-btn-text{-webkit-padding-end:0;padding-inline-end:0}.pop-btn-text .arrow-down{vertical-align:middle;-webkit-margin-start:5px;margin-inline-start:5px;border-top-color:var(--linkText)}.pop-btn.disabled{cursor:default}.pop-btn.disabled .pop-btn-text{color:var(--bodyTextDisabled);cursor:default}.pop-btn.disabled .arrow-down{border-top-color:var(--bodyTextDisabled)}.tone-dark .pop-btn.disabled .arrow-down{border-top-color:#444}.pop-box{color:var(--menuText);background:var(--menuBackground);-webkit-backdrop-filter:blur(15px) saturate(1.8);backdrop-filter:blur(15px) saturate(1.8);display:none;font-size:.93em;z-index:200;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:1px solid var(--menuSeparator)}.phablet .pop-box,.phone .pop-box{font-size:inherit}.pop-box .or-separator{border-top-color:var(--menuSeparator)}.phablet .pop-box .or-separator,.phone .pop-box .or-separator{border-top-color:var(--topBarText);opacity:.25}@media (min-width:992px){.pop-box{position:absolute;top:20px;min-height:20px;min-width:190px;box-shadow:0 4px 14px rgba(0,0,0,.25);border-radius:5px;box-sizing:content-box;--columnGutter:5px;--columnWidth:230px;--columnWidthOuter:calc(var(--columnWidth) + var(--columnGutter))}.header--height .pop-box{min-width:240px}.pop-box,.pop-box.left-anchor{inset-inline-start:0}.pop-box.anchor-center{inset-inline-start:50%!important}.pop-box.anchor-right{inset-inline-start:auto;inset-inline-end:0}.pop-box.pbcols1{width:calc(1 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols2{width:calc(2 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols3{width:calc(3 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols4{width:calc(4 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols5{width:calc(5 * var(--columnWidthOuter) + var(--columnGutter))}.pop-box.pbcols1 li,.pop-box.pbcols2 li,.pop-box.pbcols3 li,.pop-box.pbcols4 li,.pop-box.pbcols5 li{border-radius:5px}.pop-box-menucols ul{padding:10px 0;overflow:auto}.pop-box-menucols li{width:var(--columnWidth);float:left;margin:0 0 0 5px}[dir=rtl] .pop-box-menucols li{float:right}.pop-box-menucols li:first-child a,.pop-box-menucols li:last-child a{border-radius:0}}.pop-box-menu{font-size:.8125rem;-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.phablet .pop-box-menu,.phone .pop-box-menu{font-size:inherit}.pop-box-label{color:inherit;margin:10px;text-transform:uppercase;font-weight:700;font-size:90%;cursor:default;line-height:2}.pop-box-block{padding:0 10px}.pop-box-block .current::before{font-weight:900;font-family:"Font Awesome 5 Free";-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;-webkit-margin-end:.25em;margin-inline-end:.25em;content:"\f205";font-size:90%}.pop-box-menu .menu-item,.pop-box-menu a{display:block;padding:6px 10px;text-decoration:none;font-weight:400;line-height:143%;color:var(--menuItemText)}.pop-box-block a{display:inline-block;padding:6px;border-radius:.25em;line-height:1}.phablet .pop-box,.phone .pop-box{color:var(--topBarText)}.phablet .pop-box-menu .menu-item,.phablet .pop-box-menu a,.phone .pop-box-menu .menu-item,.phone .pop-box-menu a{padding:10px;color:inherit}.phablet .pop-box-menu li.with-icon a .btn-icon,.phone .pop-box-menu li.with-icon a .btn-icon{top:11px}@media (min-width:992px){.pop-box-menu .menu-item,.pop-box-menu a{border-bottom:0}}.pop-box-menu a.focus,html:not(.phone) .pop-box-menu a:hover{background:var(--menuItemHoverBackground);color:var(--menuItemHoverText)}.pop-box-menu li.current a,.pop-box-menu li.current a:hover{color:var(--buttonDefaultText);background:var(--buttonDefaultBackground)}.pop-box-menu ul{display:block;padding:0}@media (min-width:992px){.pop-box-menu ul{margin:5px 0}}.pop-box-menu li{display:block;text-align:start;overflow:hidden;position:relative}.pop-box-menu li.with-icon a{-webkit-padding-start:36px;padding-inline-start:36px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}html:not(.phone):not(.phablet) .header--height .pop-box-menu li a{-webkit-padding-end:25px;padding-inline-end:25px}.pop-box-menu li a kbd{position:absolute;top:50%;transform:translateY(-50%);inset-inline-end:10px;border-radius:2px;display:block;line-height:1;font-size:.9em;opacity:.5}.pop-box-menu li a:hover kbd{opacity:1}.phablet .pop-box-menu li a kbd,.phone .pop-box-menu li a kbd{display:none}.pop-box-menu li.with-icon a .btn-icon{position:absolute;inset-inline-start:10px;top:8px}.pop-box-menu li.current,.pop-box-menu li.current a{font-weight:600}.pop-box-menu li.current a:hover{cursor:default}.pop-box-userdetails{padding:10px;width:120%;min-width:230px;cursor:default;inset-inline-start:42px;line-height:normal;top:0!important;margin-top:0!important}.phablet .pop-box,.phone .pop-box{position:fixed;bottom:0;inset-inline-start:0!important;width:100%;top:auto!important;background:var(--topBarBackground);color:var(--topBarText)}.pop-box-header{font-weight:700;padding:15px 10px;position:relative;text-align:start;color:var(--topBarText)}.pop-box-header .icon--close{position:absolute;inset-inline-end:10px;top:50%;margin-top:-7px;font-size:14px;text-align:end}@media (min-width:992px){.pop-box-header{display:none}}.top-bar-placeholder{-webkit-backface-visibility:hidden;backface-visibility:hidden}.top-bar,.top-bar ul li.pop-btn,.top-bar ul li.top-btn-el,.top-bar-placeholder{height:50px}.top-btn-create-account,.top-btn-text{line-height:50px}.top-btn-text{-webkit-tap-highlight-color:transparent}.follow-scroll,.top-bar{transition:top .4s ease-in-out}.top-bar--:focus-within,.top-bar.scroll-up{top:0}.follow-scroll--:focus-within,.scroll-up.follow-scroll{top:50px!important}.scroll-down{top:-100%}.top-bar,.top-sub-bar{left:0;right:0;width:100%;position:-webkit-sticky;position:sticky;height:50px}.top-bar{color:var(--topBarText);z-index:900}.top-bar--main{z-index:910}.top-sub-bar{color:var(--bodyText);z-index:500;overflow:visible}body.pop-box-show .top-sub-bar--1{z-index:1}body.landing .top-bar,body.split .top-bar{position:fixed}.phablet .pop-box-show .top-bar,.phone .pop-box-show .top-bar{z-index:1}.follow-scroll-wrapper.position-fixed,.top-bar::before,.top-sub-bar::before{background:var(--topBarBackground);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.top-sub-bar::before{background:var(--bodyBackground)}.top-bar::before,.top-sub-bar::before{-webkit-backface-visibility:hidden;backface-visibility:hidden}.top-bar::before,.top-sub-bar::before{width:100%;height:calc(100% + .5px);position:absolute;content:" "}.top-bar .content-width,.top-sub-bar .content-width{position:relative;height:100%;-webkit-padding-start:5px;padding-inline-start:5px;-webkit-padding-end:5px;padding-inline-end:5px}.top-bar-logo{width:100%;height:100%;position:absolute;top:0;text-align:center;inset-inline-start:0}.top-bar-logo img{height:20px}.top-bar-logo>a{display:inline-block;vertical-align:top;position:relative;top:50%;transform:translateY(-50%);text-decoration:none;font-weight:400;font-size:24px;color:var(--topBarText)}.top-bar-logo img{display:block;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}.top-bar ul{list-style:none}.top-bar li.pop-btn,.top-bar li.top-btn-el{float:left;-webkit-padding-end:5px;padding-inline-end:5px;-webkit-padding-start:5px;padding-inline-start:5px;position:relative}[dir=rtl] .top-bar li.pop-btn,[dir=rtl] .top-bar li.top-btn-el{float:right}@media (min-width:992px){.top-bar li.pop-btn,.top-bar li.top-btn-el{-webkit-padding-end:10px;padding-inline-end:10px;-webkit-padding-start:10px;padding-inline-start:10px}.top-bar .top-bar-notifications.pop-btn{-webkit-padding-end:0;padding-inline-end:0}}.top-bar ul .pop-btn.current,.top-bar ul .top-btn-el.current{border-bottom:3px solid var(--colorAccent)}.top-bar ul .pop-btn.current .top-btn-text,.top-bar ul .top-btn-el.current .top-btn-text{text-shadow:none;box-shadow:none}.top-bar ul li.top-btn-el a{text-decoration:none;color:inherit}.tone-light .top-bar .top-bar ul .pop-btn.current .top-btn-text,.tone-light .top-bar .top-bar ul .top-btn-el.current .top-btn-text{color:var(--bodyText)}.top-bar-right li.pop-btn:last-child,.top-bar-right li.pop-btn:last-child .arrow-down{-webkit-margin-end:0;margin-inline-end:0}.top-btn-create-account,.top-btn-text{display:block;font-weight:400;font-size:1em;height:100%}#menu-fullscreen .btn.top-btn-create-account,.btn.top-btn-create-account:not(.grey):not(.white),.top-btn-text{color:inherit}.top-btn-text{text-decoration:none;color:var(--topBarText)}.top-bar #menu-fullscreen .top-btn-text{color:var(--topBarText)}body.landing .top-btn-text{color:var(--topBarText)}.top-btn-text .icon{-webkit-margin-end:7px;margin-inline-end:7px;position:relative;top:0;display:inline-block;font-size:16px;width:16px;font-size:1.143rem;width:1.4rem;line-height:50px;text-align:center}.current .top-btn-text .icon{color:var(--colorAccent)}.top-btn-text .btn-text{-webkit-margin-start:0;margin-inline-start:0}.top-btn-text .arrow-down{position:relative;margin:0 0 0 5px}.top-btn-text .btn-text{vertical-align:top}.top-btn-text .icon{-webkit-margin-end:0;margin-inline-end:0}#menu-fullscreen .top-bar-notifications .btn-text{display:inline-block}#menu-fullscreen #top-bar-user,#menu-fullscreen [data-nav=upload]{display:none}#top-bar [data-nav=upload]{-webkit-padding-end:5px;padding-inline-end:5px;-webkit-padding-start:5px;padding-inline-start:5px}.top-bar-notifications-container{-webkit-margin-end:2px;margin-inline-end:2px;cursor:default}.top-bar-notifications-header{font-size:.93em;line-height:1;padding:12px 10px;overflow:auto}.top-bar-notifications-header,.top-bar-notifications-list li{border-bottom:1px solid var(--menuSeparator)}.tone-dark .top-bar-notifications-header,.tone-dark .top-bar-notifications-list li{border-color:#333}.top-bar-notifications-header h2{font-size:1em;font-weight:700;float:left}[dir=rtl] .top-bar-notifications-header h2{float:right}.top-bar-notifications-header a{float:right}[dir=rtl] .top-bar-notifications-header a{float:left}.top-bar-notifications-list li{display:block;text-decoration:none;padding:10px;position:relative;min-height:68px;-webkit-padding-start:68px;padding-inline-start:68px}.top-bar-notifications-list li:last-child{border-bottom:0}.top-bar-notifications-list li:hover{background:rgba(0,0,0,.02)}.tone-dark .top-bar-notifications-list li:hover{background:rgba(0,0,0,.2)}.top-bar-notifications-list li.transition{transition:background-color 150ms linear}.top-bar-notifications-list li.new,.top-bar-notifications-list li.persistent{background:#fffad9}.tone-dark .top-bar-notifications-list li.new,.tone-dark .top-bar-notifications-list li.persistent{background:#333}.ie7 .top-bar-notifications-list li{min-height:48px}.top-bar-notifications-list li .user-image{width:48px;height:48px;position:absolute;left:10px;top:10px}.top-bar-notifications-list li .user-image img{width:100%;height:100%;display:block}.top-bar-notifications-list li .user-image span.icon{font-size:48px;width:48px;height:48px;-webkit-margin-start:-24px;margin-inline-start:-24px;margin-top:-24px}.top-bar-notifications-list li .how-long-ago{display:block;font-size:11px;color:var(--bodyTextSubtle)}.top-bar-notifications .top-btn-number{position:absolute;z-index:1;border-radius:100px;zoom:.75;inset-inline-end:-8px;top:10px;visibility:hidden}.top-bar-notifications .top-btn-number.on{visibility:visible}@media (min-width:992px){.top-bar .pop-box{margin:10px;z-index:200}}.top-bar-search-input{-webkit-margin-start:-10px;margin-inline-start:-10px;-webkit-margin-end:10px!important;margin-inline-end:10px!important}.top-bar-search-input .icon--close{inset-inline-end:-4px}.top-bar-search-input .icon--settings{inset-inline-end:14px}.top-bar .top-bar-search-input .icon--search{color:var(--colorAccent)}.top-bar-search-input .input-search{position:relative;top:50%;margin-top:-13px}.top-bar-search-input input{font-size:1em;border-width:0;-webkit-padding-start:36px;padding-inline-start:36px}.tone-light .top-bar .top-bar-search-input input{border-width:1px}.top-bar-left .pop-box{inset-inline-start:-10px}.phone .top-bar-left li{-webkit-padding-end:0;padding-inline-end:0}.phone .top-bar-right li{-webkit-padding-start:0;padding-inline-start:0}.top-bar-right .pop-box{inset-inline-start:auto;inset-inline-end:-10px}.top-bar--main .pop-box{top:calc(50% + 10px)}#top-predictive-search.pop-box{width:200px;inset-inline-start:0;font-size:100%}.top-bar .pop-account .or-separator{margin-top:30px;margin-bottom:30px}.top-btn-create-account{text-decoration:none;display:inline;padding:4px 12px;height:26px}.top-bar .opened .top-btn-text span:not(.btn-text),.top-bar .top-btn-text:hover span:not(.btn-text){color:var(--linkText)}.phone .top-bar .top-btn-text:hover span:not(.btn-text){color:inherit}.phone .top-bar .current .top-btn-text:hover span:not(.btn-text){color:var(--linkText)}.ios .top-bar .top-btn-text span:not(.btn-text):not(.top-btn-number):hover{color:var(--bodyText)}.ios .top-bar .opened .top-btn-text span:not(.btn-text),.ios .top-bar .opened .top-btn-text:not(.top-btn-number){color:var(--linkText)}.top-bar .btn:hover:not(.white):not(.grey),.top-bar .btn:not(.white):not(.grey),.top-bar .opened .btn:not(.white):not(.grey){color:#fff}.current .top-btn-create-account:hover{background:inherit}.current .top-btn-create-account{padding:0;background:0 0}.top-btn-number{background:#555;color:#ddd;font-size:12px;font-weight:400;border-radius:3px;padding:0 7px;position:relative;display:block;line-height:22px;height:22px;top:-2px}#menu-fullscreen .top-btn-number{display:inline-block;position:absolute;-webkit-margin-end:5px;margin-inline-end:5px;top:10px;vertical-align:text-bottom;inset-inline-start:30px;inset-inline-end:auto}.opened .top-btn-number.on,.tone-light.ios .top-bar .top-btn-number.on,.tone-light.top-bar .top-btn-number.on,.top-bar .top-btn-text:hover .top-btn-number.on,.top-btn-number.on,.top-btn-number.on:hover{background:#d90000;color:#fff}.pop-account .pop-box-inner{padding:20px 10px;cursor:default}.pop-account .title,.pop-account h2{font-size:1em;text-align:center;margin-top:5px;font-weight:400;display:block}.pop-account .sign-services{margin:15px 0 11px 0}.pop-account input.text-input,.pop-account input[type=password],.pop-account input[type=text]{width:100%}.ie7 .pop-account input.text-input{width:266px;height:auto}.pop-account .checkbox-label{display:inline-block;margin:0}#top-bar-user .top-btn-text .user-image{position:relative;top:50%;margin-top:-13px;width:1em;height:1em;float:left;font-size:26px;background:0 0;color:inherit;-webkit-margin-end:0;margin-inline-end:0}[dir=rtl] #top-bar-user .top-btn-text .user-image{float:right}#top-bar-user-menu.pop-box{width:150px}.header{position:relative}.header-icon{color:var(--colorAccent)}.header-tabs{min-height:50px}.header.follow-scroll{-webkit-margin-end:-10px;margin-inline-end:-10px;-webkit-margin-start:-10px;margin-inline-start:-10px;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;overflow:visible;position:-webkit-sticky;position:sticky;min-height:50px}.tone-dark .header{border-bottom-color:#212121}.header.fixed.follow-scroll{border-bottom:0}.header .header-title,.header h1{font-size:1em}.header>*{vertical-align:middle}.header .heading,.header .heading *,.header>.header-title,.header>h1{word-break:break-word}.header-tabs .heading,.header-tabs .heading *,.header-tabs>.header-title,.header-tabs>h1{line-height:50px}.header .heading,.header>.header-title,.header>h1{font-size:22px;font-weight:400;display:inline-block;color:inherit}.header .header-title a,.header h1 a{color:inherit;text-decoration:none}.header .header-title strong,.header .heading strong,.header h1 strong{font-weight:inherit}.header.header-tabs .header-title,.header.header-tabs h1{-webkit-margin-end:5px;margin-inline-end:5px;-webkit-margin-start:5px;margin-inline-start:5px}.header ul.content-tabs{display:inline-block}.phablet .header ul.content-tabs,.phone .header ul.content-tabs{float:none;display:inline-block;left:0;right:0;position:absolute;z-index:1;white-space:nowrap}.phablet .header.follow-scroll ul.content-tabs,.phone .header.follow-scroll ul.content-tabs{position:absolute;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}.phablet .header:not(.follow-scroll) ul.content-tabs,.phone .header:not(.follow-scroll) ul.content-tabs{top:auto}.header-content-left{float:left}[dir=rtl] .header-content-left{float:right}.header-content-right{float:right;height:auto;-webkit-margin-start:auto;margin-inline-start:auto}[dir=rtl] .header-content-right{float:left}@media (max-width:340px){.header-content-right.breaks-ui{clear:both;position:static!important;-webkit-margin-start:0;margin-inline-start:0}}.phablet .header-content-right:not(.phablet-float-none),.phone .header-content-right:not(.phone-float-none){position:absolute;inset-inline-end:0;top:0;float:right}[dir=rtl].phablet .header-content-right:not(.phablet-float-none),[dir=rtl].phone .header-content-right:not(.phone-float-none){float:left}.header-content-right .number-figures{margin-top:14px;-webkit-border-start:1px solid var(--bodySeparator);border-inline-start:1px solid var(--bodySeparator)}.header-content-right .number-figures:first-child{-webkit-border-start:0;border-inline-start:0}.header .header-link{font-size:1em;display:inline-block}.header .pop-btn.breadcrum-item{margin-top:0}.header .user-image{font-size:30px;width:1em;height:1em;margin-top:10px;float:left}[dir=rtl] .header .user-image{float:right}.header.header-content{position:relative;min-height:40px;border:0}.header.header-content .heading,.header.header-content .heading *{line-height:40px;height:40px}.header-content img{max-height:40px}.header-content .user-image{width:1em;height:1em;font-size:40px;margin-top:0;top:0}.header .user-image img,.header-content .user-image img{width:100%;height:100%;display:block}.header-description{line-height:1.4;max-height:10vh;overflow-y:scroll;overflow:auto}.header-description:empty{display:none}.header-description p{margin:10px 0}.header-content-breadcrum{float:left}[dir=rtl] .header-content-breadcrum{float:right}.breadcrum-item :not(.btn){line-height:normal}.breadcrum-text,.header-content-breadcrum .breadcrum-item{line-height:40px}.breadcrum-text,.breadcrum-text a{color:inherit}.breadcrum-text{font-weight:400}.breadcrum-item{-webkit-margin-end:10px;margin-inline-end:10px;position:relative;float:left}[dir=rtl] .breadcrum-item{float:right}.breadcrum-text a:hover{color:var(--linkText);text-decoration:none}.breadcrum-text .user-link{-webkit-margin-start:5px;margin-inline-start:5px}.header-content-breadcrum .arrow,.header-content-breadcrum .arrow-down,.header-content-breadcrum .arrow-right{-webkit-margin-start:5px;margin-inline-start:5px;position:relative}.header-content-breadcrum a:hover .arrow-down{border-top-color:var(--linkText)}.header-content-breadcrum a:hover .arrow-right{border-left-color:var(--linkText)}.header-content-breadcrum .pop-box h2{font-size:1.07em;line-height:1.2}.header-content-breadcrum .pop-box h2 a{line-height:1}.header-content .btn{-webkit-margin-start:5px;margin-inline-start:5px;float:left;display:block}[dir=rtl] .header-content .btn{float:right}.header-content .btn:last-child{-webkit-margin-end:0;margin-inline-end:0}.follow-scroll{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;z-index:1}.follow-scroll-wrapper{left:0;right:0;z-index:50}.follow-scroll-wrapper.position-fixed .header{margin-bottom:-1px!important}.follow-scroll-placeholder{-webkit-backface-visibility:hidden;backface-visibility:hidden}.phablet .header:not(.header-tabs) .tab-menu,.phone .header:not(.header-tabs) .tab-menu{color:var(--buttonDefaultText);background:var(--buttonDefaultBackground);border-radius:4px;height:auto;line-height:1em;min-height:1em;padding:10px}.phablet .header:not(.header-tabs) .tab-menu:not(.--hide),.phone .header:not(.header-tabs) .tab-menu:not(.--hide){color:var(--buttonDefaultHoverText);background:var(--buttonDefaultHoverBackground);margin-bottom:10px}.phablet .header .tab-menu.--hide .tab-menu--show,.phablet .header .tab-menu:not(.--hide) .tab-menu--hide,.phone .header .tab-menu.--hide .tab-menu--show,.phone .header .tab-menu:not(.--hide) .tab-menu--hide{display:none}.tab-menu{cursor:pointer;line-height:50px;min-height:50px}.tab-menu.--hide .btn-icon[data-content=tab-icon]{color:var(--colorAccent)}.tab-menu.--hide{color:var(--buttonDefaultText)}.tab-menu:not(.--hide){color:var(--buttonDefaultHoverText)}.content-tabs-container{position:relative;display:inline-block}.phablet .content-tabs-container--mobile,.phone .content-tabs-container--mobile{box-shadow:0 6px 4px rgba(0,0,0,.25);inset-inline-start:-10px;width:calc(100% + 15px)}.phablet .content-tabs-wrap,.phone .content-tabs-wrap{height:50px;overflow-y:hidden;position:relative;-webkit-overflow-scrolling:touch;overflow-x:scroll;position:relative;display:none;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:var(--bodyBackground)}.content-tabs-wrap::-webkit-scrollbar{display:none}.content-tabs-wrap{display:inline-block;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.content-tabs li{scroll-snap-align:start}.content-tabs li:not(.current){transition-duration:.2s;transition-property:background-color}.content-tabs a{font-weight:400;color:inherit;text-decoration:none;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px}.phone .content-tabs li:last-child{-webkit-margin-end:15px;margin-inline-end:15px}.content-tabs-shade{content:" ";background:-webkit-linear-gradient(0deg,rgba(255,255,255,0),var(--bodyBackground));width:15px;height:100%;position:absolute;inset-inline-end:0;top:0;pointer-events:none;z-index:2}[dir=rtl] .content-tabs-shade{background:-webkit-linear-gradient(180deg,rgba(255,255,255,0),var(--bodyBackground))}.phablet .content-tabs a,.phone .content-tabs a{color:var(--menuItemText)}.content-tabs li.disabled a{cursor:default}.tab-menu .--show{display:none}.tab-menu.current .--show{display:inline-block}.tab-menu.current .--hide{display:none}.content-tabs li{float:left;font-size:1em}[dir=rtl] .content-tabs li{float:right}.phablet .content-tabs li,.phone .content-tabs li{float:none;border-bottom:0;display:inline-block}.content-tabs-vertical li{float:none;margin:0;-webkit-border-start:2px solid transparent;border-inline-start:2px solid transparent}.content-tabs-vertical li>*{-webkit-padding-end:20px;padding-inline-end:20px;-webkit-padding-start:20px;padding-inline-start:20px}.header-content-right .content-tabs li{-webkit-margin-start:10px;margin-inline-start:10px;-webkit-margin-end:0;margin-inline-end:0}.content-tabs a,.content-tabs li{height:50px;line-height:50px;display:block}.content-tabs-vertical a,.content-tabs-vertical li{height:38px;line-height:38px}.content-tabs li.current,.content-tabs li.visited,.content-tabs li.visited:hover{border-color:var(--colorAccent);border-style:solid;border-bottom-width:3px}.content-tabs li.current .btn-icon{color:var(--colorAccent)}.content-tabs li:not(.current):hover{background:var(--bodyEmpty)}.content-tabs li:not(.current):hover a .btn-icon{color:var(--colorAccent)}.content-tabs li.disabled:hover{border-bottom:0}.content-tabs li.current{border-color:var(--colorAccent)}.content-tabs li.visited{border-bottom-color:transparent}.content-tabs li.current.visited{border-color:#d93600}.content-tabs li.visited,.content-tabs li.visited a{color:#d93600}.content-tabs-vertical li.current,.content-tabs-vertical li:hover{border-bottom-width:0;border-left-width:2px}.content-tabs .tab-count{font-weight:400;color:var(--bodyTextSubtle)}.content-tabs .tab-count-block{font-weight:400;background:#d90000;border-radius:3px;padding:1px 4px;position:relative;top:-1px}.content-tabs .current .tab-count-block,.content-tabs .tab-count-block{color:#fff}.content-tabs li.disabled *{color:var(--bodyTextDisabled)}.header--centering{display:flex;align-items:center;flex-wrap:wrap}.header--height{overflow:visible;height:50px}.list-selection *{line-height:normal}#tabbed-content-group{margin-top:20px;padding-bottom:20px;position:relative}.content-listing .viewer-kb{opacity:0;position:fixed;bottom:-100px;z-index:1;left:0;right:0;background:linear-gradient(0deg,var(--topBarBackground) 0,rgba(0,0,0,0) 100%)}.--has-selection .content-listing.visible .viewer-kb{opacity:1;bottom:0}.content-listing .viewer-kb-input{color:var(--menuText);background:var(--menuBackground);border-radius:.5em;margin:1em;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);box-shadow:0 4px 14px rgb(0 0 0 / 25%)}#content-listing-tabs #tabbed-content-group{margin-top:0}#content-listing-tabs{padding-bottom:0;-webkit-margin-start:-10px;margin-inline-start:-10px;-webkit-margin-end:-10px;margin-inline-end:-10px}.tabbed-content{display:none;width:100%;overflow:hidden}.title{font-size:.93em;font-weight:700;margin-bottom:5px}.title.grid-columns{-webkit-margin-end:10px;margin-inline-end:10px;text-align:end;line-height:2}.phablet .title.grid-columns,.phone .title.grid-columns{-webkit-margin-end:0!important;margin-inline-end:0!important;text-align:start}.tabbed-content-section{overflow:auto}.tabbed-content-list{line-height:1.8}.tabbed-listing .tabbed-content{overflow:hidden}.table-li{display:table;width:100%}.table-li>li{padding-top:8px;padding-bottom:8px;border-bottom:1px solid var(--bodySeparator);list-style:none!important}.tabbed-content-list.table-li-hover>li:hover{background:var(--bodyEmpty)}.tabbed-content-list .table-li-header{font-weight:700}.tabbed-content-list.table-li-hover .table-li-header:hover,.tone-dark .tabbed-content-list.table-li-hover .table-li-header:hover{background:0 0}.table-li ul li:last-child{border-bottom:none}.desktop .table-li--mobile-display,.laptop .table-li--mobile-display,.largescreen .table-li--mobile-display,.phablet .table-li--mobile-display,.tablet .table-li--mobile-display{display:none!important}.viewer-title{flex-grow:1;order:2;font-size:1.43em;line-height:1.43em;-webkit-padding-end:2em;padding-inline-end:2em}.panel-description:empty{display:none;margin:0!important;padding:0!important}.panel-description .description-text{font-size:1em}.panel-description .description-meta{font-size:.93em}.panel-description .exif-meta{-webkit-padding-start:1.57em;padding-inline-start:1.57em;position:relative}.panel-description .exif-meta .camera-icon{color:var(--bodyTextDisabled);position:absolute;inset-inline-start:0;top:.21em;font-size:1.14em}.panel-description .exif-meta .exif-data{display:block;font-size:1em}.panel-thumbs{z-index:1;bottom:0;left:0;right:0;background:var(--viewerBackground)}.panel-thumb-list{overflow-x:auto;overflow-y:hidden;white-space:nowrap;text-align:center;height:50px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}.panel-thumb-list:empty{display:none}.panel-thumb-list li{position:relative;font-size:0;border-top:3px solid transparent;display:inline-block;line-height:50px}.panel-thumb-list li.current{border-color:var(--colorAccent)}.list-item-desc .panel-thumb-list li:hover img,.panel-thumb-list li.current img{opacity:1}.phablet .panel-thumb-list li.more-link,.phone .panel-thumb-list li.more-link{clear:both;line-height:100%;padding:10px 0}.panel-thumb-list img{display:block;width:47px;height:47px;opacity:.4;transition:opacity 350ms ease}.panel-thumb-list li:hover img{opacity:1}.panel-share-item{margin-bottom:30px}.panel-share-item:last-child{margin-bottom:0}.panel-share-item .pre-title{-webkit-padding-start:200px;padding-inline-start:200px;line-height:20px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--bodySeparator);font-weight:700}.tone-dark .panel-share-item .pre-title{border-color:#212121}.phablet .panel-share-item .pre-title,.phone .panel-share-item .pre-title{-webkit-padding-start:0;padding-inline-start:0}.panel-share-item .title{line-height:32px}.panel-share-item .grid-columns{position:relative}.panel-share-input-label{margin-bottom:10px;overflow:auto}.panel-share-input-label:last-child{margin-bottom:0}.panel-share-input{position:relative}.panel-share-networks{overflow:auto;text-align:center}.panel-share-networks h4.title{line-height:32px}.panel-share-networks li{display:inline-block;-webkit-margin-end:5px;margin-inline-end:5px;margin-bottom:5px}.panel-share-networks li a{display:block;width:32px;height:32px;position:relative}.panel-report h4.title{line-height:36px}.text-content{font-size:16px}.text-content li,.text-content p{line-height:160%;margin:10px 0}.text-content h1,.text-content h2,.text-content h3,.text-content h4{margin:40px 0 20px 0;font-weight:400;line-height:120%}.text-content h1{font-size:1.375em}.text-content h2{font-size:1.25em}.text-content h3{font-size:1.125em}.text-content h4{font-size:1.07em}.text-content h5{font-size:1em}.text-content h6{font-size:1em}.text-content ol,.text-content ul{-webkit-margin-start:20px;margin-inline-start:20px}.text-content li{list-style:disc outside;margin-top:0;margin-bottom:0}.form-content{position:relative}.signup-services-column h2{font-size:17px}.signup-services-column ul{margin:10px 0}.signup-services-column li:first-child{-webkit-margin-start:0;margin-inline-start:0}.signup-services-column li:last-child{-webkit-margin-end:0;margin-inline-end:0}.form-content .content-tabs-vertical{-webkit-margin-end:10px;margin-inline-end:10px;position:absolute;inset-inline-start:0;top:0}.form-content .content-tabs-vertical.position-fixed{position:fixed;inset-inline-start:auto;top:auto}.tabbed-input-column{-webkit-margin-start:200px;margin-inline-start:200px}.phablet .tabbed-input-column,.phone .tabbed-input-column{-webkit-margin-start:0;margin-inline-start:0}.account-link{position:relative}a.account-linked-profile{width:48px;height:48px;display:block}a.account-linked-profile img{width:100%;height:100%;display:block;border:0}.text-overflow-ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}html.menu-fullscreen-visible{overflow:hidden}#menu-fullscreen{position:fixed;left:0;top:0;bottom:0;right:0;height:100vh;height:100dvh;width:100vw;width:100dvw;overflow:auto}#menu-fullscreen>ul>li{display:block;float:none;border-bottom:0;margin:0!important;position:relative}#menu-fullscreen>ul>li .top-btn-text{padding:0 10px;background:inherit}#menu-fullscreen>ul>li .icon{-webkit-margin-end:7px;margin-inline-end:7px}#menu-fullscreen>ul>li .input-search .icon{-webkit-margin-end:0;margin-inline-end:0}#menu-fullscreen>ul>li a{text-decoration:none}#menu-fullscreen .input-search{margin:0;-webkit-margin-end:10px;margin-inline-end:10px;top:12px;width:auto}#menu-fullscreen .menu-fullscreen-show{display:block}#menu-fullscreen .menu-fullscreen-hide{display:none}body.upload-box-visible{margin-top:300px}body.upload-box-visible.no-margin-top{margin-top:280px}body.upload-box-visible .upload-box{display:block}.upload-box{clear:both;background:var(--bodyBackground)}.upload-box--fixed{position:fixed;left:0;right:0;z-index:200;background:var(--bodyBackground)}body:not(#upload) .upload-box--fixed{padding-top:50px;overflow:auto}.phone .upload-box--fixed{top:0;z-index:500;max-height:100%;overflow-y:auto;overflow-x:hidden}.upload-box--hidden{transform:translateY(-100%);top:-1px}.upload-box--show{transform:translateY(0)}.upload-box-inner{padding:40px 0;position:relative}.phone .upload-box-inner{padding:20px 0}.upload-box-inner .position-absolute{position:absolute;text-transform:uppercase;top:20px;line-height:20px}#upload .upload-box[data-queue-size="0"] .upload-box-heading,.phone .upload-box[data-queue-size="0"] .upload-box-heading{position:fixed;top:50%;left:0;right:0;transform:translateY(-50%);padding:10px}.upload-box-heading{text-align:center}.upload-box-heading .icon{font-size:100px;height:1em;display:inline-block;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;text-decoration:none;-webkit-tap-highlight-color:transparent}.upload-box-heading .heading,.upload-box-heading h2{font-size:26px;margin:10px 0;display:block}.upload-box-heading .heading a,.upload-box-heading h2 a{color:inherit;text-decoration:none}.upload-box-status-text{font-size:1em;line-height:1.4}.upload-box-allowed-files{inset-inline-start:0;font-size:11px;font-size:.79rem;color:var(--bodyTextSubtle)}.upload-box-close{text-decoration:none;inset-inline-end:0;font-size:11px;line-height:11px;font-size:.79rem;line-height:1em;color:var(--bodyText)}.tone-dark .upload-box-close{color:#ccc}.upload-box-close:hover{text-decoration:none}.upload-box-close a{color:inherit;text-decoration:none}.upload-box-close .btn-icon{font-size:.9em;display:inline}@media (min-width:340px){.upload-input-col{width:310px}}.page-not-found{border-radius:10px;background:var(--bodyEmpty);text-align:center;padding:30px;font-size:16px;margin-top:20px}.page-not-found h1{font-size:30px;margin-bottom:10px}.page-not-found .input-search{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:20px}.page-not-found .input-search .icon--search{font-size:20px;inset-inline-start:14px;top:8px}.page-not-found .input-search .icon--close{top:3px;inset-inline-end:6px}.page-not-found input.search{height:36px;width:100%;font-size:15px;-webkit-padding-end:30px;padding-inline-end:30px;-webkit-padding-start:40px;padding-inline-start:40px}.ie7 .page-not-found input.search,.ie8 .page-not-found input.search,.ie9 .page-not-found input.search{-webkit-padding-end:10px;padding-inline-end:10px;line-height:36px}.content-listing{overflow:hidden;position:relative;clear:both}.pad-content-listing{width:calc(100% + 10px);-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:relative}.list-item{display:inline-block}.js .content-listing{height:0}.js .jsly.content-listing{height:auto}.list-item .disabled-mask{width:100%;height:100%;position:absolute;top:0;inset-inline-start:0;background:rgba(255,255,255,.5);z-index:1}.list-item:hover .hover-display,.phablet .list-item .hover-display,.phone .list-item .hover-display{display:block}.list-item.masked:hover .hover-display{display:none}.list-item .hover-display,html.--idle .list-item .hover-display:not(.idle-display),html.--idle .list-item-image-tools>div{opacity:0;transition:all 350ms ease}html:not(.--idle) .list-item:hover .hover-display{opacity:1}.phablet .list-item .hover-display,.phone .list-item .hover-display{opacity:1;transition:none}.list-item-image{position:relative;display:block;overflow:hidden;min-height:260px;text-align:center;background:var(--bodyEmpty);content-visibility:auto;contain:layout style paint}.list-item-image .image-container{display:inline-block;text-align:center;vertical-align:bottom;text-decoration:none;font-size:64px;width:100%;height:100%}.js .list-item-image .image-container.--media{width:100%;height:100%}.list-item-image .image-container .media,.list-item-image .image-container img,.list-item-image .image-container svg,.list-item-image .image-container video{display:block;position:relative;width:100%!important;height:100%;-o-object-fit:cover;object-fit:cover}.list-item-image .image-container .icon.empty{font-size:.9em}.list-item-image .image-container .empty{color:var(--bodyText);text-decoration:none}.selected .list-item-image .image-container .icon.empty{color:#fff}.list-item-image-btn{padding:5px 8px 5px 28px;font-size:.93em;background:var(--bodyBackground);position:absolute;top:10px;cursor:pointer;border-radius:2px}.list-item-image-btn.list-image-like-btn{inset-inline-start:10px}.list-item-image-btn span{font-size:15px;position:absolute;inset-inline-start:8px;top:50%;margin-top:-8px}.ie7 .list-item-image-btn span{inset-inline-start:4px;top:2px}.list-item-image-btn:hover span{color:var(--colorAccent)}.list-item-image-btn.liked{background:var(--colorAccent);color:#fff;display:block}.list-item-image-btn.liked:hover{background:#d90000}.list-item-image-btn.liked:hover span.icon-like{font-size:11px;padding:0;inset-inline-start:10px;color:#fff;margin-top:-6px}.list-item-image-btn.liked:hover span.icon-like:before{content:"\e01f"}.list-item-desc-title{width:100%;height:100%;padding:0 10px;inset-inline-start:0;bottom:10px;text-decoration:none}.list-item-desc-title>*{padding-bottom:5px;margin-bottom:-2.5px;-webkit-padding-start:5px;padding-inline-start:5px;-webkit-margin-start:-5px;margin-inline-start:-5px}.list-item-from{bottom:0;line-height:1}.phablet .content-listing:not([data-list=users]).list-item-desc-title,.phone .content-listing:not([data-list=users]).list-item-desc-title{display:none}.list-item-desc-title--center-y{top:50%;transform:translateY(-50%)}.list-item-desc-title-link{font-size:1.1em;font-weight:600;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100%)}@media (min-width:320px){.list-item-desc-title-link{width:calc(100% - 20px)}}.list-item-title{padding-top:0;padding-bottom:0;font-weight:400;text-align:center;height:40px;overflow:hidden}.list-item-title,.list-item-title *{font-size:1em;line-height:40px}.list-item-title a{font-weight:400;color:var(--bodyText)}.list-item-alt{background:#f9f9f9}.list-item-desc-height{height:100%}.list-item-overflow{height:110%;overflow:hidden}.list-item-desc{width:100%;font-size:.93em;line-height:1;box-shadow:0 1px 0 rgba(0,0,0,.1),0 0 0 transparent;border-bottom:1px solid rgba(0,0,0,.2)}.list-item-desc a,.list-item-desc b,.list-item-desc strong,.list-item.masked:hover .list-item-desc a,.list-item.masked:hover .list-item-title a{color:inherit}.tone-dark .list-item-desc a,.tone-dark .list-item-desc b,.tone-dark .list-item-desc strong,.tone-dark .list-item.masked:hover .list-item-desc a,.tone-dark .list-item.masked:hover .list-item-title a{color:inherit}.list-item:hover .list-item-desc a,.list-item:hover .list-item-title a{color:var(--linkText)}.list-item-desc .user,.list-item-desc a.user img{border-radius:100%}.list-item-desc .user{float:left;margin-top:-20px;-webkit-margin-end:8px;margin-inline-end:8px;padding:3px;background:var(--bodyBackground);width:50px;height:50px}[dir=rtl] .list-item-desc .user{float:right}.tone-dark .list-item-desc .user{background:#101010}.list-item-desc .user:hover{background:var(--linkText)}.tone-dark .list-item-desc .user:hover{background:inherit}.phablet .content-listing[data-list=images] .list-item-desc,.phone .content-listing[data-list=images] .list-item-desc{display:none}.list-item-desc strong{display:block}.list-item-card{border-radius:3px;min-height:82px}.list-item-card .user-image{display:block}.list-item-thumbs-container{overflow:hidden}.list-item-thumbs{overflow:auto;background:#f9f9f9;width:101%;margin-top:2px;margin-bottom:0;-webkit-margin-start:-1px;margin-inline-start:-1px}.list-item-thumbs li{background:#f6f6f6;-webkit-border-end:1px solid;border-inline-end:1px solid;-webkit-border-start:1px solid;border-inline-start:1px solid;border-color:#fff;float:left}[dir=rtl] .list-item-thumbs li{float:right}.list-item-desc{color:inherit;background:0 0;border:0;box-shadow:none;text-shadow:1px 1px 5px rgba(0,0,0,.5);opacity:0;transition:all 350ms ease;bottom:5px;position:absolute}.desktop .list-item .list-item-desc,.laptop .list-item .list-item-desc,.largescreen .list-item .list-item-desc,.list-item:hover .list-item-desc,.phablet .list-item .list-item-desc,.phone .list-item .list-item-desc,.tablet .list-item .list-item-desc{opacity:1}.list-item-desc *,.list-item-desc a,.list-item:hover .list-item-desc a{color:var(--listItemText)}.list-item-desc .list-item-overflow{bottom:0;inset-inline-start:0;padding:10px;position:absolute;height:auto}.content-listing-loading,.content-listing-more{text-align:center;margin:20px 0}.content-listing-more{display:none}.content-listing-loading{height:32px}.content-listing-loading .loading-indicator{position:static}.content-listing-pagination{text-align:center;font-size:1.3em;padding:0;color:inherit;font-weight:400;margin-top:20px}.js .content-listing-pagination{display:none}.content-listing-pagination.visible{display:flex!important}.content-listing-pagination a{text-decoration:none;font-weight:inherit;color:inherit;padding:6px 10px;display:block;border-radius:4px}.content-listing-pagination li.pagination-prev{text-align:end}.content-listing-pagination li.pagination-next{text-align:start}.content-listing-pagination a:hover{color:var(--linkText);background:var(--bodyEmpty)}.content-listing-pagination a.current{color:inherit}.tone-dark .content-listing-pagination a.current{color:#fff}.tone-dark .content-listing-pagination a:hover{background:#1f1f1f}.phone .content-listing-pagination li.pagination-page{display:none}.content-listing-pagination li,.phone .content-listing-pagination li.pagination-page.pagination-current{display:inline-block}.content-listing-pagination li.pagination-next,.content-listing-pagination li.pagination-prev{flex-grow:4}.content-listing-pagination li.pagination-current{flex-grow:1}.content-listing-pagination .pagination-current a,.content-listing-pagination .pagination-current a:hover{color:inherit;background:initial;cursor:default}.pagination-disabled{visibility:hidden}.content-empty{padding:4em 2em;text-align:center;font-size:inherit;color:var(--bodyText)}.content-empty .icon{color:var(--bodyEmpty);font-size:90px;width:90px;height:90px;display:inline-block}.tone-dark .content-empty,.tone-dark .content-empty .icon{color:#444}.content-empty .message,.content-empty h2{font-size:16px;margin-top:10px;line-height:160%}.tone-dark .content-empty .message,.tone-dark .content-empty h2{color:#444}.sort-listing{display:none}.sort-listing .selection-count:before{content:" (";white-space:pre}.sort-listing .selection-count:after{content:")"}.disabled.sort-listing .selection-count:after,.disabled.sort-listing .selection-count:before{display:none}.user-image{display:inline-block}.user-image path{fill:red}.user-image,.user-image img{display:block;border-radius:3px}.default-user-image{color:var(--bodyText);text-align:center;position:relative;border-radius:100%;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:var(--backgroundLightAlpha)}.checkered-background{background-image:linear-gradient(45deg,rgba(0,0,0,.1) 25%,transparent 25%),linear-gradient(135deg,rgba(0,0,0,.1) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(0,0,0,.1) 75%),linear-gradient(135deg,transparent 75%,rgba(0,0,0,.1) 75%);background-size:25px 25px;background-position:0 0,12.5px 0,12.5px -12.5px,0 12.5px}.default-user-image .icon{color:inherit;position:absolute;inset-inline-start:50%;top:50%;display:block;line-height:100%;font-size:1em;width:1em;height:1em;-webkit-margin-start:-.5em;margin-inline-start:-.5em;margin-top:-.5em}.default-user-image.size-70,img.user-image.size-70{width:70px;height:70px}.default-user-image.size-70 .icon{font-size:38px;-webkit-margin-start:-19px;margin-inline-start:-19px;margin-top:-19px}.default-user-image.size-60,img.user-image.size-60{width:60px;height:60px}.default-user-image.size-60 .icon{font-size:32px;-webkit-margin-start:-16px;margin-inline-start:-16px;margin-top:-16px}.default-user-image.size-40,img.user-image.size-40{width:40px;height:40px}.default-user-image.size-40 .icon{font-size:22px;-webkit-margin-start:-11px;margin-inline-start:-11px;margin-top:-11px}.user-social-networks{font-size:1em}.user-social-networks,.user-social-networks a{text-decoration:none;color:var(--bodyTextSubtle)}.user-social-networks a{padding:2px}.user-social-networks a:hover{color:var(--bodyText)}.top-user{position:relative;height:110px;margin-top:10px;margin-bottom:10px;height:auto}.phablet .top-user,.tablet .top-user,.top-user.no-background{min-height:160px}.top-user>div{position:absolute;top:0}.top-user .top-user-credentials{position:static;-webkit-padding-end:220px;padding-inline-end:220px;clear:both;overflow:visible}.top-user.user-has-no-background .top-user-credentials{overflow:auto}.phone .top-user .top-user-credentials{-webkit-padding-end:0;padding-inline-end:0;-webkit-padding-start:0;padding-inline-start:0;width:100%;margin-bottom:10px;text-align:center;margin-top:-160px}.top-user-avatar{font-size:160px}.desktop .top-user:not(.no-background) .top-user-avatar,.laptop .top-user:not(.no-background) .top-user-avatar{position:absolute;left:50%;-webkit-margin-start:calc(-.5em - 10px);margin-inline-start:calc(-.5em - 10px);top:-.5em}.phablet .top-user .user-image,.tablet .top-user .user-image{border:0;-webkit-margin-end:10px;margin-inline-end:10px}.top-user .user-image{font-size:1em;width:1em;height:1em;float:left;border-radius:100%}.top-user:not(.no-background) .user-image{border:10px solid var(--bodyBackground)}.top-user:not(.no-background) img.user-image{background:var(--bodyBackground);border:10px solid transparent;box-sizing:content-box;background:rgb(255 255 255 / 10%);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.phablet .top-user:not(.no-background) .user-image,.tablet .top-user:not(.no-background) .user-image{border:0}.top-user.no-background .user-image{-webkit-margin-end:10px;margin-inline-end:10px}.phone .top-user.no-background .top-user-credentials{margin-top:initial}.phone .top-user .top-user-credentials>a{display:inline-block}.top-user .header-content-right{inset-inline-end:0}.top-user .header-content-right>*{margin-bottom:10px}.top-user .header-content-right>:last-child{margin-bottom:0}.phone .top-user .header-content-right{position:relative}.phone .top-user .header-content-right>div{margin:10px auto;text-align:center}.phone .top-user .input-search{position:relative;top:auto}.phone .top-user .input-search form{position:relative}.phone .top-user .number-figures{line-height:28px}.top-user h1{font-size:26px;font-weight:700;margin-bottom:5px;margin-top:10px;color:var(--bodyText)}.no-margin-top .top-user h1,.phone .top-user h1{margin-top:0}.top-user h1 a{color:inherit;text-decoration:none}.top-user .user-meta{margin-bottom:10px}.user-meta .icon--lock{-webkit-margin-end:5px;margin-inline-end:5px}[dir=rtl] .top-user .user-image{float:right}.phone .top-user .user-image{float:none;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-bottom:10px}.phone body.no-margin-top .top-user .user-image{margin-top:10px}.top-user .user-image.no-border{border:none}.top-user .number-figures{margin-top:0}.user-card.avatar{-webkit-padding-start:70px;padding-inline-start:70px}.user-card.no-avatar{-webkit-padding-start:0;padding-inline-start:0}.user-card .or-separator{margin-top:5px;margin-bottom:5px}.user-card .user-link{font-size:.93em}.user-card-header h2{font-size:15px;font-weight:400;margin-top:0;margin-bottom:2px}.user-card-header h2 a{color:inherit;text-decoration:none}.tone-dark .user-card-header h2 a{color:#fff}.user-card-header div{color:var(--bodyTextSubtle)}.user-card-footer{overflow:hidden}.user-card-footer .user-social-networks{margin-top:3px}.top-user .input-search .icon--close{top:4px;inset-inline-end:8px}.ad-space{text-align:center}.ad-margin-vertical{margin-top:20px;margin-bottom:20px}.ad-margin-horizontal{-webkit-margin-start:20px;margin-inline-start:20px;-webkit-margin-end:20px;margin-inline-end:20px}[role=menu]{position:relative;overflow:visible}.menu-box,[role=menu]>.menu-box{z-index:300}[role=menu]>.menu-box{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;max-height:10px;display:block;visibility:hidden;transition:350ms all ease-in-out;opacity:0;transform:translateY(-5px);transform-origin:top;max-height:100vh;max-height:100dvh}[role=menu].opened>.menu-box{visibility:visible;opacity:1;transform:translateY(0)}@media (min-width:768px){[role=menu]>.menu-box{transition:none}}.menu-box{border:0}.menu-box,.menu-box .menu-box-sub>.sub,.menu-box .menu-box-sub>ul{background:var(--bodyBackground);border-radius:3px;box-shadow:0 0 15px 0 rgba(0,0,0,.2);color:var(--bodyText);font-size:14px;font-weight:400;position:absolute;top:100%;list-style:none;min-width:190px;padding:0;margin:0}.menu-box--static{position:static;max-width:190px}.menu-box :not(a),.menu-box [role*=button]{color:var(--bodyText)}.tone-dark .menu-box :not(a),.tone-dark .menu-box [role*=button]{color:#fff}.menu-box ul{margin:0;padding:0}.float-left .menu-box,.pull-left .menu-box,menu-box.anchor-left{inset-inline-start:0}.float-right .menu-box,.menu-box--anchor-right,.pull-right .menu-box{inset-inline-end:0}.menu-box .separator,.menu-box [role=separator],.menu-box hr{display:block;margin:0;padding:0;height:0;border:0;border-top:1px solid #ebebeb}.menu-box--border-separators>*{border-bottom:1px solid #ebebeb}.menu-box--border-separators>:last-child{border-bottom:0}.menu-box--border-separators>hr{display:none}.menu-box .sub,.menu-box [role*=button],.menu-box [role=box],.menu-box li{padding:10px;list-style:none;position:relative;line-height:1.4;clear:both;min-height:40px;display:block}.menu-box [role=box]{cursor:default}.menu-box [role*=button]{-webkit-padding-start:35px;padding-inline-start:35px;-webkit-border-start:2px solid transparent;border-inline-start:2px solid transparent;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:start}.menu-box--multiline [role*=button]{white-space:normal}.menu-box--noicons li:not([role=button]){-webkit-padding-start:0;padding-inline-start:0}.menu-box--noicons [role=button]{-webkit-padding-start:10px;padding-inline-start:10px;color:inherit}.menu-box [role=button]:hover{border-left-color:#a66bbe}.menu-box .disabled[role=button]{cursor:not-allowed;background:0 0;border-color:transparent!important;opacity:.5}.menu-box li.menu-box-sub{-webkit-padding-end:34px;padding-inline-end:34px}.menu-box .menu-box-sub>.sub,.menu-box .menu-box-sub>ul{display:none}.menu-box .menu-box-sub:hover>.sub,.menu-box .menu-box-sub:hover>ul{display:block}.menu-box [role*=button]>.icon,.menu-box li>.icon{font-size:16px;width:16px;height:16px;text-align:center;position:absolute;inset-inline-start:8px;top:50%;margin-top:-8px}.menu-box .menu-box-sub>.icon{inset-inline-start:auto;inset-inline-end:10px}.menu-box .menu-box-sub .sub,.menu-box .menu-box-sub ul{cursor:default;position:absolute;top:0;inset-inline-start:100%}.menu-box .meta{font-size:.93em;display:block}.menu-box .empty{font-size:1em;text-align:center;padding:40px 20px}.menu-box .empty>.icon{font-size:64px;margin-bottom:10px;display:block;color:#ebebeb;position:static}.arrow-navigator a{color:var(--colorAccent);display:block;text-decoration:none;text-align:center;height:40px;width:40px;position:absolute;top:50%;margin-top:-20px;opacity:.7;padding:10px}.arrow-navigator a.disabled{display:none}.arrow-navigator a:hover{opacity:1}.arrow-navigator a span{display:inline-block;font-size:20px;width:1em;height:1em;text-align:center}.growl{color:var(--alertText);font-size:1.1em;line-height:1.2;background:var(--alertBackground);padding:1em;-webkit-padding-end:2em;padding-inline-end:2em;text-align:center;overflow:visible;position:fixed;width:500px;inset-inline-start:50%;top:45px;z-index:9999;cursor:default;-webkit-border-start:5px solid var(--alertAccent);border-inline-start:5px solid var(--alertAccent);box-shadow:0 0 15px 5px rgba(0,0,0,.15);border-radius:4px;-webkit-margin-start:-250px;margin-inline-start:-250px}.growl:empty{display:none}.phone .growl{left:10px;right:10px;width:auto;-webkit-margin-start:auto;margin-inline-start:auto}.growl.static{-webkit-margin-start:auto;margin-inline-start:auto;position:static;-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;box-shadow:none;z-index:initial;margin:auto;width:auto}.growl.static.inline{margin:initial;text-align:start;display:inline-block;-webkit-padding-end:1em;padding-inline-end:1em;-webkit-padding-start:1em;padding-inline-start:1em}.growl .icon{font-size:14px;text-align:center;position:absolute;inset-inline-end:5px;top:7px;cursor:pointer;padding:10px;color:var(--alertText)}.growl-debug-message{text-align:start}.growl-debug-trace{overflow-x:auto;font-size:80%;margin-top:10px}.growl-debug-status{font-style:italic;margin-top:10px;margin-bottom:10px}.flex-center{margin:auto}.width-full{width:100%}.height-full{height:100%}.width-min-full{min-width:100%}.height-min-full{min-height:100%}.fullscreen{position:fixed;top:0;inset-inline-start:0;width:100%;height:100%;overflow:auto;z-index:1000;opacity:0;transition:opacity 350ms linear}.fullscreen.black,.fullscreen.white{-webkit-backdrop-filter:blur(35px) saturate(1.8);backdrop-filter:blur(35px) saturate(1.8)}.black-bkg,.fullscreen.black{background:var(--backgroundDarkAlpha)}.fullscreen.white,.white-bkg{background:var(--backgroundLightAlpha)}.fullscreen.soft-white,.soft-white-bkg{background:rgba(255,255,255,.6)}.ie9 .fullscreen{-webkit-filter:none;filter:none}.fullscreen-loader{width:150px;height:150px;text-align:center;border-radius:10px;color:#fff;margin-top:-75px;-webkit-margin-start:-75px;margin-inline-start:-75px;position:absolute;top:50%;inset-inline-start:50%;zoom:1}.loading-txt{position:absolute;bottom:15px;inset-inline-start:0;text-align:center;width:100%}#fullscreen-modal{display:none}#fullscreen-modal.--show{display:grid;align-items:center}.ie9 #fullscreen-modal{-webkit-filter:none;filter:none}#fullscreen-modal-box{width:670px;margin:0 auto;padding:20px;position:relative;box-shadow:0 0 50px 6px rgba(0,0,0,.25);border-radius:10px;background:var(--modalBackground);color:var(--modalText)}.--has-scrollbar #fullscreen-modal-box{border-radius:0}.phone #fullscreen-modal-box{width:100%;margin:0;max-height:100%;-webkit-overflow-scrolling:touch;border-radius:0;padding:20px}#fullscreen-modal-box .modal-box-title,#fullscreen-modal-box h1{display:block;margin-top:0;margin-bottom:20px;font-size:20px;line-height:1.2;-webkit-padding-end:32px;padding-inline-end:32px}#fullscreen-modal-box h2{font-size:1.14em}#fullscreen-modal-box h2 *{font-weight:400}#fullscreen-modal-box .or-separator{margin-top:16px}#fullscreen-modal-box p{font-size:1em;line-height:160%;margin-top:10px;margin-bottom:10px}#fullscreen-modal-box p:firt-child{margin-top:0}#fullscreen-modal-box .btn-container{margin-bottom:0}#fullscreen-modal-box .close-modal.icon--close{position:absolute;inset-inline-end:10px;top:15px;cursor:pointer;display:block;padding:10px}.phone #fullscreen-modal-box .close-modal.icon--close,.phone #fullscreen-modal-box .close-modal.icon--close:hover{inset-inline-end:10px}.modal-form textarea{height:70px;resize:none}.fancy-box{padding:20px;background:var(--bodyBackground);box-shadow:0 0 50px 6px rgb(0 0 0 / 25%);border-radius:10px}.fancy-box p{-webkit-margin-before:1em;margin-block-start:1em;-webkit-margin-after:1em;margin-block-end:1em}.fancy-box .or-separator{height:1px;margin:0}#fullscreen-changes-confirm{background:var(--bodyBackground);padding:40px 0;margin-top:75px;position:absolute;text-align:center;top:50%;width:100%;box-shadow:0 4px 16px rgba(0,0,0,.25)}.tone-dark #fullscreen-changes-confirm{background:#1e1e1e}#fullscreen-changes-confirm h2{font-size:18px;line-height:18px;color:inherit}.fullscreen-viewer{background:#000;background:rgba(0,0,0,.9);color:#bbb;display:none}.fullscreen-viewer-top{height:50px;width:100%;background:#000}.fullscreen-viewer-navigation,.fullscreen-viewer-top-user{margin-top:8px}.fullscreen-viewer-top-user img{width:34px;height:34px;-webkit-margin-end:10px;margin-inline-end:10px}.fullscreen-viewer-navigation{font-size:16px;font-size:1.143rem;height:26px;position:relative;z-index:100}.fullscreen-viewer-navigation a{display:inline-block;color:#bbb;color:rgba(255,255,255,.7);text-decoration:none;padding:8px}.fullscreen-viewer-navigation a:hover{color:#fff}.fullscreen-viewer-navigation a.disabled{color:#bbb;color:rgba(255,255,255,.4);cursor:default}.fullscreen-viewer-content{text-align:center;height:100%;position:relative;display:none}.fullscreen-viewer-content img{max-width:100%;max-height:100%;box-shadow:0 0 6px 0 #000}#cookie-law-banner{position:fixed;padding:10px;width:100%;bottom:0;background:rgba(0,0,0,.8);color:#fff;font-size:1.2em;z-index:1000}#cookie-law-banner p{-webkit-padding-end:20px;padding-inline-end:20px}a.cookie-law-close{color:inherit;text-decoration:none;position:absolute;inset-inline-end:0;top:3px;font-size:.72em;opacity:.5}a.cookie-law-close:hover{opacity:1}.badge--paid{text-transform:uppercase;text-align:center;border-radius:3px;padding:2px 5px;display:inline-block;line-height:1;border:1px solid var(--buttonDefaultBorder);color:var(--buttonDefaultHoverText);background-color:var(--buttonDefaultHoverBackground);border-color:var(--buttonDefaultHoverBorder);font-weight:400}.pop-box-menu li .badge{position:absolute;inset-inline-end:8px;top:8px}.badge{vertical-align:text-bottom;font-size:.7143em;transform-origin:right;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.badge+label,.btn .badge{-webkit-margin-start:5px;margin-inline-start:5px}.pop-box-menu li.paid a{-webkit-padding-end:52px;padding-inline-end:52px}.r1{height:30px}.r2{height:70px}.r3{height:110px}.r4{height:150px}.r5{height:190px}.r6{height:230px}.r7{height:270px}.r8{height:310px}.r9{height:350px}.r10{height:390px}.r11{height:430px}.r12{height:470px}.r13{height:510px}.r14{height:550px}.r15{height:590px}.r16{height:630px}.r17{height:670px}.r18{height:710px}.r19{height:750px}.r20{height:790px}.r11{height:830px}.r22{height:870px}.r23{height:910px}.r24{height:950px}.columns-container{overflow:auto}.grid-columns{display:block;float:left}[dir=rtl] .grid-columns{float:right}.gutter-margin-right,.gutter-margin-right-bottom{-webkit-margin-end:1px;margin-inline-end:1px}.gutter-margin-bottom,.gutter-margin-left-bottom,.gutter-margin-right-bottom{margin-bottom:1px}.gutter-margin-left,.gutter-margin-left-bottom{-webkit-margin-start:1px;margin-inline-start:1px}.gutter-width{width:5px}.col-1-min{min-width:30px}.col-2-min{min-width:70px}.col-3-min{min-width:110px}.col-4-min{min-width:150px}.col-5-min{min-width:190px}.col-6-min{min-width:230px}.col-7-min{min-width:270px}.col-8-min{min-width:310px}.col-9-min{min-width:350px}.col-10-min{min-width:390px}.col-11-min{min-width:430px}.col-12-min{min-width:470px}.col-13-min{min-width:510px}.col-14-min{min-width:550px}.col-15-min{min-width:590px}.col-16-min{min-width:630px}.col-17-min{min-width:670px}.col-18-min{min-width:710px}.col-19-min{min-width:750px}.col-20-min{min-width:790px}.col-21-min{min-width:830px}.col-22-min{min-width:870px}.col-23-min{min-width:910px}.col-24-min{min-width:950px}.col-1-max{max-width:30px}.col-2-max{max-width:70px}.col-3-max{max-width:110px}.col-4-max{max-width:150px}.col-5-max{max-width:190px}.col-6-max{max-width:230px}.col-7-max{max-width:270px}.col-8-max{max-width:310px}.col-9-max{max-width:350px}.col-10-max{max-width:390px}.col-11-max{max-width:430px}.col-12-max{max-width:470px}.col-13-max{max-width:510px}.col-14-max{max-width:550px}.col-15-max{max-width:590px}.col-16-max{max-width:630px}.col-17-max{max-width:670px}.col-18-max{max-width:710px}.col-19-max{max-width:750px}.col-20-max{max-width:790px}.col-21-max{max-width:830px}.col-22-max{max-width:870px}.col-23-max{max-width:910px}.col-24-max{max-width:950px}@media (min-width:768px){.c1{width:30px}.c2{width:70px}.c3{width:110px}.c4{width:150px}.c5{width:190px}.c6{width:230px}.c7{width:270px}.c8{width:310px}.c9{width:350px}.c10{width:390px}.c11{width:430px}.c12{width:470px}.c13{width:510px}.c14{width:550px}.c15{width:590px}.c16{width:630px}.c17{width:670px}.c18{width:710px}.fluid-column.c1{width:3.157%}.fluid-column.c2{width:7.368%}.fluid-column.c3{width:11.578%}.fluid-column.c4{width:15.789%}.fluid-column.c5{width:20%}.fluid-column.c6{width:24.21%}.fluid-column.c7{width:28.421%}.fluid-column.c8{width:32.631%}.fluid-column.c9{width:36.842%}.fluid-column.c10{width:41.052%}.fluid-column.c11{width:45.263%}.fluid-column.c12{width:49.473%}.fluid-column.c13{width:53.684%}.fluid-column.c14{width:57.894%}.fluid-column.c15{width:62.105%}.fluid-column.c16{width:66.315%}.fluid-column.c17{width:70.526%}.fluid-column.c18{width:74.736%}}@media (min-width:992px){.content-width{width:100%;min-width:970px}.c19{width:750px}.c20{width:790px}.c21{width:830px}.c22{width:870px}.c23{width:910px}.c24{width:950px}.fluid-column.c19{width:78.947%}.fluid-column.c20{width:83.157%}.fluid-column.c21{width:87.368%}.fluid-column.c22{width:91.578%}.fluid-column.c23{width:95.789%}.fluid-column.c24{width:100%}.top-btn-text .btn-text{-webkit-margin-start:7px;margin-inline-start:7px}.pop-box .arrow-down{border-width:6px 6px 0 6px}}@media (min-width:992px) and (max-width:1920px){.content-width{max-width:1800px}}@media (min-width:1921px) and (max-width:2560px){.content-width{max-width:2440px}}@media (min-width:3840px){.content-width{max-width:3720px}}.color-body-text-subtle{color:var(--bodyTextSubtle)}.color-accent{color:var(--colorAccent)}.color-success{color:var(--colorSuccess)}.color-fail{color:var(--colorFail)}.color-white{color:#fff!important}.color-black{color:#333!important}.color-grey{color:#ccc!important}.color-green{color:#27ae61!important}.color-red{color:#e74c3c!important}.color-blue{color:var(--colorBlue)!important}.color-orange{color:#d35400!important}.color-purple{color:#8e44ad!important}.color-inherit{color:inherit!important}.color-initial{color:initial!important}.height-auto{height:auto}.width-auto{width:auto}.height-100p{height:100%}.width-100p{width:100%}.color-facebook{color:#3b5998}.color-twitter{color:#1da1f2}.color-google{color:#ea4335}.color-vk{color:#45668e}.border-color-facebook{border-color:#3b5998}.border-color-twitter{border-color:#1da1f2}.border-color-google{border-color:#ea4335}.border-color-vk{border-color:#45668e}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.opacity-100{opacity:1}.background-black{background:#000!important}.background-white{background:#fff!important}.background-transparent{background:0 0!important}.background-gradient-white-left{background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,1) 35%,rgba(255,255,255,1) 100%)}.background-gradient-white-right{background:linear-gradient(to right,rgba(255,255,255,1) 0,rgba(255,255,255,1) 80%,rgba(255,255,255,0) 100%)}.font-weight-bold{font-weight:700!important}.font-weight-normal{font-weight:400!important}.cursor-pointer{cursor:pointer!important}.cursor-grab{cursor:-webkit-grab;cursor:grab}.cursor-grabbing{cursor:-webkit-grabbing;cursor:grabbing}.cursor-default{cursor:default!important}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.font-size-small{font-size:small!important}.font-size-medium{font-size:medium!important}.font-size-large{font-size:large!important}.font-size-inherit{font-size:inherit!important}.font-size-10{font-size:10px!important}.font-size-11{font-size:11px!important}.font-size-12{font-size:12px!important}.font-size-13{font-size:13px!important}.font-size-14{font-size:14px!important}.font-size-15{font-size:15px!important}.font-size-16{font-size:16px!important}.font-size-17{font-size:17px!important}.font-size-18{font-size:18px!important}.height-100p{height:100%!important}.height-120p{height:120%!important}.top-0{top:0}.top-10{top:10px}.top-20{top:20px}.top-30{top:30px}.top-40{top:40px}.right-0{inset-inline-end:0}.right-10{inset-inline-end:10px}.right-20{inset-inline-end:20px}.right-30{inset-inline-end:30px}.right-40{inset-inline-end:40px}.bottom-0{bottom:0}.bottom-10{bottom:10px}.bottom-20{bottom:20px}.bottom-30{bottom:30px}.bottom-40{bottom:40px}.left-0{inset-inline-start:0}.left-10{inset-inline-start:10px}.left-20{inset-inline-start:20px}.left-30{inset-inline-start:30px}.left-40{inset-inline-start:40px}.display-none{display:none}.display-none-forced{display:none!important}.display-block{display:block}.display-block-forced{display:block!important}.display-flex{display:-moz-flex;display:flex}.visibility-hidden{visibility:hidden}.clear-both{clear:both}.float-left{float:left}[dir=rtl] .float-left{float:right}.float-right{float:right}[dir=rtl] .float-right{float:left}.border-0,.no-border{border:none}.border-top-0{border-top:0}.border-right-0{-webkit-border-end:0;border-inline-end:0}.border-bottom-0{border-bottom:0}.border-left-0{-webkit-border-start:0;border-inline-start:0}.box-shadow-none{box-shadow:none}.word-break-break-all{word-break:break-all}.word-break-break-word{word-break:break-word}.margin-0{margin:0!important}.margin-5{margin:5px!important}.margin-10{margin:10px!important}.margin-20{margin:20px!important}.margin-30{margin:20px!important}.margin-40{margin:20px!important}.margin-top-0,.phablet .phablet-margin-top-0,.phone .phone-margin-top-0{margin-top:0!important}.margin-top-5,.phablet .phablet-margin-top-5,.phone .phone-margin-top-5{margin-top:5px!important}.margin-top-10,.phablet .phablet-margin-top-10,.phone .phone-margin-top-10{margin-top:10px!important}.margin-top-20,.phablet .phablet-margin-top-20,.phone .phone-margin-top-20{margin-top:20px!important}.margin-top-30{margin-top:30px!important}.margin-top-40{margin-top:40px!important}.margin-right-auto{-webkit-margin-end:auto!important;margin-inline-end:auto!important}.margin-right-0,.phablet .phablet-margin-right-0,.phone .phone-margin-right-0{-webkit-margin-end:0!important;margin-inline-end:0!important}.margin-right-035em{-webkit-margin-end:.35em!important;margin-inline-end:.35em!important}.margin-right-5{-webkit-margin-end:5px!important;margin-inline-end:5px!important}.margin-right-10{-webkit-margin-end:10px!important;margin-inline-end:10px!important}.margin-right-20{-webkit-margin-end:20px!important;margin-inline-end:20px!important}.margin-right-30{-webkit-margin-end:30px!important;margin-inline-end:30px!important}.margin-right-40{-webkit-margin-end:40px!important;margin-inline-end:40px!important}.margin-bottom-0,.phablet .phablet-margin-bottom-0,.phone .phone-margin-bottom-0{margin-bottom:0!important}.margin-bottom-5{margin-bottom:5px!important}.margin-bottom-10,.phablet .phablet-margin-bottom-10,.phone .phone-margin-bottom-10{margin-bottom:10px!important}.margin-bottom-20,.phablet .phablet-margin-bottom-20,.phone .phone-margin-bottom-20{margin-bottom:20px!important}.margin-bottom-30{margin-bottom:30px!important}.margin-bottom-40{margin-bottom:40px!important}.margin-left-auto{-webkit-margin-start:auto!important;margin-inline-start:auto!important}.margin-left-0,.phablet .phablet-margin-left-0,.phone .phone-margin-left-0{-webkit-margin-start:0!important;margin-inline-start:0!important}.margin-right--10{-webkit-margin-end:-10px!important;margin-inline-end:-10px!important}.margin-left--10{-webkit-margin-start:-10px!important;margin-inline-start:-10px!important}.margin-left-5{-webkit-margin-start:5px!important;margin-inline-start:5px!important}.margin-left-10{-webkit-margin-start:10px!important;margin-inline-start:10px!important}.margin-left-20{-webkit-margin-start:20px!important;margin-inline-start:20px!important}.margin-left-30{-webkit-margin-start:30px!important;margin-inline-start:30px!important}.margin-left-40{-webkit-margin-start:40px!important;margin-inline-start:40px!important}.padding-5{padding:5px!important}.padding-10{padding:10px!important}.padding-20{padding:20px!important}.padding-30{padding:20px!important}.padding-40{padding:20px!important}.padding-top-5{padding-top:5px!important}.padding-top-0{padding-top:0!important}.padding-top-10{padding-top:10px!important}.padding-top-20{padding-top:20px!important}.padding-top-30{padding-top:30px!important}.padding-top-40{padding-top:40px!important}.padding-right-5{-webkit-padding-end:5px!important;padding-inline-end:5px!important}.padding-right-0{-webkit-padding-end:0!important;padding-inline-end:0!important}.padding-right-10{-webkit-padding-end:10px!important;padding-inline-end:10px!important}.padding-right-20{-webkit-padding-end:20px!important;padding-inline-end:20px!important}.padding-right-30{-webkit-padding-end:30px!important;padding-inline-end:30px!important}.padding-right-40{-webkit-padding-end:40px!important;padding-inline-end:40px!important}.padding-bottom-5{padding-bottom:5px!important}.padding-bottom-0{padding-bottom:0!important}.padding-bottom-10{padding-bottom:10px!important}.padding-bottom-20{padding-bottom:20px!important}.padding-bottom-30{padding-bottom:30px!important}.padding-bottom-40{padding-bottom:40px!important}.padding-left-5{-webkit-padding-start:5px!important;padding-inline-start:5px!important}.padding-left-0{-webkit-padding-start:0!important;padding-inline-start:0!important}.padding-left-10{-webkit-padding-start:10px!important;padding-inline-start:10px!important}.padding-left-20{-webkit-padding-start:20px!important;padding-inline-start:20px!important}.padding-left-30{-webkit-padding-start:30px!important;padding-inline-start:30px!important}.padding-left-40{-webkit-padding-start:40px!important;padding-inline-start:40px!important}.position-sticky{position:-webkit-sticky;position:sticky}.position-static{position:static}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.text-align-left{text-align:start}.text-align-center{text-align:center}.text-align-right{text-align:end}.text-align-justify{text-align:justify}.text-decoration-none{text-decoration:none!important}.display-block{display:block}.display-inline{display:inline}.display-inline-table{display:inline-table}.display-inline-block{display:inline-block}.display-table-cell{display:table-cell}.word-break-break-all{word-break:break-all}.list-style-position-inside li{list-style-position:inside!important}.list-style-position-outside li{list-style-position:outside!important}.list-style-type-disc li{list-style-type:disc!important}.list-style-type-decimal li{list-style-type:decimal!important}.center-box{-webkit-margin-end:auto!important;margin-inline-end:auto!important;-webkit-margin-start:auto!important;margin-inline-start:auto!important}.display-inline-block,.display-table-cell{zoom:1}.vertical-align-middle{vertical-align:middle!important}.resize-vertical{resize:vertical!important}.no-resize,.resize-none{resize:none!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-y-auto{overflow-y:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-y-visible{overflow-y:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-scroll{overflow-y:scroll!important}.text-transform-capitalize{text-transform:capitalize}.text-transform-uppercase{text-transform:uppercase}.default-margin-top{margin-top:20px}.default-margin-bottom{margin-bottom:20px}.float-none{float:none!important;clear:both!important}.desktop .desktop-hide,.laptop .laptop-hide,.largescreen .desktop-hide,.phablet .phablet-hide,.phone .phone-hide,.tablet .tablet-hide{display:none!important}.desktop .desktop-display-block,.desktop .desktop-show,.laptop .laptop-display-block,.laptop .laptop-show,.largescreen .desktop-display-block,.largescreen .desktop-show,.phablet .phablet-display-block,.phablet .phablet-show,.phone .phone-display-block,.phone .phone-show,.tablet .tablet-display-block,.tablet .tablet-show{display:block!important}.desktop .desktop-display-inline,.laptop .laptop-display-inline,.phablet .phablet-display-inline,.phone .phone-display-inline,.tablet .tablet-display-inline{display:inline!important}.desktop .desktop-display-inline-block,.laptop .laptop-display-inline-block,.phablet .phablet-display-inline-block,.phone .phone-display-inline-block,.tablet .tablet-display-inline-block{display:inline-block!important}.image-responsive{max-width:100%!important;width:auto!important}.desktop .desktop-float-none,.laptop .laptop-float-none,.phablet .phablet-float-none,.phone .phone-float-none,.tablet .tablet-float-none{float:none;clear:both}.phablet .grid-columns,.phone .grid-columns{float:none;-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:0;margin-inline-end:0}.phablet .phablet-float-left,.phone .phone-float-left{float:left!important}[dir=rtl].phablet .phablet-float-left,[dir=rtl].phone .phone-float-left{float:right!important}.phablet .phablet-c1,.phone .fluid-column.phablet-c1,.phone .fluid-column.phone-c1,.phone .phone-c1{width:100%}.phablet .phablet-text-align-left,.phone .phone-text-align-left{text-align:left!important}.phablet .phablet-text-align-center,.phone .phone-text-align-center{text-align:center!important}#tiptip_holder{display:none;position:absolute;top:0;inset-inline-start:0;z-index:99999}#tiptip_holder.tip_top{padding-bottom:5px}#tiptip_holder.tip_bottom{padding-top:5px}#tiptip_holder.tip_right{-webkit-padding-start:5px;padding-inline-start:5px}#tiptip_holder.tip_left{-webkit-padding-end:5px;padding-inline-end:5px}#tiptip_content{font-size:12px;color:#fff;padding:6px 8px;background-color:#333;background-color:rgba(0,0,0,.8);word-break:break-word}#tiptip_arrow,#tiptip_arrow_inner{position:absolute;border-color:transparent;border-style:solid;border-width:6px;height:0;width:0}#tiptip_holder.tip_top #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-7px;margin-inline-start:-7px;border-top-color:#333;border-top-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_top #tiptip_arrow_inner{border-top-color:#fff;border-top-color:rgba(255,255,255,.95)}#tiptip_holder.tip_bottom #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-7px;margin-inline-start:-7px;border-bottom-color:#333;border-bottom-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_bottom #tiptip_arrow_inner{border-bottom-color:#fff;border-bottom-color:rgba(255,255,255,.95)}#tiptip_holder.tip_right #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-6px;margin-inline-start:-6px;border-right-color:#333;border-right-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_right #tiptip_arrow_inner{border-right-color:#fff;border-right-color:rgba(255,255,255,.95)}#tiptip_holder.tip_left #tiptip_arrow_inner{margin-top:-6px;-webkit-margin-start:-6px;margin-inline-start:-6px;border-left-color:#333;border-left-color:rgba(0,0,0,.8)}.tone-dark #tiptip_holder.tip_left #tiptip_arrow_inner{border-left-color:#fff;border-left-color:rgba(255,255,255,.95)}.antiscroll-wrap{display:block;position:relative;overflow:hidden}.antiscroll-scrollbar{background:gray;background:rgba(0,0,0,.5);border-radius:7px;box-shadow:0 0 1px #fff;position:absolute;opacity:0;-webkit-transition:linear 350ms opacity;-moz-transition:linear 350ms opacity;-o-transition:linear 350ms opacity}.antiscroll-scrollbar-shown{opacity:1}.antiscroll-scrollbar-horizontal{height:7px;-webkit-margin-start:2px;margin-inline-start:2px;bottom:2px;inset-inline-start:0}.antiscroll-scrollbar-vertical{width:7px;margin-top:2px;inset-inline-end:2px;top:0}.antiscroll-inner{overflow:scroll}.antiscroll-inner::-webkit-scrollbar{width:0;height:0}.antiscroll-inner::scrollbar{width:0;height:0}#recaptcha_table.recaptcha_theme_clean #recaptcha_image{border:0!important}#recaptcha_response_field{height:auto}.copy-hover-display button.copy-input,.copy-hover-display button.input-action{visibility:hidden}.copy-hover-display:hover button.copy-input,.copy-hover-display:hover button.input-action,.phablet button.copy-input,.phablet button.input-action,.phone button.copy-input,.phone button.input-action{visibility:visible}button.copy-input,button.input-action{position:absolute;inset-inline-end:7px;top:.8181em;text-transform:uppercase;cursor:pointer;line-height:1;font-size:11px;padding:4px 6px;border-radius:4px;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}button.copy-input,button.input-action{background:var(--buttonDefaultBackground);color:var(--buttonDefaultText)}button:hover.copy-input,button:hover.input-action{background:var(--buttonDefaultHoverBackground);color:var(--buttonDefaultHoverText)}.shake{-webkit-animation:shake .82s cubic-bezier(.36,.07,.19,.97) both;animation:shake .82s cubic-bezier(.36,.07,.19,.97) both}@-webkit-keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.key-feedback{line-height:1;background:rgba(0,0,0,.7);position:fixed;z-index:10000;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);bottom:1.5em;transition:all .5s;opacity:0;text-align:center;color:#fff;font-weight:700;font-size:45px;padding:1em;border-radius:.5em;inset-inline-start:50%;transform:translateX(-50%);border:4px solid rgba(255,255,255,.9);box-shadow:0 0 50px 6px rgb(0 0 0 / 25%);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}img.qr{display:inline-block}.fa-vkontakte:before{content:"\f189"}.fab.fa-mailru{font-family:"Font Awesome 5 Free";font-weight:900}.fa-mailru:before{content:"\f1fa"}.fa-stackexchange:before{content:"\f18d"}.fa-twitchtv:before{content:"\f1e8"}.fa-wechat:before{content:"\f1d7"} \ No newline at end of file diff --git a/content/legacy/themes/Peafowl/lib/peafowl.min.js b/content/legacy/themes/Peafowl/lib/peafowl.min.js index 5bd73e5..c6c8ae5 100644 --- a/content/legacy/themes/Peafowl/lib/peafowl.min.js +++ b/content/legacy/themes/Peafowl/lib/peafowl.min.js @@ -1,4 +1,4 @@ -function sprintf(){var t=/%%|%(\d+\$)?([-+\'#0 ]*)(\*\d+\$|\*|\d+)?(\.(\*\d+\$|\*|\d+))?([scboxXuideEfFgG])/g,e=arguments,n=0,i=e[n++],o=function(t,e,n,i){n||(n=" ");var o=t.length>=e?"":new Array(1+e-t.length>>>0).join(n);return i?t+o:o+t},r=function(t,e,n,i,r,a){var s=i-t.length;return s>0&&(t=n||!r?o(t,i,a,n):t.slice(0,e.length)+o("",s,"0",!0)+t.slice(e.length)),t},a=function(t,e,n,i,a,s,l){var c=t>>>0;return n=n&&c&&{2:"0b",8:"0",16:"0x"}[e]||"",t=n+o(c.toString(e),s||0,"0",!1),r(t,n,i,a,l)},s=function(t,e,n,i,o,a){return null!=i&&(t=t.slice(0,i)),r(t,"",e,n,o,a)},l=function(t,i,l,c,u,d,h){var f,p,g,m,b;if("%%"===t)return"%";for(var v=!1,y="",w=!1,P=!1,$=" ",x=l.length,F=0;l&&F-1?6:"d"===h?0:void 0,b=i?e[i.slice(0,-1)]:e[n++],h){case"s":return s(String(b),v,c,d,w,$);case"c":return s(String.fromCharCode(+b),v,c,d,w);case"b":return a(b,2,P,v,c,d,w);case"o":return a(b,8,P,v,c,d,w);case"x":return a(b,16,P,v,c,d,w);case"X":return a(b,16,P,v,c,d,w).toUpperCase();case"u":return a(b,10,P,v,c,d,w);case"i":case"d":return f=+b||0,f=Math.round(f-f%1),p=f<0?"-":y,b=p+o(String(Math.abs(f)),d,"0",!1),r(b,p,v,c,w);case"e":case"E":case"f":case"F":case"g":case"G":return f=+b,p=f<0?"-":y,g=["toExponential","toFixed","toPrecision"]["efg".indexOf(h.toLowerCase())],m=["toString","toUpperCase"]["eEfFgG".indexOf(h)%2],b=p+Math.abs(f)[g](d),r(b,p,v,c,w)[m]();default:return t}};return i.replace(t,l)}function testPassword(t){var e=0,n="weak",i="",o=0;return t.length<5?(e+=3,i=i+"3 points for length ("+t.length+")\n"):t.length>4&&t.length<8?(e+=6,i=i+"6 points for length ("+t.length+")\n"):t.length>7&&t.length<16?(e+=12,i=i+"12 points for length ("+t.length+")\n"):t.length>15&&(e+=18,i=i+"18 point for length ("+t.length+")\n"),t.match(/[a-z]/)&&(e+=1,i+="1 point for at least one lower case char\n"),t.match(/[A-Z]/)&&(e+=5,i+="5 points for at least one upper case char\n"),t.match(/\d+/)&&(e+=5,i+="5 points for at least one number\n"),t.match(/(.*[0-9].*[0-9].*[0-9])/)&&(e+=5,i+="5 points for at least three numbers\n"),t.match(/.[!,@,#,$,%,^,&,*,?,_,~]/)&&(e+=5,i+="5 points for at least one special char\n"),t.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/)&&(e+=5,i+="5 points for at least two special chars\n"),t.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)&&(e+=2,i+="2 combo points for upper and lower letters\n"),t.match(/([a-zA-Z])/)&&t.match(/([0-9])/)&&(e+=2,i+="2 combo points for letters and numbers\n"),t.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/)&&(e+=2,i+="2 combo points for letters, numbers and special chars\n"),0==t.length&&(e=0),n=e<16?"very weak":e>15&&e<25?"weak":e>24&&e<35?"average":e>34&&e<45?"strong":"stronger",o=Math.round(Math.min(100,100*e/45))/100,{score:e,ratio:o,percent:100*o+"%",verdict:n,log:i}}$(function(){var t={url:PF.obj.config.json_api,cache:!1,dataType:"json",data:{auth_token:PF.obj.config.auth_token}};void 0!==PF.obj.config.session_id&&(t.data.session_id=PF.obj.config.session_id),$.ajaxSetup(t),$(window).bind("beforeunload",function(){if("continue"!=$("form",PF.obj.modal.selectors.root).data("beforeunload"))return $(PF.obj.modal.selectors.root).is(":visible")&&PF.fn.form_modal_has_changed()?' '+PF.fn._s("All the changes that you have made will be lost if you continue."):void 0});var e=0;const n=void 0!==window.pageXOffset,i="CSS1Compat"===(document.compatMode||""),o=function(){let t,o=n?window.pageYOffset:i?document.documentElement.scrollTop:document.body.scrollTop;return t=o>e,e=o,t};var r;window.addEventListener("scroll",function(){$("html").hasScrollbar().vertical&&(r||(r=!0,setTimeout(function(){var t=o();$("#top-bar, .follow-scroll").each(function(){"1"!==$(this).attr("data-scroll-lock")&&$(this).addClass("scroll-"+(t?"down":"up")).removeClass("scroll-"+(t?"up":"down"))}),r=!1},250)))}),$(window).bind("hashchange",function(){"#edit"!=window.location.hash||$(PF.obj.modal.selectors.root).exists()||$("[data-modal=edit]").first().click()}),PF.fn.bindtipTip();var a,s=0,l=$(window).width();if($(window).on("resize",function(){PF.fn.modal.styleAware(),PF.fn.close_pops(),clearTimeout(a),a=setTimeout(function(){PF.fn.modal.fixScrollbars();var t=PF.fn.getDeviceName(),e=["phone","phablet"],n=["tablet","laptop","desktop"],i=PF.fn.getDeviceName();(i!==t&&$.inArray(t,e)>=0&&-1==$.inArray(i,e)||$.inArray(t,n)>=0&&-1==$.inArray(i,n))&&PF.fn.close_pops(),$(".top-bar").css("top",""),$("body").css({position:"",height:""}),$(".antiscroll").removeClass("jsly").data("antiscroll",""),$(".antiscroll-inner").css({height:"",width:"",maxheight:""}),PF.fn.list_fluid_width(),l!==$(window).width()&&($(PF.obj.listing.selectors.list_item,PF.obj.listing.selectors.content_listing_visible).css("opacity",0),$("[data-action=top-bar-menu-full]","#top-bar").hasClass("current")&&PF.fn.topMenu.hide(0),PF.fn.listing.columnizer(!0,0,!0),$(PF.obj.listing.selectors.list_item,PF.obj.listing.selectors.content_listing_visible).css("opacity",1)),l=$(window).width()},s)}),$(document).on("click","html",function(){PF.fn.close_pops()}),$(document).on("keydown",".numeric-input",function(t){t.keydown_numeric()}),$(document).on("click","[data-scrollto]",function(t){var e=$(this).data("scrollto"),n=$(e.match(/^\#|\./)?e:"#"+e);n.exists()?PF.fn.scroll(n):console.log("PF scrollto error: target doesn't exists",n)}),$(document).on("click focus","[data-login-needed], [data-user-logged=must]",function(t){if(!PF.fn.is_user_logged())return t.preventDefault(),t.stopPropagation(),window.location.href=PF.obj.vars.urls.login,!1}),$(document).on("click","[data-trigger]",function(t){if(t.isPropagationStopped())return!1;var e=$(this).data("trigger"),n=$(e.match(/^\#|\./)?e:"#"+e);n.exists()?(t.stopPropagation(),t.preventDefault(),n.closest(PF.obj.modal.selectors.root).length||PF.fn.modal.close(),n.trigger("click")):console.log("PF trigger error: target doesn't exists",n)}),$("form[method=post]").each(function(){$("input[name=auth_token]",this).exists()||$(this).append($("",{type:"hidden",name:"auth_token",value:PF.obj.config.auth_token}))}),$(document).on("click",".clear-form",function(){$(this).closest("form")[0].reset()}),$(document).on("submit","form[data-action=validate]",function(t){$(this).data("type");var e=!1,n=$(this).find("[required], [data-validate]");if(n.each(function(){var t=$(this).attr("type"),n=$(this).attr("pattern"),i=function(t){$(t).highlight(),e=!0};if($(this).is("[required]")&&""==$(this).val()){if($(this).is(":hidden")){var o=$($($(this).data("highlight")).exists()?$(this).data("highlight"):"#"+$(this).data("highlight"));$(o).highlight()}i(this)}if(void 0===n&&0==/mail|url/.test(t))return!0;n&&(n=new RegExp(n),n.test($(this).val())||i(this)),"email"!=t||$(this).val().isEmail()||i(this)}),e)return PF.fn.growl.expirable(PF.fn._s("Check the errors in the form to continue.")),!1}),$(document).on("change","select[data-combo]",function(){var t=$("#"+$(this).data("combo"));t.exists()&&t.children(".switch-combo").hide();var e=$("#"+$(this).closest("select").data("combo")),n=$("[data-combo-value~="+$("option:selected",this).attr("value")+"]",e);n.exists()&&n.show().find("[data-required]").each(function(){$(this).attr("required","required")}),$(".switch-combo",e).each(function(){$(this).is(":visible")||$("[required]",this).attr("data-required",!0).removeAttr("required")})}),$(document).on("keyup",function(t){var e=$(t.target),n=t.originalEvent;"Escape"==n.key&&$(PF.obj.modal.selectors.root).is(":visible")&&(e.is(":input")?e.trigger("blur"):$("[data-action=cancel],[data-action=close-modal]",PF.obj.modal.selectors.root).first().trigger("click"),PF.fn.keyFeedback.spawn(t))}),$(document).on("change",":input",function(t){PF.fn.growl.close()}),$(document).on("keyup",":input",function(t){$(".input-warning",$(this).closest(".input-label")).html("")}),$(document).on("blur",":input",function(){var t=$.trim($(this).prop("value"));$(this).prop("value",t)}),$(document).on("click","[data-focus=select-all],[data-click=select-all]",function(){if($(this).is(":input"))this.select();else{var t=document.createRange();t.selectNodeContents(this);var e=window.getSelection();e.removeAllRanges(),e.addRange(t)}}),$(document).on("keyup change blur",":input[type=password]",function(){var t=testPassword($(this).val()),e=$(this).closest("div");""==$(this).val()&&(t.percent=0,t.verdict=""),$("[data-content=password-meter-bar]",e).attr("data-veredict",t.verdict.replace(/ /g,"-")).width(t.percent),$("[data-text=password-meter-message]",e).removeClass("red-warning").text(""!==t.verdict?PF.fn._s(t.verdict):"")}),$(document).on("click","[rel=popup-link], .popup-link",function(t){t.preventDefault();var e=$(this)[void 0!==$(this).attr("href")?"attr":"data"]("href");if(void 0!==e){if(PF.fn.isDevice(["phone","phablet"])){if("mailto"==e.substring(0,6))return void(window.location=e);if("share"==e.substring(0,5))return void(navigator.canShare&&navigator.share(PF.fn.deparam(e.substring(6))))}PF.fn.popup({href:e})}}),$(document).on("click","[data-modal=simple],[data-modal=html]",function(){var t=$("[data-modal="+$(this).data("target")+"], #"+$(this).data("target")).first();PF.fn.modal.call({template:t.html(),buttons:!1})}),$(document).on("submit",PF.obj.modal.selectors.root+" form",function(t){return!$(this).data("prevented")&&(void 0!==$(this).attr("method")&&void 0)}),$(document).on("click","[data-modal=edit],[data-modal=form],[data-confirm]",function(t){t.preventDefault();var e,n=$(this);n.is("[data-confirm]")?(e=n,PF.obj.modal.type="confirm"):(e=$("[data-modal="+n.data("target")+"], #"+n.data("target")).first(),0==e.length&&(e=$("[data-modal=form-modal], #form-modal").first()),0==e.length&&console.log("PF Error: Modal target doesn't exists."),PF.obj.modal.type=n.data("modal"));var i=n.data("args"),o=window[e.data("submit-fn")],r=window[e.data("cancel-fn")],a=(window[e.data("load-fn")],e.data("submit-done")),s={url:e.data("ajax-url")||(void 0!==e.data("is-xhr")?PF.obj.config.json_api:null),deferred:window[e.data("ajax-deferred")]};if("function"!=typeof o&&e.data("submit-fn")){var l=e.data("submit-fn").split(".");o=window;for(var c=0;c

    '+PF.fn._s("All the changes that you have made will be lost if you continue.")+'

    '+PF.fn._s("or")+' '+PF.fn._s("continue anyway")+"
    "),$(PF.obj.modal.selectors.changes_confirm).css("margin-top",-$(PF.obj.modal.selectors.changes_confirm).outerHeight(!0)/2).hide().fadeIn("fast")}else PF.fn.modal.close(),"#edit"==window.location.hash&&(window.location.hash="")},load:function(){"function"==typeof load_function&&load_function()},callback:function(){},ajax:s};PF.fn.modal.call($.extend(m,g))}}),PF.fn.is_user_logged()||$("[data-login-needed]:input, [data-user-logged=must]:input").each(function(){$(this).attr("readonly",!0)}),$(document).on("keydown","html",function(t){var e=$(t.target),n=t.originalEvent;if("Escape"!==n.key){var i="Enter"===n.key&&(n.ctrlKey||n.metaKey);if(!e.is("textarea")||i){var o=e.is(":input.search")||e.closest(".input-with-button").exists();if(!o&&e.is(":input, textarea")&&"Enter"===n.key&&!i)return t.stopPropagation(),void t.preventDefault();if($(PF.obj.modal.selectors.root).exists()){if(i||"Enter"!==n.key||!$("[data-action=submit]",PF.obj.modal.selectors.root).exists()||e.is(".prevent-submit")||(i=!0),!i)return;$("[data-action=submit]",PF.obj.modal.selectors.root).trigger("click")}else if(i){var r=e.is(":input")?e.closest("form"):$("form",".form-content:visible").first();r.trigger("submit")}i&&PF.fn.keyFeedback.spawn(t)}else t.stopPropagation()}else PF.fn.growl.close()}),window.location.hash&&"#edit"==window.location.hash&&$("[data-modal=edit]").first().click(),$(document).on("click","#menu-fullscreen .fullscreen, [data-action=top-bar-menu-full]",function(t){if(!$(t.target).is("#pop-box-mask")){var e=$("[data-action=top-bar-menu-full]","#top-bar").hasClass("current");if(PF.fn.topMenu[e?"hide":"show"](),Boolean(window.navigator.vibrate)){var n=e?[15,200,15]:[15,200,25,125,15];window.navigator.vibrate(0),window.navigator.vibrate(n)}}}),$(document).on("click","[data-action=top-bar-search]",function(){$("[data-action=top-bar-search-input]",".top-bar").removeClass("hidden").show(),$("[data-action=top-bar-search-input]:visible input").first().focus(),is_ios()&&!$(this).closest(PF.fn.topMenu.vars.menu).exists()&&$(".top-bar").css("position","absolute"),$("[data-action=top-bar-search]",".top-bar").hide()}),$(document).on("click",".input-search .icon--search",function(t){$("input",t.currentTarget.offsetParent).focus()}),$(document).on("click",".input-search .icon--close, .input-search [data-action=clear-search]",function(t){var e=$("input",t.currentTarget.offsetParent);""==e.val()?$(this).closest("[data-action=top-bar-search-input]").exists()&&($("[data-action=top-bar-search-input]",".top-bar").hide(),$("[data-action=top-bar-search]",".top-bar").removeClass("opened").show()):($(this).closest("[data-action=top-bar-search-input]").exists()||$(this).hide(),e.val("").change())}),$(document).on("keyup change","input.search",function(t){var e=$(this),n=$(this).closest(".input-search");if(!$(this).closest("[data-action=top-bar-search-input]").exists()){var i=""==e.val()?"hide":"show";$(".icon--close, [data-action=clear-search]",n)[i]()}}),$(document).on("click mouseenter",".pop-btn",function(t){if(!PF.fn.isDevice(["phone","phablet"])||"mouseenter"!=t.type&&!$(this).hasClass("pop-btn-desktop")){var e,n,i=$(t.target),o=$.makeArray(["phone","phablet"]),r=$(this);if(("mouseenter"!=t.type||$(this).hasClass("pop-btn-auto"))&&!$(this).hasClass("disabled")&&(!i.closest(".current").exists()||PF.fn.isDevice("phone")||i.closest(".pop-btn-show").exists())){PF.fn.growl.close(),t.stopPropagation(),e=$(this),n=$(".pop-box",e),e.addClass("opened");var a=parseInt(n.css("margin-right"));if($(".pop-box-inner",n).css("max-height",""),PF.fn.isDevice(o)){var s=$(".pop-btn-text,.btn-text,.text",e).first().text(),l=$(".pop-btn-icon,.btn-icon,.icon",e)[0].outerHTML;$(".pop-box-header",n).exists()||n.prepend($("
    ",{class:"pop-box-header",html:l+" "+s+''}),$("
    ",{class:"hidden phone-show phablet-show or-separator margin-top-0 margin-bottom-0"}))}else $(".pop-box-header",n).remove(),n.css({bottom:""});if(n.hasClass("anchor-center")&&(PF.fn.isDevice(o)?n.css("marginInlineStart",""):n.css("marginInlineStart",-n.outerWidth()/2)),i.is("[data-change]")&&($("li",n).removeClass("current"),i.closest("li").addClass("current"),$("[data-text-change]",e).text($("li.current a",n).text()),t.preventDefault()),n.exists()){r=t.istriggered?$(t.target):$(this);if(!(n.is(":visible")&&$(t.target).closest(".pop-box-inner").exists()&&r.hasClass("pop-keep-click"))){$(".pop-box:visible").not(n).hide().closest(".pop-btn").removeClass("opened");var c=function(t){if(t.is(":visible"))if(PF.fn.isDevice(o))$(".antiscroll-inner",t).height("100%");else{var e=t.css("marginInlineStart");void 0!==e&&(e=parseFloat(e),t.css("marginInlineStart",""));var n=t.getWindowCutoff();if(n&&n.right&&n.right",{id:"pop-box-mask",class:"fullscreen black"}).css({zIndex:400,display:"block"})),PF.fn.topMenu.vars.scrollTop=$(PF.fn.topMenu.vars.menu).scrollTop(),setTimeout(function(){$("#pop-box-mask").css({opacity:1}),setTimeout(function(){n.show().css({bottom:"-"+u,maxHeight:"100%",zIndex:1e3,transform:"translate(0,0)"}),setTimeout(function(){n.find(".pop-box-inner").scrollTop(0)},1),setTimeout(function(){n.css({transform:"translate(0,-"+u+")"})},1),setTimeout(function(){c(n)},PF.obj.config.animation.normal),$("html").hasClass("overflow-hidden")?$("html").data("hasOverflowHidden",1):($("html").addClass("overflow-hidden"),$("body").addClass(r.closest(".top-bar").exists()?"pop-box-show--top":"pop-box-show")),$(".pop-box-inner",n).css("height",n.height()-$(".pop-box-header",n).outerHeight(!0))},1)},1))}else n[n.is(":visible")?"hide":"show"](0,function(){c(n)})}}}}}).on("mouseleave",".pop-btn",function(){if(PF.fn.isDevice(["laptop","desktop"])){var t=$(this),e=$(".pop-box",t);!t.hasClass("pop-btn-auto")||PF.fn.isDevice(["phone","phablet"])&&t.hasClass("pop-btn-auto")||e.hide().closest(".pop-btn").removeClass("opened")}}),window.location.hash,$(".content-tabs").exists()){var c=$("a",".content-tabs .current");History.replaceState({href:c.attr("href"),"data-tab":c.data("tab"),pushed:"tabs",statenum:0},null,null)}var u=History.getState();void 0===u.data&&History.replaceState({scrollTop:0},document.title,window.location.href),History.Adapter.bind(window,"popstate",function(){var t=History.getState();t.data&&void 0!==t.data.scrollTop&&$(window).scrollTop()!==t.data.scrollTop&&$(window).scrollTop(t.data.scrollTop)}),$("a",".content-tabs").on("click",function(t){if(1==$(this).data("link")&&$(this).data("tab",!1),$(this).closest(".current,.disabled").exists())t.preventDefault();else if(void 0!==$(this).data("tab")){var e={};if($.each(this.attributes,function(){e[this.name]=this.value}),e.pushed="tabs","classic"!=$("#"+e["data-tab"]).data("load")){if(window.location.hash){var n=window.location.href;n=n.replace(window.location.hash,"")}History.pushState(e,document.title,void 0!==n?n:$(this).attr("href")),t.preventDefault()}var i=$("[data-action=tab-menu]",$(this).closest(".header"));i.find("[data-content=current-tab-label]").text($(this).text()),i.find('[data-content="tab-icon"]').attr("class","").addClass($(this).find(".btn-icon").attr("class")),i.is(":visible")&&i.click()}}),$(document).on("click","[data-action=tab-menu]",function(){var t=$(this).closest(".header").find(".content-tabs"),e=t.is(":visible"),n=t.closest(".content-tabs-wrap");$this=$(this),n.css("display",e?"":"block"),$this.toggleClass("--hide",e),e||(t.data("classes",t.attr("class")),t.removeClass(function(t,e){return(e.match(/\b\w+-hide/g)||[]).join(" ")})),e||$this.removeClass("current"),e&&(t.css("display","").addClass(t.data("classes")),$this.addClass("current"))}),$(window).bind("statechange",function(t){var e;PF.fn.growl.close(),e=History.getState().data,e&&"tabs"==e.pushed&&PF.fn.show_tab(e["data-tab"])}),$(document).on("click",PF.obj.listing.selectors.list_item+" a",function(t){""!=$(this).attr("src")&&History.replaceState({scrollTop:$(window).scrollTop()},document.title,window.location.href)}),$(document).on("click","[data-action=load-more]",function(t){PF.obj.listing.lockClickMore||(PF.obj.listing.lockClickMore=!0,$(this).closest(".content-listing-more").hide(),!PF.fn.is_listing()||$(this).closest(PF.obj.listing.selectors.content_listing).is(":hidden")||$(this).closest("#content-listing-template").exists()||PF.obj.listing.calling||(PF.fn.listing.queryString.stock_new(),PF.obj.listing.query_string.seek=$(this).attr("data-seek"),PF.obj.listing.query_string.page=$(PF.obj.listing.selectors.content_listing_visible).data("page"),PF.obj.listing.query_string.page++,PF.fn.listing.ajax(),t.preventDefault()))}),$(PF.obj.listing.selectors.list_item).length>0?(PF.fn.listing.show(),$(window).scroll(function(){var t=$(PF.obj.listing.selectors.content_listing_load_more,PF.obj.listing.selectors.content_listing_visible).find("button[data-action=load-more]"),e=$(document).height()-$(window).height()-1.5*document.documentElement.clientHeight;t.length>0&&$(window).scrollTop()>e&&0==PF.obj.listing.calling&&t.click()})):$(PF.obj.listing.selectors.content_listing+".visible").addClass("jsly"),$(document).on("click",PF.obj.modal.selectors.root+" [data-switch]",function(){var t=$(this).closest(PF.obj.modal.selectors.root);$("[data-view=switchable]",t).hide(),$("#"+$(this).attr("data-switch"),t).show()}),$(document).on("click","[data-toggle]",function(){var t=$("[data-content="+$(this).data("toggle")+"]"),e=!t.is(":visible");$(this).html($(this).data("html-"+(e?"on":"off"))),t.toggle()}),$(document).on("click","[data-action=cookie-law-close]",function(){var t=$(this).closest("#cookie-law-banner"),e=void 0!==t.data("cookie")?t.data("cookie"):"PF_COOKIE_LAW_DISPLAY";Cookies.set(e,0,{expires:365}),t.remove()}),Clipboard=new Clipboard("[data-action=copy]",{text:function(t){var e=$(t.getAttribute("data-action-target")),n=e.is(":input")?e.val():e.text();return n.trim()}}),Clipboard.on("success",function(t){var e=$(t.trigger.getAttribute("data-action-target"));e.highlight(),t.clearSelection()}),$(window).on("fullscreenchange",function(){$("html").toggleClass("--fullscreen",document.fullscreenElement)})});var PF={fn:{},str:{},obj:{}};PF.obj.config={base_url:"",json_api:"/json/",listing:{items_per_page:24},animation:{easingFn:"ease",normal:400,fast:250}},PF.obj.l10n={},PF.fn._s=function(t,e){return void 0===t?t:(void 0!==PF.obj.l10n&&void 0!==PF.obj.l10n[t]?(t=PF.obj.l10n[t][0],void 0===t&&(t=t)):t=t,t=t.toString(),void 0!==e&&(t=sprintf(t,e)),t)},PF.fn._n=function(t,e,n){var i;return i=void 0!==PF.obj.l10n&&void 0!==PF.obj.l10n[t]?PF.obj.l10n[t][1==n?0:1]:1==n?t:e,i=void 0===i?t:i.toString(),void 0!==n&&(i=sprintf(i,n)),i},PF.fn.extend_lang=function(t){$.each(PF.obj.lang_strings,function(e,n){void 0!==t[e]&&$.extend(PF.obj.lang_strings[e],t[e])})},PF.fn.get_url_vars=function(){for(var t,e=/\+/g,n=/([^&=]+)=?([^&]*)/g,i=function(t){return decodeURIComponent(escape(t.replace(e," ")))},o=window.location.search.substring(1),r={};t=n.exec(o);)r[i(t[1])]=i(t[2]);return r},PF.fn.get_url_var=function(t){return PF.fn.get_url_vars()[t]},PF.fn.is_user_logged=function(){return $("#top-bar-user").exists()},PF.fn.generate_random_string=function(t){void 0===t&&(t=5);for(var e="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=0;i").text($.trim(t)).html()},PF.fn.htmlDecode=function(t){return $("
    ").html($.trim(t)).text()},PF.fn.nl2br=function(t){var e="
    ";return(t+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1"+e+"$2")},PF.fn.versionCompare=function(t,e,n){this.php_js=this.php_js||{},this.php_js.ENV=this.php_js.ENV||{};var i=0,o=0,r=0,a={dev:-6,alpha:-5,a:-5,beta:-4,b:-4,RC:-3,rc:-3,"#":-2,p:1,pl:1},s=function(t){return t=(""+t).replace(/[_\-+]/g,"."),t=t.replace(/([^.\d]+)/g,".$1.").replace(/\.{2,}/g,"."),t.length?t.split("."):[-8]};for(numVersion=function(t){return t?isNaN(t)?a[t]||-7:parseInt(t,10):0},t=s(t),e=s(e),o=Math.max(t.length,e.length),i=0;ie[i]){r=1;break}}if(!n)return r;switch(n){case">":case"gt":return r>0;case">=":case"ge":return r>=0;case"<=":case"le":return r<=0;case"==":case"=":case"eq":return 0===r;case"<>":case"!=":case"ne":return 0!==r;case"":case"<":case"lt":return r<0;default:return null}},PF.fn.baseName=function(t){var e=new String(t).substring(t.lastIndexOf("/")+1);return-1!=e.lastIndexOf(".")&&(e=e.substring(0,e.lastIndexOf("."))),e},PF.fn.guid=function(){var t=(new Date).getTime();return"undefined"!=typeof performance&&"function"==typeof performance.now&&(t+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var n=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"===e?n:3&n|8).toString(16)})},PF.fn.md5=function(t){return SparkMD5.hash(t)},PF.fn.dataURItoBlob=function(t){var e;e=t.split(",")[0].indexOf("base64")>=0?atob(t.split(",")[1]):unescape(t.split(",")[1]);for(var n=t.split(",")[0].split(":")[1].split(";")[0],i=new Uint8Array(e.length),o=0;o0|-(value<0),o=value%1==.5*r,i=Math.floor(value),o)switch(e){case"PHP_ROUND_HALF_DOWN":value=i+(r<0);break;case"PHP_ROUND_HALF_EVEN":value=i+i%2*r;break;case"PHP_ROUND_HALF_ODD":value=i+!(i%2);break;default:value=i+(r>0)}return(o?value:Math.round(value))/n},String.prototype.getBytes=function(){var t=["KB","MB","GB","TB","PB","EB","ZB","YB"],e=this.toUpperCase().substr(-2);if(-1==t.indexOf(e))return this;var n=t.indexOf(e)+1;return parseFloat(this)*Math.pow(1e3,n)},String.prototype.formatBytes=function(t){var e=parseInt(this),n=["KB","MB","GB","TB","PB","EB","ZB","YB"];if(!$.isNumeric(this))return!1;if(e<1e3)return e+" B";if(void 0===t)t=2;for(var i=0;i=e?"":new Array(1+e-t.length>>>0).join(n);return i?t+o:o+t},r=function(t,e,n,i,r,a){var s=i-t.length;return s>0&&(t=n||!r?o(t,i,a,n):t.slice(0,e.length)+o("",s,"0",!0)+t.slice(e.length)),t},a=function(t,e,n,i,a,s,l){var c=t>>>0;return n=n&&c&&{2:"0b",8:"0",16:"0x"}[e]||"",t=n+o(c.toString(e),s||0,"0",!1),r(t,n,i,a,l)},s=function(t,e,n,i,o,a){return null!=i&&(t=t.slice(0,i)),r(t,"",e,n,o,a)},l=function(t,i,l,c,u,d,h){var f,p,g,m,b;if("%%"===t)return"%";for(var v=!1,y="",w=!1,P=!1,$=" ",x=l.length,F=0;l&&F-1?6:"d"===h?0:void 0,b=i?e[i.slice(0,-1)]:e[n++],h){case"s":return s(String(b),v,c,d,w,$);case"c":return s(String.fromCharCode(+b),v,c,d,w);case"b":return a(b,2,P,v,c,d,w);case"o":return a(b,8,P,v,c,d,w);case"x":return a(b,16,P,v,c,d,w);case"X":return a(b,16,P,v,c,d,w).toUpperCase();case"u":return a(b,10,P,v,c,d,w);case"i":case"d":return f=+b||0,f=Math.round(f-f%1),p=f<0?"-":y,b=p+o(String(Math.abs(f)),d,"0",!1),r(b,p,v,c,w);case"e":case"E":case"f":case"F":case"g":case"G":return f=+b,p=f<0?"-":y,g=["toExponential","toFixed","toPrecision"]["efg".indexOf(h.toLowerCase())],m=["toString","toUpperCase"]["eEfFgG".indexOf(h)%2],b=p+Math.abs(f)[g](d),r(b,p,v,c,w)[m]();default:return t}};return i.replace(t,l)}function testPassword(t){var e=0,n="weak",i="",o=0;return t.length<5?(e+=3,i=i+"3 points for length ("+t.length+")\n"):t.length>4&&t.length<8?(e+=6,i=i+"6 points for length ("+t.length+")\n"):t.length>7&&t.length<16?(e+=12,i=i+"12 points for length ("+t.length+")\n"):t.length>15&&(e+=18,i=i+"18 point for length ("+t.length+")\n"),t.match(/[a-z]/)&&(e+=1,i+="1 point for at least one lower case char\n"),t.match(/[A-Z]/)&&(e+=5,i+="5 points for at least one upper case char\n"),t.match(/\d+/)&&(e+=5,i+="5 points for at least one number\n"),t.match(/(.*[0-9].*[0-9].*[0-9])/)&&(e+=5,i+="5 points for at least three numbers\n"),t.match(/.[!,@,#,$,%,^,&,*,?,_,~]/)&&(e+=5,i+="5 points for at least one special char\n"),t.match(/(.*[!,@,#,$,%,^,&,*,?,_,~].*[!,@,#,$,%,^,&,*,?,_,~])/)&&(e+=5,i+="5 points for at least two special chars\n"),t.match(/([a-z].*[A-Z])|([A-Z].*[a-z])/)&&(e+=2,i+="2 combo points for upper and lower letters\n"),t.match(/([a-zA-Z])/)&&t.match(/([0-9])/)&&(e+=2,i+="2 combo points for letters and numbers\n"),t.match(/([a-zA-Z0-9].*[!,@,#,$,%,^,&,*,?,_,~])|([!,@,#,$,%,^,&,*,?,_,~].*[a-zA-Z0-9])/)&&(e+=2,i+="2 combo points for letters, numbers and special chars\n"),0==t.length&&(e=0),n=e<16?"very weak":e>15&&e<25?"weak":e>24&&e<35?"average":e>34&&e<45?"strong":"stronger",o=Math.round(Math.min(100,100*e/45))/100,{score:e,ratio:o,percent:100*o+"%",verdict:n,log:i}}$(function(){var t={url:PF.obj.config.json_api,cache:!1,dataType:"json",data:{auth_token:PF.obj.config.auth_token}};void 0!==PF.obj.config.session_id&&(t.data.session_id=PF.obj.config.session_id),$.ajaxSetup(t),$(window).bind("beforeunload",function(){if("continue"!=$("form",PF.obj.modal.selectors.root).data("beforeunload"))return $(PF.obj.modal.selectors.root).is(":visible")&&PF.fn.form_modal_has_changed()?' '+PF.fn._s("All the changes that you have made will be lost if you continue."):void 0});var e=0;const n=void 0!==window.pageXOffset,i="CSS1Compat"===(document.compatMode||""),o=function(){let t,o=n?window.pageYOffset:i?document.documentElement.scrollTop:document.body.scrollTop;return t=o>e,e=o,t};var r;window.addEventListener("scroll",function(){$("html").hasScrollbar().vertical&&(r||(r=!0,setTimeout(function(){var t=o();$("#top-bar, .follow-scroll").each(function(){"1"!==$(this).attr("data-scroll-lock")&&$(this).addClass("scroll-"+(t?"down":"up")).removeClass("scroll-"+(t?"up":"down"))}),r=!1},250)))}),$(window).bind("hashchange",function(){"#edit"!=window.location.hash||$(PF.obj.modal.selectors.root).exists()||$("[data-modal=edit]").first().click()}),PF.fn.bindtipTip();var a,s=0,l=$(window).width();if($(window).on("resize",function(){PF.fn.modal.styleAware(),PF.fn.close_pops(),clearTimeout(a),a=setTimeout(function(){PF.fn.modal.fixScrollbars();var t=PF.fn.getDeviceName(),e=["phone","phablet"],n=["tablet","laptop","desktop"],i=PF.fn.getDeviceName();(i!==t&&$.inArray(t,e)>=0&&-1==$.inArray(i,e)||$.inArray(t,n)>=0&&-1==$.inArray(i,n))&&PF.fn.close_pops(),$(".top-bar").css("top",""),$("body").css({position:"",height:""}),$(".antiscroll").removeClass("jsly").data("antiscroll",""),$(".antiscroll-inner").css({height:"",width:"",maxheight:""}),PF.fn.list_fluid_width(),l!==$(window).width()&&($(PF.obj.listing.selectors.list_item,PF.obj.listing.selectors.content_listing_visible).css("opacity",0),$("[data-action=top-bar-menu-full]","#top-bar").hasClass("current")&&PF.fn.topMenu.hide(0),PF.fn.listing.columnizer(!0,0,!0),$(PF.obj.listing.selectors.list_item,PF.obj.listing.selectors.content_listing_visible).css("opacity",1)),l=$(window).width()},s)}),$(document).on("click","html",function(){PF.fn.close_pops()}),$(document).on("keydown",".numeric-input",function(t){t.keydown_numeric()}),$(document).on("click","[data-scrollto]",function(t){var e=$(this).data("scrollto"),n=$(e.match(/^\#|\./)?e:"#"+e);n.exists()?PF.fn.scroll(n):console.log("PF scrollto error: target doesn't exists",n)}),$(document).on("click focus","[data-login-needed], [data-user-logged=must]",function(t){if(!PF.fn.is_user_logged())return t.preventDefault(),t.stopPropagation(),window.location.href=PF.obj.vars.urls.login,!1}),$(document).on("click","[data-trigger]",function(t){if(t.isPropagationStopped())return!1;var e=$(this).data("trigger"),n=$(e.match(/^\#|\./)?e:"#"+e);n.exists()?(t.stopPropagation(),t.preventDefault(),n.closest(PF.obj.modal.selectors.root).length||PF.fn.modal.close(),n.trigger("click")):console.log("PF trigger error: target doesn't exists",n)}),$("form[method=post]").each(function(){$("input[name=auth_token]",this).exists()||$(this).append($("",{type:"hidden",name:"auth_token",value:PF.obj.config.auth_token}))}),$(document).on("click",".clear-form",function(){$(this).closest("form")[0].reset()}),$(document).on("submit","form[data-action=validate]",function(t){$(this).data("type");var e=!1,n=$(this).find("[required], [data-validate]");if(n.each(function(){var t=$(this).attr("type"),n=$(this).attr("pattern"),i=function(t){$(t).highlight(),e=!0};if($(this).is("[required]")&&""==$(this).val()){if($(this).is(":hidden")){var o=$($($(this).data("highlight")).exists()?$(this).data("highlight"):"#"+$(this).data("highlight"));$(o).highlight()}i(this)}if(void 0===n&&0==/mail|url/.test(t))return!0;n&&(n=new RegExp(n),n.test($(this).val())||i(this)),"email"!=t||$(this).val().isEmail()||i(this)}),e)return PF.fn.growl.expirable(PF.fn._s("Check the errors in the form to continue.")),!1}),$(document).on("change","select[data-combo]",function(){var t=$("#"+$(this).data("combo"));t.exists()&&t.children(".switch-combo").hide();var e=$("#"+$(this).closest("select").data("combo")),n=$("[data-combo-value~="+$("option:selected",this).attr("value")+"]",e);n.exists()&&n.show().find("[data-required]").each(function(){$(this).attr("required","required")}),$(".switch-combo",e).each(function(){$(this).is(":visible")||$("[required]",this).attr("data-required",!0).removeAttr("required")})}),$(document).on("keyup",function(t){var e=$(t.target),n=t.originalEvent;"Escape"==n.key&&$(PF.obj.modal.selectors.root).is(":visible")&&(e.is(":input")?e.trigger("blur"):$("[data-action=cancel],[data-action=close-modal]",PF.obj.modal.selectors.root).first().trigger("click"),PF.fn.keyFeedback.spawn(t))}),$(document).on("change",":input",function(t){PF.fn.growl.close()}),$(document).on("keyup",":input",function(t){$(".input-warning",$(this).closest(".input-label")).html("")}),$(document).on("blur",":input",function(){var t=$.trim($(this).prop("value"));$(this).prop("value",t)}),$(document).on("click","[data-focus=select-all],[data-click=select-all]",function(){if($(this).is(":input"))this.select();else{var t=document.createRange();t.selectNodeContents(this);var e=window.getSelection();e.removeAllRanges(),e.addRange(t)}}),$(document).on("keyup change blur",":input[type=password]",function(){var t=testPassword($(this).val()),e=$(this).closest("div");""==$(this).val()&&(t.percent=0,t.verdict=""),$("[data-content=password-meter-bar]",e).attr("data-veredict",t.verdict.replace(/ /g,"-")).width(t.percent),$("[data-text=password-meter-message]",e).removeClass("red-warning").text(""!==t.verdict?PF.fn._s(t.verdict):"")}),$(document).on("click","[rel=popup-link], .popup-link",function(t){t.preventDefault();var e=$(this)[void 0!==$(this).attr("href")?"attr":"data"]("href");if(void 0!==e){if(PF.fn.isDevice(["phone","phablet"])){if("mailto"==e.substring(0,6))return void(window.location=e);if("share"==e.substring(0,5))return void(navigator.canShare&&navigator.share(PF.fn.deparam(e.substring(6))))}PF.fn.popup({href:e})}}),$(document).on("click","[data-modal=simple],[data-modal=html]",function(){var t=$("[data-modal="+$(this).data("target")+"], #"+$(this).data("target")).first();PF.fn.modal.call({template:t.html(),buttons:!1})}),$(document).on("submit",PF.obj.modal.selectors.root+" form",function(t){return!$(this).data("prevented")&&(void 0!==$(this).attr("method")&&void 0)}),$(document).on("click","[data-modal=edit],[data-modal=form],[data-confirm]",function(t){t.preventDefault();var e,n=$(this);n.is("[data-confirm]")?(e=n,PF.obj.modal.type="confirm"):(e=$("[data-modal="+n.data("target")+"], #"+n.data("target")).first(),0==e.length&&(e=$("[data-modal=form-modal], #form-modal").first()),0==e.length&&console.log("PF Error: Modal target doesn't exists."),PF.obj.modal.type=n.data("modal"));var i=n.data("args"),o=window[e.data("submit-fn")],r=window[e.data("cancel-fn")],a=(window[e.data("load-fn")],e.data("submit-done")),s={url:e.data("ajax-url")||(void 0!==e.data("is-xhr")?PF.obj.config.json_api:null),deferred:window[e.data("ajax-deferred")]};if("function"!=typeof o&&e.data("submit-fn")){var l=e.data("submit-fn").split(".");o=window;for(var c=0;c

    '+PF.fn._s("All the changes that you have made will be lost if you continue.")+'

    '+PF.fn._s("or")+' '+PF.fn._s("continue anyway")+"
    "),$(PF.obj.modal.selectors.changes_confirm).css("margin-top",-$(PF.obj.modal.selectors.changes_confirm).outerHeight(!0)/2).hide().fadeIn("fast")}else PF.fn.modal.close(),"#edit"==window.location.hash&&(window.location.hash="")},load:function(){"function"==typeof load_function&&load_function()},callback:function(){},ajax:s};PF.fn.modal.call($.extend(m,g))}}),PF.fn.is_user_logged()||$("[data-login-needed]:input, [data-user-logged=must]:input").each(function(){$(this).attr("readonly",!0)}),$(document).on("keydown","html",function(t){var e=$(t.target),n=t.originalEvent;if("Escape"!==n.key){var i="Enter"===n.key&&(n.ctrlKey||n.metaKey);if(!e.is("textarea")||i){var o=e.is(":input.search")||e.closest(".input-with-button").exists();if(!o&&e.is(":input, textarea")&&"Enter"===n.key&&!i)return t.stopPropagation(),void t.preventDefault();if($(PF.obj.modal.selectors.root).exists()){if(i||"Enter"!==n.key||!$("[data-action=submit]",PF.obj.modal.selectors.root).exists()||e.is(".prevent-submit")||(i=!0),!i)return;$("[data-action=submit]",PF.obj.modal.selectors.root).trigger("click")}else if(i){var r=e.is(":input")?e.closest("form"):$("form",".form-content:visible").first();r.trigger("submit")}i&&PF.fn.keyFeedback.spawn(t)}else t.stopPropagation()}else PF.fn.growl.close()}),window.location.hash&&"#edit"==window.location.hash&&$("[data-modal=edit]").first().click(),$(document).on("click","#menu-fullscreen .fullscreen, [data-action=top-bar-menu-full]",function(t){if(!$(t.target).is("#pop-box-mask")){var e=$("[data-action=top-bar-menu-full]","#top-bar").hasClass("current");if(PF.fn.topMenu[e?"hide":"show"](),Boolean(window.navigator.vibrate)){var n=e?[15,200,15]:[15,200,25,125,15];window.navigator.vibrate(0),window.navigator.vibrate(n)}}}),$(document).on("click","[data-action=top-bar-search]",function(){$("[data-action=top-bar-search-input]",".top-bar").removeClass("hidden").show(),$("[data-action=top-bar-search-input]:visible input").first().focus(),is_ios()&&!$(this).closest(PF.fn.topMenu.vars.menu).exists()&&$(".top-bar").css("position","absolute"),$("[data-action=top-bar-search]",".top-bar").hide()}),$(document).on("click",".input-search .icon--search",function(t){$("input",t.currentTarget.offsetParent).focus()}),$(document).on("click",".input-search .icon--close, .input-search [data-action=clear-search]",function(t){var e=$("input",t.currentTarget.offsetParent);""==e.val()?$(this).closest("[data-action=top-bar-search-input]").exists()&&($("[data-action=top-bar-search-input]",".top-bar").hide(),$("[data-action=top-bar-search]",".top-bar").removeClass("opened").show()):($(this).closest("[data-action=top-bar-search-input]").exists()||$(this).hide(),e.val("").change())}),$(document).on("keyup change","input.search",function(t){var e=$(this),n=$(this).closest(".input-search");if(!$(this).closest("[data-action=top-bar-search-input]").exists()){var i=""==e.val()?"hide":"show";$(".icon--close, [data-action=clear-search]",n)[i]()}}),$(document).on("click mouseenter",".pop-btn",function(t){if(!PF.fn.isDevice(["phone","phablet"])||"mouseenter"!=t.type&&!$(this).hasClass("pop-btn-desktop")){var e,n,i=$(t.target),o=$.makeArray(["phone","phablet"]),r=$(this);if(("mouseenter"!=t.type||$(this).hasClass("pop-btn-auto"))&&!$(this).hasClass("disabled")&&(!i.closest(".current").exists()||PF.fn.isDevice("phone")||i.closest(".pop-btn-show").exists())){PF.fn.growl.close(),t.stopPropagation(),e=$(this),n=$(".pop-box",e),e.addClass("opened");var a=parseInt(n.css("margin-right"));if($(".pop-box-inner",n).css("max-height",""),PF.fn.isDevice(o)){var s=$(".pop-btn-text,.btn-text,.text",e).first().text(),l=$(".pop-btn-icon,.btn-icon,.icon",e)[0].outerHTML;$(".pop-box-header",n).exists()||n.prepend($("
    ",{class:"pop-box-header",html:l+" "+s+''}),$("
    ",{class:"hidden phone-show phablet-show or-separator margin-top-0 margin-bottom-0"}))}else $(".pop-box-header",n).remove(),n.css({bottom:""});if(n.hasClass("anchor-center")&&(PF.fn.isDevice(o)?n.css("marginInlineStart",""):n.css("marginInlineStart",-n.outerWidth()/2)),i.is("[data-change]")&&($("li",n).removeClass("current"),i.closest("li").addClass("current"),$("[data-text-change]",e).text($("li.current a",n).text()),t.preventDefault()),n.exists()){r=t.istriggered?$(t.target):$(this);if(!(n.is(":visible")&&$(t.target).closest(".pop-box-inner").exists()&&r.hasClass("pop-keep-click"))){$(".pop-box:visible").not(n).hide().closest(".pop-btn").removeClass("opened");var c=function(t){if(t.is(":visible"))if(PF.fn.isDevice(o))$(".antiscroll-inner",t).height("100%");else{var e=t.css("marginInlineStart");void 0!==e&&(e=parseFloat(e),t.css("marginInlineStart",""));var n=t.getWindowCutoff();if(n&&n.right&&n.right",{id:"pop-box-mask",class:"fullscreen black"}).css({zIndex:400,display:"block"})),PF.fn.topMenu.vars.scrollTop=$(PF.fn.topMenu.vars.menu).scrollTop(),setTimeout(function(){$("#pop-box-mask").css({opacity:1}),setTimeout(function(){n.show().css({bottom:"-"+u,maxHeight:"100%",zIndex:1e3,transform:"translate(0,0)"}),setTimeout(function(){n.find(".pop-box-inner").scrollTop(0)},1),setTimeout(function(){n.css({transform:"translate(0,-"+u+")"})},1),setTimeout(function(){c(n)},PF.obj.config.animation.normal),$("html").hasClass("overflow-hidden")?$("html").data("hasOverflowHidden",1):($("html").addClass("overflow-hidden"),$("body").addClass(r.closest(".top-bar").exists()?"pop-box-show--top":"pop-box-show")),$(".pop-box-inner",n).css("height",n.height()-$(".pop-box-header",n).outerHeight(!0))},1)},1))}else n[n.is(":visible")?"hide":"show"](0,function(){c(n)})}}}}}).on("mouseleave",".pop-btn",function(){if(PF.fn.isDevice(["laptop","desktop"])){var t=$(this),e=$(".pop-box",t);!t.hasClass("pop-btn-auto")||PF.fn.isDevice(["phone","phablet"])&&t.hasClass("pop-btn-auto")||e.hide().closest(".pop-btn").removeClass("opened")}}),window.location.hash,$(".content-tabs").exists()){var c=$("a",".content-tabs .current");History.replaceState({href:c.attr("href"),"data-tab":c.data("tab"),pushed:"tabs",statenum:0},null,null)}var u=History.getState();void 0===u.data&&History.replaceState({scrollTop:0},document.title,window.location.href),History.Adapter.bind(window,"popstate",function(){var t=History.getState();t.data&&void 0!==t.data.scrollTop&&$(window).scrollTop()!==t.data.scrollTop&&$(window).scrollTop(t.data.scrollTop)}),$("a",".content-tabs").on("click",function(t){if(1==$(this).data("link")&&$(this).data("tab",!1),$(this).closest(".current,.disabled").exists())t.preventDefault();else if(void 0!==$(this).data("tab")){var e={};if($.each(this.attributes,function(){e[this.name]=this.value}),e.pushed="tabs","classic"!=$("#"+e["data-tab"]).data("load")){if(window.location.hash){var n=window.location.href;n=n.replace(window.location.hash,"")}History.pushState(e,document.title,void 0!==n?n:$(this).attr("href")),t.preventDefault()}var i=$("[data-action=tab-menu]",$(this).closest(".header"));i.find("[data-content=current-tab-label]").text($(this).text()),i.find('[data-content="tab-icon"]').attr("class","").addClass($(this).find(".btn-icon").attr("class")),i.is(":visible")&&i.click()}}),$(document).on("click","[data-action=tab-menu]",function(){var t=$(this).closest(".header").find(".content-tabs"),e=t.is(":visible"),n=t.closest(".content-tabs-wrap");$this=$(this),n.css("display",e?"":"block"),$this.toggleClass("--hide",e),e||(t.data("classes",t.attr("class")),t.removeClass(function(t,e){return(e.match(/\b\w+-hide/g)||[]).join(" ")})),e||$this.removeClass("current"),e&&(t.css("display","").addClass(t.data("classes")),$this.addClass("current"))}),$(window).bind("statechange",function(t){var e;PF.fn.growl.close(),e=History.getState().data,e&&"tabs"==e.pushed&&PF.fn.show_tab(e["data-tab"])}),$(document).on("click",PF.obj.listing.selectors.list_item+" a",function(t){""!=$(this).attr("src")&&History.replaceState({scrollTop:$(window).scrollTop()},document.title,window.location.href)}),$(document).on("click","[data-action=load-more]",function(t){PF.obj.listing.lockClickMore||(PF.obj.listing.lockClickMore=!0,$(this).closest(".content-listing-more").hide(),!PF.fn.is_listing()||$(this).closest(PF.obj.listing.selectors.content_listing).is(":hidden")||$(this).closest("#content-listing-template").exists()||PF.obj.listing.calling||(PF.fn.listing.queryString.stock_new(),PF.obj.listing.query_string.seek=$(this).attr("data-seek"),PF.obj.listing.query_string.page=$(PF.obj.listing.selectors.content_listing_visible).data("page"),PF.obj.listing.query_string.page++,PF.fn.listing.ajax(),t.preventDefault()))}),$(PF.obj.listing.selectors.list_item).length>0?(PF.fn.listing.show(),$(window).scroll(function(){var t=$(PF.obj.listing.selectors.content_listing_load_more,PF.obj.listing.selectors.content_listing_visible).find("button[data-action=load-more]"),e=$(document).height()-$(window).height()-1.5*document.documentElement.clientHeight;t.length>0&&$(window).scrollTop()>e&&0==PF.obj.listing.calling&&t.click()})):$(PF.obj.listing.selectors.content_listing+".visible").addClass("jsly"),$(document).on("click",PF.obj.modal.selectors.root+" [data-switch]",function(){var t=$(this).closest(PF.obj.modal.selectors.root);$("[data-view=switchable]",t).hide(),$("#"+$(this).attr("data-switch"),t).show()}),$(document).on("click","[data-toggle]",function(){var t=$("[data-content="+$(this).data("toggle")+"]"),e=!t.is(":visible");$(this).html($(this).data("html-"+(e?"on":"off"))),t.toggle()}),$(document).on("click","[data-action=cookie-law-close]",function(){var t=$(this).closest("#cookie-law-banner"),e=void 0!==t.data("cookie")?t.data("cookie"):"PF_COOKIE_LAW_DISPLAY";Cookies.set(e,0,{expires:365}),t.remove()}),Clipboard=new Clipboard("[data-action=copy]",{text:function(t){var e=$(t.getAttribute("data-action-target")),n=e.is(":input")?e.val():e.text();return n.trim()}}),Clipboard.on("success",function(t){var e=$(t.trigger.getAttribute("data-action-target"));e.highlight(),t.clearSelection()}),$(window).on("fullscreenchange",function(){$("html").toggleClass("--fullscreen",null!==document.fullscreenElement)})});var PF={fn:{},str:{},obj:{}};PF.obj.config={base_url:"",json_api:"/json/",listing:{items_per_page:24},animation:{easingFn:"ease",normal:400,fast:250}},PF.obj.l10n={},PF.fn._s=function(t,e){return void 0===t?t:(void 0!==PF.obj.l10n&&void 0!==PF.obj.l10n[t]?(t=PF.obj.l10n[t][0],void 0===t&&(t=t)):t=t,t=t.toString(),void 0!==e&&(t=sprintf(t,e)),t)},PF.fn._n=function(t,e,n){var i;return i=void 0!==PF.obj.l10n&&void 0!==PF.obj.l10n[t]?PF.obj.l10n[t][1==n?0:1]:1==n?t:e,i=void 0===i?t:i.toString(),void 0!==n&&(i=sprintf(i,n)),i},PF.fn.extend_lang=function(t){$.each(PF.obj.lang_strings,function(e,n){void 0!==t[e]&&$.extend(PF.obj.lang_strings[e],t[e])})},PF.fn.get_url_vars=function(){for(var t,e=/\+/g,n=/([^&=]+)=?([^&]*)/g,i=function(t){return decodeURIComponent(escape(t.replace(e," ")))},o=window.location.search.substring(1),r={};t=n.exec(o);)r[i(t[1])]=i(t[2]);return r},PF.fn.get_url_var=function(t){return PF.fn.get_url_vars()[t]},PF.fn.is_user_logged=function(){return $("#top-bar-user").exists()},PF.fn.generate_random_string=function(t){void 0===t&&(t=5);for(var e="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",i=0;i").text($.trim(t)).html()},PF.fn.htmlDecode=function(t){return $("
    ").html($.trim(t)).text()},PF.fn.nl2br=function(t){var e="
    ";return(t+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1"+e+"$2")},PF.fn.versionCompare=function(t,e,n){this.php_js=this.php_js||{},this.php_js.ENV=this.php_js.ENV||{};var i=0,o=0,r=0,a={dev:-6,alpha:-5,a:-5,beta:-4,b:-4,RC:-3,rc:-3,"#":-2,p:1,pl:1},s=function(t){return t=(""+t).replace(/[_\-+]/g,"."),t=t.replace(/([^.\d]+)/g,".$1.").replace(/\.{2,}/g,"."),t.length?t.split("."):[-8]};for(numVersion=function(t){return t?isNaN(t)?a[t]||-7:parseInt(t,10):0},t=s(t),e=s(e),o=Math.max(t.length,e.length),i=0;ie[i]){r=1;break}}if(!n)return r;switch(n){case">":case"gt":return r>0;case">=":case"ge":return r>=0;case"<=":case"le":return r<=0;case"==":case"=":case"eq":return 0===r;case"<>":case"!=":case"ne":return 0!==r;case"":case"<":case"lt":return r<0;default:return null}},PF.fn.baseName=function(t){var e=new String(t).substring(t.lastIndexOf("/")+1);return-1!=e.lastIndexOf(".")&&(e=e.substring(0,e.lastIndexOf("."))),e},PF.fn.guid=function(){var t=(new Date).getTime();return"undefined"!=typeof performance&&"function"==typeof performance.now&&(t+=performance.now()),"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var n=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"===e?n:3&n|8).toString(16)})},PF.fn.md5=function(t){return SparkMD5.hash(t)},PF.fn.dataURItoBlob=function(t){var e;e=t.split(",")[0].indexOf("base64")>=0?atob(t.split(",")[1]):unescape(t.split(",")[1]);for(var n=t.split(",")[0].split(":")[1].split(";")[0],i=new Uint8Array(e.length),o=0;o0|-(value<0),o=value%1==.5*r,i=Math.floor(value),o)switch(e){case"PHP_ROUND_HALF_DOWN":value=i+(r<0);break;case"PHP_ROUND_HALF_EVEN":value=i+i%2*r;break;case"PHP_ROUND_HALF_ODD":value=i+!(i%2);break;default:value=i+(r>0)}return(o?value:Math.round(value))/n},String.prototype.getBytes=function(){var t=["KB","MB","GB","TB","PB","EB","ZB","YB"],e=this.toUpperCase().substr(-2);if(-1==t.indexOf(e))return this;var n=t.indexOf(e)+1;return parseFloat(this)*Math.pow(1e3,n)},String.prototype.formatBytes=function(t){var e=parseInt(this),n=["KB","MB","GB","TB","PB","EB","ZB","YB"];if(!$.isNumeric(this))return!1;if(e<1e3)return e+" B";if(void 0===t)t=2;for(var i=0;i=o&&i.indexOf(t[a])>=0));a++);return n?r.split("").reverse().join(""):r}t=void 0!==t?t:40;var n=t/2,i=this.replace(/https?:\/\//g,"");return i.length<=t?i:e(i,n,!1)+"..."+e(i,n,!0)},jQuery.extend({compare:function(t,e){var n="[object Object]",i="[object Array]",o=Object.prototype.toString.apply(t),r=Object.prototype.toString.apply(e);return o===r&&(o===n?$.compareObject(t,e):o===i?$.compareArray(t,e):t===e)},compareArray:function(t,e){var n,i,o,r,a;if(t===e)return!0;if(t.length!=e.length)return!1;for(n=jQuery.extend(!0,[],t),i=jQuery.extend(!0,[],e),n.sort(),i.sort(),o=0,l=n.length;o0},jQuery.fn.replace_svg=function(){this.attr("src")&&$(this).each(function(){$(this).attr("src",$(this).attr("src").replace(".svg",".png"))})},jQuery.fn.is_fluid=function(){return!0},jQuery.fn.bindFormData=function(){return $(":input",this).each(function(){var t=PF.fn.htmlEncode($(this).val());if($(this).is("input")&&(this.setAttribute("value",this.value),this.checked?this.setAttribute("checked","checked"):this.removeAttribute("checked")),$(this).is("textarea")&&$(this).html(t),$(this).is("select")){var e=this.selectedIndex,n=0;$(this).children("option").each(function(){n++!=e?this.removeAttribute("selected"):this.setAttribute("selected","selected")})}}),this},jQuery.fn.formValues=function(t){var e=$(":input",this);return"object"!=typeof t?(t={},$.each(e,function(){this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/color|date|datetime|datetime-local|email|month|range|search|tel|time|url|week|text|number|hidden|password/i.test(this.type))&&(this.name.match(/^.*\[\]$/)&&this.checked?(void 0===t[this.name]&&(t[this.name]=[]),t[this.name].push($(this).val())):t[this.name]=$(this).val())}),t):($.each(e,function(){this.name.match(/^.*\[\]$/)&&"object"==typeof t[this.name]?$(this).prop("checked",-1!==t[this.name].indexOf($(this).val())):this.name&&t[this.name]?/checkbox|radio/i.test(this.type)?$(this).prop("checked",t[this.name]==$(this).val()):$(this).val(t[this.name]):/checkbox|radio/i.test(this.type)&&$(this).removeProp("checked")}),$(this))},jQuery.fn.storeformData=function(t){return void 0===t&&void 0!==$(this).attr("id")&&(t=$(this).attr("id")),void 0!==t&&$(this).data(t,$(this).formValues()),this},jQuery.fn.is_sameformData=function(t){var e=$(this);return void 0===t&&(t=e.attr("id")),jQuery.compare(e.formValues(),e.data(t))},jQuery.Event.prototype.keydown_numeric=function(){var t=this;if(t.shiftKey)return t.preventDefault(),!1;var e=t.charCode||t.keyCode,n=t.target;""==$(n).val()||parseInt($(n).val());return 13==e||(46==e||8==e||9==e||27==e||65==e&&!0===t.ctrlKey||e>=35&&e<=40||void((e<48||e>57)&&(e<96||e>105)&&t.preventDefault()))},PF.fn.is_canvas_supported=function(){var t=document.createElement("canvas");return!(!t.getContext||!t.getContext("2d"))},PF.fn.is_validity_supported=function(){var t=document.createElement("input");return"object"==typeof t.validity},PF.fn.getScrollBarWidth=function(){var t=document.createElement("p");t.style.width="100%",t.style.height="200px";var e=document.createElement("div");e.style.position="absolute",e.style.top="0px",e.style.left="0px",e.style.visibility="hidden",e.style.width="200px",e.style.height="150px",e.style.overflow="hidden",e.appendChild(t),document.body.appendChild(e);var n=t.offsetWidth;e.style.overflow="scroll";var i=t.offsetWidth;return n==i&&(i=e.clientWidth),document.body.removeChild(e),n-i},PF.str.ScrollBarWidth=PF.fn.getScrollBarWidth(),PF.fn.top_notifications_viewed=function(){var t=$("[data-action=top-bar-notifications]"),e=($(".top-bar-notifications-list",t),$(".top-btn-number",t));$(".persistent",t).exists()?e.text($(".persistent",t).length).addClass("on"):e.removeClass("on")},PF.fn.bindtipTip=function(t,e){void 0===t&&(t=$("body")),t instanceof jQuery==0&&(t=$(t));var n={delay:0,content:!1,fadeIn:0};void 0!==e&&(void 0!==e.delay&&(n.delay=e.delay),void 0!==e.content&&(n.content=e.content),void 0!==e.content&&(n.fadeIn=e.fadeIn)),"tooltip"!==t.attr("rel")&&(t=$("[rel=tooltip]",t)),t.each(function(){if((void 0!==$(this).attr("href")||void 0!==$(this).data("href"))&&PF.fn.isDevice(["phone","phablet","tablet"]))return!0;var t=void 0===$(this).data("tiptip")?"bottom":$(this).data("tiptip");PF.fn.isDevice(["phone","phablet"])&&(t="top"),$(this).tipTip({delay:n.delay,defaultPosition:t,content:n.content,fadeIn:n.fadeIn,fadeOut:0})})},PF.fn.form_modal_has_changed=function(){if(!$(PF.obj.modal.selectors.root).is(":hidden")&&void 0!==$("html").data("modal-form-values")){var t=$("html").data("modal-form-values"),e=PF.fn.deparam($(":input:visible",PF.obj.modal.selectors.root).serialize()),n=!1,i=$.extend({},t,e);for(var o in i)if(t[o]!==e[o]){n=!0;break}return n}},PF.fn.is_listing=function(){return $(PF.obj.listing.selectors.content_listing).exists()},PF.fn.is_tabs=function(){return $(".content-tabs").exists()},jQuery.fn.shake=function(t){return this.each(function(t){var e=$(this);e.addClass("animate shake").promise().done(function(){setTimeout(function(){e.removeClass("shake")},820)})}),"function"==typeof t&&t(),this},jQuery.fn.highlight=function(t){if(this.is(":animated")||!this.exists())return this;void 0===t&&(t="yellow");var e=t;switch(t){case"yellow":e="#FFFBA2";break;case"red":e="#FF7F7F";break;default:e=t}var n=$(this).css("background-color");$(this).css("background");return $(this).css({background:"",backgroundColor:e}).animate({backgroundColor:n},1e3,function(){$(this).css("background","")}),this},jQuery.fn.pf_slideDown=function(t,e){var n,i,o,r="normal",a=$(this).length;return"function"==typeof t&&(e=t,t=r),void 0===t&&(t=r),$(this).each(function(r){var s=parseInt($(this).css("top")),l=s>0?s:0;0==t?(n={display:"block",opacity:0},i={opacity:1},o=jQuery.speed("fast").duration):(n={top:-$(this).outerHeight(!0),opacity:1,display:"block"},i={top:l},o=jQuery.speed(t).duration),$(this).data("originalTop",$(this).css("top")),$(this).css(n).animate(i,o,function(){r==a-1&&"function"==typeof e&&e()})}),this},jQuery.fn.pf_slideUp=function(t,e){var n="normal",i=$(this).length;return"function"==typeof t&&(e=t,t=n),void 0===t&&(t=n),$(this).each(function(n){$(this).animate({top:-$(this).outerHeight(!0)},jQuery.speed(t).duration,function(){$(this).css({display:"none",top:$(this).data("originalTop")}),n==i-1&&"function"==typeof e&&e()})}),this},jQuery.fn.is_in_viewport=function(){var t=$(this)[0].getBoundingClientRect();return t.top>=0&&t.left>=0&&t.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&t.right<=(window.innerWidth||document.documentElement.clientWidth)},jQuery.fn.is_within_viewport=function(t){var e=$(this)[0].getBoundingClientRect();return void 0===t&&(t=0),e.top>=0&&e.left>=0&&e.top+t<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)},jQuery.fn.getWindowCutoff=function(){var t={top:$(this).offset().top,left:$(this).offset().left,width:$(this).outerWidth(),height:$(this).outerHeight()};t.right=t.left+t.width,t.bottom=t.top+t.height;var e=!1,n={top:t.top>0?0:t.top,right:document.body.clientWidth-t.right,bottom:document.body.clientHeight-t.bottom,left:t.left>0?0:t.left};for(var i in n)n[i]<0?e=!0:n[i]=0;return e?n:null},PF.fn.scroll=function(t,e){if("function"==typeof t)e=t,t="";var n=parseInt($("body").css("margin-top"));0==n&&$(".top-bar-placeholder").exists()&&(n=$(".top-bar-placeholder").height()),$(t).exists()||(t="html"),$("body,html").animate({scrollTop:$(t).offset().top-n},"normal",function(){"function"==typeof e&&e()})},PF.fn.close_pops=function(t){$(".pop-box:visible").each(function(){$(this).closest(".pop-btn").trigger("click")})},PF.fn.growl={selectors:{root:"#growl"},str:{timeout:null,timeoutcall:!1},call:function(t){if(void 0!==t&&("string"==typeof t&&(t={message:t}),void 0!==t.message)){var e,n,i,o;for(key in e={message:t.message,insertTo:"body",where:"before",color:"default",css:{},classes:"",expires:0,callback:function(){}},e)void 0!==t[key]&&(key.match("/^(callback)$/")?"function"==typeof t[key]&&(e[key]=t[key]):e[key]=t[key]);if($(e.insertTo).exists()||(e.insertTo="body"),$(PF.fn.growl.selectors.root).exists()){if($(PF.fn.growl.selectors.root).text()==e.message)return void $(PF.fn.growl.selectors.root).shake();$(PF.fn.growl.selectors.root).remove()}switch(n=$('
    '+e.message+'
    ').css(e.css).addClass(e.classes),i="body"!==e.insertTo?"static":"",e.color){case"dark":o="dark";break;default:o=""}n.addClass(i+" "+o),"before"==e.where?$(e.insertTo).prepend(n.hide()):$(e.insertTo).append(n.hide()),n.pf_slideDown("static"==i?0:200,function(){"function"==typeof e.callback&&e.callback()}),$(document).on("click",".growl",function(t){(PF.fn.isDevice(["phone","phablet"])||$(t.target).is("[data-action=close]"))&&PF.fn.growl.close(!0)}),e.expires>0&&("number"==typeof this.str.timeout&&clearTimeout(this.str.timeout),this.str.timeout=setTimeout(function(){PF.fn.growl.str.timeoutcall=!0,PF.fn.growl.close()},e.expires))}},expirable:function(t,e){void 0!==t&&(void 0===e&&(e=5e3),PF.fn.growl.call({message:t,expires:e}))},close:function(t,e){var n=$(PF.fn.growl.selectors.root);t&&(this.str.timeout=null,this.str.timeoutcall=!1,clearTimeout(this.str.timeout)),n.exists()&&("number"!=typeof this.str.timeout||this.str.timeoutcall)&&n.fadeOut("fast",function(){$(this).remove(),"function"==typeof e&&e()})}},PF.obj.modal={type:"",selectors:{root:"#fullscreen-modal",box:"#fullscreen-modal-box",body:"#fullscreen-modal-body",login:"[data-modal=login]",changes_confirm:"#fullscreen-changes-confirm",btn_container:".btn-container",close_buttons:".close-modal,.cancel-modal,[data-action=cancel],[data-action-close]",submit_button:"[data-action=submit]",growl_placeholder:"#fullscreen-growl-placeholder"},ajax:{url:"",deferred:{}},locked:!1,form_data:{},XHR:{},prevented:!1},PF.obj.modal.$close_buttons=$(PF.obj.modal.selectors.close_buttons,PF.obj.modal.selectors.root),PF.fn.modal={str:{transition:"all "+PF.obj.config.animation.fast+"ms "+PF.obj.config.animation.easingFn},call:function(t){var e,n;if(void 0!==t&&(void 0!==t.template&&void 0===t.type&&(t.type="html"),void 0!==t.title&&void 0!==t.message||"login"===t.type||"html"===t.type)){for(key in PF.fn.growl.close(),e={forced:!1,type:"confirm",title:t.title,message:t.message,html:!1,template:t.template,buttons:!0,button_submit:PF.fn._s("Submit"),txt_or:PF.fn._s("or"),button_cancel:PF.fn._s("cancel"),ajax:{url:null,data:null,deferred:{}},confirm:function(){},cancel:function(){PF.fn.modal.close()},load:function(){},callback:function(){}},e)void 0!==t[key]&&(/^cancel|confirm|callback$/.test(key)?"function"==typeof t[key]&&(e[key]=t[key]):e[key]=t[key]);void 0!==t.ajax&&!t.ajax.url&&t.ajax.deferred&&(e.ajax.url=PF.obj.config.json_api),"login"==e.type&&(e.buttons=!1),"confirm"==e.type&&(e.button_submit=PF.fn._s("Confirm"));var i,o="black",r=['
    %MODAL_BODY%
    %MODAL_BUTTONS%
    '].join(""),a=e.buttons?['
    "].join(""):"";switch("login"==e.type&&(e.template=void 0===e.template?$(PF.obj.modal.selectors.login).html():e.template),e.type){case"html":case"login":i=e.template;break;case"confirm":default:n=e.message,e.html||(n="

    "+n+"

    "),i="

    "+e.title+"

    "+n}if(void 0!==i){if(r=r.replace("%MODAL_BODY%",i).replace("%MODAL_BUTTONS%",a).replace(/template-tooltip/g,"tooltip"),$(PF.obj.modal.selectors.root).remove(),$("body").data("hasOverflowHidden",$("body").hasClass("overflow-hidden")&&!$("body").hasClass("pop-box-show")),$("body").prepend(r).addClass("overflow-hidden"),this.fixScrollbars(),$("[rel=tooltip]",PF.obj.modal.selectors.root).each(function(){PF.fn.bindtipTip(this,{content:$(this).data("title")})}),$(":button, input[type=submit], input[type=reset]",PF.obj.modal.selectors.root).length>0){var s=$("form",PF.obj.modal.selectors.root);s.exists()?(s.append($($(PF.obj.modal.selectors.btn_container,PF.obj.modal.selectors.root).html()).wrapInner(PF.obj.modal.selectors.btn_container.replace(".",""))),$(PF.obj.modal.selectors.btn_container,PF.obj.modal.selectors.root).each(function(){$(this).closest("form").exists()||$(this).remove()})):$(PF.obj.modal.selectors.box,PF.obj.modal.selectors.root).wrapInner("
    ")}e.callback(),$(PF.obj.modal.selectors.box).css({transform:"scale(0.7)",opacity:0,transition:PF.fn.modal.str.transition}),$(PF.obj.modal.selectors.root).addClass("--show"),setTimeout(function(){$(PF.obj.modal.selectors.root).css({opacity:1}),$(PF.obj.modal.selectors.box).css({transform:"scale(1)",opacity:1}),"undefined"!=typeof PFrecaptchaCallback&&PFrecaptchaCallback(),setTimeout(function(){$("html").data("modal-form-values",PF.fn.deparam($(":input:visible",PF.obj.modal.selectors.root).serialize())),"function"==typeof e.load&&e.load()},PF.obj.config.animation.fast),PF.fn.modal.styleAware()},10),$(PF.obj.modal.selectors.root).on("click",function(n){var i=$(n.target),o=this;if(!PF.obj.modal.locked&&!i.is(PF.obj.modal.selectors.root)){var r=i.is(PF.obj.modal.selectors.close_buttons)||i.closest(PF.obj.modal.selectors.close_buttons).exists(),a=i.is(PF.obj.modal.selectors.submit_button)||i.closest(PF.obj.modal.selectors.submit_button).exists(),s=r||a;if(i.closest(PF.obj.modal.selectors.changes_confirm).exists()&&s)$(PF.obj.modal.selectors.changes_confirm).remove(),r?$(PF.obj.modal.selectors.box,o).fadeIn("fast",function(){$(this).css("transition",PF.fn.modal.str.transition)}):PF.fn.modal.close();else if(i.closest(".clickable").exists()&&!r||(PF.fn.growl.close(),e.cancel()),a){if(!1===e.confirm())return;var l=!0;if($("input, textarea, select",PF.obj.modal.selectors.root).not(":input[type=button], :input[type=submit], :input[type=reset]").length>0&&!PF.fn.form_modal_has_changed()&&!e.forced&&(l=!1),l)if(e.ajax.url){var c,u=$(PF.obj.modal.selectors.btn_container,PF.obj.modal.selectors.root);switch(PF.obj.modal.locked=!0,u.first().clone().height(u.height()).html("").addClass("loading").appendTo(PF.obj.modal.selectors.root+" form"),u.hide(),PF.obj.modal.$close_buttons.hide(),PF.obj.modal.type){case"edit":c=PF.fn._s("Saving");break;case"confirm":case"form":default:c=PF.fn._s("Sending")}PF.fn.loading.inline($(PF.obj.modal.selectors.btn_container+".loading",PF.obj.modal.selectors.root),{size:"small",message:c,valign:"center"}),$(PF.obj.modal.selectors.root).disableForm(),(!$.isEmptyObject(PF.obj.modal.form_data)||void 0!==t.ajax&&void 0===t.ajax.data)&&(e.ajax.data=PF.obj.modal.form_data),PF.obj.modal.XHR=$.ajax({url:e.ajax.url,type:"POST",data:e.ajax.data}).complete(function(t){if(PF.obj.modal.locked=!1,200==t.status){var n=void 0!==e.ajax.deferred&&void 0!==e.ajax.deferred.success?e.ajax.deferred.success:null;"function"==typeof n?PF.fn.modal.close(function(){"function"==typeof n&&n(t)}):"object"==typeof n&&("function"==typeof n.before&&n.before(t),"function"==typeof n.done&&n.done(t))}else if($(PF.obj.modal.selectors.root).enableForm(),$(PF.obj.modal.selectors.btn_container+".loading",PF.obj.modal.selectors.root).remove(),u.css("display",""),void 0!==e.ajax.deferred&&"function"==typeof e.ajax.deferred.error)e.ajax.deferred.error(t);else{var i=PF.fn._s("An error occurred. Please try again later.");t.responseJSON.error.message&&(i=t.responseJSON.error.message),PF.fn.growl.call(i)}})}else PF.fn.modal.close(e.callback())}}})}else console.log("PF Error: Modal content is empty")}},styleAware:function(){$(PF.obj.modal.selectors.root).exists()&&$(PF.obj.modal.selectors.root).toggleClass("--has-scrollbar",$(PF.obj.modal.selectors.root).hasScrollbar().vertical)},confirm:function(t){t.type="confirm",void 0===t.title&&(t.title=PF.fn._s("Confirm action")),PF.fn.modal.call(t)},simple:function(t){"string"==typeof t&&(t={message:t}),void 0===t.buttons&&(t.buttons=!1),void 0===t.title&&(t.title=PF.fn._s("information")),PF.fn.modal.call(t)},fixScrollbars:function(){if($(PF.obj.modal.selectors.root).exists()){var t={padding:$(".fixed, .position-fixed"),margin:$("html")},e={};PF.str.ScrollBarWidth>0&&$("html").hasScrollbar().vertical&&!$("body").data("hasOverflowHidden")?(e.padding=PF.str.ScrollBarWidth+"px",e.margin=PF.str.ScrollBarWidth+"px"):(e.padding="",e.margin=""),t.padding.css({paddingRight:e.padding}),t.margin.css({marginRight:e.margin})}},close:function(t){$(PF.obj.modal.selectors.root).exists()&&(PF.fn.growl.close(!0),$("[rel=tooltip]",PF.obj.modal.selectors.root).tipTip("hide"),$(PF.obj.modal.selectors.box).css({transform:"scale(0.5)",opacity:0}),$(PF.obj.modal.selectors.root).css({opacity:0}),setTimeout(function(){PF.str.ScrollBarWidth>0&&$("html").hasScrollbar().vertical&&$(".fixed, .position-fixed").css({paddingRight:""}),$("html").css({marginRight:""}),$("body").data("hasOverflowHidden")||$("html,body").removeClass("overflow-hidden"),$("body").removeData("hasOverflowHidden"),$(PF.obj.modal.selectors.root).remove(),"function"==typeof t&&t()},PF.obj.config.animation.normal))}},PF.fn.keyFeedback={enabled:!0,timeout:{spawn:null,remove:null},selectors:{root:"#key-feedback"},translate:{ArrowLeft:"◄",ArrowRight:"►",Delete:"Del",Escape:"Esc"},spawn:function(t){if(0!=this.enabled&&!PF.fn.isDevice(["phone","phablet"])){var e=$(PF.fn.keyFeedback.selectors.root);e.exists()||($("body").append($("
    ").attr({id:"key-feedback",class:"key-feedback"})),e=$(PF.fn.keyFeedback.selectors.root));var n=[];if((t.ctrlKey||t.metaKey)&&"KeyV"===t.originalEvent.code&&(t={type:"keydown",key:PF.fn._s("Paste")}),"contextmenu"===t.type&&t.ctrlKey&&(t.type="click"),"contextmenu"===t.type)n.push(PF.fn._s("Right click"));else if(t.ctrlKey&&n.push("Ctrl"),t.metaKey&&n.push("⌘"),t.hasOwnProperty("key")){var i=1===t.key.length?t.key.toUpperCase():t.key;i in this.translate&&(i=this.translate[i]),n.push(i)}"click"===t.type&&n.push("click"),e.html(n.join(" + ",n)).css("opacity",1),clearTimeout(PF.fn.keyFeedback.timeout.spawn),clearTimeout(PF.fn.keyFeedback.timeout.remove),PF.fn.keyFeedback.timeout.spawn=setTimeout(function(){e.css("opacity",0),PF.fn.keyFeedback.timeout.remove=setTimeout(function(){e.remove()},500)},1500)}}},PF.fn.popup=function(t){var e={height:t.height||500,width:t.width||650,scrollTo:0,resizable:0,scrollbars:0,location:0};e.top=screen.height/2-e.height/2,e.left=screen.width/2-e.width/2;var n="";for(var i in e)n+=i+"="+e[i]+",";n=n.slice(0,-1),window.open(t.href,"Popup",n)},PF.fn.list_fluid_width=function(){if($("body").is_fluid()){var t=$(PF.obj.listing.selectors.content_listing_visible),e=$(PF.obj.listing.selectors.pad_content,t),n=$(PF.obj.listing.selectors.list_item,t),i=n.outerWidth(!0),o=n.outerWidth(!0)-n.width();PF.obj.listing.content_listing_ratio=parseInt((t.width()+o)/i),n.length6?"small-cols":""),s.css("width","100%");var d=0;c.each(function(t){$(this).addClass("jsly");var i=$(".list-item-image",this),o=$(".list-item-image img",this),r=$(".list-item-thumbs",this);o.hasClass("jsly-loaded");o.show(),n&&($(this).css({top:"",left:"",height:"",position:""}),i.css({maxHeight:"",height:""}),o.removeClass("jsly").css({width:"",height:""}).parent().css({marginLeft:"",marginTop:""}),$("li",r).css({width:"",height:""}));var s=1==PF.obj.listing.columns_number?"100%":parseFloat(1/PF.obj.listing.columns_number*a.width()+"px");if($(this).css("width",s),PF.obj.listing.current_column>PF.obj.listing.columns_number&&(PF.obj.listing.current_column=1),$(this).attr("data-col",PF.obj.listing.current_column),!o.exists()){var l=!0;o=$(".image-container .empty",this)}var u=$(this).is(":visible");c.show();var h=i.hasClass("fixed-size"),f={w:parseFloat(o.attr("width")),h:parseFloat(o.attr("height"))};if(f.ratio=f.w/f.h,l||i.css("min-height")&&!o.hasClass("jsly")){var p={w:$(this).width(),h:h?$(this).width():null},g=Math.min(f.w,f.w1||1==f.ratio)?(f.h=Math.min(f.h,f.w=3||f.ratio<1||1==f.ratio?f.h=f.w/f.ratio:(f.h=Math.min(f.h,f.w),f.w=f.h*f.ratio),l&&(f.h=p.w),i.css({height:f.h})),0==o.width()&&o.css({width:g,height:g/f.ratio}),$(".image-container",this).is(".list-item-avatar-cover")&&o.css(h?{width:"auto",height:"100%"}:{width:"100%",height:"auto"});var m=Math.max(2*o.position().left,0),b=Math.max(2*o.position().top,0),v=m/i.width(),y=b/i.height();(m>0||b>0)&&(v<=.25||y<=.25)&&i.addClass("--fit"),r.exists()&&$("li",r).css({width:100/$("li",r).length+"%"}).css({height:$("li",r).width()}),u||c.hide()}!o.hasClass("jsly")&&$(this).is(":hidden")&&$(this).css("top","100%"),PF.obj.listing.columns[PF.obj.listing.current_column]+=$(this).outerHeight(!0),$(this).is(":animated")&&(e=0),$(this).addClass("position-absolute");var w=$(this).outerWidth(!0)*(PF.obj.listing.current_column-1),P=parseFloat($(this).css("left"))!=w ;P&&(animate_grid=!0,$(this).animate({left:w},e));var x=PF.obj.listing.columns[PF.obj.listing.current_column]-$(this).outerHeight(!0);parseFloat($(this).css("top"))!=x&&(animate_grid=!0,$(this).animate({top:x},e),P&&(d=1)),u&&c.show(),PF.obj.listing.current_column++}),a.data({columns:PF.obj.listing.columns,current_column:PF.obj.listing.current_column}).attr("data-columns",PF.obj.listing.columns_number);var h=0;if($.each(PF.obj.listing.columns,function(t,e){e>h&&(h=e)}),PF.obj.listing.width=a.width(),void 0!==PF.obj.listing.height)var f=PF.obj.listing.height;PF.obj.listing.height=h;var p=void 0!==f&&f!==PF.obj.listing.height;p||(s.height(h),PF.fn.list_fluid_width()),p&&(s.height(f),setTimeout(function(){s.animate({height:h},e,function(){PF.fn.list_fluid_width()})},e*d)),a.data("list-mode",PF.obj.listing.mode),$(PF.obj.listing.selectors.content_listing_visible).data("queued",!1),a.addClass("jsly")}},PF.fn.loading={spin:{small:{lines:11,length:0,width:3,radius:7,speed:1,trail:45,blocksize:20},normal:{lines:11,length:0,width:5,radius:10,speed:1,trail:45,blocksize:30},big:{lines:11,length:0,width:7,radius:13,speed:1,trail:45,blocksize:40},huge:{lines:11,length:0,width:9,radius:16,speed:1,trail:45,blocksize:50}},inline:function(t,e){if(void 0!==t){if(t instanceof jQuery==0)t=$(t);var n={size:"normal",color:$("body").css("color"),center:!1,position:"absolute",shadow:!1,valign:"top"};if(void 0===e)e=n;else for(var i in n)void 0===e[i]&&(e[i]=n[i]);PF.fn.loading.spin[e.size];PF.fn.loading.spin[e.size].color=e.color,PF.fn.loading.spin[e.size].shadow=e.shadow,t.html(''+(void 0!==e.message?''+e.message+"":"")).css({"line-height":PF.fn.loading.spin[e.size].blocksize+"px"}),$(".loading-indicator",t).css({width:PF.fn.loading.spin[e.size].blocksize,height:PF.fn.loading.spin[e.size].blocksize}).spin(PF.fn.loading.spin[e.size]),e.center&&$(".loading-indicator",t.css("textAlign","center")).css({position:e.position,top:"50%",insetInlineStart:"50%",marginTop:-PF.fn.loading.spin[e.size].blocksize/2,marginInlineStart:-PF.fn.loading.spin[e.size].blocksize/2}),"center"==e.valign&&$(".loading-indicator,.loading-text",t).css("marginTop",(t.height()-PF.fn.loading.spin[e.size].blocksize)/2+"px"),$(".spinner",t).css({top:PF.fn.loading.spin[e.size].blocksize/2+"px",insetInlineStart:PF.fn.loading.spin[e.size].blocksize/2+"px"})}},fullscreen:function(){$("body").append('
    '+PF.fn._s("loading")+"
    "),$(".fullscreen-loader","#pf-fullscreen-loader").spin(PF.fn.loading.spin.huge),$("#pf-fullscreen-loader").css("opacity",1)},destroy:function(t){var e=$("#pf-fullscreen-loader"),n=$("#pf-onscreen-loader");"fullscreen"==t&&(t=e),"onscreen"==t&&(t=n),void 0!==t?t.remove():(e.remove(),n.remove())}},jQuery.fn.disableForm=function(){return $(this).data("disabled",!0),$(":input",this).each(function(){$(this).attr("disabled",!0)}),this},jQuery.fn.enableForm=function(){return $(this).data("disabled",!1),$(":input",this).removeAttr("disabled"),this},PF.fn.isDevice=function(t){if("object"==typeof t)t="."+t.join(",.");else t="."+t;return $("html").is(t)},PF.fn.getDeviceName=function(){var t;return $.each(PF.obj.devices,function(e,n){if(PF.fn.isDevice(n))return t=n,!0}),t},PF.fn.topMenu={vars:{$button:$("[data-action=top-bar-menu-full]","#top-bar"),menu:"#menu-fullscreen",speed:PF.obj.config.animation.fast,menu_top:parseInt($("#top-bar").outerHeight())+parseInt($("#top-bar").css("top"))+parseInt($("#top-bar").css("margin-top"))+parseInt($("#top-bar").css("margin-bottom"))-parseInt($("#top-bar").css("border-bottom-width"))+"px"},show:function(t){if(!$("body").is(":animated")){if(void 0===t)t=this.vars.speed;this.vars.$button.addClass("current"),$("html").addClass("menu-fullscreen-visible"),$("#top-bar").append($("
    ",{id:"menu-fullscreen",class:"touch-scroll",html:$("
    ",{class:"fullscreen black"})}).css({left:"-100%"}).append($("
      ",{html:$(".top-bar-left").html()+$(".top-bar-right").html()})));var e=$(this.vars.menu);$("li.phone-hide, li > .top-btn-text, li > .top-btn-text > span, li > a > .top-btn-text > span",e).each(function(){$(this).removeClass("phone-hide")}),$("[data-action=top-bar-menu-full]",e).remove(),$(".btn.black, .btn.default, .btn.blue, .btn.green, .btn.orange, .btn.red, .btn.transparent",e).removeClass("btn black default blue green orange red transparent"),setTimeout(function(){e.css({transform:"translateX(100%)"}),$(".fullscreen").css("opacity",1)},1),setTimeout(function(){e.css({transition:"none",transform:"",left:""}),$("html").css({backgroundColor:""})},t)}},hide:function(t){if(!$("body").is(":animated")&&$(this.vars.menu).is(":visible")){var e=$(this.vars.menu);if(void 0===t)t=this.vars.speed;e.css({transition:""}),setTimeout(function(){e.css({transform:"translateX(-100%)"})},1),$("#top-bar").css("position",""),this.vars.$button.removeClass("current"),$("html").removeClass("menu-fullscreen-visible"),setTimeout(function(){e.remove()},t)}}},function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var n=this._events=this._events||{},i=n[t]=n[t]||[];return-1==i.indexOf(e)&&i.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var n=this._onceEvents=this._onceEvents||{},i=n[t]=n[t]||{};return i[e]=!0,this}},e.off=function(t,e){var n=this._events&&this._events[t];if(n&&n.length){var i=n.indexOf(e);return-1!=i&&n.splice(i,1),this}},e.emitEvent=function(t,e){var n=this._events&&this._events[t];if(n&&n.length){n=n.slice(0),e=e||[];for(var i=this._onceEvents&&this._onceEvents[t],o=0;o
    '),o=t('
    '),r=t('
    ');t("body").append(i.html(o).prepend(r.html('
    ')))}else i=t("#tiptip_holder"),o=t("#tiptip_content"),r=t("#tiptip_arrow");return this.each(function(){function a(){var e;if(!1!==u.enter.call(l,d)&&(u.content?e=t.isFunction(u.content)?u.content.call(l,d):u.content:(e=u.content=l.attr(u.attribute),l.removeAttr(u.attribute)),e)){o.html(e),i.hide().removeAttr("class").css({margin:"0px","max-width":u.maxWidth}),u.cssClass&&i.addClass(u.cssClass),r.removeAttr("style");var n=parseInt(l.offset().top),a=parseInt(l.offset().left),s=parseInt(l.outerWidth()),c=parseInt(l.outerHeight()),f=i.outerWidth(),p=i.outerHeight(),g=Math.round((s-f)/2),m=Math.round((c-p)/2),b=Math.round(a+g),v=Math.round(n+c+u.edgeOffset),y="",w="",P=Math.round(f-12)/2;"bottom"==u.defaultPosition?y="_bottom":"top"==u.defaultPosition?y="_top":"left"==u.defaultPosition?y="_left":"right"==u.defaultPosition&&(y="_right");var $=g+aparseInt(t(window).width());$&&g<0||"_right"==y&&!x||"_left"==y&&aparseInt(t(window).height()+t(window).scrollTop()),_=n+c-(u.edgeOffset+p+8)<0;F||"_bottom"==y&&F||"_top"==y&&!_?("_top"==y||"_bottom"==y?y="_top":y+="_top",w=p,v=Math.round(n-(p+5+u.edgeOffset))):(_|("_top"==y&&_)||"_bottom"==y&&!F)&&("_top"==y||"_bottom"==y?y="_bottom":y+="_bottom",w=-12,v=Math.round(n+c+u.edgeOffset)),"_right_top"==y||"_left_top"==y?v+=5:"_right_bottom"!=y&&"_left_bottom"!=y||(v-=5),"_left_top"!=y&&"_left_bottom"!=y||(b+=5),r.css({"margin-left":P+"px","margin-top":w+"px"}),i.css({"margin-left":b+"px","margin-top":v+"px"}).addClass("tip"+y),h&&clearTimeout(h),h=setTimeout(function(){i.stop(!0,!0).fadeIn(u.fadeIn)},u.delay),u.afterEnter.call(l,d)}}function s(){!1!==u.exit.call(l,d)&&(h&&clearTimeout(h),i.fadeOut(u.fadeOut),u.afterExit.call(l,d))}var l=t(this),c=l.data("tipTip"),u=c&&c.options||t.extend(n,e),d={holder:i,content:o,arrow:r,options:u};if(c)switch(e){case"show":a();break;case"hide":s();break;case"destroy":l.unbind(".tipTip").removeData("tipTip")}else{var h=!1;l.data("tipTip",{options:u}),"hover"==u.activation?l.bind("mouseenter.tipTip",function(){a()}).bind("mouseleave.tipTip",function(){u.keepAlive?i.one("mouseleave.tipTip",function(){s()}):s()}):"focus"==u.activation?l.bind("focus.tipTip",function(){a()}).bind("blur.tipTip",function(){s()}):"click"==u.activation?l.bind("click.tipTip",function(t){return t.preventDefault(),a(),!1}).bind("mouseleave.tipTip",function(){u.keepAlive?i.one("mouseleave.tipTip",function(){s()}):s()}):u.activation}})}}(jQuery),function(t){function e(t,e){if(!(t.originalEvent.touches.length>1)){t.preventDefault();var n=t.originalEvent.changedTouches[0],i=document.createEvent("MouseEvents");i.initMouseEvent(e,!0,!0,window,1,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),t.target.dispatchEvent(i)}}if(t.support.touch="ontouchend"in document,t.support.touch){var n,i=t.ui.mouse.prototype,o=i._mouseInit;i._touchStart=function(t){var i=this;!n&&i._mouseCapture(t.originalEvent.changedTouches[0])&&(n=!0,i._touchMoved=!1,e(t,"mouseover"),e(t,"mousemove"),e(t,"mousedown"))},i._touchMove=function(t){n&&(this._touchMoved=!0,e(t,"mousemove"))},i._touchEnd=function(t){n&&(e(t,"mouseup"),e(t,"mouseout"),this._touchMoved||e(t,"click"),n=!1)},i._mouseInit=function(){var e=this;e.element.bind("touchstart",t.proxy(e,"_touchStart")).bind("touchmove",t.proxy(e,"_touchMove")).bind("touchend",t.proxy(e,"_touchEnd")),o.call(e)}}}(jQuery),function(t){"function"==typeof define&&define.amd&&define.amd.jQuery?define(["jquery"],t):t(jQuery)}(function(t){function e(e){return!e||void 0!==e.allowPageScroll||void 0===e.swipe&&void 0===e.swipeStatus||(e.allowPageScroll=c),void 0!==e.click&&void 0===e.tap&&(e.tap=e.click),e||(e={}),e=t.extend({},t.fn.swipe.defaults,e),this.each(function(){var i=t(this),o=i.data(_);o||(o=new n(this,e),i.data(_,o))})}function n(e,n){function S(e){if(!(st()||t(e.target).closest(n.excludedElements,zt).length>0)){var i,o=e.originalEvent?e.originalEvent:e,r=F?o.touches[0]:o;return qt=w,F?Nt=o.touches.length:e.preventDefault(),Ot=0,At=null,Bt=null,Ht=0,Mt=0,Lt=0,Dt=1,Ut=0,Wt=ht(),Rt=gt(),rt(),!F||Nt===n.fingers||n.fingers===v||R()?(ct(0,r),Qt=Ft(),2==Nt&&(ct(1,o.touches[1]),Mt=Lt=vt(Wt[0].start,Wt[1].start)),(n.swipeStatus||n.pinchStatus)&&(i=O(o,qt))):i=!1,!1===i?(qt=x,O(o,qt),i):(lt(!0),null)}}function j(t){var e=t.originalEvent?t.originalEvent:t;if(qt!==$&&qt!==x&&!at()){var i,o=F?e.touches[0]:e,r=ut(o);if(Vt=Ft(),F&&(Nt=e.touches.length),qt=P,2==Nt&&(0==Mt?(ct(1,e.touches[1]),Mt=Lt=vt(Wt[0].start,Wt[1].start)):(ut(e.touches[1]),Lt=vt(Wt[0].end,Wt[1].end),Bt=wt(Wt[0].end,Wt[1].end)),Dt=yt(Mt,Lt),Ut=Math.abs(Mt-Lt)),Nt===n.fingers||n.fingers===v||!F||R()){if(At=xt(r.start,r.end),U(t,At),Ot=Pt(r.start,r.end),Ht=bt(),ft(At,Ot),(n.swipeStatus||n.pinchStatus)&&(i=O(e,qt)),!n.triggerOnTouchEnd||n.triggerOnTouchLeave){var a=!0;if(n.triggerOnTouchLeave){var s=_t(this);a=St(r.end,s)}!n.triggerOnTouchEnd&&a?qt=E(P):n.triggerOnTouchLeave&&!a&&(qt=E($)),qt!=x&&qt!=$||O(e,qt)}}else qt=x,O(e,qt);!1===i&&(qt=x,O(e,qt))}}function k(t){var e=t.originalEvent;return F&&e.touches.length>0?(ot(),!0):(at()&&(Nt=Xt),t.preventDefault(),Vt=Ft(),Ht=bt(),M()?(qt=x,O(e,qt)):n.triggerOnTouchEnd||0==n.triggerOnTouchEnd&&qt===P?(qt=$,O(e,qt)):!n.triggerOnTouchEnd&&G()?(qt=$,A(e,qt,f)):qt===P&&(qt=x,O(e,qt)),lt(!1),null)}function T(){Nt=0,Vt=0,Qt=0,Mt=0,Lt=0,Dt=1,rt(),lt(!1)}function C(t){var e=t.originalEvent;n.triggerOnTouchLeave&&(qt=E($),O(e,qt))}function I(){zt.unbind(kt,S),zt.unbind(Et,T),zt.unbind(Tt,j),zt.unbind(Ct,k),It&&zt.unbind(It,C),lt(!1)}function E(t){var e=t,i=D(),o=H(),r=M();return!i||r?e=x:!o||t!=P||n.triggerOnTouchEnd&&!n.triggerOnTouchLeave?!o&&t==$&&n.triggerOnTouchLeave&&(e=x):e=$,e}function O(t,e){var n=void 0;return W()||N()?n=A(t,e,d):(z()||R())&&!1!==n&&(n=A(t,e,h)),nt()&&!1!==n?n=A(t,e,p):it()&&!1!==n?n=A(t,e,g):et()&&!1!==n&&(n=A(t,e,f)),e===x&&T(t),e===$&&(F?0==t.touches.length&&T(t):T(t)),n}function A(e,c,u){var m=void 0;if(u==d){if(zt.trigger("swipeStatus",[c,At||null,Ot||0,Ht||0,Nt]),n.swipeStatus&&(m=n.swipeStatus.call(zt,e,c,At||null,Ot||0,Ht||0,Nt),!1===m))return!1;if(c==$&&q()){if(zt.trigger("swipe",[At,Ot,Ht,Nt]),n.swipe&&(m=n.swipe.call(zt,e,At,Ot,Ht,Nt),!1===m))return!1;switch(At){case i:zt.trigger("swipeLeft",[At,Ot,Ht,Nt]),n.swipeLeft&&(m=n.swipeLeft.call(zt,e,At,Ot,Ht,Nt));break;case o:zt.trigger("swipeRight",[At,Ot,Ht,Nt]),n.swipeRight&&(m=n.swipeRight.call(zt,e,At,Ot,Ht,Nt));break;case r:zt.trigger("swipeUp",[At,Ot,Ht,Nt]),n.swipeUp&&(m=n.swipeUp.call(zt,e,At,Ot,Ht,Nt));break;case a:zt.trigger("swipeDown",[At,Ot,Ht,Nt]),n.swipeDown&&(m=n.swipeDown.call(zt,e,At,Ot,Ht,Nt))}}}if(u==h){if(zt.trigger("pinchStatus",[c,Bt||null,Ut||0,Ht||0,Nt,Dt]),n.pinchStatus&&(m=n.pinchStatus.call(zt,e,c,Bt||null,Ut||0,Ht||0,Nt,Dt),!1===m))return!1;if(c==$&&B())switch(Bt){case s:zt.trigger("pinchIn",[Bt||null,Ut||0,Ht||0,Nt,Dt]),n.pinchIn&&(m=n.pinchIn.call(zt,e,Bt||null,Ut||0,Ht||0,Nt,Dt));break;case l:zt.trigger("pinchOut",[Bt||null,Ut||0,Ht||0,Nt,Dt]),n.pinchOut&&(m=n.pinchOut.call(zt,e,Bt||null,Ut||0,Ht||0,Nt,Dt))}}return u==f?c!==x&&c!==$||(clearTimeout(Jt),X()&&!K()?(Yt=Ft(),Jt=setTimeout(t.proxy(function(){Yt=null,zt.trigger("tap",[e.target]),n.tap&&(m=n.tap.call(zt,e,e.target))},this),n.doubleTapThreshold)):(Yt=null,zt.trigger("tap",[e.target]),n.tap&&(m=n.tap.call(zt,e,e.target)))):u==p?c!==x&&c!==$||(clearTimeout(Jt),Yt=null,zt.trigger("doubletap",[e.target]),n.doubleTap&&(m=n.doubleTap.call(zt,e,e.target))):u==g&&(c!==x&&c!==$||(clearTimeout(Jt),Yt=null,zt.trigger("longtap",[e.target]),n.longTap&&(m=n.longTap.call(zt,e,e.target)))),m}function H(){var t=!0;return null!==n.threshold&&(t=Ot>=n.threshold),t}function M(){var t=!1;return null!==n.cancelThreshold&&null!==At&&(t=pt(At)-Ot>=n.cancelThreshold),t}function L(){return null===n.pinchThreshold||Ut>=n.pinchThreshold}function D(){var t;return t=!n.maxTimeThreshold||!(Ht>=n.maxTimeThreshold),t}function U(t,e){if(n.allowPageScroll===c||R())t.preventDefault();else{var s=n.allowPageScroll===u;switch(e){case i:(n.swipeLeft&&s||!s&&n.allowPageScroll!=m)&&t.preventDefault();break;case o:(n.swipeRight&&s||!s&&n.allowPageScroll!=m)&&t.preventDefault();break;case r:(n.swipeUp&&s||!s&&n.allowPageScroll!=b)&&t.preventDefault();break;case a:(n.swipeDown&&s||!s&&n.allowPageScroll!=b)&&t.preventDefault()}}}function B(){var t=Q(),e=V(),n=L();return t&&e&&n}function R(){return!!(n.pinchStatus||n.pinchIn||n.pinchOut)}function z(){return!(!B()||!R())}function q(){var t=D(),e=H(),n=Q(),i=V(),o=M(),r=!o&&i&&n&&e&&t;return r}function N(){return!!(n.swipe||n.swipeStatus||n.swipeLeft||n.swipeRight||n.swipeUp||n.swipeDown)}function W(){return!(!q()||!N())}function Q(){return Nt===n.fingers||n.fingers===v||!F}function V(){return 0!==Wt[0].end.x}function G(){return!!n.tap}function X(){return!!n.doubleTap}function Y(){return!!n.longTap}function J(){if(null==Yt)return!1;var t=Ft();return X()&&t-Yt<=n.doubleTapThreshold}function K(){return J()}function Z(){return(1===Nt||!F)&&(isNaN(Ot)||0===Ot)}function tt(){return Ht>n.longTapThreshold&&Ot=0?i:n<=360&&n>=315?i:n>=135&&n<=225?o:n>45&&n<135?a:r}function Ft(){var t=new Date;return t.getTime()}function _t(e){e=t(e);var n=e.offset(),i={left:n.left,right:n.left+e.outerWidth(),top:n.top,bottom:n.top+e.outerHeight()};return i}function St(t,e){return t.x>e.left&&t.xe.top&&t.ya?(n.maxWidth=r*a,n.maxHeight=r):(n.maxWidth=o,n.maxHeight=o/a),n},e.renderImageToCanvas=function(t,e,n,i,o,r,a,s,l,c){return t.getContext("2d").drawImage(e,n,i,o,r,a,s,l,c),t},e.hasCanvasOption=function(t){return t.canvas||t.crop||!!t.aspectRatio},e.scale=function(t,n,i){function o(){var t=Math.max((l||P)/P,(c||$)/$);t>1&&(P*=t,$*=t)}function r(){var t=Math.min((a||P)/P,(s||$)/$);t<1&&(P*=t,$*=t)}n=n||{};var a,s,l,c,u,d,h,f,p,g,m,b=document.createElement("canvas"),v=t.getContext||e.hasCanvasOption(n)&&b.getContext,y=t.naturalWidth||t.width,w=t.naturalHeight||t.height,P=y,$=w;if(b.originalWidth=y,b.originalHeight=w,v&&(n=e.getTransformedOptions(t,n,i),h=n.left||0,f=n.top||0,n.sourceWidth?(u=n.sourceWidth,void 0!==n.right&&void 0===n.left&&(h=y-u-n.right)):u=y-h-(n.right||0),n.sourceHeight?(d=n.sourceHeight,void 0!==n.bottom&&void 0===n.top&&(f=w-d-n.bottom)):d=w-f-(n.bottom||0),P=u,$=d),a=n.maxWidth,s=n.maxHeight,l=n.minWidth,c=n.minHeight,v&&a&&s&&n.crop?(P=a,$=s,m=u/d-a/s,m<0?(d=s*u/a,void 0===n.top&&void 0===n.bottom&&(f=(w-d)/2)):m>0&&(u=a*d/s,void 0===n.left&&void 0===n.right&&(h=(y-u)/2))):((n.contain||n.cover)&&(l=a=a||l,c=s=s||c),n.cover?(r(),o()):(o(),r())),v){if(p=n.pixelRatio,p>1&&(b.style.width=P+"px",b.style.height=$+"px",P*=p,$*=p,b.getContext("2d").scale(p,p)),g=n.downsamplingRatio,g>0&&g<1&&PP;)b.width=u*g,b.height=d*g,e.renderImageToCanvas(b,t,h,f,u,d,0,0,b.width,b.height),u=b.width,d=b.height,t=document.createElement("canvas"),t.width=u,t.height=d,e.renderImageToCanvas(t,b,0,0,u,d,0,0,u,d);return b.width=P,b.height=$,e.transformCoordinates(b,n),e.renderImageToCanvas(b,t,h,f,u,d,0,0,P,$)}return t.width=P,t.height=$,t},e.createObjectURL=function(t){return!!i&&i.createObjectURL(t)},e.revokeObjectURL=function(t){return!!i&&i.revokeObjectURL(t)},e.readFile=function(t,e,n){if(window.FileReader){var i=new FileReader;if(i.onload=i.onerror=e,n=n||"readAsDataURL",i[n])return i[n](t),i}return!1},"function"==typeof define&&define.amd?define(function(){return e}):"object"==typeof module&&module.exports?module.exports=e:t.loadImage=e}(window),function(t){"use strict";"function"==typeof define&&define.amd?define(["./load-image"],t):t("object"==typeof module&&module.exports?require("./load-image"):window.loadImage)}(function(t){"use strict";var e=window.Blob&&(Blob.prototype.slice||Blob.prototype.webkitSlice||Blob.prototype.mozSlice);t.blobSlice=e&&function(){var t=this.slice||this.webkitSlice||this.mozSlice;return t.apply(this,arguments)},t.metaDataParsers={jpeg:{65505:[]}},t.parseMetaData=function(e,n,i,o){i=i||{},o=o||{};var r=this,a=i.maxMetaDataSize||262144,s=!(window.DataView&&e&&e.size>=12&&"image/jpeg"===e.type&&t.blobSlice);!s&&t.readFile(t.blobSlice.call(e,0,a),function(e){if(e.target.error)return console.log(e.target.error),void n(o);var a,s,l,c,u=e.target.result,d=new DataView(u),h=2,f=d.byteLength-4,p=h;if(65496===d.getUint16(0)){for(;h=65504&&a<=65519||65534===a);){if(s=d.getUint16(h+2)+2,h+s>d.byteLength){console.log("Invalid meta data: Invalid segment size.");break}if(l=t.metaDataParsers.jpeg[a])for(c=0;c6&&(u.slice?o.imageHead=u.slice(0,p):o.imageHead=new Uint8Array(u).subarray(0,p))}else console.log("Invalid JPEG file: Missing JPEG marker.");n(o)},"readAsArrayBuffer")||n(o)},t.hasMetaOption=function(t){return t.meta};var n=t.transform;t.transform=function(e,i,o,r,a){t.hasMetaOption(i||{})?t.parseMetaData(r,function(a){n.call(t,e,i,o,r,a)},i,a):n.apply(t,arguments)}}),function(t){"use strict";"function"==typeof define&&define.amd?define(["./load-image","./load-image-meta"],t):"object"==typeof module&&module.exports?t(require("./load-image"),require("./load-image-meta")):t(window.loadImage)}(function(t){"use strict";t.ExifMap=function(){return this},t.ExifMap.prototype.map={Orientation:274},t.ExifMap.prototype.get=function(t){return this[t]||this[this.map[t]]},t.getExifThumbnail=function(t,e,n){var i,o,r;if(n&&!(e+n>t.byteLength)){for(i=[],o=0;o4?n+e.getUint32(i+8,a):i+8,!(l+s>e.byteLength)){if(1===r)return f.getValue(e,l,a);for(c=[],u=0;ut.byteLength)console.log("Invalid Exif data: Invalid directory offset.");else{if(r=t.getUint16(n,i),a=n+2+12*r,!(a+4>t.byteLength)){for(s=0;se.byteLength)return void console.log("Invalid Exif data: Invalid segment size.");if(0!==e.getUint16(n+8))return void console.log("Invalid Exif data: Missing byte alignment offset.");switch(e.getUint16(c)){case 18761:a=!0;break;case 19789:a=!1;break;default:return void console.log("Invalid Exif data: Invalid byte alignment marker.")}if(42!==e.getUint16(c+2,a))return void console.log("Invalid Exif data: Missing TIFF marker.");s=e.getUint32(c+4,a),o.exif=new t.ExifMap,s=t.parseExifTags(e,c,c+s,a,o),s&&!r.disableExifThumbnail&&(l={exif:{}},s=t.parseExifTags(e,c,c+s,a,l),l.exif[513]&&(o.exif.Thumbnail=t.getExifThumbnail(e,c+l.exif[513],l.exif[514]))),o.exif[34665]&&!r.disableExifSub&&t.parseExifTags(e,c,c+o.exif[34665],a,o), o.exif[34853]&&!r.disableExifGps&&t.parseExifTags(e,c,c+o.exif[34853],a,o)}}},t.metaDataParsers.jpeg[65505].push(t.parseExifData)}),function(t){"use strict";"function"==typeof define&&define.amd?define(["./load-image","./load-image-exif"],t):"object"==typeof module&&module.exports?t(require("./load-image"),require("./load-image-exif")):t(window.loadImage)}(function(t){"use strict";t.ExifMap.prototype.tags={256:"ImageWidth",257:"ImageHeight",34665:"ExifIFDPointer",34853:"GPSInfoIFDPointer",40965:"InteroperabilityIFDPointer",258:"BitsPerSample",259:"Compression",262:"PhotometricInterpretation",274:"Orientation",277:"SamplesPerPixel",284:"PlanarConfiguration",530:"YCbCrSubSampling",531:"YCbCrPositioning",282:"XResolution",283:"YResolution",296:"ResolutionUnit",273:"StripOffsets",278:"RowsPerStrip",279:"StripByteCounts",513:"JPEGInterchangeFormat",514:"JPEGInterchangeFormatLength",301:"TransferFunction",318:"WhitePoint",319:"PrimaryChromaticities",529:"YCbCrCoefficients",532:"ReferenceBlackWhite",306:"DateTime",270:"ImageDescription",271:"Make",272:"Model",305:"Software",315:"Artist",33432:"Copyright",36864:"ExifVersion",40960:"FlashpixVersion",40961:"ColorSpace",40962:"PixelXDimension",40963:"PixelYDimension",42240:"Gamma",37121:"ComponentsConfiguration",37122:"CompressedBitsPerPixel",37500:"MakerNote",37510:"UserComment",40964:"RelatedSoundFile",36867:"DateTimeOriginal",36868:"DateTimeDigitized",37520:"SubSecTime",37521:"SubSecTimeOriginal",37522:"SubSecTimeDigitized",33434:"ExposureTime",33437:"FNumber",34850:"ExposureProgram",34852:"SpectralSensitivity",34855:"PhotographicSensitivity",34856:"OECF",34864:"SensitivityType",34865:"StandardOutputSensitivity",34866:"RecommendedExposureIndex",34867:"ISOSpeed",34868:"ISOSpeedLatitudeyyy",34869:"ISOSpeedLatitudezzz",37377:"ShutterSpeedValue",37378:"ApertureValue",37379:"BrightnessValue",37380:"ExposureBias",37381:"MaxApertureValue",37382:"SubjectDistance",37383:"MeteringMode",37384:"LightSource",37385:"Flash",37396:"SubjectArea",37386:"FocalLength",41483:"FlashEnergy",41484:"SpatialFrequencyResponse",41486:"FocalPlaneXResolution",41487:"FocalPlaneYResolution",41488:"FocalPlaneResolutionUnit",41492:"SubjectLocation",41493:"ExposureIndex",41495:"SensingMethod",41728:"FileSource",41729:"SceneType",41730:"CFAPattern",41985:"CustomRendered",41986:"ExposureMode",41987:"WhiteBalance",41988:"DigitalZoomRatio",41989:"FocalLengthIn35mmFilm",41990:"SceneCaptureType",41991:"GainControl",41992:"Contrast",41993:"Saturation",41994:"Sharpness",41995:"DeviceSettingDescription",41996:"SubjectDistanceRange",42016:"ImageUniqueID",42032:"CameraOwnerName",42033:"BodySerialNumber",42034:"LensSpecification",42035:"LensMake",42036:"LensModel",42037:"LensSerialNumber",0:"GPSVersionID",1:"GPSLatitudeRef",2:"GPSLatitude",3:"GPSLongitudeRef",4:"GPSLongitude",5:"GPSAltitudeRef",6:"GPSAltitude",7:"GPSTimeStamp",8:"GPSSatellites",9:"GPSStatus",10:"GPSMeasureMode",11:"GPSDOP",12:"GPSSpeedRef",13:"GPSSpeed",14:"GPSTrackRef",15:"GPSTrack",16:"GPSImgDirectionRef",17:"GPSImgDirection",18:"GPSMapDatum",19:"GPSDestLatitudeRef",20:"GPSDestLatitude",21:"GPSDestLongitudeRef",22:"GPSDestLongitude",23:"GPSDestBearingRef",24:"GPSDestBearing",25:"GPSDestDistanceRef",26:"GPSDestDistance",27:"GPSProcessingMethod",28:"GPSAreaInformation",29:"GPSDateStamp",30:"GPSDifferential",31:"GPSHPositioningError"},t.ExifMap.prototype.stringValues={ExposureProgram:{0:"Undefined",1:"Manual",2:"Normal program",3:"Aperture priority",4:"Shutter priority",5:"Creative program",6:"Action program",7:"Portrait mode",8:"Landscape mode"},MeteringMode:{0:"Unknown",1:"Average",2:"CenterWeightedAverage",3:"Spot",4:"MultiSpot",5:"Pattern",6:"Partial",255:"Other"},LightSource:{0:"Unknown",1:"Daylight",2:"Fluorescent",3:"Tungsten (incandescent light)",4:"Flash",9:"Fine weather",10:"Cloudy weather",11:"Shade",12:"Daylight fluorescent (D 5700 - 7100K)",13:"Day white fluorescent (N 4600 - 5400K)",14:"Cool white fluorescent (W 3900 - 4500K)",15:"White fluorescent (WW 3200 - 3700K)",17:"Standard light A",18:"Standard light B",19:"Standard light C",20:"D55",21:"D65",22:"D75",23:"D50",24:"ISO studio tungsten",255:"Other"},Flash:{0:"Flash did not fire",1:"Flash fired",5:"Strobe return light not detected",7:"Strobe return light detected",9:"Flash fired, compulsory flash mode",13:"Flash fired, compulsory flash mode, return light not detected",15:"Flash fired, compulsory flash mode, return light detected",16:"Flash did not fire, compulsory flash mode",24:"Flash did not fire, auto mode",25:"Flash fired, auto mode",29:"Flash fired, auto mode, return light not detected",31:"Flash fired, auto mode, return light detected",32:"No flash function",65:"Flash fired, red-eye reduction mode",69:"Flash fired, red-eye reduction mode, return light not detected",71:"Flash fired, red-eye reduction mode, return light detected",73:"Flash fired, compulsory flash mode, red-eye reduction mode",77:"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected",79:"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected",89:"Flash fired, auto mode, red-eye reduction mode",93:"Flash fired, auto mode, return light not detected, red-eye reduction mode",95:"Flash fired, auto mode, return light detected, red-eye reduction mode"},SensingMethod:{1:"Undefined",2:"One-chip color area sensor",3:"Two-chip color area sensor",4:"Three-chip color area sensor",5:"Color sequential area sensor",7:"Trilinear sensor",8:"Color sequential linear sensor"},SceneCaptureType:{0:"Standard",1:"Landscape",2:"Portrait",3:"Night scene"},SceneType:{1:"Directly photographed"},CustomRendered:{0:"Normal process",1:"Custom process"},WhiteBalance:{0:"Auto white balance",1:"Manual white balance"},GainControl:{0:"None",1:"Low gain up",2:"High gain up",3:"Low gain down",4:"High gain down"},Contrast:{0:"Normal",1:"Soft",2:"Hard"},Saturation:{0:"Normal",1:"Low saturation",2:"High saturation"},Sharpness:{0:"Normal",1:"Soft",2:"Hard"},SubjectDistanceRange:{0:"Unknown",1:"Macro",2:"Close view",3:"Distant view"},FileSource:{3:"DSC"},ComponentsConfiguration:{0:"",1:"Y",2:"Cb",3:"Cr",4:"R",5:"G",6:"B"},Orientation:{1:"top-left",2:"top-right",3:"bottom-right",4:"bottom-left",5:"left-top",6:"right-top",7:"right-bottom",8:"left-bottom"}},t.ExifMap.prototype.getText=function(t){var e=this.get(t);switch(t){case"LightSource":case"Flash":case"MeteringMode":case"ExposureProgram":case"SensingMethod":case"SceneCaptureType":case"SceneType":case"CustomRendered":case"WhiteBalance":case"GainControl":case"Contrast":case"Saturation":case"Sharpness":case"SubjectDistanceRange":case"FileSource":case"Orientation":return this.stringValues[t][e];case"ExifVersion":case"FlashpixVersion":if(!e)return;return String.fromCharCode(e[0],e[1],e[2],e[3]);case"ComponentsConfiguration":if(!e)return;return this.stringValues[t][e[0]]+this.stringValues[t][e[1]]+this.stringValues[t][e[2]]+this.stringValues[t][e[3]];case"GPSVersionID":if(!e)return;return e[0]+"."+e[1]+"."+e[2]+"."+e[3]}return String(e)},function(t){var e,n=t.tags,i=t.map;for(e in n)n.hasOwnProperty(e)&&(i[n[e]]=e)}(t.ExifMap.prototype),t.ExifMap.prototype.getAll=function(){var t,e,n={};for(t in this)this.hasOwnProperty(t)&&(e=this.tags[t],e&&(n[e]=this.getText(e)));return n}}),function(t){"use strict";"function"==typeof define&&define.amd?define(["./load-image"],t):t("object"==typeof module&&module.exports?require("./load-image"):window.loadImage)}(function(t){"use strict";var e=t.hasCanvasOption,n=t.hasMetaOption,i=t.transformCoordinates,o=t.getTransformedOptions;t.hasCanvasOption=function(n){return!!n.orientation||e.call(t,n)},t.hasMetaOption=function(e){return!0===e.orientation||n.call(t,e)},t.transformCoordinates=function(e,n){i.call(t,e,n);var o=e.getContext("2d"),r=e.width,a=e.height,s=e.style.width,l=e.style.height,c=n.orientation;if(c&&!(c>8))switch(c>4&&(e.width=a,e.height=r,e.style.width=l,e.style.height=s),c){case 2:o.translate(r,0),o.scale(-1,1);break;case 3:o.translate(r,a),o.rotate(Math.PI);break;case 4:o.translate(0,a),o.scale(1,-1);break;case 5:o.rotate(.5*Math.PI),o.scale(1,-1);break;case 6:o.rotate(.5*Math.PI),o.translate(0,-a);break;case 7:o.rotate(.5*Math.PI),o.translate(r,-a),o.scale(-1,1);break;case 8:o.rotate(-.5*Math.PI),o.translate(-r,0)}},t.getTransformedOptions=function(e,n,i){var r,a,s=o.call(t,e,n),l=s.orientation;if(!0===l&&i&&i.exif&&(l=i.exif.get("Orientation")),!l||l>8||1===l)return s;for(a in r={},s)s.hasOwnProperty(a)&&(r[a]=s[a]);switch(r.orientation=l,l){case 2:r.left=s.right,r.right=s.left;break;case 3:r.left=s.right,r.top=s.bottom,r.right=s.left,r.bottom=s.top;break;case 4:r.top=s.bottom,r.bottom=s.top;break;case 5:r.left=s.top,r.top=s.left,r.right=s.bottom,r.bottom=s.right;break;case 6:r.left=s.top,r.top=s.right,r.right=s.bottom,r.bottom=s.left;break;case 7:r.left=s.bottom,r.top=s.right,r.right=s.top,r.bottom=s.left;break;case 8:r.left=s.bottom,r.top=s.left,r.right=s.top,r.bottom=s.right}return s.orientation>4&&(r.maxWidth=s.maxHeight,r.maxHeight=s.maxWidth,r.minWidth=s.minHeight,r.minHeight=s.minWidth,r.sourceWidth=s.sourceHeight,r.sourceHeight=s.sourceWidth),r}}),"object"!=typeof JSON&&(JSON={}),function(){"use strict";function f(t){return t<10?"0"+t:t}function quote(t){return escapable.lastIndex=0,escapable.test(t)?'"'+t.replace(escapable,function(t){var e=meta[t];return"string"==typeof e?e:"\\u"+("0000"+t.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+t+'"'}function str(t,e){var n,i,o,r,a,s=gap,l=e[t];switch(l&&"object"==typeof l&&"function"==typeof l.toJSON&&(l=l.toJSON(t)),"function"==typeof rep&&(l=rep.call(e,t,l)),typeof l){case"string":return quote(l);case"number":return isFinite(l)?String(l):"null";case"boolean":case"null":return String(l);case"object":if(!l)return"null";if(gap+=indent,a=[],"[object Array]"===Object.prototype.toString.apply(l)){for(r=l.length,n=0;n")&&n[0];);return t>4&&t}();return t},h.isInternetExplorer=function(){var t=h.isInternetExplorer.cached=void 0!==h.isInternetExplorer.cached?h.isInternetExplorer.cached:Boolean(h.getInternetExplorerMajorVersion());return t},h.options.html4Mode?h.emulated={pushState:!0,hashChange:!0}:h.emulated={pushState:!Boolean(t.history&&t.history.pushState&&t.history.replaceState&&!/ Mobile\/([1-7][a-z]|(8([abcde]|f(1[0-8]))))/i.test(o.userAgent)&&!/AppleWebKit\/5([0-2]|3[0-2])/i.test(o.userAgent)),hashChange:Boolean(!("onhashchange"in t||"onhashchange"in i)||h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8)},h.enabled=!h.emulated.pushState,h.bugs={setHash:Boolean(!h.emulated.pushState&&"Apple Computer, Inc."===o.vendor&&/AppleWebKit\/5([0-2]|3[0-3])/.test(o.userAgent)),safariPoll:Boolean(!h.emulated.pushState&&"Apple Computer, Inc."===o.vendor&&/AppleWebKit\/5([0-2]|3[0-3])/.test(o.userAgent)),ieDoubleCheck:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<8),hashEscape:Boolean(h.isInternetExplorer()&&h.getInternetExplorerMajorVersion()<7)},h.isEmptyObject=function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0},h.cloneObject=function(t){var e,n;return t?(e=u.stringify(t),n=u.parse(e)):n={},n},h.getRootUrl=function(){var t=i.location.protocol+"//"+(i.location.hostname||i.location.host);return i.location.port&&(t+=":"+i.location.port),t+="/",t},h.getBaseHref=function(){var t=i.getElementsByTagName("base"),e=null,n="";return 1===t.length&&(e=t[0],n=e.href.replace(/[^\/]+$/,"")),n=n.replace(/\/+$/,""),n&&(n+="/"),n},h.getBaseUrl=function(){var t=h.getBaseHref()||h.getBasePageUrl()||h.getRootUrl();return t},h.getPageUrl=function(){var t,e=h.getState(!1,!1),n=(e||{}).url||h.getLocationHref();return t=n.replace(/\/+$/,"").replace(/[^\/]+$/,function(t,e,n){return/\./.test(t)?t:t+"/"}),t},h.getBasePageUrl=function(){var t=h.getLocationHref().replace(/[#\?].*/,"").replace(/[^\/]+$/,function(t,e,n){return/[^\/]$/.test(t)?"":t}).replace(/\/+$/,"")+"/";return t},h.getFullUrl=function(t,e){var n=t,i=t.substring(0,1);return e=void 0===e||e,/[a-z]+\:\/\//.test(t)||(n="/"===i?h.getRootUrl()+t.replace(/^\/+/,""):"#"===i?h.getPageUrl().replace(/#.*/,"")+t:"?"===i?h.getPageUrl().replace(/[\?#].*/,"")+t:e?h.getBaseUrl()+t.replace(/^(\.\/)+/,""):h.getBasePageUrl()+t.replace(/^(\.\/)+/,"")),n.replace(/\#$/,"")},h.getShortUrl=function(t){var e=t,n=h.getBaseUrl(),i=h.getRootUrl();return h.emulated.pushState&&(e=e.replace(n,"")),e=e.replace(i,"/"),h.isTraditionalAnchor(e)&&(e="./"+e),e=e.replace(/^(\.\/)+/g,"./").replace(/\#$/,""),e},h.getLocationHref=function(t){return t=t||i,t.URL===t.location.href?t.location.href:t.location.href===decodeURIComponent(t.URL)?t.URL:t.location.hash&&decodeURIComponent(t.location.href.replace(/^[^#]+/,""))===t.location.hash?t.location.href:-1==t.URL.indexOf("#")&&-1!=t.location.href.indexOf("#")?t.location.href:t.URL||t.location.href},h.store={},h.idToState=h.idToState||{},h.stateToId=h.stateToId||{},h.urlToId=h.urlToId||{},h.storedStates=h.storedStates||[],h.savedStates=h.savedStates||[],h.normalizeStore=function(){h.store.idToState=h.store.idToState||{},h.store.urlToId=h.store.urlToId||{},h.store.stateToId=h.store.stateToId||{}},h.getState=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=!0);var n=h.getLastSavedState();return!n&&e&&(n=h.createStateObject()),t&&(n=h.cloneObject(n),n.url=n.cleanUrl||n.url),n},h.getIdByState=function(t){var e,n=h.extractId(t.url);if(!n)if(e=h.getStateString(t),void 0!==h.stateToId[e])n=h.stateToId[e];else if(void 0!==h.store.stateToId[e])n=h.store.stateToId[e];else{for(;n=(new Date).getTime()+String(Math.random()).replace(/\D/g,""),void 0!==h.idToState[n]||void 0!==h.store.idToState[n];);h.stateToId[e]=n,h.idToState[n]=t}return n},h.normalizeState=function(t){var e,n;return t&&"object"==typeof t||(t={}),void 0!==t.normalized?t:(t.data&&"object"==typeof t.data||(t.data={}),e={},e.normalized=!0,e.title=t.title||"",e.url=h.getFullUrl(t.url?t.url:h.getLocationHref()),e.hash=h.getShortUrl(e.url),e.data=h.cloneObject(t.data),e.id=h.getIdByState(e),e.cleanUrl=e.url.replace(/\??\&_suid.*/,""),e.url=e.cleanUrl,n=!h.isEmptyObject(e.data),(e.title||n)&&!0!==h.options.disableSuid&&(e.hash=h.getShortUrl(e.url).replace(/\??\&_suid.*/,""),/\?/.test(e.hash)||(e.hash+="?"),e.hash+="&_suid="+e.id),e.hashedUrl=h.getFullUrl(e.hash),(h.emulated.pushState||h.bugs.safariPoll)&&h.hasUrlDuplicate(e)&&(e.url=e.hashedUrl),e)},h.createStateObject=function(t,e,n){var i={data:t,title:e,url:n};return i=h.normalizeState(i),i},h.getStateById=function(t){t=String(t);var n=h.idToState[t]||h.store.idToState[t]||e;return n},h.getStateString=function(t){var e,n,i;return e=h.normalizeState(t),n={data:e.data,title:t.title,url:t.url},i=u.stringify(n),i},h.getStateId=function(t){var e,n;return e=h.normalizeState(t),n=e.id,n},h.getHashByState=function(t){var e,n;return e=h.normalizeState(t),n=e.hash,n},h.extractId=function(t){var e,n,i;return i=-1!=t.indexOf("#")?t.split("#")[0]:t,n=/(.*)\&_suid=([0-9]+)$/.exec(i),n&&n[1]||t,e=n?String(n[2]||""):"",e||!1},h.isTraditionalAnchor=function(t){var e=!/[\/\?\.]/.test(t);return e},h.extractState=function(t,e){var n,i,o=null;return e=e||!1,n=h.extractId(t),n&&(o=h.getStateById(n)),o||(i=h.getFullUrl(t),n=h.getIdByUrl(i)||!1,n&&(o=h.getStateById(n)),!o&&e&&!h.isTraditionalAnchor(t)&&(o=h.createStateObject(null,null,i))),o},h.getIdByUrl=function(t){var n=h.urlToId[t]||h.store.urlToId[t]||e;return n},h.getLastSavedState=function(){return h.savedStates[h.savedStates.length-1]||e},h.getLastStoredState=function(){return h.storedStates[h.storedStates.length-1]||e},h.hasUrlDuplicate=function(t){var e,n=!1;return e=h.extractState(t.url),n=e&&e.id!==t.id,n},h.storeState=function(t){return h.urlToId[t.url]=t.id,h.storedStates.push(h.cloneObject(t)),t},h.isLastSavedState=function(t){var e,n,i,o=!1;return h.savedStates.length&&(e=t.id,n=h.getLastSavedState(),i=n.id,o=e===i),o},h.saveState=function(t){return!h.isLastSavedState(t)&&(h.savedStates.push(h.cloneObject(t)),!0)},h.getStateByIndex=function(t){var e=null;return e=void 0===t?h.savedStates[h.savedStates.length-1]:t<0?h.savedStates[h.savedStates.length+t]:h.savedStates[t],e},h.getCurrentIndex=function(){var t=null;return t=h.savedStates.length<1?0:h.savedStates.length-1,t},h.getHash=function(t){var e,n=h.getLocationHref(t);return e=h.getHashByUrl(n),e},h.unescapeHash=function(t){var e=h.normalizeHash(t);return e=decodeURIComponent(e),e},h.normalizeHash=function(t){var e=t.replace(/[^#]*#/,"").replace(/#.*/,"");return e},h.setHash=function(t,e){var n,o;return!1!==e&&h.busy()?(h.pushQueue({scope:h,callback:h.setHash,args:arguments,queue:e}),!1):(h.busy(!0),n=h.extractState(t,!0),n&&!h.emulated.pushState?h.pushState(n.data,n.title,n.url,!1):h.getHash()!==t&&(h.bugs.setHash?(o=h.getPageUrl(),h.pushState(null,null,o+"#"+t,!1)):i.location.hash=t),h)},h.escapeHash=function(e){var n=h.normalizeHash(e);return n=t.encodeURIComponent(n),h.bugs.hashEscape||(n=n.replace(/\%21/g,"!").replace(/\%26/g,"&").replace(/\%3D/g,"=").replace(/\%3F/g,"?")),n},h.getHashByUrl=function(t){var e=String(t).replace(/([^#]*)#?([^#]*)#?(.*)/,"$2");return e=h.unescapeHash(e),e},h.setTitle=function(t){var e,n=t.title;n||(e=h.getStateByIndex(0),e&&e.url===t.url&&(n=e.title||h.options.initialTitle));try{i.getElementsByTagName("title")[0].innerHTML=n.replace("<","<").replace(">",">").replace(" & "," & ")}catch(t){}return i.title=n,h},h.queues=[],h.busy=function(t){if(void 0!==t?h.busy.flag=t:void 0===h.busy.flag&&(h.busy.flag=!1),!h.busy.flag){s(h.busy.timeout);var e=function(){var t,n,i;if(!h.busy.flag)for(t=h.queues.length-1;t>=0;--t)n=h.queues[t],0!==n.length&&(i=n.shift(),h.fireQueueItem(i),h.busy.timeout=a(e,h.options.busyDelay))};h.busy.timeout=a(e,h.options.busyDelay)}return h.busy.flag},h.busy.flag=!1,h.fireQueueItem=function(t){return t.callback.apply(t.scope||h,t.args||[])},h.pushQueue=function(t){return h.queues[t.queue||0]=h.queues[t.queue||0]||[],h.queues[t.queue||0].push(t),h},h.queue=function(t,e){return"function"==typeof t&&(t={callback:t}),void 0!==e&&(t.queue=e),h.busy()?h.pushQueue(t):h.fireQueueItem(t),h},h.clearQueue=function(){return h.busy.flag=!1,h.queues=[],h},h.stateChanged=!1,h.doubleChecker=!1,h.doubleCheckComplete=function(){return h.stateChanged=!0,h.doubleCheckClear(),h},h.doubleCheckClear=function(){return h.doubleChecker&&(s(h.doubleChecker),h.doubleChecker=!1),h},h.doubleCheck=function(t){return h.stateChanged=!1,h.doubleCheckClear(),h.bugs.ieDoubleCheck&&(h.doubleChecker=a(function(){return h.doubleCheckClear(),h.stateChanged||t(),!0},h.options.doubleCheckInterval)),h},h.safariStatePoll=function(){var e,n=h.extractState(h.getLocationHref());if(!h.isLastSavedState(n))return e=n,e||(e=h.createStateObject()),h.Adapter.trigger(t,"popstate"),h},h.back=function(t){return!1!==t&&h.busy()?(h.pushQueue({scope:h,callback:h.back,args:arguments,queue:t}),!1):(h.busy(!0),h.doubleCheck(function(){h.back(!1)}),f.go(-1),!0)},h.forward=function(t){return!1!==t&&h.busy()?(h.pushQueue({scope:h,callback:h.forward,args:arguments,queue:t}),!1):(h.busy(!0),h.doubleCheck(function(){h.forward(!1)}),f.go(1),!0)},h.go=function(t,e){var n;if(t>0)for(n=1;n<=t;++n)h.forward(e);else{if(!(t<0))throw new Error("History.go: History.go requires a positive or negative integer passed.");for(n=-1;n>=t;--n)h.back(e)}return h},h.emulated.pushState){var g=function(){};h.pushState=h.pushState||g,h.replaceState=h.replaceState||g}else h.onPopState=function(e,n){var i,o,r=!1,a=!1;return h.doubleCheckComplete(),i=h.getHash(),i?(o=h.extractState(i||h.getLocationHref(),!0),o?h.replaceState(o.data,o.title,o.url,!1):(h.Adapter.trigger(t,"anchorchange"),h.busy(!1)),h.expectedStateId=!1,!1):(r=h.Adapter.extractEventData("state",e,n)||!1,a=r?h.getStateById(r):h.expectedStateId?h.getStateById(h.expectedStateId):h.extractState(h.getLocationHref()),a||(a=h.createStateObject(null,null,h.getLocationHref())),h.expectedStateId=!1,h.isLastSavedState(a)?(h.busy(!1),!1):(h.storeState(a),h.saveState(a),h.setTitle(a),h.Adapter.trigger(t,"statechange"),h.busy(!1),!0))},h.Adapter.bind(t,"popstate",h.onPopState),h.pushState=function(e,n,i,o){if(h.getHashByUrl(i)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(!1!==o&&h.busy())return h.pushQueue({scope:h,callback:h.pushState,args:arguments,queue:o}),!1;h.busy(!0);var r=h.createStateObject(e,n,i);return h.isLastSavedState(r)?h.busy(!1):(h.storeState(r),h.expectedStateId=r.id,f.pushState(r.id,r.title,r.url),h.Adapter.trigger(t,"popstate")),!0},h.replaceState=function(e,n,i,o){if(h.getHashByUrl(i)&&h.emulated.pushState)throw new Error("History.js does not support states with fragement-identifiers (hashes/anchors).");if(!1!==o&&h.busy())return h.pushQueue({scope:h,callback:h.replaceState,args:arguments,queue:o}),!1;h.busy(!0);var r=h.createStateObject(e,n,i);return h.isLastSavedState(r)?h.busy(!1):(h.storeState(r),h.expectedStateId=r.id,f.replaceState(r.id,r.title,r.url),h.Adapter.trigger(t,"popstate")),!0};if(r){try{h.store=u.parse(r.getItem("History.store"))||{}}catch(t){h.store={}}h.normalizeStore()}else h.store={},h.normalizeStore();h.Adapter.bind(t,"unload",h.clearAllIntervals),h.saveState(h.storeState(h.extractState(h.getLocationHref(),!0))),r&&(h.onUnload=function(){var t,e,n;try{t=u.parse(r.getItem("History.store"))||{}}catch(e){t={}}for(e in t.idToState=t.idToState||{},t.urlToId=t.urlToId||{},t.stateToId=t.stateToId||{},h.idToState)h.idToState.hasOwnProperty(e)&&(t.idToState[e]=h.idToState[e]);for(e in h.urlToId)h.urlToId.hasOwnProperty(e)&&(t.urlToId[e]=h.urlToId[e]);for(e in h.stateToId)h.stateToId.hasOwnProperty(e)&&(t.stateToId[e]=h.stateToId[e]);h.store=t,h.normalizeStore(),n=u.stringify(t);try{r.setItem("History.store",n)}catch(t){if(t.code!==DOMException.QUOTA_EXCEEDED_ERR)throw t;r.length&&(r.removeItem("History.store"),r.setItem("History.store",n))}},h.intervalList.push(l(h.onUnload,h.options.storeInterval)),h.Adapter.bind(t,"beforeunload",h.onUnload),h.Adapter.bind(t,"unload",h.onUnload)),h.emulated.pushState||(h.bugs.safariPoll&&h.intervalList.push(l(h.safariStatePoll,h.options.safariPollInterval)),"Apple Computer, Inc."!==o.vendor&&"Mozilla"!==(o.appCodeName||"")||(h.Adapter.bind(t,"hashchange",function(){h.Adapter.trigger(t,"popstate")}),h.getHash()&&h.Adapter.onDomLoad(function(){h.Adapter.trigger(t,"hashchange")})))},(!h.options||!h.options.delayInit)&&h.init()}(window),function(t){"function"==typeof define&&define.amd?define(["jquery"],t):t(window.jQuery)}(function(t){var e=0;t.ajaxTransport("iframe",function(n){var i,o,r;if(n.async)return{send:function(a,s){i=t(''),i.attr("accept-charset",n.formAcceptCharset),r=/\?/.test(n.url)?"&":"?","DELETE"===n.type?(n.url=n.url+r+"_method=DELETE",n.type="POST"):"PUT"===n.type?(n.url=n.url+r+"_method=PUT", diff --git a/content/legacy/themes/Peafowl/snippets/embed.php b/content/legacy/themes/Peafowl/snippets/embed.php index ec3b06b..6fd4e63 100644 --- a/content/legacy/themes/Peafowl/snippets/embed.php +++ b/content/legacy/themes/Peafowl/snippets/embed.php @@ -61,7 +61,7 @@ $embed_upload_tpl = [ ], 'size' => 'full', ], - 'html-embed-full' => [ + 'full-html-embed' => [ 'label' => _s('%s full linked', 'HTML'), 'template' => [ 'image' => '%DISPLAY_TITLE%', @@ -69,12 +69,12 @@ $embed_upload_tpl = [ ], 'size' => 'full', ], - 'html-embed-medium' => [ + 'medium-html-embed' => [ 'label' => _s('%s medium linked', 'HTML'), - 'template' => '%DISPLAY_TITLE%', + 'template' => '%DISPLAY_TITLE%', 'size' => 'medium', ], - 'html-embed-thumbnail' => [ + 'thumbnail-html-embed' => [ 'label' => _s('%s thumbnail linked', 'HTML'), 'template' => '%DISPLAY_TITLE%', 'size' => 'thumb', @@ -92,7 +92,7 @@ $embed_upload_tpl = [ ], 'size' => 'full', ], - 'markdown-embed-full' => [ + 'full-markdown-embed' => [ 'label' => _s('%s full linked', 'Markdown'), 'template' => [ 'image' => '[![%DISPLAY_TITLE%](%URL%)](%URL_VIEWER%)', @@ -100,12 +100,12 @@ $embed_upload_tpl = [ ], 'size' => 'full', ], - 'markdown-embed-medium' => [ + 'medium-markdown-embed' => [ 'label' => _s('%s medium linked', 'Markdown'), - 'template' => '[![%DISPLAY_TITLE%](%DISPLAY_URL%)](%URL_VIEWER%)', + 'template' => '[![%DISPLAY_TITLE%](%MEDIUM_URL%)](%URL_VIEWER%)', 'size' => 'medium', ], - 'markdown-embed-thumbnail' => [ + 'thumbnail-markdown-embed' => [ 'label' => _s('%s thumbnail linked', 'Markdown'), 'template' => '[![%DISPLAY_TITLE%](%THUMB_URL%)](%URL_VIEWER%)', 'size' => 'thumb', @@ -123,7 +123,7 @@ $embed_upload_tpl = [ ], 'size' => 'full', ], - 'bbcode-embed-full' => [ + 'full-bbcode-embed' => [ 'label' => _s('%s full linked', 'BBCode'), 'template' => [ 'image' => '[url=%URL_VIEWER%][img]%URL%[/img][/url]', @@ -131,12 +131,12 @@ $embed_upload_tpl = [ ], 'size' => 'full', ], - 'bbcode-embed-medium' => [ + 'medium-bbcode-embed' => [ 'label' => _s('%s medium linked', 'BBCode'), - 'template' => '[url=%URL_VIEWER%][img]%DISPLAY_URL%[/img][/url]', + 'template' => '[url=%URL_VIEWER%][img]%MEDIUM_URL%[/img][/url]', 'size' => 'medium', ], - 'bbcode-embed-thumbnail' => [ + 'thumbnail-bbcode-embed' => [ 'label' => _s('%s thumbnail linked', 'BBCode'), 'template' => '[url=%URL_VIEWER%][img]%THUMB_URL%[/img][/url]', 'size' => 'thumb', diff --git a/content/legacy/themes/Peafowl/snippets/image.js.php b/content/legacy/themes/Peafowl/snippets/image.js.php index d78593e..67831d5 100644 --- a/content/legacy/themes/Peafowl/snippets/image.js.php +++ b/content/legacy/themes/Peafowl/snippets/image.js.php @@ -111,6 +111,7 @@ if (!defined('ACCESS') || !ACCESS) { medium: { url: "" }, + display_url: "", url_viewer: "", path_viewer: "", is_360: , diff --git a/content/legacy/themes/Peafowl/snippets/listing_tools_editor.php b/content/legacy/themes/Peafowl/snippets/listing_tools_editor.php index 084a066..0b408ef 100644 --- a/content/legacy/themes/Peafowl/snippets/listing_tools_editor.php +++ b/content/legacy/themes/Peafowl/snippets/listing_tools_editor.php @@ -16,7 +16,7 @@ foreach ($tabs as $tab) { if ((isset($tab['list']) && $tab['list'] === false) || isset($tab['tools']) && $tab['tools'] === false) { continue; } ?> -
    - %filename% + %filename%
    diff --git a/content/legacy/themes/Peafowl/style.css b/content/legacy/themes/Peafowl/style.css index ba16c6a..0a964a6 100644 --- a/content/legacy/themes/Peafowl/style.css +++ b/content/legacy/themes/Peafowl/style.css @@ -4,7 +4,6 @@ body { position: relative; font-family: Helvetica, Arial, sans-serif; font-size: 14px; - /* line-height: 1.2; */ } html.powered-by-footer body{ padding-bottom: 22px; @@ -132,7 +131,7 @@ body#upload { } */ .image-viewer { - width: 100dvw; + width: 100%; } .image-viewer .media { width: 100%; @@ -1642,8 +1641,8 @@ body.--viewer-shown { position: relative; top: 0; inset-inline-start: 0; - width: 100%; - height: 100%; + width: 100dvw; + height: 100dvh; } .viewer-content .viewer-src { @@ -1662,15 +1661,20 @@ body.--viewer-shown { width: 100dvw; height: 100vh; height: 100dvh; - -o-object-fit: cover; + -o-object-fit: contain; object-fit: contain; } +.viewer[data-cover="0"] .viewer-content .viewer-src { + max-width: 100%; + max-height: 100%; +} .viewer[data-cover="1"] .viewer-content video.viewer-src { width: auto; } -.viewer-content video.viewer-src { +.viewer-content video.viewer-src, +.viewer-content img.viewer-src[data-media="video"] { padding-top: 2.2em; padding-bottom: 60px; } @@ -1736,7 +1740,7 @@ body.--viewer-shown { padding: 10px; position: fixed; bottom: 0; - margin-bottom: 100px; + margin-bottom: 120px; text-align: center; left: 50%; width: auto; @@ -1922,6 +1926,9 @@ html .fullscreen-show { a.image-container { -webkit-tap-highlight-color: transparent; } +.js .image-container.--media img { + color: transparent; +} a { color: var(--linkText); diff --git a/content/legacy/themes/Peafowl/style.min.css b/content/legacy/themes/Peafowl/style.min.css index 3d56e33..97f6019 100644 --- a/content/legacy/themes/Peafowl/style.min.css +++ b/content/legacy/themes/Peafowl/style.min.css @@ -1 +1 @@ -body{min-height:100%;background:var(--bodyBackground);position:relative;font-family:Helvetica,Arial,sans-serif;font-size:14px}html.powered-by-footer body{padding-bottom:22px}html.powered-by-footer .upload-box-inner{padding-bottom:35px}body.landing{min-height:500px;height:100%;height:100vh;height:100dvh;padding:0;margin:0}.phone body.landing{min-height:auto}.js body.landing{overflow:hidden;opacity:0}.js body.landing.load{transition:transform .6s ease,opacity 350ms linear;opacity:1}#home-cover-content,#index .flex-center{opacity:0}.js body#index.load .flex-center,.js body.load #home-cover-content{transition:all .6s ease;transition-delay:150ms;opacity:1}.js body.loaded{overflow:auto}body.split{margin-top:0;padding-top:0}.content-width.fluid,.fluid .content-width{width:100%}@media (min-width:992px){.content-width.wide{max-width:none}}html.device-mobile .device-mobile--hide{display:none!important}html.device-nonmobile .device-nonmobile--hide{display:none!important}body#upload{background-color:transparent}.software-version-name{font-family:'Brush Script MT',cursive,serif;font-size:1.4em;text-transform:capitalize}.image-viewer{text-align:center;position:relative;min-height:72px;overflow:hidden;background:var(--viewerBackground)}.image-viewer-main{display:inline-block;vertical-align:middle}.image-viewer-container{display:grid;margin:0 auto;position:relative;min-height:calc(100% - 50px)}.image-viewer-container.--thumbs{min-height:calc(100% - 100px)}.image-viewer{width:100dvw}.image-viewer .media{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;max-height:calc(100dvh - 110px);display:block;margin-left:auto;margin-right:auto}.image-viewer.--thumbs .media{max-height:calc(100dvh - 160px)}.image-viewer .media.zoom-in{max-height:none;max-width:100dvw}.image-viewer .media.zoom-natural{max-width:100%;max-height:100%;width:auto;height:auto}#image-viewer-360{width:100dvw;height:calc(100dvh - 110px);background:0 0!important}.image-viewer .btn-download{position:absolute;top:20px;inset-inline-end:20px}#image-viewer-loading,.viewer-loader{width:30px;height:30px;position:absolute;inset-inline-start:50%;top:50%;-webkit-margin-start:-15px;margin-inline-start:-15px;margin-top:-15px;border-radius:100%;background:rgba(17,17,17,.9)}#image-viewer-loader{line-height:1;position:absolute;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff;font-size:1em;left:50%;top:50%;padding:8px 14px;border-radius:100px;transform:translate(-50%,-50%);cursor:pointer;display:none}#image-viewer-loader:hover{background:rgba(0,0,0,.6);color:#fff}#image-viewer-loader .btn-icon{position:relative;top:0;font-size:12px}.btn-like .btn.btn-liked,.btn-like .btn.btn-unliked{display:none}.btn-like[data-liked="0"] .btn-unliked{display:inline-block}.btn-like[data-liked="1"] .btn-liked{display:inline-block}.btn-album-cover .btn.btn-album-is-cover,.btn-album-cover .btn.btn-album-not-cover{display:none}.btn-album-cover[data-cover="0"] .btn-album-not-cover{display:inline-block}.btn-album-cover[data-cover="1"] .btn-album-is-cover{display:inline-block}.btn-follow .btn.btn-followed,.btn-follow .btn.btn-unfollowed{display:none}.btn-follow[data-followed="0"] .btn-unfollowed{display:inline-block}.btn-follow[data-followed="1"] .btn-followed{display:inline-block}#fullscreen-uploader-mask{z-index:99}.phone #fullscreen-uploader-mask{z-index:400}#anywhere-upload{z-index:900;-webkit-overflow-scrolling:touch;transition:transform .3s ease}#anywhere-upload.hidden-visibility iframe{visibility:hidden}.phone #anywhere-upload{z-index:500;height:100vh!important}#upload #anywhere-upload{display:grid;align-items:center;position:fixed;padding-top:50px;bottom:0;overflow:auto;z-index:0}#upload .upload-box .upload-box-allowed-files,.phone .upload-box .upload-box-allowed-files{display:none}#upload .upload-box[data-queue-size="0"] .upload-box-allowed-files,.phone .upload-box[data-queue-size="0"] .upload-box-allowed-files{display:block}#anywhere-upload-paste{height:0;opacity:0;font-size:0}#anywhere-upload-paste *{display:none}.upload-box-queue{text-align:center;font-size:0;margin-top:35px;margin-bottom:35px}.upload-box-queue li{position:relative;text-align:center;display:inline-block;margin:5px}.upload-box-queue .block,.upload-box-queue li{border-radius:.5em;-webkit-transform:translateZ(0)}.upload-box-queue li,.upload-box-queue li.normal{width:110px;height:110px;font-size:14px;font-size:1rem}.upload-box-queue li.small{width:77px;height:77px;font-size:9px;font-size:.643rem}.upload-box-queue li.tiny{width:54px;height:54px;font-size:7px;font-size:.5rem}.upload-box-queue .block{width:100%;height:100%;top:0;inset-inline-start:0;overflow:hidden;position:absolute}.upload-box-queue a.image-link{display:none}.upload-box-queue .completed a.image-link{display:block;position:absolute;overflow:hidden;z-index:1;-webkit-transform:rotate(.000001deg)}.upload-box-queue .queue-item .block.edit,.upload-box-queue .queue-item .queue-item-button{display:block;position:absolute;cursor:pointer;z-index:1}.upload-box-queue .queue-item .queue-item-button .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.upload-box-queue .queue-item.completed:hover .queue-item-button{display:none}.upload-box-queue .queue-item .queue-item-button{font-size:10px;width:21px;height:21px;line-height:23px;background:var(--buttonDefaultBackground);color:var(--buttonDefaultText);border-radius:200px;inset-inline-start:-5px;box-shadow:1px 1px 4px 0 rgba(0,0,0,.5)}.upload-box-queue .queue-item .queue-item-button:hover{background:var(--buttonDefaultHoverBackground);color:var(--buttonDefaultHoverText)}.upload-box-queue .queue-item .queue-item-button.cancel{top:-7px}.upload-box-queue .queue-item .queue-item-button.edit{top:16px;font-size:9px;opacity:0}.upload-box-queue .big-icon{position:absolute;color:#dadada;font-size:5.36em;width:1em;height:1em;inset-inline-start:50%;top:50%;-webkit-margin-start:-.5em;margin-inline-start:-.5em;margin-top:-.5em}.tone-dark .upload-box-queue .big-icon{color:#444;text-shadow:1px 1px 0 rgba(0,0,0,.9)}.upload-box-queue .done,.upload-box-queue .preview{position:relative;overflow:hidden}.upload-box-queue .preview .canvas{position:absolute;top:50%;inset-inline-start:50%}.upload-box-queue .progress{position:absolute}.queue-item.uploading .block.edit,.queue-item.uploading .queue-item-button.edit{display:none}.upload-box-queue .progress-bar{height:100%;float:right;width:100%;display:none}[dir=rtl] .upload-box-queue .progress-bar{float:left}.upload-box-queue .failed .result,.upload-box-queue .progress-bar{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transform:all .3s}.upload-box-queue .uploading .progress-bar{display:block}.upload-box-queue .completed .result.done,.upload-box-queue .failed .result.failed{display:block}.upload-box-queue .result{position:absolute;z-index:1;display:none}.tone-dark .upload-box-queue .failed .result,.tone-dark .upload-box-queue .progress-bar{background:rgba(0,0,0,.65)}.upload-box-queue .result .icon{position:absolute;width:100%;font-size:3.429em;top:50%;inset-inline-start:0;margin-top:-.5em;text-shadow:none}.upload-box-queue .done .result .icon{text-shadow:2px 2px 6px rgba(0,0,0,.2)}.upload-box-queue .failed .result .icon{font-size:3.429em}.upload-box-queue.queue-complete .cancel,.upload-box-queue.queue-complete .edit{display:none}#form-embed-toggle-combo,#uploaded-embed-toggle-combo{position:relative}#upload .top-bar{box-shadow:none;border-bottom-color:transparent}#upload .upload-box{transform:none;position:static}body#upload [data-action=close-upload]{display:none!important}.upload-box.queueHasResults [data-action=cancel-upload],.upload-box.queueReady [data-action=close-upload],.upload-box.queueUploading [data-action=close-upload],.upload-box:not(.queueHasResults) [data-action=cancel-upload-remaining],.upload-box:not(.queueReady):not(.queueCompleted) [data-action=reset-upload],.upload-box:not(.queueUploading) [data-action^=cancel-upload],.upload-box:not([data-queue-size="0"]) [data-action=close-upload]{display:none}#background-cover{height:260px;background-color:#000;position:relative}.phone #background-cover:not(.no-background){height:20vh;max-height:260px;min-height:90px}#background-cover.no-background{background-color:var(--bodyEmpty);background-image:none!important;height:auto}.tone-dark #background-cover.no-background{background:#2f2f2f}#background-cover-wrap{height:100%;overflow:hidden;position:relative;padding:10px}#background-cover .content-width{text-align:center}#change-background-cover{position:absolute;inset-inline-end:0;top:0;z-index:500}#user-background-upload{top:0;inset-inline-start:0;width:1px;height:1px}#background-cover-src{overflow:hidden;background-position:center center;background-size:cover}#background-cover .loading-placeholder,#background-cover-src{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%}#background-cover.no-background #background-cover-src{height:0}#background-cover .loading-placeholder{background:rgba(0,0,0,.8)}.list-item-privacy{display:none}.list-item-thumbs li,.list-item-thumbs li a{display:block;height:auto;overflow:hidden}.list-item-thumbs li a{height:100%;background-size:cover;background-position:center center}.list-item-thumbs li img{width:100%;display:block}.input-copy{position:relative}.list-item-image-tools{overflow:hidden;position:absolute;inset-inline-end:0;top:0;transition:all .2s ease-in-out;text-shadow:1px 1px 5px rgba(0,0,0,.5)}.list-item-image-tools.--top{bottom:auto;top:0}.list-item-image-tools.--right{inset-inline-start:auto;inset-inline-end:0}.list-item-image-tools.--bottom{top:auto;bottom:0;width:2em}.list-item-image-tools.--left{inset-inline-end:auto;inset-inline-start:0}.list-item-image-tools>div{margin:0;cursor:pointer;position:relative;font-size:1em;inset-inline-end:0;-webkit-margin-start:auto;margin-inline-start:auto}.list-item-buttons>div,.list-item-image-tools>div,html.--idle .list-item-image-tools>div[data-action=viewer-close]{opacity:.7}.list-item .hover-display.list-item-image-tools,.list-item-image-tools>div:hover,.list-item.selected div.tool-select{opacity:1;z-index:1}.list-item.--over .list-item-image-tools>div{opacity:.5}.list-item-image-tools>div{float:right}[dir=rtl] .list-item-image-tools>div{float:left}.list-item-image-tools>div,.list-item-image-tools>div *{display:block;color:var(--listItemText)}.list-item-image-tools>div span{float:right}[dir=rtl] .list-item-image-tools>div span{float:left}.list-item-image-tools>div .label{font-size:.86em}.list-item-image-tools>div .btn-icon{font-size:1em}.phone .list-item:not(.selected):not(.viewer) .tool-select{display:none}.list-item-image-tools>div .label{text-transform:uppercase;-webkit-padding-start:1em;padding-inline-start:1em;-webkit-padding-end:0;padding-inline-end:0;display:none;height:100%}.list-item-image-tools>div:hover .label{display:block}.small-cols .list-item-image-tools>div:hover .label{display:none}[data-flag=safe] .label-flag-safe.btn-icon,[data-flag=safe] .list-item-image-tools>div:hover .label.label-flag-safe,[data-flag=unsafe] .label-flag-unsafe.btn-icon,[data-flag=unsafe] .list-item-image-tools>div:hover .label.label-flag-unsafe{display:none}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:not(.current) .image-container{filter:blur(8px);-webkit-filter:blur(8px)}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe]:not(.selected):not(.ui-selecting) a,.unsafe-blur-on [data-flag=unsafe]:not(.selected):not(.ui-selecting):not(.current) .image-container{transform:scale(1.2)}.unsafe-blur-on .list-item:hover .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:hover:not(.selected):not(.ui-selecting):not(.current) .image-container{filter:none;-webkit-filter:none;transform:scale(1)}.list-item-buttons>div,.list-item-image-tools>div,.list-item-image-tools>div .btn-icon{width:2.2em;height:2.2em;line-height:2.2em}.list-item-image-tools>div .btn-icon{color:inherit;text-align:center}.list-item-album .tool-flag{display:none}.list-item .list-item-avatar-cover,.list-item .list-item-avatar-cover>*{border-radius:100%}.list-item .image-container.--bodyEmpty .empty,.list-item .list-item-avatar-cover{position:absolute;border:0;left:50%;top:50%;transform:translate(-50%,-50%)}.list-item .list-item-avatar-cover{height:60%;width:60%;max-height:160px;max-width:160px;background:var(--backgroundLightAlpha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.list-item .list-item-avatar-cover>*{width:100px;height:100px}.list-item .list-item-avatar-cover img{height:auto;box-shadow:2px 2px 2px rgba(0,0,0,.3)}.selected .list-item-image,.ui-selecting .list-item-image,.unselect .list-item-image{background:var(--viewerBackground)}body#moderate .list-item-like,body#moderate .viewer-kb-key[data-key="L"]{display:none}.list-item-buttons{color:#fff;position:absolute;inset-inline-end:0;bottom:0}.list-item-buttons>div{padding:10px;cursor:pointer;float:left;font-size:1em;-webkit-margin-start:-5px;margin-inline-start:-5px}[dir=rtl] .list-item-buttons>div{float:right}.list-item .list-item-buttons>div:hover{opacity:1}.list-item-like .btn-like{display:none}.list-item-like .btn-like.btn-liked,.list-item-like .btn-like:hover{opacity:1}[data-liked="0"] .list-item-like .btn-like.btn-unliked{display:block}[data-liked="1"] .list-item-like .btn-like.btn-liked{display:block}.list-item-play-gif,.list-item-play-gif *{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAACdCAMAAAAgwM7pAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAcVQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///9///+///+///+///+///+///9///8///1///5///9///9///u///f///+///+///+///9///q///z///9///+///9///8///9///+///+///+///+///8///w///9///+///3///8///9///2///9///7///t///+///8///b///9///9///M///+///y//+A///9///r///7///+///7///3///+///8//+////8//+q///8///+///z///+///+///9///6///m///7///j///7///9///+///+///9///9///6///+///+///+///7///V///+///9///5///9///+///+///8///9///6///8///+///9///4///+///+///+///+///4///9///5///+///v///7///9///8///o///9///9///8///6///y///9///0///+///x///+///6////////////vBUIqgAAAJd0Uk5TABQmNkZSWF5iCipmAiRKZAQuXCwYVDoMUBpgIiil+enVw7GJUBoujZkOCPf/45sMFnDPbEqhtcfZ714Qi9EgWI8adDgO21oGbmoEyxICcgw87Toe+1QEVgJg/RTru344CkIIRnrx55VmMNf1wT4GyaMoh+HlTJcyYt+pJrfTzd0ipyqtEECTXAp8aGQ2FIMWxRKzLrhG/4D2XIEAAAQlSURBVHiczZjnWxNBEMYPCCThgNC7IIKCyaCIdJCmgIooYkFCEwsqTRRQQREb9l7u7/UuuZhccm1vX5+H99Ne2d/d7uzOzowgmCgpOcWVmub2eNxpqa6U5CSzdw3lTXe5xTi5XeleNkpGZpYvnhKWLyszwzYmOydXnxJWbk62PU5ewpAShphnA5NfYIVRVJBvgckoNJibhLkqNJ2qomJ7GEXFRcacklL7HFEsLTHilHlYOKLoKdPnlNucnqh85br/w8yRSTr/VMI4rrA8CfNUxDTPUZXG2S6Dwe5aFWvXU6FTjigWxnLyHUx0RL7Y3WJrfxmpIMrJ4+GI4j9fkG3pN8zljvinHD6OKOaopjf1h3aUG14CmbwcUcwMgbL4QVkKx8uxhiLyefltH5ayAlwIkEsGcS6isNzy+Y7giGKSkIwBJQspGFAKZq6V2U7FgFKFNAwoDWN9xf6OTqFEeXAg2NBgkw0zP2xBwrYIbNPC3AjMseFcLcT5pyOPI9gBiTuyYUEELKzBBVqw0A8XjOLCY1jAjkshYEkNLs3CJX64VBSXHOPSdVwBAVfSEGBFFkWgso+AK0QJsNJYSN48RLFOFaR8CNe+isr9VQeqaw46636otu5wqOEPkKr6I0dZKQ3HGuWOx8MXTc0trW3tIVQHG6azK/QTJ7pjb3b39La29rFg/P3K19vrTrJ9PUGnBmTMwOCQySunB/ptgE4SVZ45a/rKMFHLOUvQSP/5CxavjF6ULThm46csdamV6PIVBOlql0waN3x8jQE1ETQkTZ6Y6tZ/YkQK6q6QkWmiJgaQ0BGMLH2tZoiqWMYmCLPnr+vcnQvSFNMGMNCNegreBHCEW0TVCM7kbZpn9jV6ukN011nPe1pLX6YFNotFdHSRJmKvlwLLzn5oZZHua26YuR9TrRI9cNpXozmihxCQsEbrGFA1amwbzIeUgSaJHqnNx0tPeEib1Ki2tmiNB7RKU2priTZ5QE+fRQa0Tc95QFGt0zQGFKCtPQaCDW2bhjGgJdrh6f5ia1BtvaQ2HlAzVaqtV683eEDRLcKnmE3LJ5gbkR3bUwgI5WrntGe9/41TkPY4WlkI7DrjDGkPSL/jI/twgDR++q3jIGLsneZSCWveOyPFCRVoCdfriSChn7ArB6MOc804fZDD4xGmHrMf/Xq3lYB9lIUjB+yfdB80VC10MnCUFOIzy4eNOSbpkW1ZpFm2ZSvx889YpqLLchpeb2mYGqIpi+R421Zy/GUnlK7rLhFVX+ftpOvCkFpAmLXzsrk6ayuUksbwt9ib3eO935/9YEVNhoosql16mn9GiixOLP6r9m14nvroX9mnjstnjUxXzPMUovaIfv8BgSQJhJIkEEqSQChJAqEkCYSSJBBKkkCo/wICDQ002SDzgxYkaIuANi0X5i8hpIpr8W0lCwAAAABJRU5ErkJggg==);position:absolute;top:50%;inset-inline-start:50%}.list-item-play-gif{scale:.6;width:72px;height:72px;-webkit-margin-start:-36px;margin-inline-start:-36px;margin-top:-36px;background-position:0 0;cursor:pointer;transition:all 350ms}@media (min-width:320px){.list-item-play-gif{scale:.8}}@media (min-width:480px){.list-item-play-gif{scale:1}}.list-item-play-gif>span{width:66px;height:66px;-webkit-margin-start:-33px;margin-inline-start:-33px;margin-top:-33px;background-position:0 -73px}.list-item-play-gif--loading>span,.list-item-play-gif:hover>span{-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.list-item-play-gif>i{width:32px;height:17px;-webkit-margin-start:-16px;margin-inline-start:-16px;margin-top:-9px;background-position:0 -140px}@-webkit-keyframes spin{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-group{display:none}.settings-group-isolated{display:block}.stats-block,a.stats-block{text-decoration:none;color:inherit;padding:10px;border-radius:4px}a.stats-block:hover{color:var(--linkText);background:var(--bodyEmpty)}.tone-dark a.stats-block:hover{background:#222}.text-align-center .stats-big-number{text-align:center}.stats-big-number .number{font-size:44px;font-weight:400}.stats-big-number .number span{font-size:24px}.stats-big-number .label{display:block}.tone-dark .text-content code{border-color:#222;background:#111}#home-top-bar-placeholder{margin-top:-65px}#home-cover{width:100%;background-position:center center;background-color:#333;background-size:cover;color:#fff;position:relative}body.landing #home-cover,body.split #home-cover{margin:0;padding:0;height:100vh;height:100dvh}body.split #home-cover{margin:0;height:500px}#home-cover-content{position:relative;text-align:center;height:100%;top:50px}body.landing #home-cover-content,body.split #home-cover-content{height:calc(100% - 50px);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column}#home-cover-content>*{margin:10px 0}#home-cover-content h1,#home-cover-content p{text-shadow:2px 2px 8px rgba(0,0,0,.25)}#home-cover-content h1{font-size:2.4em;line-height:120%;font-weight:600}@media (min-width:768px){#home-cover-content h1{font-size:2.7em}}@media (min-width:992px){#home-cover-content h1{font-size:3em}}#home-cover-content p{font-size:22px}.home-buttons{text-align:center}.home-buttons a{font-size:16px;text-transform:uppercase;min-height:50px;line-height:1.5;height:auto;text-align:center;letter-spacing:2px;padding:12px 30px}#home-pics-feature{height:700px;overflow:hidden;position:relative;margin:10px 0}#home-pics-feature.empty{height:auto}#home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);width:100%;height:200px;position:absolute;bottom:0;z-index:1}.tone-dark #home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(0,0,0,0) 0,#000 100%)}#home-pics-feature.empty #home-pics-overlay{display:none}#home-join{margin:40px 0;padding-bottom:40px}#home-join h2{font-size:38px}#home-join p{margin:20px 0;font-size:18px}.ad-banner{margin:10px;text-align:center}.ad-banner:empty{margin:0;height:0}.ad-banner img{display:block;margin:0 auto}.ad-banner-size-300x250{width:300px;height:250px}.ad-banner-size-336x280{width:336px;height:280px}.ad-banner-size-728x90{width:728px;height:90px}.ad-banner-size-300x600{width:300px;height:600px}.ad-banner-size-320x100{width:320px;height:100px}.ad-banner-size-320x50{width:320px;height:50px}.ad-banner-size-468x60{width:468px;height:60px}.ad-banner-size-234x60{width:234px;height:60px}.ad-banner-size-120x600{width:120px;height:600px}.ad-banner-size-120x240{width:120px;height:240px}.ad-banner-size-160x600{width:160px;height:600px}.ad-banner-size-300x1050{width:300px;height:1050px}.ad-banner-size-970x90{width:970px;height:90px}.ad-banner-size-970x250{width:970px;height:250px}.ad-banner-size-250x250{width:250px;height:250px}.ad-banner-size-200x200{width:200px;height:200px}.ad-banner-size-180x150{width:180px;height:150px}.ad-banner-size-125x125{width:125px;height:125px}#banner_before_home_cover{margin:0;padding:10px;background:#000}#banner_image_image-viewer_foot,#banner_image_image-viewer_top{height:90px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}body#consent-screen,body#maintenance{padding:0;margin:0;width:100%;height:100%}#consent-screen-cover,#maintenance-cover{height:100%;background-position:center center;background-color:#333;background-size:cover}#consent-screen-cover-inner,#maintenance-cover-inner{background:rgba(0,0,0,.25);width:100%;height:100vh;height:100dvh}#consent-screen-cover-content,#maintenance-cover-content{color:#fff;padding:40px;text-align:center;position:relative;top:50%;transform:translateY(-50%)}#maintenance-cover-content .logo{display:inline-block;margin-bottom:20px;color:#fff;text-decoration:none;font-size:2.5em}#maintenance-cover-content .logo img{height:30px}#maintenance-cover-content h1{font-size:2.5em;margin-bottom:20px}#maintenance-cover-content p{font-size:1.2em}#consent-screen-cover-inner{background:0 0}#consent-screen-cover-src{width:100%;height:100%;position:absolute;top:0;inset-inline-start:0;background-position:center;background-size:cover}#consent-screen-content{background:var(--menuBackground);color:var(--menuItemText);margin:0 auto;padding:30px;box-shadow:0 0 50px 6px rgba(0,0,0,.25);top:50%;position:relative;transform:translateY(-50%);border-radius:10px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}#consent-screen-content h1{line-height:2em}#consent-screen-content .logo-consent{width:2em;height:auto;display:inline-block;-webkit-margin-end:10px;margin-inline-end:10px;vertical-align:top}#fullscreen-modal-box .image-preview{margin-bottom:20px;overflow:auto;text-align:center}.image-preview-container{position:relative;display:block;float:left;width:20%}[dir=rtl] .image-preview-container{float:right}.image-preview-container .empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3em}#fullscreen-modal-box .image-preview:empty{display:none}#fullscreen-modal-box .image-preview .canvas{border:0;display:inline-block;margin:0 auto;max-width:100%;max-height:500px}#fullscreen-modal-box .image-preview .thumb{font-size:0;border:0;display:block;background-size:cover;background-position:center;width:100%}.content-password-gate{background:var(--bodyBackground);border-radius:10px;padding:30px;font-size:16px;text-align:center}.tone-dark .content-password-gate{background:0 0}.content-password-gate h1{font-size:30px;margin-bottom:10px}.content-password-gate h1 .icon{display:block;font-size:60px;margin-bottom:10px}.content-password-gate .g-captcha>div{-webkit-margin-end:auto;margin-inline-end:auto;-webkit-margin-start:auto;margin-inline-start:auto}#home-cover-slideshow{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;overflow:hidden}.home-cover-img{position:absolute;inset-inline-start:0;top:0;width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center center;display:block;opacity:0;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.home-cover-img.animate-in,.home-cover-img.animate-in--alt{-webkit-animation-name:slideshow;animation-name:slideshow;-webkit-animation-duration:10s;animation-duration:10s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.home-cover-img.animate-in--alt{opacity:1;-webkit-animation-name:slideshow--alt;animation-name:slideshow--alt}.home-cover-img.animate-end{opacity:1;transform:scale(1.1);-webkit-animation:none;animation:none}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1.1)}}@keyframes slideshow--alt{100%{transform:scale(1.1)}}@supports (-ms-accelerator:true){.home-cover-img.animate-end{transform:scale(1)}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1)}}@keyframes slideshow--alt{100%{transform:scale(1)}}}#home-cover-slideshow::after{content:"";z-index:1;height:50px;position:absolute;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.1) 0,rgba(0,0,0,0) 100%)}#dashboard-settings{min-height:400px}#dashboard .form-content,#settings .form-content{padding-bottom:60px}.footer{color:var(--bodyTextDisabled);font-size:10px;line-height:20px;text-align:center;width:100%;position:absolute;bottom:0;z-index:900;padding:5px;line-height:1}body#upload .footer{background:var(--bodyBackground)}.footer a{color:inherit}body.--viewer-shown{overflow:hidden}.viewer{background:#000;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.viewer .list-tool{display:initial!important}.js .viewer{display:block;touch-action:pinch-zoom!important}.viewer--hide{opacity:0}.viewer--show{opacity:1}.viewer.viewer--no-cursor,.viewer.viewer--no-cursor *{cursor:none}.viewer-content{position:relative;top:0;inset-inline-start:0;width:100%;height:100%}.viewer-content .viewer-src{position:absolute;max-height:100vh;max-height:100dvh;max-width:100vw;max-width:100dvw;transform:translate(-50%,-50%);top:50%;left:50%}.viewer[data-cover="1"] .viewer-content .viewer-src{width:100vw;width:100dvw;height:100vh;height:100dvh;-o-object-fit:cover;object-fit:contain}.viewer[data-cover="1"] .viewer-content video.viewer-src{width:auto}.viewer-content video.viewer-src{padding-top:2.2em;padding-bottom:60px}.--fullscreen .viewer-content video.viewer-src{padding:0}.viewer-close,.viewer-wheel>div{color:#fff;top:0;font-size:1em;text-shadow:1px 1px 0 rgba(0,0,0,.5);text-align:center}.viewer-close{position:absolute;width:2.4em;height:2.4em;line-height:2.4em;cursor:pointer;inset-inline-end:-2.4em;z-index:500}.viewer:hover .hover-display.viewer-close{inset-inline-end:2px}.viewer-wheel>div{position:fixed;bottom:0;width:calc(1em + 20px);cursor:pointer;padding:10px;opacity:.7;display:none}.viewer-wheel>div:hover{opacity:1}.viewer--nav-prev .viewer-wheel-prev{inset-inline-start:0;display:block}.viewer--nav-next .viewer-wheel-next{inset-inline-end:0;display:block}.viewer-wheel>div>.icon{position:absolute;top:50%;transform:translateY(-50%);display:block;font-size:1.5em}.viewer-top{padding:10px;position:fixed;bottom:0;margin-bottom:100px;text-align:center;left:50%;width:auto;transform:translateX(-50%)}.viewer-top a{color:#fff;text-decoration:none;display:inline-block;background-color:rgba(55,55,55,.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:100em;padding:.6em 1.2em}.viewer-foot{padding:10px;position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.6) 100%);display:flex;flex-wrap:wrap;flex-flow:row;-webkit-padding-end:2em;padding-inline-end:2em}.viewer-owner{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;float:left}.viewer-owner .btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;color:#000;border-color:transparent;opacity:1}.viewer-owner .btn.btn-cta:hover{background:var(--buttonAccentBackground);color:var(--buttonAccentText)}.viewer-owner .user-image{font-size:40px;width:1em;height:1em;vertical-align:bottom;color:#fff}.viewer-owner .user-name{font-size:initial;text-decoration:none;vertical-align:middle;line-height:40px;color:inherit}.viewer-owner a.user-name:hover{color:var(--backgroundLightAlpha)}.viewer-owner{order:1}.viewer-foot .viewer-title a{color:#fff;text-shadow:1px 1px 5px rgba(0,0,0,.5)}.viewer-kb{font-size:.86em;flex-grow:1;order:2;text-align:center}.viewer .viewer-kb{-webkit-padding-end:190px;padding-inline-end:190px}.device-mobile .viewer-kb{display:none}.viewer-kb-input{display:inline-block}.viewer .viewer-kb-input{color:#fff}.viewer-kb-key{display:inline-block;margin:10px;-webkit-margin-start:0;margin-inline-start:0}.viewer-kb-key:first-child{-webkit-margin-start:10px;margin-inline-start:10px}.viewer-kb-key kbd{border:1px solid rgba(0,0,0,.5);background:rgba(120,120,120,.5);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:4px 6px;border-radius:2px;display:inline-block;-webkit-margin-end:5px;margin-inline-end:5px;line-height:1}.viewer-like{transform:none;top:auto;bottom:20px;inset-inline-end:20px;position:absolute}.viewer:hover .hover-display--flex{display:flex}.--width-auto{width:auto}.--height-auto{height:auto}html.--idle .viewer,html.--idle .viewer *{cursor:none!important}html .fullscreen-show{display:none}:-webkit-full-screen .fullscreen-hide{display:none}:-ms-fullscreen .fullscreen-hide{display:none}:fullscreen .fullscreen-hide{display:none}:-webkit-full-screen .fullscreen-show{display:block}:-ms-fullscreen .fullscreen-show{display:block}:fullscreen .fullscreen-show{display:block}a.image-container{-webkit-tap-highlight-color:transparent}a{color:var(--linkText);outline:0;text-decoration:none}.content-section,.input-label{margin-top:20px;margin-bottom:20px;position:relative}.content-section:first-child,.input-label:first-child{margin-top:0}.input-label .input{width:100%;margin-bottom:0}.input-label .input+.input{margin-top:5px}.input-label .input-label{margin-bottom:10px}.input-label .input-label .label{font-weight:400}.input-label label .caption,.input-label label .optional{font-weight:400;font-size:.92em}.input-label label .caption:before,.input-label label .optional:before{content:"("}.input-label label .caption:after,.input-label label .optional:after{content:")"}.input-label-below{margin-top:5px;clear:both}.background-cover{position:fixed;top:0;right:0;bottom:0;left:0;background-position:center center;background-size:cover}.input-with-button{position:relative}.input-with-button input::-webkit-inner-spin-button,.input-with-button input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-with-button input[type=number]{-moz-appearance:textfield}.input-with-button button{background:0 0;position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);border:none;font-size:22px;width:1em;height:1em;outline:0;color:var(--colorAccent)}.input-with-button button:focus,.input-with-button button:hover{color:var(--colorAccentStrong)}#top-left{position:fixed;padding:5px;inset-inline-start:0;top:0}.top-button{padding:5px}.top-button .menu-box{margin-top:5px}.top-button-icon{font-size:16px;color:#fff;cursor:pointer;text-shadow:1px 1px 0 rgba(0,0,0,.15)}.background-default{background:#2ecc71;background:linear-gradient(to bottom,#2ecc71 0,#3498db 100%)}.content-box{position:relative;margin:20px}.content-box-text :first-child{margin-top:0}.content-box-text :last-child{margin-bottom:0}.logo{max-height:50px;max-width:220px;margin-bottom:20px}.card-box{min-width:270px;width:calc(100vw - 40px)}.access-box-content{background:var(--bodyBackground)}.fancy-box-heading{font-size:22px;margin:20px 0 30px 0}.fancy-fieldset{border:0;padding:0;margin:0}.fancy-fieldset input:not([type=checkbox]),.fancy-fieldset input[type=text],.fancy-fieldset select,.fancy-fieldset textarea{outline:0;padding:10px 0;width:100%;border-radius:0;border-color:transparent;background:0 0;box-shadow:none}.fancy-fieldset .checkbox-label input[type=checkbox]{width:auto;vertical-align:middle;margin:0 0 0 -20px}.fancy-fieldset select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.fancy-fieldset input,.fancy-fieldset select{padding:10px 0;border-top:transparent;-webkit-border-start:transparent;border-inline-start:transparent;-webkit-border-end:transparent;border-inline-end:transparent}.fancy-fieldset input:focus,.fancy-fieldset input:focus[type=text],.fancy-fieldset select:focus,.fancy-fieldset textarea:focus{border-color:var(--colorAccent)}.fancy-fieldset .input-with-button input[type=password]{-webkit-padding-end:30px;padding-inline-end:30px}.fancy-fieldset .input-password input[type=password]{-webkit-padding-end:55px;padding-inline-end:55px}.fancy-fieldset>div:last-child{margin-bottom:inherit}.fancy-fieldset .label{line-height:1.5}.fancy-fieldset .input-label:last-child{margin-bottom:0}.fancy-fieldset .checkbox-label{margin:0}a.login-provider-button{position:relative;text-decoration:none;display:inline-block;font-size:1em;margin:10px 0;background:#d9d9d9;padding:8px;text-decoration:none;display:block;color:#fff;border-radius:3px;text-align:center}a.login-provider-button .text{-webkit-margin-start:5px;margin-inline-start:5px}a.login-provider-button--facebook{background-color:#4267b2}a.login-provider-button--twitter{background-color:#1da1f2}a.login-provider-button--google{background-color:#ea4335}a.login-provider-button--vkontakte{background-color:#45668e}a.login-provider-button--apple{background-color:#000}a.login-provider-button--amazon{background-color:#f90}a.login-provider-button--bitbucket{background-color:#2684ff}a.login-provider-button--discord{background-color:#738adb}a.login-provider-button--dribbble{background-color:#e94c88}a.login-provider-button--dropbox{background-color:#007ee5}a.login-provider-button--github{background-color:#333}a.login-provider-button--gitlab{background-color:#fc6d26}a.login-provider-button--instagram{background-color:#e1306c}a.login-provider-button--linkedin{background-color:#006192}a.login-provider-button--mailru{background-color:#168de2}a.login-provider-button--medium{background-color:#00ab6c}a.login-provider-button--odnoklassniki{background-color:#ed812b}a.login-provider-button--orcid{background-color:#a5ce37}a.login-provider-button--reddit{background-color:#ff4500}a.login-provider-button--spotify{background-color:#1db954}a.login-provider-button--stackexchange{background-color:#1e5397}a.login-provider-button--steam{background-color:#00adee}a.login-provider-button--strava{background-color:#fc4c02}a.login-provider-button--telegram{background-color:#08c}a.login-provider-button--tumblr{background-color:#35465c}a.login-provider-button--twitchtv{background-color:#9146ff}a.login-provider-button--wechat{background-color:#7bb32e}a.login-provider-button--windowslive{background-color:#107c10}a.login-provider-button--wordpress{background-color:#21759b}a.login-provider-button--yandex{background-color:#fc0}a.login-provider-button--yahoo{background-color:#410093}a.login-provider-button--qq{background-color:#121214}.login-provider-button-outline{position:relative;text-decoration:none;width:32px;height:32px;display:inline-block;border-radius:50%;border-width:1px;border-style:solid;font-size:16px;margin:5px}.login-provider-button-outline .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-provider-button-outline.border-color-facebook:focus,.login-provider-button-outline.border-color-facebook:hover{background-color:#3b5998}.login-provider-button-outline.border-color-twitter:focus,.login-provider-button-outline.border-color-twitter:hover{background-color:#1da1f2}.login-provider-button-outline.border-color-google:focus,.login-provider-button-outline.border-color-google:hover{background-color:#ea4335}.login-provider-button-outline.border-color-vk:focus,.login-provider-button-outline.border-color-vk:hover{background-color:#45668e}.login-provider-button-outline:focus .icon,.login-provider-button-outline:hover .icon{color:#fff}#login{padding:0;margin:0}.content-section--captcha-fix #g-recaptcha,.content-section--captcha-fix .h-captcha{min-height:78px;transform:scale(.89);transform-origin:left}#login .input{margin:0}.btn-container--fixed{position:fixed;left:0;right:0;bottom:0;background:rgba(0,0,0,.05);padding:10px 0;margin:0;border:0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);text-align:start}.phablet .btn-container--fixed,.phone .btn-container--fixed{text-align:center}body.full--wh{height:100vh;height:100dvh;width:100vw;width:100dvw}.display-flex #home-cover-slideshow{position:fixed}[data-content=dashboard-imports] [data-action=resume],[data-content=dashboard-imports] [data-errors="0"] [data-content=log-errors],[data-content=dashboard-imports] [data-result],[data-content=dashboard-imports] [data-started="0"] [data-content^=log]{display:none}[data-content=dashboard-imports] [data-errors="1"] [data-content=log-process],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed][data-errors="0"] [data-result=success],[data-content=dashboard-imports] [data-status=paused] [data-action=resume],[data-content=dashboard-imports] [data-status][data-errors="1"] [data-result=error]{display:initial}[data-content=dashboard-imports] [data-status=canceled] [data-action=cancel],[data-content=dashboard-imports] [data-status=canceled] [data-action=pause],[data-content=dashboard-imports] [data-status=canceled] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=completed] [data-action=cancel],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=paused] [data-action=pause],[data-content=dashboard-imports] [data-status=queued] [data-action=pause],[data-content=dashboard-imports] [data-status=working] [data-target=modal-process-import]{display:none!important}.connecting-ip{font-family:monospace;font-size:27px}.code{padding:.05em}.code--command{border-radius:.2em;padding:.5em;-webkit-padding-end:.7em;padding-inline-end:.7em;-webkit-border-start:.2em solid var(--colorAccent);border-inline-start:.2em solid var(--colorAccent);background-color:var(--bodyEmpty)}.code--command::before{content:"$ ";color:var(--colorAccent)}.importing{background:var(--bodyEmpty);padding:10px;position:relative}.importing:nth-child(even){margin:0 10px}.phablet .importing:nth-child(even),.phone .importing:nth-child(even){margin:10px 0}.importing-stats{margin:10px 0}.importing-stats .figure{display:inline-block;padding:5px;background:var(--buttonAccentBackground);color:var(--buttonAccentText)}.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-theme-light .apexcharts-legend-text,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon{color:var(--bodyText)!important}.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg{fill:var(--bodyText)!important}.apexcharts-theme-dark .apexcharts-legend-text{color:var(--bodyTextSubtle)!important}.apexcharts-theme-light svg text{fill:var(--bodyText)}.apexcharts-theme-dark svg text{fill:var(--bodyTextSubtle)}.apexcharts-toolbar{z-index:0!important}.apexcharts-canvas>svg{background:0 0!important}#dashboard-chart{margin:35px auto;overflow:hidden}#dashboard-chart .toolbar{-webkit-margin-start:45px;margin-inline-start:45px}#dashboard-chart button{background:var(--bodyBackground);color:var(--bodyText);border:1px solid var(--bodySeparator);border-bottom:2px solid var(--bodySeparator);border-radius:2px;padding:4px 17px}#dashboard-chart button.active{color:var(--buttonAccentText);background:var(--buttonAccentBackground);border:1px solid var(--buttonAccentBackground);border-bottom:2px solid var(--buttonAccentBackground)}#dashboard-chart button:focus{outline:0}.corazoncito{width:1em;height:1em;font-size:290px;color:rgb(255,0,0,.6);z-index:1;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.4);transition:all .5s ease}.corazoncito.--show{opacity:1;transform:translate(-50%,-50%) scale(1)}.corazoncito span{font-size:.25em;top:50%;left:50%;display:block;position:absolute;color:#fff;transform:translate(-50%,-50%);line-height:1;font-family:sans-serif;margin-top:-.1em;font-weight:400}.card-wrapper{height:175px;overflow-y:hidden;overflow-x:auto;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.card-wrapper::-webkit-scrollbar{width:10px;height:3px}.card-wrapper::-webkit-scrollbar-track{background:var(--bodyEmpty)}.card-wrapper::-webkit-scrollbar-thumb{background:var(--colorAccent)}.card-wrapper::-webkit-scrollbar-thumb:hover{background:var(--colorAccentStrong)}.card-slider{width:calc(310px * 8 - 10px)}.card-container{width:300px;height:200px;display:block;float:left;-webkit-margin-end:10px;margin-inline-end:10px;scroll-snap-align:start}[dir=rtl] .card-container{float:right}.card-container:first-child{-webkit-margin-start:0;margin-inline-start:0}.card-container:last-child{-webkit-margin-end:0;margin-inline-end:0}.card{width:100%;position:relative}.card a{text-decoration:none}.card-header-image{width:100%;height:150px;overflow:hidden;border-radius:1em;display:block;background-size:cover;background-position:center}.card-header-image-mask{width:100%;height:100%;display:block;background-color:rgba(0,0,0,0)}.card-header-image:hover .card-header-image-mask{background-color:var(--buttonAccentBackground)}.card-text{color:#fff;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;text-shadow:2px 2px 8px rgba(0,0,0,.35)}.card-header-image:hover .card-text{color:var(--buttonAccentText)}.card-text h3{font-weight:700;font-size:1.6em;margin-bottom:5px}.powered-by--provider a.logo{font-size:5em;text-decoration:none}[data-banned="0"] [data-action=user_unban],[data-banned="1"] [data-action=user_ban]{display:none}.captcha.captcha--3 [data-content=captcha]{display:none}.cta-row{border:1px solid var(--bodySeparator);border-right:0;border-left:0;padding-top:20px;padding-bottom:20px;margin:0;cursor:-webkit-grab;cursor:grab;margin-bottom:-1px}.cta-row.ui-sortable-helper{background:var(--modalBackground)}.phablet .btn-cta .btn-text,.phone .btn-cta .btn-text{display:none}.btn-cta{background-color:var(--bodyBackground);color:var(--bodyText);border-color:var(--bodyText)}.btn-cta:hover{background-color:var(--colorAccent);color:var(--buttonAccentText);border-color:transparent}.btn-cta:hover .btn-icon{color:inherit}select#theme_font{font-family:Helvetica,Arial,sans-serif}.font-style-italic{font-style:italic}img[data-type=video]{cursor:pointer}.list-item-duration{position:absolute;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1;padding:.2em .3em;border-radius:.25em;color:#fff;margin:5px;text-shadow:none}.edition-label{font-weight:700}:disabled{opacity:.5} \ No newline at end of file +body{min-height:100%;background:var(--bodyBackground);position:relative;font-family:Helvetica,Arial,sans-serif;font-size:14px}html.powered-by-footer body{padding-bottom:22px}html.powered-by-footer .upload-box-inner{padding-bottom:35px}body.landing{min-height:500px;height:100%;height:100vh;height:100dvh;padding:0;margin:0}.phone body.landing{min-height:auto}.js body.landing{overflow:hidden;opacity:0}.js body.landing.load{transition:transform .6s ease,opacity 350ms linear;opacity:1}#home-cover-content,#index .flex-center{opacity:0}.js body#index.load .flex-center,.js body.load #home-cover-content{transition:all .6s ease;transition-delay:150ms;opacity:1}.js body.loaded{overflow:auto}body.split{margin-top:0;padding-top:0}.content-width.fluid,.fluid .content-width{width:100%}@media (min-width:992px){.content-width.wide{max-width:none}}html.device-mobile .device-mobile--hide{display:none!important}html.device-nonmobile .device-nonmobile--hide{display:none!important}body#upload{background-color:transparent}.software-version-name{font-family:'Brush Script MT',cursive,serif;font-size:1.4em;text-transform:capitalize}.image-viewer{text-align:center;position:relative;min-height:72px;overflow:hidden;background:var(--viewerBackground)}.image-viewer-main{display:inline-block;vertical-align:middle}.image-viewer-container{display:grid;margin:0 auto;position:relative;min-height:calc(100% - 50px)}.image-viewer-container.--thumbs{min-height:calc(100% - 100px)}.image-viewer{width:100%}.image-viewer .media{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;max-height:calc(100dvh - 110px);display:block;margin-left:auto;margin-right:auto}.image-viewer.--thumbs .media{max-height:calc(100dvh - 160px)}.image-viewer .media.zoom-in{max-height:none;max-width:100dvw}.image-viewer .media.zoom-natural{max-width:100%;max-height:100%;width:auto;height:auto}#image-viewer-360{width:100dvw;height:calc(100dvh - 110px);background:0 0!important}.image-viewer .btn-download{position:absolute;top:20px;inset-inline-end:20px}#image-viewer-loading,.viewer-loader{width:30px;height:30px;position:absolute;inset-inline-start:50%;top:50%;-webkit-margin-start:-15px;margin-inline-start:-15px;margin-top:-15px;border-radius:100%;background:rgba(17,17,17,.9)}#image-viewer-loader{line-height:1;position:absolute;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);color:#fff;font-size:1em;left:50%;top:50%;padding:8px 14px;border-radius:100px;transform:translate(-50%,-50%);cursor:pointer;display:none}#image-viewer-loader:hover{background:rgba(0,0,0,.6);color:#fff}#image-viewer-loader .btn-icon{position:relative;top:0;font-size:12px}.btn-like .btn.btn-liked,.btn-like .btn.btn-unliked{display:none}.btn-like[data-liked="0"] .btn-unliked{display:inline-block}.btn-like[data-liked="1"] .btn-liked{display:inline-block}.btn-album-cover .btn.btn-album-is-cover,.btn-album-cover .btn.btn-album-not-cover{display:none}.btn-album-cover[data-cover="0"] .btn-album-not-cover{display:inline-block}.btn-album-cover[data-cover="1"] .btn-album-is-cover{display:inline-block}.btn-follow .btn.btn-followed,.btn-follow .btn.btn-unfollowed{display:none}.btn-follow[data-followed="0"] .btn-unfollowed{display:inline-block}.btn-follow[data-followed="1"] .btn-followed{display:inline-block}#fullscreen-uploader-mask{z-index:99}.phone #fullscreen-uploader-mask{z-index:400}#anywhere-upload{z-index:900;-webkit-overflow-scrolling:touch;transition:transform .3s ease}#anywhere-upload.hidden-visibility iframe{visibility:hidden}.phone #anywhere-upload{z-index:500;height:100vh!important}#upload #anywhere-upload{display:grid;align-items:center;position:fixed;padding-top:50px;bottom:0;overflow:auto;z-index:0}#upload .upload-box .upload-box-allowed-files,.phone .upload-box .upload-box-allowed-files{display:none}#upload .upload-box[data-queue-size="0"] .upload-box-allowed-files,.phone .upload-box[data-queue-size="0"] .upload-box-allowed-files{display:block}#anywhere-upload-paste{height:0;opacity:0;font-size:0}#anywhere-upload-paste *{display:none}.upload-box-queue{text-align:center;font-size:0;margin-top:35px;margin-bottom:35px}.upload-box-queue li{position:relative;text-align:center;display:inline-block;margin:5px}.upload-box-queue .block,.upload-box-queue li{border-radius:.5em;-webkit-transform:translateZ(0)}.upload-box-queue li,.upload-box-queue li.normal{width:110px;height:110px;font-size:14px;font-size:1rem}.upload-box-queue li.small{width:77px;height:77px;font-size:9px;font-size:.643rem}.upload-box-queue li.tiny{width:54px;height:54px;font-size:7px;font-size:.5rem}.upload-box-queue .block{width:100%;height:100%;top:0;inset-inline-start:0;overflow:hidden;position:absolute}.upload-box-queue a.image-link{display:none}.upload-box-queue .completed a.image-link{display:block;position:absolute;overflow:hidden;z-index:1;-webkit-transform:rotate(.000001deg)}.upload-box-queue .queue-item .block.edit,.upload-box-queue .queue-item .queue-item-button{display:block;position:absolute;cursor:pointer;z-index:1}.upload-box-queue .queue-item .queue-item-button .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.upload-box-queue .queue-item.completed:hover .queue-item-button{display:none}.upload-box-queue .queue-item .queue-item-button{font-size:10px;width:21px;height:21px;line-height:23px;background:var(--buttonDefaultBackground);color:var(--buttonDefaultText);border-radius:200px;inset-inline-start:-5px;box-shadow:1px 1px 4px 0 rgba(0,0,0,.5)}.upload-box-queue .queue-item .queue-item-button:hover{background:var(--buttonDefaultHoverBackground);color:var(--buttonDefaultHoverText)}.upload-box-queue .queue-item .queue-item-button.cancel{top:-7px}.upload-box-queue .queue-item .queue-item-button.edit{top:16px;font-size:9px;opacity:0}.upload-box-queue .big-icon{position:absolute;color:#dadada;font-size:5.36em;width:1em;height:1em;inset-inline-start:50%;top:50%;-webkit-margin-start:-.5em;margin-inline-start:-.5em;margin-top:-.5em}.tone-dark .upload-box-queue .big-icon{color:#444;text-shadow:1px 1px 0 rgba(0,0,0,.9)}.upload-box-queue .done,.upload-box-queue .preview{position:relative;overflow:hidden}.upload-box-queue .preview .canvas{position:absolute;top:50%;inset-inline-start:50%}.upload-box-queue .progress{position:absolute}.queue-item.uploading .block.edit,.queue-item.uploading .queue-item-button.edit{display:none}.upload-box-queue .progress-bar{height:100%;float:right;width:100%;display:none}[dir=rtl] .upload-box-queue .progress-bar{float:left}.upload-box-queue .failed .result,.upload-box-queue .progress-bar{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transform:all .3s}.upload-box-queue .uploading .progress-bar{display:block}.upload-box-queue .completed .result.done,.upload-box-queue .failed .result.failed{display:block}.upload-box-queue .result{position:absolute;z-index:1;display:none}.tone-dark .upload-box-queue .failed .result,.tone-dark .upload-box-queue .progress-bar{background:rgba(0,0,0,.65)}.upload-box-queue .result .icon{position:absolute;width:100%;font-size:3.429em;top:50%;inset-inline-start:0;margin-top:-.5em;text-shadow:none}.upload-box-queue .done .result .icon{text-shadow:2px 2px 6px rgba(0,0,0,.2)}.upload-box-queue .failed .result .icon{font-size:3.429em}.upload-box-queue.queue-complete .cancel,.upload-box-queue.queue-complete .edit{display:none}#form-embed-toggle-combo,#uploaded-embed-toggle-combo{position:relative}#upload .top-bar{box-shadow:none;border-bottom-color:transparent}#upload .upload-box{transform:none;position:static}body#upload [data-action=close-upload]{display:none!important}.upload-box.queueHasResults [data-action=cancel-upload],.upload-box.queueReady [data-action=close-upload],.upload-box.queueUploading [data-action=close-upload],.upload-box:not(.queueHasResults) [data-action=cancel-upload-remaining],.upload-box:not(.queueReady):not(.queueCompleted) [data-action=reset-upload],.upload-box:not(.queueUploading) [data-action^=cancel-upload],.upload-box:not([data-queue-size="0"]) [data-action=close-upload]{display:none}#background-cover{height:260px;background-color:#000;position:relative}.phone #background-cover:not(.no-background){height:20vh;max-height:260px;min-height:90px}#background-cover.no-background{background-color:var(--bodyEmpty);background-image:none!important;height:auto}.tone-dark #background-cover.no-background{background:#2f2f2f}#background-cover-wrap{height:100%;overflow:hidden;position:relative;padding:10px}#background-cover .content-width{text-align:center}#change-background-cover{position:absolute;inset-inline-end:0;top:0;z-index:500}#user-background-upload{top:0;inset-inline-start:0;width:1px;height:1px}#background-cover-src{overflow:hidden;background-position:center center;background-size:cover}#background-cover .loading-placeholder,#background-cover-src{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%}#background-cover.no-background #background-cover-src{height:0}#background-cover .loading-placeholder{background:rgba(0,0,0,.8)}.list-item-privacy{display:none}.list-item-thumbs li,.list-item-thumbs li a{display:block;height:auto;overflow:hidden}.list-item-thumbs li a{height:100%;background-size:cover;background-position:center center}.list-item-thumbs li img{width:100%;display:block}.input-copy{position:relative}.list-item-image-tools{overflow:hidden;position:absolute;inset-inline-end:0;top:0;transition:all .2s ease-in-out;text-shadow:1px 1px 5px rgba(0,0,0,.5)}.list-item-image-tools.--top{bottom:auto;top:0}.list-item-image-tools.--right{inset-inline-start:auto;inset-inline-end:0}.list-item-image-tools.--bottom{top:auto;bottom:0;width:2em}.list-item-image-tools.--left{inset-inline-end:auto;inset-inline-start:0}.list-item-image-tools>div{margin:0;cursor:pointer;position:relative;font-size:1em;inset-inline-end:0;-webkit-margin-start:auto;margin-inline-start:auto}.list-item-buttons>div,.list-item-image-tools>div,html.--idle .list-item-image-tools>div[data-action=viewer-close]{opacity:.7}.list-item .hover-display.list-item-image-tools,.list-item-image-tools>div:hover,.list-item.selected div.tool-select{opacity:1;z-index:1}.list-item.--over .list-item-image-tools>div{opacity:.5}.list-item-image-tools>div{float:right}[dir=rtl] .list-item-image-tools>div{float:left}.list-item-image-tools>div,.list-item-image-tools>div *{display:block;color:var(--listItemText)}.list-item-image-tools>div span{float:right}[dir=rtl] .list-item-image-tools>div span{float:left}.list-item-image-tools>div .label{font-size:.86em}.list-item-image-tools>div .btn-icon{font-size:1em}.phone .list-item:not(.selected):not(.viewer) .tool-select{display:none}.list-item-image-tools>div .label{text-transform:uppercase;-webkit-padding-start:1em;padding-inline-start:1em;-webkit-padding-end:0;padding-inline-end:0;display:none;height:100%}.list-item-image-tools>div:hover .label{display:block}.small-cols .list-item-image-tools>div:hover .label{display:none}[data-flag=safe] .label-flag-safe.btn-icon,[data-flag=safe] .list-item-image-tools>div:hover .label.label-flag-safe,[data-flag=unsafe] .label-flag-unsafe.btn-icon,[data-flag=unsafe] .list-item-image-tools>div:hover .label.label-flag-unsafe{display:none}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:not(.current) .image-container{filter:blur(8px);-webkit-filter:blur(8px)}.unsafe-blur-on .list-item .list-item-thumbs div[data-flag=unsafe]:not(.selected):not(.ui-selecting) a,.unsafe-blur-on [data-flag=unsafe]:not(.selected):not(.ui-selecting):not(.current) .image-container{transform:scale(1.2)}.unsafe-blur-on .list-item:hover .list-item-thumbs div[data-flag=unsafe] a,.unsafe-blur-on [data-flag=unsafe]:hover:not(.selected):not(.ui-selecting):not(.current) .image-container{filter:none;-webkit-filter:none;transform:scale(1)}.list-item-buttons>div,.list-item-image-tools>div,.list-item-image-tools>div .btn-icon{width:2.2em;height:2.2em;line-height:2.2em}.list-item-image-tools>div .btn-icon{color:inherit;text-align:center}.list-item-album .tool-flag{display:none}.list-item .list-item-avatar-cover,.list-item .list-item-avatar-cover>*{border-radius:100%}.list-item .image-container.--bodyEmpty .empty,.list-item .list-item-avatar-cover{position:absolute;border:0;left:50%;top:50%;transform:translate(-50%,-50%)}.list-item .list-item-avatar-cover{height:60%;width:60%;max-height:160px;max-width:160px;background:var(--backgroundLightAlpha);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.list-item .list-item-avatar-cover>*{width:100px;height:100px}.list-item .list-item-avatar-cover img{height:auto;box-shadow:2px 2px 2px rgba(0,0,0,.3)}.selected .list-item-image,.ui-selecting .list-item-image,.unselect .list-item-image{background:var(--viewerBackground)}body#moderate .list-item-like,body#moderate .viewer-kb-key[data-key="L"]{display:none}.list-item-buttons{color:#fff;position:absolute;inset-inline-end:0;bottom:0}.list-item-buttons>div{padding:10px;cursor:pointer;float:left;font-size:1em;-webkit-margin-start:-5px;margin-inline-start:-5px}[dir=rtl] .list-item-buttons>div{float:right}.list-item .list-item-buttons>div:hover{opacity:1}.list-item-like .btn-like{display:none}.list-item-like .btn-like.btn-liked,.list-item-like .btn-like:hover{opacity:1}[data-liked="0"] .list-item-like .btn-like.btn-unliked{display:block}[data-liked="1"] .list-item-like .btn-like.btn-liked{display:block}.list-item-play-gif,.list-item-play-gif *{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAACdCAMAAAAgwM7pAAAAAXNSR0IB2cksfwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAcVQTFRFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA///9///+///+///+///+///+///9///8///1///5///9///9///u///f///+///+///+///9///q///z///9///+///9///8///9///+///+///+///+///8///w///9///+///3///8///9///2///9///7///t///+///8///b///9///9///M///+///y//+A///9///r///7///+///7///3///+///8//+////8//+q///8///+///z///+///+///9///6///m///7///j///7///9///+///+///9///9///6///+///+///+///7///V///+///9///5///9///+///+///8///9///6///8///+///9///4///+///+///+///+///4///9///5///+///v///7///9///8///o///9///9///8///6///y///9///0///+///x///+///6////////////vBUIqgAAAJd0Uk5TABQmNkZSWF5iCipmAiRKZAQuXCwYVDoMUBpgIiil+enVw7GJUBoujZkOCPf/45sMFnDPbEqhtcfZ714Qi9EgWI8adDgO21oGbmoEyxICcgw87Toe+1QEVgJg/RTru344CkIIRnrx55VmMNf1wT4GyaMoh+HlTJcyYt+pJrfTzd0ipyqtEECTXAp8aGQ2FIMWxRKzLrhG/4D2XIEAAAQlSURBVHiczZjnWxNBEMYPCCThgNC7IIKCyaCIdJCmgIooYkFCEwsqTRRQQREb9l7u7/UuuZhccm1vX5+H99Ne2d/d7uzOzowgmCgpOcWVmub2eNxpqa6U5CSzdw3lTXe5xTi5XeleNkpGZpYvnhKWLyszwzYmOydXnxJWbk62PU5ewpAShphnA5NfYIVRVJBvgckoNJibhLkqNJ2qomJ7GEXFRcacklL7HFEsLTHilHlYOKLoKdPnlNucnqh85br/w8yRSTr/VMI4rrA8CfNUxDTPUZXG2S6Dwe5aFWvXU6FTjigWxnLyHUx0RL7Y3WJrfxmpIMrJ4+GI4j9fkG3pN8zljvinHD6OKOaopjf1h3aUG14CmbwcUcwMgbL4QVkKx8uxhiLyefltH5ayAlwIkEsGcS6isNzy+Y7giGKSkIwBJQspGFAKZq6V2U7FgFKFNAwoDWN9xf6OTqFEeXAg2NBgkw0zP2xBwrYIbNPC3AjMseFcLcT5pyOPI9gBiTuyYUEELKzBBVqw0A8XjOLCY1jAjkshYEkNLs3CJX64VBSXHOPSdVwBAVfSEGBFFkWgso+AK0QJsNJYSN48RLFOFaR8CNe+isr9VQeqaw46636otu5wqOEPkKr6I0dZKQ3HGuWOx8MXTc0trW3tIVQHG6azK/QTJ7pjb3b39La29rFg/P3K19vrTrJ9PUGnBmTMwOCQySunB/ptgE4SVZ45a/rKMFHLOUvQSP/5CxavjF6ULThm46csdamV6PIVBOlql0waN3x8jQE1ETQkTZ6Y6tZ/YkQK6q6QkWmiJgaQ0BGMLH2tZoiqWMYmCLPnr+vcnQvSFNMGMNCNegreBHCEW0TVCM7kbZpn9jV6ukN011nPe1pLX6YFNotFdHSRJmKvlwLLzn5oZZHua26YuR9TrRI9cNpXozmihxCQsEbrGFA1amwbzIeUgSaJHqnNx0tPeEib1Ki2tmiNB7RKU2priTZ5QE+fRQa0Tc95QFGt0zQGFKCtPQaCDW2bhjGgJdrh6f5ia1BtvaQ2HlAzVaqtV683eEDRLcKnmE3LJ5gbkR3bUwgI5WrntGe9/41TkPY4WlkI7DrjDGkPSL/jI/twgDR++q3jIGLsneZSCWveOyPFCRVoCdfriSChn7ArB6MOc804fZDD4xGmHrMf/Xq3lYB9lIUjB+yfdB80VC10MnCUFOIzy4eNOSbpkW1ZpFm2ZSvx889YpqLLchpeb2mYGqIpi+R421Zy/GUnlK7rLhFVX+ftpOvCkFpAmLXzsrk6ayuUksbwt9ib3eO935/9YEVNhoosql16mn9GiixOLP6r9m14nvroX9mnjstnjUxXzPMUovaIfv8BgSQJhJIkEEqSQChJAqEkCYSSJBBKkkCo/wICDQ002SDzgxYkaIuANi0X5i8hpIpr8W0lCwAAAABJRU5ErkJggg==);position:absolute;top:50%;inset-inline-start:50%}.list-item-play-gif{scale:.6;width:72px;height:72px;-webkit-margin-start:-36px;margin-inline-start:-36px;margin-top:-36px;background-position:0 0;cursor:pointer;transition:all 350ms}@media (min-width:320px){.list-item-play-gif{scale:.8}}@media (min-width:480px){.list-item-play-gif{scale:1}}.list-item-play-gif>span{width:66px;height:66px;-webkit-margin-start:-33px;margin-inline-start:-33px;margin-top:-33px;background-position:0 -73px}.list-item-play-gif--loading>span,.list-item-play-gif:hover>span{-webkit-animation:spin 2s linear infinite;animation:spin 2s linear infinite}.list-item-play-gif>i{width:32px;height:17px;-webkit-margin-start:-16px;margin-inline-start:-16px;margin-top:-9px;background-position:0 -140px}@-webkit-keyframes spin{from{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}.settings-group{display:none}.settings-group-isolated{display:block}.stats-block,a.stats-block{text-decoration:none;color:inherit;padding:10px;border-radius:4px}a.stats-block:hover{color:var(--linkText);background:var(--bodyEmpty)}.tone-dark a.stats-block:hover{background:#222}.text-align-center .stats-big-number{text-align:center}.stats-big-number .number{font-size:44px;font-weight:400}.stats-big-number .number span{font-size:24px}.stats-big-number .label{display:block}.tone-dark .text-content code{border-color:#222;background:#111}#home-top-bar-placeholder{margin-top:-65px}#home-cover{width:100%;background-position:center center;background-color:#333;background-size:cover;color:#fff;position:relative}body.landing #home-cover,body.split #home-cover{margin:0;padding:0;height:100vh;height:100dvh}body.split #home-cover{margin:0;height:500px}#home-cover-content{position:relative;text-align:center;height:100%;top:50px}body.landing #home-cover-content,body.split #home-cover-content{height:calc(100% - 50px);position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column}#home-cover-content>*{margin:10px 0}#home-cover-content h1,#home-cover-content p{text-shadow:2px 2px 8px rgba(0,0,0,.25)}#home-cover-content h1{font-size:2.4em;line-height:120%;font-weight:600}@media (min-width:768px){#home-cover-content h1{font-size:2.7em}}@media (min-width:992px){#home-cover-content h1{font-size:3em}}#home-cover-content p{font-size:22px}.home-buttons{text-align:center}.home-buttons a{font-size:16px;text-transform:uppercase;min-height:50px;line-height:1.5;height:auto;text-align:center;letter-spacing:2px;padding:12px 30px}#home-pics-feature{height:700px;overflow:hidden;position:relative;margin:10px 0}#home-pics-feature.empty{height:auto}#home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(255,255,255,0) 0,rgba(255,255,255,1) 100%);width:100%;height:200px;position:absolute;bottom:0;z-index:1}.tone-dark #home-pics-feature-overlay{background:linear-gradient(to bottom,rgba(0,0,0,0) 0,#000 100%)}#home-pics-feature.empty #home-pics-overlay{display:none}#home-join{margin:40px 0;padding-bottom:40px}#home-join h2{font-size:38px}#home-join p{margin:20px 0;font-size:18px}.ad-banner{margin:10px;text-align:center}.ad-banner:empty{margin:0;height:0}.ad-banner img{display:block;margin:0 auto}.ad-banner-size-300x250{width:300px;height:250px}.ad-banner-size-336x280{width:336px;height:280px}.ad-banner-size-728x90{width:728px;height:90px}.ad-banner-size-300x600{width:300px;height:600px}.ad-banner-size-320x100{width:320px;height:100px}.ad-banner-size-320x50{width:320px;height:50px}.ad-banner-size-468x60{width:468px;height:60px}.ad-banner-size-234x60{width:234px;height:60px}.ad-banner-size-120x600{width:120px;height:600px}.ad-banner-size-120x240{width:120px;height:240px}.ad-banner-size-160x600{width:160px;height:600px}.ad-banner-size-300x1050{width:300px;height:1050px}.ad-banner-size-970x90{width:970px;height:90px}.ad-banner-size-970x250{width:970px;height:250px}.ad-banner-size-250x250{width:250px;height:250px}.ad-banner-size-200x200{width:200px;height:200px}.ad-banner-size-180x150{width:180px;height:150px}.ad-banner-size-125x125{width:125px;height:125px}#banner_before_home_cover{margin:0;padding:10px;background:#000}#banner_image_image-viewer_foot,#banner_image_image-viewer_top{height:90px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}body#consent-screen,body#maintenance{padding:0;margin:0;width:100%;height:100%}#consent-screen-cover,#maintenance-cover{height:100%;background-position:center center;background-color:#333;background-size:cover}#consent-screen-cover-inner,#maintenance-cover-inner{background:rgba(0,0,0,.25);width:100%;height:100vh;height:100dvh}#consent-screen-cover-content,#maintenance-cover-content{color:#fff;padding:40px;text-align:center;position:relative;top:50%;transform:translateY(-50%)}#maintenance-cover-content .logo{display:inline-block;margin-bottom:20px;color:#fff;text-decoration:none;font-size:2.5em}#maintenance-cover-content .logo img{height:30px}#maintenance-cover-content h1{font-size:2.5em;margin-bottom:20px}#maintenance-cover-content p{font-size:1.2em}#consent-screen-cover-inner{background:0 0}#consent-screen-cover-src{width:100%;height:100%;position:absolute;top:0;inset-inline-start:0;background-position:center;background-size:cover}#consent-screen-content{background:var(--menuBackground);color:var(--menuItemText);margin:0 auto;padding:30px;box-shadow:0 0 50px 6px rgba(0,0,0,.25);top:50%;position:relative;transform:translateY(-50%);border-radius:10px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}#consent-screen-content h1{line-height:2em}#consent-screen-content .logo-consent{width:2em;height:auto;display:inline-block;-webkit-margin-end:10px;margin-inline-end:10px;vertical-align:top}#fullscreen-modal-box .image-preview{margin-bottom:20px;overflow:auto;text-align:center}.image-preview-container{position:relative;display:block;float:left;width:20%}[dir=rtl] .image-preview-container{float:right}.image-preview-container .empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:3em}#fullscreen-modal-box .image-preview:empty{display:none}#fullscreen-modal-box .image-preview .canvas{border:0;display:inline-block;margin:0 auto;max-width:100%;max-height:500px}#fullscreen-modal-box .image-preview .thumb{font-size:0;border:0;display:block;background-size:cover;background-position:center;width:100%}.content-password-gate{background:var(--bodyBackground);border-radius:10px;padding:30px;font-size:16px;text-align:center}.tone-dark .content-password-gate{background:0 0}.content-password-gate h1{font-size:30px;margin-bottom:10px}.content-password-gate h1 .icon{display:block;font-size:60px;margin-bottom:10px}.content-password-gate .g-captcha>div{-webkit-margin-end:auto;margin-inline-end:auto;-webkit-margin-start:auto;margin-inline-start:auto}#home-cover-slideshow{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;overflow:hidden}.home-cover-img{position:absolute;inset-inline-start:0;top:0;width:100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center center;display:block;opacity:0;transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.home-cover-img.animate-in,.home-cover-img.animate-in--alt{-webkit-animation-name:slideshow;animation-name:slideshow;-webkit-animation-duration:10s;animation-duration:10s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.home-cover-img.animate-in--alt{opacity:1;-webkit-animation-name:slideshow--alt;animation-name:slideshow--alt}.home-cover-img.animate-end{opacity:1;transform:scale(1.1);-webkit-animation:none;animation:none}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}100%{opacity:1;transform:scale(1.1)}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1.1)}}@keyframes slideshow--alt{100%{transform:scale(1.1)}}@supports (-ms-accelerator:true){.home-cover-img.animate-end{transform:scale(1)}@-webkit-keyframes slideshow{0%{opacity:0}20%{opacity:1}}@keyframes slideshow{0%{opacity:0}20%{opacity:1}}@-webkit-keyframes slideshow--alt{100%{transform:scale(1)}}@keyframes slideshow--alt{100%{transform:scale(1)}}}#home-cover-slideshow::after{content:"";z-index:1;height:50px;position:absolute;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(0,0,0,.1) 0,rgba(0,0,0,0) 100%)}#dashboard-settings{min-height:400px}#dashboard .form-content,#settings .form-content{padding-bottom:60px}.footer{color:var(--bodyTextDisabled);font-size:10px;line-height:20px;text-align:center;width:100%;position:absolute;bottom:0;z-index:900;padding:5px;line-height:1}body#upload .footer{background:var(--bodyBackground)}.footer a{color:inherit}body.--viewer-shown{overflow:hidden}.viewer{background:#000;position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.viewer .list-tool{display:initial!important}.js .viewer{display:block;touch-action:pinch-zoom!important}.viewer--hide{opacity:0}.viewer--show{opacity:1}.viewer.viewer--no-cursor,.viewer.viewer--no-cursor *{cursor:none}.viewer-content{position:relative;top:0;inset-inline-start:0;width:100dvw;height:100dvh}.viewer-content .viewer-src{position:absolute;max-height:100vh;max-height:100dvh;max-width:100vw;max-width:100dvw;transform:translate(-50%,-50%);top:50%;left:50%}.viewer[data-cover="1"] .viewer-content .viewer-src{width:100vw;width:100dvw;height:100vh;height:100dvh;-o-object-fit:contain;object-fit:contain}.viewer[data-cover="0"] .viewer-content .viewer-src{max-width:100%;max-height:100%}.viewer[data-cover="1"] .viewer-content video.viewer-src{width:auto}.viewer-content img.viewer-src[data-media=video],.viewer-content video.viewer-src{padding-top:2.2em;padding-bottom:60px}.--fullscreen .viewer-content video.viewer-src{padding:0}.viewer-close,.viewer-wheel>div{color:#fff;top:0;font-size:1em;text-shadow:1px 1px 0 rgba(0,0,0,.5);text-align:center}.viewer-close{position:absolute;width:2.4em;height:2.4em;line-height:2.4em;cursor:pointer;inset-inline-end:-2.4em;z-index:500}.viewer:hover .hover-display.viewer-close{inset-inline-end:2px}.viewer-wheel>div{position:fixed;bottom:0;width:calc(1em + 20px);cursor:pointer;padding:10px;opacity:.7;display:none}.viewer-wheel>div:hover{opacity:1}.viewer--nav-prev .viewer-wheel-prev{inset-inline-start:0;display:block}.viewer--nav-next .viewer-wheel-next{inset-inline-end:0;display:block}.viewer-wheel>div>.icon{position:absolute;top:50%;transform:translateY(-50%);display:block;font-size:1.5em}.viewer-top{padding:10px;position:fixed;bottom:0;margin-bottom:120px;text-align:center;left:50%;width:auto;transform:translateX(-50%)}.viewer-top a{color:#fff;text-decoration:none;display:inline-block;background-color:rgba(55,55,55,.6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:100em;padding:.6em 1.2em}.viewer-foot{padding:10px;position:absolute;left:0;right:0;bottom:0;height:60px;background:linear-gradient(to bottom,transparent 0,rgba(0,0,0,.6) 100%);display:flex;flex-wrap:wrap;flex-flow:row;-webkit-padding-end:2em;padding-inline-end:2em}.viewer-owner{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff;float:left}.viewer-owner .btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff;color:#000;border-color:transparent;opacity:1}.viewer-owner .btn.btn-cta:hover{background:var(--buttonAccentBackground);color:var(--buttonAccentText)}.viewer-owner .user-image{font-size:40px;width:1em;height:1em;vertical-align:bottom;color:#fff}.viewer-owner .user-name{font-size:initial;text-decoration:none;vertical-align:middle;line-height:40px;color:inherit}.viewer-owner a.user-name:hover{color:var(--backgroundLightAlpha)}.viewer-owner{order:1}.viewer-foot .viewer-title a{color:#fff;text-shadow:1px 1px 5px rgba(0,0,0,.5)}.viewer-kb{font-size:.86em;flex-grow:1;order:2;text-align:center}.viewer .viewer-kb{-webkit-padding-end:190px;padding-inline-end:190px}.device-mobile .viewer-kb{display:none}.viewer-kb-input{display:inline-block}.viewer .viewer-kb-input{color:#fff}.viewer-kb-key{display:inline-block;margin:10px;-webkit-margin-start:0;margin-inline-start:0}.viewer-kb-key:first-child{-webkit-margin-start:10px;margin-inline-start:10px}.viewer-kb-key kbd{border:1px solid rgba(0,0,0,.5);background:rgba(120,120,120,.5);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);padding:4px 6px;border-radius:2px;display:inline-block;-webkit-margin-end:5px;margin-inline-end:5px;line-height:1}.viewer-like{transform:none;top:auto;bottom:20px;inset-inline-end:20px;position:absolute}.viewer:hover .hover-display--flex{display:flex}.--width-auto{width:auto}.--height-auto{height:auto}html.--idle .viewer,html.--idle .viewer *{cursor:none!important}html .fullscreen-show{display:none}:-webkit-full-screen .fullscreen-hide{display:none}:-ms-fullscreen .fullscreen-hide{display:none}:fullscreen .fullscreen-hide{display:none}:-webkit-full-screen .fullscreen-show{display:block}:-ms-fullscreen .fullscreen-show{display:block}:fullscreen .fullscreen-show{display:block}a.image-container{-webkit-tap-highlight-color:transparent}.js .image-container.--media img{color:transparent}a{color:var(--linkText);outline:0;text-decoration:none}.content-section,.input-label{margin-top:20px;margin-bottom:20px;position:relative}.content-section:first-child,.input-label:first-child{margin-top:0}.input-label .input{width:100%;margin-bottom:0}.input-label .input+.input{margin-top:5px}.input-label .input-label{margin-bottom:10px}.input-label .input-label .label{font-weight:400}.input-label label .caption,.input-label label .optional{font-weight:400;font-size:.92em}.input-label label .caption:before,.input-label label .optional:before{content:"("}.input-label label .caption:after,.input-label label .optional:after{content:")"}.input-label-below{margin-top:5px;clear:both}.background-cover{position:fixed;top:0;right:0;bottom:0;left:0;background-position:center center;background-size:cover}.input-with-button{position:relative}.input-with-button input::-webkit-inner-spin-button,.input-with-button input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-with-button input[type=number]{-moz-appearance:textfield}.input-with-button button{background:0 0;position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%);border:none;font-size:22px;width:1em;height:1em;outline:0;color:var(--colorAccent)}.input-with-button button:focus,.input-with-button button:hover{color:var(--colorAccentStrong)}#top-left{position:fixed;padding:5px;inset-inline-start:0;top:0}.top-button{padding:5px}.top-button .menu-box{margin-top:5px}.top-button-icon{font-size:16px;color:#fff;cursor:pointer;text-shadow:1px 1px 0 rgba(0,0,0,.15)}.background-default{background:#2ecc71;background:linear-gradient(to bottom,#2ecc71 0,#3498db 100%)}.content-box{position:relative;margin:20px}.content-box-text :first-child{margin-top:0}.content-box-text :last-child{margin-bottom:0}.logo{max-height:50px;max-width:220px;margin-bottom:20px}.card-box{min-width:270px;width:calc(100vw - 40px)}.access-box-content{background:var(--bodyBackground)}.fancy-box-heading{font-size:22px;margin:20px 0 30px 0}.fancy-fieldset{border:0;padding:0;margin:0}.fancy-fieldset input:not([type=checkbox]),.fancy-fieldset input[type=text],.fancy-fieldset select,.fancy-fieldset textarea{outline:0;padding:10px 0;width:100%;border-radius:0;border-color:transparent;background:0 0;box-shadow:none}.fancy-fieldset .checkbox-label input[type=checkbox]{width:auto;vertical-align:middle;margin:0 0 0 -20px}.fancy-fieldset select{-webkit-appearance:none;-moz-appearance:none;appearance:none}.fancy-fieldset input,.fancy-fieldset select{padding:10px 0;border-top:transparent;-webkit-border-start:transparent;border-inline-start:transparent;-webkit-border-end:transparent;border-inline-end:transparent}.fancy-fieldset input:focus,.fancy-fieldset input:focus[type=text],.fancy-fieldset select:focus,.fancy-fieldset textarea:focus{border-color:var(--colorAccent)}.fancy-fieldset .input-with-button input[type=password]{-webkit-padding-end:30px;padding-inline-end:30px}.fancy-fieldset .input-password input[type=password]{-webkit-padding-end:55px;padding-inline-end:55px}.fancy-fieldset>div:last-child{margin-bottom:inherit}.fancy-fieldset .label{line-height:1.5}.fancy-fieldset .input-label:last-child{margin-bottom:0}.fancy-fieldset .checkbox-label{margin:0}a.login-provider-button{position:relative;text-decoration:none;display:inline-block;font-size:1em;margin:10px 0;background:#d9d9d9;padding:8px;text-decoration:none;display:block;color:#fff;border-radius:3px;text-align:center}a.login-provider-button .text{-webkit-margin-start:5px;margin-inline-start:5px}a.login-provider-button--facebook{background-color:#4267b2}a.login-provider-button--twitter{background-color:#1da1f2}a.login-provider-button--google{background-color:#ea4335}a.login-provider-button--vkontakte{background-color:#45668e}a.login-provider-button--apple{background-color:#000}a.login-provider-button--amazon{background-color:#f90}a.login-provider-button--bitbucket{background-color:#2684ff}a.login-provider-button--discord{background-color:#738adb}a.login-provider-button--dribbble{background-color:#e94c88}a.login-provider-button--dropbox{background-color:#007ee5}a.login-provider-button--github{background-color:#333}a.login-provider-button--gitlab{background-color:#fc6d26}a.login-provider-button--instagram{background-color:#e1306c}a.login-provider-button--linkedin{background-color:#006192}a.login-provider-button--mailru{background-color:#168de2}a.login-provider-button--medium{background-color:#00ab6c}a.login-provider-button--odnoklassniki{background-color:#ed812b}a.login-provider-button--orcid{background-color:#a5ce37}a.login-provider-button--reddit{background-color:#ff4500}a.login-provider-button--spotify{background-color:#1db954}a.login-provider-button--stackexchange{background-color:#1e5397}a.login-provider-button--steam{background-color:#00adee}a.login-provider-button--strava{background-color:#fc4c02}a.login-provider-button--telegram{background-color:#08c}a.login-provider-button--tumblr{background-color:#35465c}a.login-provider-button--twitchtv{background-color:#9146ff}a.login-provider-button--wechat{background-color:#7bb32e}a.login-provider-button--windowslive{background-color:#107c10}a.login-provider-button--wordpress{background-color:#21759b}a.login-provider-button--yandex{background-color:#fc0}a.login-provider-button--yahoo{background-color:#410093}a.login-provider-button--qq{background-color:#121214}.login-provider-button-outline{position:relative;text-decoration:none;width:32px;height:32px;display:inline-block;border-radius:50%;border-width:1px;border-style:solid;font-size:16px;margin:5px}.login-provider-button-outline .icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.login-provider-button-outline.border-color-facebook:focus,.login-provider-button-outline.border-color-facebook:hover{background-color:#3b5998}.login-provider-button-outline.border-color-twitter:focus,.login-provider-button-outline.border-color-twitter:hover{background-color:#1da1f2}.login-provider-button-outline.border-color-google:focus,.login-provider-button-outline.border-color-google:hover{background-color:#ea4335}.login-provider-button-outline.border-color-vk:focus,.login-provider-button-outline.border-color-vk:hover{background-color:#45668e}.login-provider-button-outline:focus .icon,.login-provider-button-outline:hover .icon{color:#fff}#login{padding:0;margin:0}.content-section--captcha-fix #g-recaptcha,.content-section--captcha-fix .h-captcha{min-height:78px;transform:scale(.89);transform-origin:left}#login .input{margin:0}.btn-container--fixed{position:fixed;left:0;right:0;bottom:0;background:rgba(0,0,0,.05);padding:10px 0;margin:0;border:0;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);text-align:start}.phablet .btn-container--fixed,.phone .btn-container--fixed{text-align:center}body.full--wh{height:100vh;height:100dvh;width:100vw;width:100dvw}.display-flex #home-cover-slideshow{position:fixed}[data-content=dashboard-imports] [data-action=resume],[data-content=dashboard-imports] [data-errors="0"] [data-content=log-errors],[data-content=dashboard-imports] [data-result],[data-content=dashboard-imports] [data-started="0"] [data-content^=log]{display:none}[data-content=dashboard-imports] [data-errors="1"] [data-content=log-process],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed][data-errors="0"] [data-result=success],[data-content=dashboard-imports] [data-status=paused] [data-action=resume],[data-content=dashboard-imports] [data-status][data-errors="1"] [data-result=error]{display:initial}[data-content=dashboard-imports] [data-status=canceled] [data-action=cancel],[data-content=dashboard-imports] [data-status=canceled] [data-action=pause],[data-content=dashboard-imports] [data-status=canceled] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=completed] [data-action=cancel],[data-content=dashboard-imports] [data-status=completed] [data-action=pause],[data-content=dashboard-imports] [data-status=completed] [data-target=modal-process-import],[data-content=dashboard-imports] [data-status=paused] [data-action=pause],[data-content=dashboard-imports] [data-status=queued] [data-action=pause],[data-content=dashboard-imports] [data-status=working] [data-target=modal-process-import]{display:none!important}.connecting-ip{font-family:monospace;font-size:27px}.code{padding:.05em}.code--command{border-radius:.2em;padding:.5em;-webkit-padding-end:.7em;padding-inline-end:.7em;-webkit-border-start:.2em solid var(--colorAccent);border-inline-start:.2em solid var(--colorAccent);background-color:var(--bodyEmpty)}.code--command::before{content:"$ ";color:var(--colorAccent)}.importing{background:var(--bodyEmpty);padding:10px;position:relative}.importing:nth-child(even){margin:0 10px}.phablet .importing:nth-child(even),.phone .importing:nth-child(even){margin:10px 0}.importing-stats{margin:10px 0}.importing-stats .figure{display:inline-block;padding:5px;background:var(--buttonAccentBackground);color:var(--buttonAccentText)}.apexcharts-menu-icon,.apexcharts-pan-icon,.apexcharts-reset-icon,.apexcharts-selection-icon,.apexcharts-theme-light .apexcharts-legend-text,.apexcharts-toolbar-custom-icon,.apexcharts-zoom-icon,.apexcharts-zoomin-icon,.apexcharts-zoomout-icon{color:var(--bodyText)!important}.apexcharts-menu-icon svg,.apexcharts-reset-icon svg,.apexcharts-zoom-icon svg,.apexcharts-zoomin-icon svg,.apexcharts-zoomout-icon svg{fill:var(--bodyText)!important}.apexcharts-theme-dark .apexcharts-legend-text{color:var(--bodyTextSubtle)!important}.apexcharts-theme-light svg text{fill:var(--bodyText)}.apexcharts-theme-dark svg text{fill:var(--bodyTextSubtle)}.apexcharts-toolbar{z-index:0!important}.apexcharts-canvas>svg{background:0 0!important}#dashboard-chart{margin:35px auto;overflow:hidden}#dashboard-chart .toolbar{-webkit-margin-start:45px;margin-inline-start:45px}#dashboard-chart button{background:var(--bodyBackground);color:var(--bodyText);border:1px solid var(--bodySeparator);border-bottom:2px solid var(--bodySeparator);border-radius:2px;padding:4px 17px}#dashboard-chart button.active{color:var(--buttonAccentText);background:var(--buttonAccentBackground);border:1px solid var(--buttonAccentBackground);border-bottom:2px solid var(--buttonAccentBackground)}#dashboard-chart button:focus{outline:0}.corazoncito{width:1em;height:1em;font-size:290px;color:rgb(255,0,0,.6);z-index:1;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.4);transition:all .5s ease}.corazoncito.--show{opacity:1;transform:translate(-50%,-50%) scale(1)}.corazoncito span{font-size:.25em;top:50%;left:50%;display:block;position:absolute;color:#fff;transform:translate(-50%,-50%);line-height:1;font-family:sans-serif;margin-top:-.1em;font-weight:400}.card-wrapper{height:175px;overflow-y:hidden;overflow-x:auto;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.card-wrapper::-webkit-scrollbar{width:10px;height:3px}.card-wrapper::-webkit-scrollbar-track{background:var(--bodyEmpty)}.card-wrapper::-webkit-scrollbar-thumb{background:var(--colorAccent)}.card-wrapper::-webkit-scrollbar-thumb:hover{background:var(--colorAccentStrong)}.card-slider{width:calc(310px * 8 - 10px)}.card-container{width:300px;height:200px;display:block;float:left;-webkit-margin-end:10px;margin-inline-end:10px;scroll-snap-align:start}[dir=rtl] .card-container{float:right}.card-container:first-child{-webkit-margin-start:0;margin-inline-start:0}.card-container:last-child{-webkit-margin-end:0;margin-inline-end:0}.card{width:100%;position:relative}.card a{text-decoration:none}.card-header-image{width:100%;height:150px;overflow:hidden;border-radius:1em;display:block;background-size:cover;background-position:center}.card-header-image-mask{width:100%;height:100%;display:block;background-color:rgba(0,0,0,0)}.card-header-image:hover .card-header-image-mask{background-color:var(--buttonAccentBackground)}.card-text{color:#fff;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;text-shadow:2px 2px 8px rgba(0,0,0,.35)}.card-header-image:hover .card-text{color:var(--buttonAccentText)}.card-text h3{font-weight:700;font-size:1.6em;margin-bottom:5px}.powered-by--provider a.logo{font-size:5em;text-decoration:none}[data-banned="0"] [data-action=user_unban],[data-banned="1"] [data-action=user_ban]{display:none}.captcha.captcha--3 [data-content=captcha]{display:none}.cta-row{border:1px solid var(--bodySeparator);border-right:0;border-left:0;padding-top:20px;padding-bottom:20px;margin:0;cursor:-webkit-grab;cursor:grab;margin-bottom:-1px}.cta-row.ui-sortable-helper{background:var(--modalBackground)}.phablet .btn-cta .btn-text,.phone .btn-cta .btn-text{display:none}.btn-cta{background-color:var(--bodyBackground);color:var(--bodyText);border-color:var(--bodyText)}.btn-cta:hover{background-color:var(--colorAccent);color:var(--buttonAccentText);border-color:transparent}.btn-cta:hover .btn-icon{color:inherit}select#theme_font{font-family:Helvetica,Arial,sans-serif}.font-style-italic{font-style:italic}img[data-type=video]{cursor:pointer}.list-item-duration{position:absolute;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1;padding:.2em .3em;border-radius:.25em;color:#fff;margin:5px;text-shadow:none}.edition-label{font-weight:700}:disabled{opacity:.5} \ No newline at end of file diff --git a/content/legacy/themes/Peafowl/tpl_list_item/album/image.php b/content/legacy/themes/Peafowl/tpl_list_item/album/image.php index 85e628d..7c4dd13 100644 --- a/content/legacy/themes/Peafowl/tpl_list_item/album/image.php +++ b/content/legacy/themes/Peafowl/tpl_list_item/album/image.php @@ -1,10 +1,11 @@ -
    +
    %tpl_list_item/image_cover_empty% %tpl_list_item/image_cover_image% %tpl_list_item/item_privacy% + %tpl_list_item/item_duration_time% %tpl_list_item/item_image_edit_tools% %tpl_list_item/item_image_play_gif%
    diff --git a/content/legacy/themes/Peafowl/tpl_list_item/image.php b/content/legacy/themes/Peafowl/tpl_list_item/image.php index f5b9526..ac0306e 100644 --- a/content/legacy/themes/Peafowl/tpl_list_item/image.php +++ b/content/legacy/themes/Peafowl/tpl_list_item/image.php @@ -1,4 +1,4 @@ -
    +
    %tpl_list_item/image_cover_empty% diff --git a/content/legacy/themes/Peafowl/tpl_list_item/image_plain.php b/content/legacy/themes/Peafowl/tpl_list_item/image_plain.php index b0acd8e..3ac1833 100644 --- a/content/legacy/themes/Peafowl/tpl_list_item/image_plain.php +++ b/content/legacy/themes/Peafowl/tpl_list_item/image_plain.php @@ -1,4 +1,4 @@ -
    +
    %tpl_list_item/image_cover_empty% diff --git a/content/legacy/themes/Peafowl/tpl_list_item/user/image.php b/content/legacy/themes/Peafowl/tpl_list_item/user/image.php index 9df76de..124ad97 100644 --- a/content/legacy/themes/Peafowl/tpl_list_item/user/image.php +++ b/content/legacy/themes/Peafowl/tpl_list_item/user/image.php @@ -1,4 +1,4 @@ -
    +
    %tpl_list_item/image_description_owner% diff --git a/content/legacy/themes/Peafowl/tpl_list_item/user/liked.php b/content/legacy/themes/Peafowl/tpl_list_item/user/liked.php index 8bafa93..1a41803 100644 --- a/content/legacy/themes/Peafowl/tpl_list_item/user/liked.php +++ b/content/legacy/themes/Peafowl/tpl_list_item/user/liked.php @@ -1,10 +1,11 @@ -
    +
    %tpl_list_item/image_cover_empty% %tpl_list_item/image_cover_image% %tpl_list_item/item_privacy% + %tpl_list_item/item_duration_time% %tpl_list_item/item_image_edit_tools% %tpl_list_item/item_image_public_tools% %tpl_list_item/item_image_play_gif% diff --git a/content/legacy/themes/Peafowl/views/album.php b/content/legacy/themes/Peafowl/views/album.php index eb788f0..c469ed0 100644 --- a/content/legacy/themes/Peafowl/views/album.php +++ b/content/legacy/themes/Peafowl/views/album.php @@ -49,7 +49,7 @@ if (!defined('ACCESS') || !ACCESS) { - _n('album', 'albums', 1), '%i' => _n('image', 'images', 20)]); ?> " data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url=""> + _n('album', 'albums', 1), '%i' => _n('file', 'files', 20)]); ?> " data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url=""> " data-content="privacy-private" title="" rel="tooltip"> - ' . time_elapsed_string(Handler::var('album')['date_gmt']) . ''; ?> — + ' . time_elapsed_string(Handler::var('album')['date_gmt']) . ''; ?> —
    sfw()); ?> diff --git a/content/legacy/themes/Peafowl/views/dashboard/settings/file-uploads.php b/content/legacy/themes/Peafowl/views/dashboard/settings/file-uploads.php index 3af9ba8..dff5e8d 100644 --- a/content/legacy/themes/Peafowl/views/dashboard/settings/file-uploads.php +++ b/content/legacy/themes/Peafowl/views/dashboard/settings/file-uploads.php @@ -87,6 +87,14 @@ echo read_the_docs_settings('file-uploads', _s('File uploads')); ?>
    +
    + +
    +
    +

    diff --git a/content/legacy/themes/Peafowl/views/dashboard/settings/system.php b/content/legacy/themes/Peafowl/views/dashboard/settings/system.php index 445bd73..800d90d 100644 --- a/content/legacy/themes/Peafowl/views/dashboard/settings/system.php +++ b/content/legacy/themes/Peafowl/views/dashboard/settings/system.php @@ -93,22 +93,22 @@ echo read_the_docs_settings('system', _s('System')); ?>

    - XR Debug + xrDebug
    - +
    -
    'chevere/xr']); ?>
    +
    'xrDebug']); ?>
    - +
    @@ -118,11 +118,11 @@ echo read_the_docs_settings('system', _s('System')); ?>
    - +
    - +
    diff --git a/content/legacy/themes/Peafowl/views/dashboard/settings/theme.php b/content/legacy/themes/Peafowl/views/dashboard/settings/theme.php index 13a1711..836ead0 100644 --- a/content/legacy/themes/Peafowl/views/dashboard/settings/theme.php +++ b/content/legacy/themes/Peafowl/views/dashboard/settings/theme.php @@ -128,15 +128,6 @@ foreach (array_keys($fonts->get()) as $id) {

    -
    - -
    -
    -
    -
    diff --git a/content/legacy/themes/Peafowl/views/dashboard/settings/website.php b/content/legacy/themes/Peafowl/views/dashboard/settings/website.php index 43553f4..e5e286d 100644 --- a/content/legacy/themes/Peafowl/views/dashboard/settings/website.php +++ b/content/legacy/themes/Peafowl/views/dashboard/settings/website.php @@ -151,8 +151,8 @@ foreach ($regions ?? [] as $key => $region) {

    - -
    type="text" name="enable_likes" id="enable_likes" class="text-input" > $region) {
    - -
    type="text" name="enable_followers" id="enable_followers" class="text-input" > - {$item['label']} + {$item['label']} TPL; } diff --git a/content/legacy/themes/Peafowl/views/image.php b/content/legacy/themes/Peafowl/views/image.php index 1412232..51a93ae 100644 --- a/content/legacy/themes/Peafowl/views/image.php +++ b/content/legacy/themes/Peafowl/views/image.php @@ -30,7 +30,7 @@ if (!defined('ACCESS') || !ACCESS) { ?? Handler::var('image')['frame']['url'] ?? Handler::var('image')['url']; ?> - class="no-select" alt="" width="" height="" data-is360="" data-load="full" - " data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url=""> + " data-submit-fn="CHV.fn.submit_resource_delete" data-ajax-deferred="CHV.fn.complete_resource_delete" data-ajax-url=""> - +