From 7086111ad4dd997e12a3220e1ee60c9b9bcf0bb8 Mon Sep 17 00:00:00 2001 From: Charles Date: Tue, 7 Jan 2020 13:06:14 +0100 Subject: Added wordpress --- srcs/wordpress/wp-content/index.php | 2 + .../wordpress/wp-content/plugins/akismet/.htaccess | 34 + .../wp-content/plugins/akismet/LICENSE.txt | 339 + .../wp-content/plugins/akismet/_inc/akismet.css | 663 + .../wp-content/plugins/akismet/_inc/akismet.js | 354 + .../wp-content/plugins/akismet/_inc/form.js | 30 + .../plugins/akismet/_inc/img/logo-full-2x.png | Bin 0 -> 5052 bytes .../wp-content/plugins/akismet/akismet.php | 66 + .../plugins/akismet/class.akismet-admin.php | 1267 ++ .../plugins/akismet/class.akismet-cli.php | 185 + .../plugins/akismet/class.akismet-rest-api.php | 366 + .../plugins/akismet/class.akismet-widget.php | 114 + .../wp-content/plugins/akismet/class.akismet.php | 1425 ++ .../wordpress/wp-content/plugins/akismet/index.php | 2 + .../wp-content/plugins/akismet/readme.txt | 474 + .../wp-content/plugins/akismet/views/activate.php | 8 + .../wp-content/plugins/akismet/views/config.php | 242 + .../plugins/akismet/views/connect-jp.php | 72 + .../wp-content/plugins/akismet/views/enter.php | 13 + .../wp-content/plugins/akismet/views/get.php | 12 + .../wp-content/plugins/akismet/views/notice.php | 147 + .../plugins/akismet/views/predefined.php | 11 + .../wp-content/plugins/akismet/views/setup.php | 5 + .../wp-content/plugins/akismet/views/start.php | 31 + .../wp-content/plugins/akismet/views/stats.php | 11 + .../wp-content/plugins/akismet/views/title.php | 3 + .../wp-content/plugins/akismet/wrapper.php | 214 + srcs/wordpress/wp-content/plugins/hello.php | 100 + srcs/wordpress/wp-content/plugins/index.php | 2 + srcs/wordpress/wp-content/themes/index.php | 2 + .../wp-content/themes/twentynineteen/404.php | 33 + .../wp-content/themes/twentynineteen/archive.php | 54 + .../classes/class-twentynineteen-svg-icons.php | 458 + .../class-twentynineteen-walker-comment.php | 128 + .../wp-content/themes/twentynineteen/comments.php | 128 + .../fonts/NonBreakingSpaceOverride.woff | Bin 0 -> 1212 bytes .../fonts/NonBreakingSpaceOverride.woff2 | Bin 0 -> 764 bytes .../wp-content/themes/twentynineteen/footer.php | 57 + .../wp-content/themes/twentynineteen/functions.php | 325 + .../wp-content/themes/twentynineteen/header.php | 53 + .../wp-content/themes/twentynineteen/image.php | 104 + .../themes/twentynineteen/inc/back-compat.php | 79 + .../themes/twentynineteen/inc/color-patterns.php | 271 + .../themes/twentynineteen/inc/customizer.php | 158 + .../themes/twentynineteen/inc/icon-functions.php | 52 + .../twentynineteen/inc/template-functions.php | 422 + .../themes/twentynineteen/inc/template-tags.php | 258 + .../wp-content/themes/twentynineteen/index.php | 47 + .../themes/twentynineteen/js/customize-controls.js | 30 + .../themes/twentynineteen/js/customize-preview.js | 60 + .../themes/twentynineteen/js/priority-menu.js | 216 + .../twentynineteen/js/skip-link-focus-fix.js | 33 + .../twentynineteen/js/touch-keyboard-navigation.js | 354 + .../themes/twentynineteen/package-lock.json | 4627 +++++++ .../wp-content/themes/twentynineteen/package.json | 44 + .../wp-content/themes/twentynineteen/page.php | 38 + .../themes/twentynineteen/postcss.config.js | 13 + .../wp-content/themes/twentynineteen/print.css | 162 + .../wp-content/themes/twentynineteen/print.scss | 198 + .../wp-content/themes/twentynineteen/readme.txt | 69 + .../themes/twentynineteen/sass/_normalize.scss | 341 + .../themes/twentynineteen/sass/blocks/_blocks.scss | 1028 ++ .../twentynineteen/sass/elements/_elements.scss | 92 + .../twentynineteen/sass/elements/_lists.scss | 33 + .../twentynineteen/sass/elements/_tables.scss | 13 + .../themes/twentynineteen/sass/forms/_buttons.scss | 37 + .../themes/twentynineteen/sass/forms/_fields.scss | 58 + .../themes/twentynineteen/sass/forms/_forms.scss | 3 + .../themes/twentynineteen/sass/layout/_layout.scss | 11 + .../twentynineteen/sass/media/_captions.scss | 32 + .../twentynineteen/sass/media/_galleries.scss | 52 + .../themes/twentynineteen/sass/media/_media.scss | 41 + .../twentynineteen/sass/mixins/_mixins-master.scss | 132 + .../twentynineteen/sass/mixins/_utilities.scss | 51 + .../sass/modules/_accessibility.scss | 38 + .../twentynineteen/sass/modules/_alignments.scss | 28 + .../twentynineteen/sass/modules/_clearings.scss | 23 + .../twentynineteen/sass/navigation/_links.scss | 21 + .../sass/navigation/_menu-footer-navigation.scss | 22 + .../sass/navigation/_menu-main-navigation.scss | 506 + .../sass/navigation/_menu-social-navigation.scss | 66 + .../sass/navigation/_navigation.scss | 16 + .../sass/navigation/_next-previous.scss | 201 + .../themes/twentynineteen/sass/site/_site.scss | 27 + .../sass/site/footer/_site-footer.scss | 53 + .../sass/site/header/_site-featured-image.scss | 301 + .../sass/site/header/_site-header.scss | 139 + .../sass/site/primary/_archives.scss | 65 + .../sass/site/primary/_comments.scss | 405 + .../sass/site/primary/_posts-and-pages.scss | 304 + .../sass/site/secondary/_widgets.scss | 81 + .../twentynineteen/sass/typography/_copy.scss | 62 + .../twentynineteen/sass/typography/_headings.scss | 164 + .../sass/typography/_typography.scss | 32 + .../sass/variables-site/_colors.scss | 34 + .../sass/variables-site/_columns.scss | 16 + .../twentynineteen/sass/variables-site/_fonts.scss | 83 + .../sass/variables-site/_structure.scss | 16 + .../sass/variables-site/_transitions.scss | 6 + .../sass/variables-site/_variables-site.scss | 5 + .../themes/twentynineteen/screenshot.png | Bin 0 -> 175535 bytes .../wp-content/themes/twentynineteen/search.php | 55 + .../wp-content/themes/twentynineteen/single.php | 60 + .../twentynineteen/style-editor-customizer.css | 5 + .../twentynineteen/style-editor-customizer.scss | 5 + .../themes/twentynineteen/style-editor.css | 1458 +++ .../themes/twentynineteen/style-editor.scss | 948 ++ .../wp-content/themes/twentynineteen/style-rtl.css | 6488 +++++++++ .../wp-content/themes/twentynineteen/style.css | 6499 +++++++++ .../wp-content/themes/twentynineteen/style.scss | 109 + .../template-parts/content/content-excerpt.php | 33 + .../template-parts/content/content-none.php | 53 + .../template-parts/content/content-page.php | 56 + .../template-parts/content/content-single.php | 55 + .../template-parts/content/content.php | 59 + .../template-parts/footer/footer-widgets.php | 24 + .../template-parts/header/entry-header.php | 46 + .../template-parts/header/site-branding.php | 60 + .../template-parts/post/author-bio.php | 30 + .../template-parts/post/discussion-meta.php | 32 + .../wp-content/themes/twentyseventeen/404.php | 35 + .../wp-content/themes/twentyseventeen/archive.php | 67 + .../themes/twentyseventeen/assets/css/blocks.css | 451 + .../twentyseventeen/assets/css/colors-dark.css | 566 + .../twentyseventeen/assets/css/editor-blocks.css | 808 ++ .../twentyseventeen/assets/css/editor-style.css | 582 + .../themes/twentyseventeen/assets/css/ie8.css | 225 + .../themes/twentyseventeen/assets/css/ie9.css | 43 + .../twentyseventeen/assets/images/coffee.jpg | Bin 0 -> 117713 bytes .../twentyseventeen/assets/images/espresso.jpg | Bin 0 -> 93540 bytes .../twentyseventeen/assets/images/header.jpg | Bin 0 -> 114854 bytes .../twentyseventeen/assets/images/sandwich.jpg | Bin 0 -> 171858 bytes .../twentyseventeen/assets/images/svg-icons.svg | 155 + .../assets/js/customize-controls.js | 36 + .../twentyseventeen/assets/js/customize-preview.js | 150 + .../themes/twentyseventeen/assets/js/global.js | 250 + .../themes/twentyseventeen/assets/js/html5.js | 326 + .../twentyseventeen/assets/js/jquery.scrollTo.js | 209 + .../themes/twentyseventeen/assets/js/navigation.js | 109 + .../assets/js/skip-link-focus-fix.js | 31 + .../wp-content/themes/twentyseventeen/comments.php | 89 + .../wp-content/themes/twentyseventeen/footer.php | 51 + .../themes/twentyseventeen/front-page.php | 59 + .../themes/twentyseventeen/functions.php | 666 + .../wp-content/themes/twentyseventeen/header.php | 58 + .../themes/twentyseventeen/inc/back-compat.php | 76 + .../themes/twentyseventeen/inc/color-patterns.php | 580 + .../themes/twentyseventeen/inc/custom-header.php | 131 + .../themes/twentyseventeen/inc/customizer.php | 249 + .../themes/twentyseventeen/inc/icon-functions.php | 220 + .../twentyseventeen/inc/template-functions.php | 102 + .../themes/twentyseventeen/inc/template-tags.php | 219 + .../wp-content/themes/twentyseventeen/index.php | 71 + .../wp-content/themes/twentyseventeen/page.php | 43 + .../wp-content/themes/twentyseventeen/readme.txt | 125 + .../wp-content/themes/twentyseventeen/rtl.css | 556 + .../themes/twentyseventeen/screenshot.png | Bin 0 -> 363833 bytes .../wp-content/themes/twentyseventeen/search.php | 72 + .../themes/twentyseventeen/searchform.php | 21 + .../wp-content/themes/twentyseventeen/sidebar.php | 20 + .../wp-content/themes/twentyseventeen/single.php | 47 + .../wp-content/themes/twentyseventeen/style.css | 4339 ++++++ .../template-parts/footer/footer-widgets.php | 35 + .../template-parts/footer/site-info.php | 24 + .../template-parts/header/header-image.php | 20 + .../template-parts/header/site-branding.php | 38 + .../template-parts/navigation/navigation-top.php | 33 + .../page/content-front-page-panels.php | 87 + .../template-parts/page/content-front-page.php | 52 + .../template-parts/page/content-page.php | 32 + .../template-parts/post/content-audio.php | 109 + .../template-parts/post/content-excerpt.php | 48 + .../template-parts/post/content-gallery.php | 96 + .../template-parts/post/content-image.php | 86 + .../template-parts/post/content-none.php | 40 + .../template-parts/post/content-video.php | 107 + .../template-parts/post/content.php | 79 + .../wp-content/themes/twentysixteen/404.php | 34 + .../wp-content/themes/twentysixteen/archive.php | 68 + .../wp-content/themes/twentysixteen/comments.php | 83 + .../wp-content/themes/twentysixteen/css/blocks.css | 434 + .../themes/twentysixteen/css/editor-blocks.css | 617 + .../themes/twentysixteen/css/editor-style.css | 547 + .../wp-content/themes/twentysixteen/css/ie.css | 48 + .../wp-content/themes/twentysixteen/css/ie7.css | 176 + .../wp-content/themes/twentysixteen/css/ie8.css | 222 + .../wp-content/themes/twentysixteen/footer.php | 73 + .../wp-content/themes/twentysixteen/functions.php | 587 + .../themes/twentysixteen/genericons/COPYING.txt | 9 + .../themes/twentysixteen/genericons/Genericons.eot | Bin 0 -> 22374 bytes .../themes/twentysixteen/genericons/Genericons.svg | 537 + .../themes/twentysixteen/genericons/Genericons.ttf | Bin 0 -> 22188 bytes .../twentysixteen/genericons/Genericons.woff | Bin 0 -> 13988 bytes .../themes/twentysixteen/genericons/LICENSE.txt | 339 + .../themes/twentysixteen/genericons/README.md | 218 + .../themes/twentysixteen/genericons/genericons.css | 263 + .../wp-content/themes/twentysixteen/header.php | 106 + .../wp-content/themes/twentysixteen/image.php | 118 + .../themes/twentysixteen/inc/back-compat.php | 78 + .../themes/twentysixteen/inc/customizer.php | 1259 ++ .../themes/twentysixteen/inc/template-tags.php | 286 + .../wp-content/themes/twentysixteen/index.php | 65 + .../twentysixteen/js/color-scheme-control.js | 96 + .../themes/twentysixteen/js/customize-preview.js | 41 + .../themes/twentysixteen/js/functions.js | 213 + .../wp-content/themes/twentysixteen/js/html5.js | 326 + .../twentysixteen/js/keyboard-image-navigation.js | 26 + .../themes/twentysixteen/js/skip-link-focus-fix.js | 36 + .../wp-content/themes/twentysixteen/page.php | 42 + .../wp-content/themes/twentysixteen/readme.txt | 115 + .../wp-content/themes/twentysixteen/rtl.css | 756 ++ .../wp-content/themes/twentysixteen/screenshot.png | Bin 0 -> 463555 bytes .../wp-content/themes/twentysixteen/search.php | 61 + .../wp-content/themes/twentysixteen/searchform.php | 17 + .../twentysixteen/sidebar-content-bottom.php | 28 + .../wp-content/themes/twentysixteen/sidebar.php | 15 + .../wp-content/themes/twentysixteen/single.php | 59 + .../wp-content/themes/twentysixteen/style.css | 4010 ++++++ .../twentysixteen/template-parts/biography.php | 40 + .../twentysixteen/template-parts/content-none.php | 38 + .../twentysixteen/template-parts/content-page.php | 47 + .../template-parts/content-search.php | 53 + .../template-parts/content-single.php | 55 + .../twentysixteen/template-parts/content.php | 61 + .../themes/twentytwenty/.stylelintrc.json | 12 + .../wp-content/themes/twentytwenty/404.php | 36 + .../assets/css/editor-style-block-rtl.css | 1454 +++ .../twentytwenty/assets/css/editor-style-block.css | 1454 +++ .../assets/css/editor-style-classic-rtl.css | 601 + .../assets/css/editor-style-classic.css | 605 + .../assets/fonts/inter/Inter-italic-var.woff2 | Bin 0 -> 236832 bytes .../assets/fonts/inter/Inter-upright-var.woff2 | Bin 0 -> 223892 bytes .../assets/images/2020-landscape-1.png | Bin 0 -> 1211 bytes .../assets/images/2020-landscape-2.png | Bin 0 -> 6248 bytes .../twentytwenty/assets/images/2020-square-1.png | Bin 0 -> 4201 bytes .../twentytwenty/assets/images/2020-square-2.png | Bin 0 -> 3366 bytes .../assets/images/2020-three-quarters-1.png | Bin 0 -> 2333 bytes .../assets/images/2020-three-quarters-2.png | Bin 0 -> 2708 bytes .../assets/images/2020-three-quarters-3.png | Bin 0 -> 26106 bytes .../assets/images/2020-three-quarters-4.png | Bin 0 -> 2185 bytes .../twentytwenty/assets/js/color-calculations.js | 154 + .../twentytwenty/assets/js/customize-controls.js | 90 + .../twentytwenty/assets/js/customize-preview.js | 186 + .../themes/twentytwenty/assets/js/customize.js | 27 + .../twentytwenty/assets/js/editor-script-block.js | 9 + .../themes/twentytwenty/assets/js/index.js | 800 ++ .../twentytwenty/assets/js/skip-link-focus-fix.js | 33 + .../classes/class-twentytwenty-customize.php | 526 + .../class-twentytwenty-non-latin-languages.php | 122 + .../classes/class-twentytwenty-script-loader.php | 47 + .../class-twentytwenty-separator-control.php | 26 + .../classes/class-twentytwenty-svg-icons.php | 259 + .../classes/class-twentytwenty-walker-comment.php | 142 + .../classes/class-twentytwenty-walker-page.php | 173 + .../wp-content/themes/twentytwenty/comments.php | 132 + .../wp-content/themes/twentytwenty/footer.php | 61 + .../wp-content/themes/twentytwenty/functions.php | 757 ++ .../wp-content/themes/twentytwenty/header.php | 187 + .../themes/twentytwenty/inc/custom-css.php | 191 + .../themes/twentytwenty/inc/starter-content.php | 217 + .../themes/twentytwenty/inc/svg-icons.php | 70 + .../themes/twentytwenty/inc/template-tags.php | 790 ++ .../wp-content/themes/twentytwenty/index.php | 117 + .../themes/twentytwenty/package-lock.json | 13041 +++++++++++++++++++ .../wp-content/themes/twentytwenty/package.json | 59 + .../wp-content/themes/twentytwenty/print.css | 165 + .../wp-content/themes/twentytwenty/readme.txt | 98 + .../wp-content/themes/twentytwenty/screenshot.png | Bin 0 -> 53066 bytes .../wp-content/themes/twentytwenty/searchform.php | 28 + .../wp-content/themes/twentytwenty/singular.php | 34 + .../wp-content/themes/twentytwenty/style-rtl.css | 6255 +++++++++ .../wp-content/themes/twentytwenty/style.css | 6369 +++++++++ .../twentytwenty/template-parts/content-cover.php | 182 + .../themes/twentytwenty/template-parts/content.php | 94 + .../template-parts/entry-author-bio.php | 33 + .../twentytwenty/template-parts/entry-header.php | 75 + .../twentytwenty/template-parts/featured-image.php | 43 + .../template-parts/footer-menus-widgets.php | 119 + .../twentytwenty/template-parts/modal-menu.php | 148 + .../twentytwenty/template-parts/modal-search.php | 34 + .../twentytwenty/template-parts/navigation.php | 61 + .../twentytwenty/template-parts/pagination.php | 58 + .../twentytwenty/templates/template-cover.php | 33 + .../twentytwenty/templates/template-full-width.php | 11 + 284 files changed, 96621 insertions(+) create mode 100644 srcs/wordpress/wp-content/index.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/.htaccess create mode 100644 srcs/wordpress/wp-content/plugins/akismet/LICENSE.txt create mode 100644 srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.css create mode 100644 srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.js create mode 100644 srcs/wordpress/wp-content/plugins/akismet/_inc/form.js create mode 100644 srcs/wordpress/wp-content/plugins/akismet/_inc/img/logo-full-2x.png create mode 100644 srcs/wordpress/wp-content/plugins/akismet/akismet.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/class.akismet-admin.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/class.akismet-cli.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/class.akismet-rest-api.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/class.akismet-widget.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/class.akismet.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/index.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/readme.txt create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/activate.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/config.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/connect-jp.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/enter.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/get.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/notice.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/predefined.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/setup.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/start.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/stats.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/views/title.php create mode 100644 srcs/wordpress/wp-content/plugins/akismet/wrapper.php create mode 100644 srcs/wordpress/wp-content/plugins/hello.php create mode 100644 srcs/wordpress/wp-content/plugins/index.php create mode 100644 srcs/wordpress/wp-content/themes/index.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/404.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/archive.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/classes/class-twentynineteen-svg-icons.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/classes/class-twentynineteen-walker-comment.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/comments.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/fonts/NonBreakingSpaceOverride.woff create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/fonts/NonBreakingSpaceOverride.woff2 create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/footer.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/header.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/image.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/inc/back-compat.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/inc/color-patterns.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/inc/customizer.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/inc/icon-functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/inc/template-functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/inc/template-tags.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/index.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/js/customize-controls.js create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/js/customize-preview.js create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/js/priority-menu.js create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/js/skip-link-focus-fix.js create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/js/touch-keyboard-navigation.js create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/package-lock.json create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/package.json create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/page.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/postcss.config.js create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/print.css create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/print.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/readme.txt create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/_normalize.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/blocks/_blocks.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_elements.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_lists.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_tables.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_buttons.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_fields.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_forms.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/layout/_layout.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_captions.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_galleries.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_media.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_mixins-master.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_utilities.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_accessibility.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_alignments.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_clearings.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_links.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-footer-navigation.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-main-navigation.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-social-navigation.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_navigation.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_next-previous.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/_site.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/footer/_site-footer.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-featured-image.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-header.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_archives.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_comments.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_posts-and-pages.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/site/secondary/_widgets.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_copy.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_headings.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_typography.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_colors.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_columns.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_fonts.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_structure.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_transitions.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_variables-site.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/screenshot.png create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/search.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/single.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style-editor-customizer.css create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style-editor-customizer.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style-editor.css create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style-editor.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style-rtl.css create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style.css create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/style.scss create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-excerpt.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-none.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-page.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-single.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/footer/footer-widgets.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/entry-header.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/site-branding.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/author-bio.php create mode 100644 srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/discussion-meta.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/404.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/archive.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/blocks.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/colors-dark.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-blocks.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-style.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie8.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie9.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/coffee.jpg create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/espresso.jpg create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/header.jpg create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/sandwich.jpg create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/svg-icons.svg create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-controls.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-preview.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/global.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/html5.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/jquery.scrollTo.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/navigation.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/skip-link-focus-fix.js create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/comments.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/footer.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/front-page.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/header.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/back-compat.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/color-patterns.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/custom-header.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/customizer.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/icon-functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/template-functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/inc/template-tags.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/index.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/page.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/readme.txt create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/rtl.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/screenshot.png create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/search.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/searchform.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/sidebar.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/single.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/style.css create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/footer-widgets.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/site-info.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/header-image.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/site-branding.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/navigation/navigation-top.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page-panels.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-page.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-audio.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-excerpt.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-gallery.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-image.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-none.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-video.php create mode 100644 srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/404.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/archive.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/comments.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/css/blocks.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/css/editor-blocks.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/css/editor-style.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/css/ie.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/css/ie7.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/css/ie8.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/footer.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/COPYING.txt create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.eot create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.svg create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.ttf create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.woff create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/LICENSE.txt create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/README.md create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/genericons/genericons.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/header.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/image.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/inc/back-compat.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/inc/customizer.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/inc/template-tags.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/index.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/js/color-scheme-control.js create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/js/customize-preview.js create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/js/functions.js create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/js/html5.js create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/js/keyboard-image-navigation.js create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/js/skip-link-focus-fix.js create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/page.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/readme.txt create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/rtl.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/screenshot.png create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/search.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/searchform.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/sidebar-content-bottom.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/sidebar.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/single.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/style.css create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/template-parts/biography.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-none.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-page.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-search.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-single.php create mode 100644 srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/.stylelintrc.json create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/404.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-block-rtl.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-block.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic-rtl.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-italic-var.woff2 create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-upright-var.woff2 create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-1.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-2.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-1.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-2.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-1.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-2.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-3.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-4.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/color-calculations.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-controls.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-preview.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/editor-script-block.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/index.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/assets/js/skip-link-focus-fix.js create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-customize.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-non-latin-languages.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-script-loader.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-separator-control.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-svg-icons.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-walker-comment.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-walker-page.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/comments.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/footer.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/functions.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/header.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/inc/custom-css.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/inc/starter-content.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/inc/svg-icons.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/inc/template-tags.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/index.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/package-lock.json create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/package.json create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/print.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/readme.txt create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/screenshot.png create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/searchform.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/singular.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/style-rtl.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/style.css create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content-cover.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-author-bio.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-header.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/featured-image.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/footer-menus-widgets.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-menu.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-search.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/navigation.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/template-parts/pagination.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/templates/template-cover.php create mode 100644 srcs/wordpress/wp-content/themes/twentytwenty/templates/template-full-width.php (limited to 'srcs/wordpress/wp-content') diff --git a/srcs/wordpress/wp-content/index.php b/srcs/wordpress/wp-content/index.php new file mode 100644 index 0000000..6220032 --- /dev/null +++ b/srcs/wordpress/wp-content/index.php @@ -0,0 +1,2 @@ + + Order Deny,Allow + Deny from all + + +# Apache 2.4 + + Require all denied + + +# Akismet CSS and JS + + + Allow from all + + + + Require all granted + + + +# Akismet images + + + Allow from all + + + + Require all granted + + \ No newline at end of file diff --git a/srcs/wordpress/wp-content/plugins/akismet/LICENSE.txt b/srcs/wordpress/wp-content/plugins/akismet/LICENSE.txt new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/LICENSE.txt @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.css b/srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.css new file mode 100644 index 0000000..fea4eb7 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.css @@ -0,0 +1,663 @@ +.wp-admin.jetpack_page_akismet-key-config, .wp-admin.settings_page_akismet-key-config { + background-color:#f3f6f8; +} + +#submitted-on { + position: relative; +} +#the-comment-list .author .akismet-user-comment-count { + display: inline; +} +#the-comment-list .author a span { + text-decoration: none; + color: #999; +} +#the-comment-list .author a span.akismet-span-link { + text-decoration: inherit; + color: inherit; +} +#the-comment-list .akismet_remove_url { + margin-left: 3px; + color: #999; + padding: 2px 3px 2px 0; +} +#the-comment-list .akismet_remove_url:hover { + color: #A7301F; + font-weight: bold; + padding: 2px 2px 2px 0; +} +#dashboard_recent_comments .akismet-status { + display: none; +} +.akismet-status { + float: right; +} +.akismet-status a { + color: #AAA; + font-style: italic; +} +table.comments td.comment p a { + text-decoration: underline; +} +table.comments td.comment p a:after { + content: attr(href); + color: #aaa; + display: inline-block; /* Show the URL without the link's underline extending under it. */ + padding: 0 1ex; /* Because it's inline block, we can't just use spaces in the content: attribute to separate it from the link text. */ +} +.mshot-arrow { + width: 0; + height: 0; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + border-right: 10px solid #5C5C5C; + position: absolute; + left: -6px; + top: 91px; +} +.mshot-container { + background: #5C5C5C; + position: absolute; + top: -94px; + padding: 7px; + width: 450px; + height: 338px; + z-index: 20000; + -moz-border-radius: 6px; + border-radius: 6px; + -webkit-border-radius: 6px; +} +.akismet-mshot { + position: absolute; + z-index: 100; +} +.akismet-mshot .mshot-image { + margin: 0; + height: 338px; + width: 450px; +} +.checkforspam { + display: inline-block !important; +} +.checkforspam-progress { + display: none; +} +.checkforspam.checking .checkforspam-progress { + padding-left: 1ex; +} +.checkforspam.button-disabled .checkforspam-progress { + display: inline; +} + +.checkforspam-spinner { + display: inline-block; + margin-top: 7px; +} + +.akismet-right { + float: right; +} + +.akismet-card .akismet-right { + margin: 1em 0; +} + +.akismet-alert-text { + color: #dd3d36; + font-weight: bold; + font-size: 120%; + margin-top: .5rem; +} +.akismet-alert { + border: 1px solid #e5e5e5; + padding: 0.4em 1em 1.4em 1em; + border-radius: 3px; + -webkit-border-radius: 3px; + border-width: 1px; + border-style: solid; +} + +.akismet-alert h3.akismet-key-status { + color: #fff; + margin: 1em 0 0.5em 0; +} + +.akismet-alert.akismet-critical { + background-color: #993300; +} + +.akismet-alert.akismet-active { + background-color: #649316; +} + +.akismet-alert p.akismet-key-status { + font-size: 24px; +} + +.akismet-alert p.akismet-description { + color:#fff; + font-size: 14px; + margin: 0 0; + font-style: normal; +} + +.akismet-alert p.akismet-description a, +.akismet-alert p.akismet-description a, +.akismet-alert p.akismet-description a, +.akismet-alert p.akismet-description a { + color: #fff; +} + +.akismet-new-snapshot { + margin-top: 1em; + padding: 1em; + text-align: center; + background: #fff; +} + +.akismet-new-snapshot h3 { + background: #f5f5f5; + color: #888; + font-size: 11px; + margin: 0; + padding: 3px; +} + +.new-snapspot ul { + font-size: 12px; + width: 100%; +} + +.akismet-new-snapshot ul li { + color: #999; + float: left; + font-size: 11px; + padding: 0 20px; + text-transform: uppercase; + width: 33%; + box-sizing: border-box; + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + -ms-box-sizing: border-box; +} + +.akismet-new-snapshot ul li:first-child, +.akismet-new-snapshot ul li:nth-child(2) { + border-right:1px dotted #ccc; +} + +.akismet-new-snapshot ul li span { + color: #52accc; + display: block; + font-size: 32px; + font-weight: lighter; + line-height: 1.5em; +} + +.akismet-settings th:first-child { + vertical-align: top; + padding-top: 15px; +} + +.akismet-settings th.akismet-api-key { + vertical-align: middle; + padding-top: 0; +} + +.akismet-settings input[type=text] { + width: 75%; +} + +.akismet-settings span.akismet-note{ + float: left; + padding-left: 23px; + font-size: 75%; + margin-top: -10px; +} + +/** + * For the activation notice on the plugins page. + */ + +#akismet_setup_prompt { + background: none; + border: none; + margin: 0; + padding: 0; + width: 100%; +} + +.akismet_activate { + border: 1px solid #4F800D; + padding: 5px; + margin: 15px 0; + background: #83AF24; + background-image: -webkit-gradient(linear, 0% 0, 80% 100%, from(#83AF24), to(#4F800D)); + background-image: -moz-linear-gradient(80% 100% 120deg, #4F800D, #83AF24); + -moz-border-radius: 3px; + border-radius: 3px; + -webkit-border-radius: 3px; + position: relative; + overflow: hidden; +} + +.akismet_activate .aa_a { + position: absolute; + top: -5px; + right: 10px; + font-size: 140px; + color: #769F33; + font-family: Georgia, "Times New Roman", Times, serif; +} + +.akismet_activate .aa_button { + font-weight: bold; + border: 1px solid #029DD6; + border-top: 1px solid #06B9FD; + font-size: 15px; + text-align: center; + padding: 9px 0 8px 0; + color: #FFF; + background: #029DD6; + background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#029DD6), to(#0079B1)); + background-image: -moz-linear-gradient(0% 100% 90deg, #0079B1, #029DD6); + -moz-border-radius: 2px; + border-radius: 2px; + -webkit-border-radius: 2px; + width: 100%; + cursor: pointer; + margin: 0; +} + +.akismet_activate .aa_button:hover { + text-decoration: none !important; + border: 1px solid #029DD6; + border-bottom: 1px solid #00A8EF; + font-size: 15px; + text-align: center; + padding: 9px 0 8px 0; + color: #F0F8FB; + background: #0079B1; + background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#0079B1), to(#0092BF)); + background-image: -moz-linear-gradient(0% 100% 90deg, #0092BF, #0079B1); + -moz-border-radius: 2px; + border-radius: 2px; + -webkit-border-radius: 2px; +} + +.akismet_activate .aa_button_border { + border: 1px solid #006699; + -moz-border-radius: 2px; + border-radius: 2px; + -webkit-border-radius: 2px; + background: #029DD6; + background-image: -webkit-gradient(linear, 0% 0, 0% 100%, from(#029DD6), to(#0079B1)); + background-image: -moz-linear-gradient(0% 100% 90deg, #0079B1, #029DD6); +} + +.akismet_activate .aa_button_container { + box-sizing: border-box; + display: inline-block; + background: #DEF1B8; + padding: 5px; + -moz-border-radius: 2px; + border-radius: 2px; + -webkit-border-radius: 2px; + width: 266px; +} + +.akismet_activate .aa_description { + position: absolute; + top: 22px; + left: 285px; + margin-left: 25px; + color: #E5F2B1; + font-size: 15px; +} + +.akismet_activate .aa_description strong { + color: #FFF; + font-weight: normal; +} + +@media (max-width: 550px) { + .akismet_activate .aa_a { + display: none; + } + + .akismet_activate .aa_button_container { + width: 100%; + } +} + +@media (max-width: 782px) { + .akismet_activate { + min-width: 0; + } +} + +@media (max-width: 850px) { + #akismet_setup_prompt .aa_description { + display: none; + } + + .akismet_activate { + min-width: 0; + } +} + +.jetpack_page_akismet-key-config #wpcontent, .settings_page_akismet-key-config #wpcontent { + padding-left: 0; +} + +.akismet-masthead { + background-color:#fff; + text-align:center; + box-shadow:0 1px 0 rgba(200,215,225,0.5),0 1px 2px #e9eff3 +} +@media (max-width: 45rem) { + .akismet-masthead { + padding:0 1.25rem + } +} + +.akismet-masthead__inside-container { + padding:.375rem 0; + margin:0 auto; + width:100%; + max-width:45rem; + text-align: left; +} +.akismet-masthead__logo-container { + padding:.3125rem 0 0 +} +.akismet-masthead__logo { + width:10.375rem; + height:1.8125rem; +} +.akismet-masthead__logo-link { + display:inline-block; + outline:none; + vertical-align:middle +} +.akismet-masthead__logo-link:focus { + line-height:0; + box-shadow:0 0 0 2px #78dcfa +} +.akismet-masthead__logo-link+code { + margin:0 10px; + padding:5px 9px; + border-radius:2px; + background:#e6ecf1; + color:#647a88 +} +.akismet-masthead__links { + display:-ms-flexbox; + display:flex; + -ms-flex-flow:row wrap; + flex-flow:row wrap; + -ms-flex:2 50%; + flex:2 50%; + -ms-flex-pack:end; + justify-content:flex-end; + margin:0 +} +@media (max-width: 480px) { + .akismet-masthead__links { + padding-right:.625rem + } +} +.akismet-masthead__link-li { + margin:0; + padding:0 +} +.akismet-masthead__link { + font-style:normal; + color:#0087be; + padding:.625rem; + display:inline-block +} +.akismet-masthead__link:visited { + color:#0087be +} +.akismet-masthead__link:active,.akismet-masthead__link:hover { + color:#00aadc +} +.akismet-masthead__link:hover { + text-decoration:underline +} +.akismet-masthead__link .dashicons { + display:none +} +@media (max-width: 480px) { + .akismet-masthead__link:hover,.akismet-masthead__link:active { + text-decoration:none + } + .akismet-masthead__link .dashicons { + display:block; + font-size:1.75rem + } + .akismet-masthead__link span+span { + display:none + } +} +.akismet-masthead__link-li:last-of-type .akismet-masthead__link { + padding-right:0 +} + +.akismet-lower { + margin: 0 auto; + text-align: left; + max-width: 45rem; + padding: 1.5rem; +} + +.akismet-lower .notice { + margin-bottom: 2rem; +} + +.akismet-card { + margin-top: 1rem; + margin-bottom: 0; + position: relative; + margin: 0 auto 0.625rem auto; + box-sizing: border-box; + background: white; + box-shadow: 0 0 0 1px rgba(200, 215, 225, 0.5), 0 1px 2px #e9eff3; +} + +.akismet-card:after, .akismet-card .inside:after, .akismet-masthead__logo-container:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} + +.akismet-card .inside { + padding: 1.5rem; + padding-top: 1rem; +} + +.akismet-card .akismet-card-actions { + margin-top: 1rem; +} + +.jetpack_page_akismet-key-config .update-nag, .settings_page_akismet-key-config .update-nag { + display: none; +} + +.akismet-masthead .akismet-right { + line-height: 2.125rem; + font-size: 0.9rem; +} + +.akismet-box { + box-sizing: border-box; + background: white; + border: 1px solid rgba(200, 215, 225, 0.5); +} + +.akismet-box h2, .akismet-box h3 { + padding: 1.5rem 1.5rem .5rem 1.5rem; + margin: 0; +} + +.akismet-box p { + padding: 0 1.5rem 1.5rem 1.5rem; + margin: 0; +} + +.akismet-jetpack-email { + font-style: oblique; +} + +.akismet-jetpack-gravatar { + padding: 0 0 0 1.5rem; + float: left; + margin-right: 1rem; + width: 54px; + height: 54px; +} + +.akismet-box p:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} + +.akismet-box .akismet-right { + padding-right: 1.5rem; +} + +.akismet-boxes .akismet-box { + margin-bottom: 0; + padding: 0; + margin-top: -1px; +} + +.akismet-boxes .akismet-box:last-child { + margin-bottom: 1.5rem; +} + +.akismet-boxes .akismet-box:first-child { + margin-top: 1.5rem; +} + +.akismet-box-header { + max-width: 700px; + margin: 0 auto 40px auto; + line-height: 1.5; +} + +.akismet-box-header h2 { + margin: 1.5rem 10% 0; + font-size: 1.375rem; + font-weight: 700; + color: #000; +} + +.akismet-box .centered { + text-align: center; +} + +.akismet-enter-api-key-box { + margin: 1.5rem 0; +} + +.akismet-box .enter-api-key { + display: none; + margin-top: 1.5rem; +} + +.akismet-box .akismet-toggles { + margin: 3rem 0; +} + +.akismet-box .akismet-ak-connect, .akismet-box .toggle-jp-connect { + display: none; +} + +.akismet-box .enter-api-key p { + padding: 0 1.5rem; +} + +.akismet-button, .akismet-button:hover, .akismet-button:visited { + background: white; + border-color: #c8d7e1; + border-style: solid; + border-width: 1px 1px 2px; + color: #2e4453; + cursor: pointer; + display: inline-block; + margin: 0; + outline: 0; + overflow: hidden; + font-size: 14px; + font-weight: 500; + text-overflow: ellipsis; + text-decoration: none; + vertical-align: top; + box-sizing: border-box; + font-size: 14px; + line-height: 21px; + border-radius: 4px; + padding: 7px 14px 9px; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} + +.akismet-button:hover { + border-color: #a8bece; +} + +.akismet-button:active { + border-width: 2px 1px 1px; +} + +.akismet-is-primary, .akismet-is-primary:hover, .akismet-is-primary:visited { + background: #00aadc; + border-color: #0087be; + color: white; +} + +.akismet-is-primary:hover, .akismet-is-primary:focus { + border-color: #005082; +} + +.akismet-is-primary:hover { + border-color: #005082; +} + +.akismet-section-header { + position: relative; + margin: 0 auto 0.625rem auto; + padding: 1rem; + box-sizing: border-box; + box-shadow: 0 0 0 1px rgba(200, 215, 225, 0.5), 0 1px 2px #e9eff3; + background: #ffffff; + width: 100%; + padding-top: 0.6875rem; + padding-bottom: 0.6875rem; + display: flex; +} + +.akismet-section-header__label { + display: -ms-flexbox; + display: flex; + -ms-flex-align: center; + align-items: center; + -ms-flex-positive: 1; + flex-grow: 1; + line-height: 1.75rem; + position: relative; + font-size: 0.875rem; + color: #4f748e; +} + +.akismet-section-header__actions { + line-height: 1.75rem; +} diff --git a/srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.js b/srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.js new file mode 100644 index 0000000..3445a09 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/_inc/akismet.js @@ -0,0 +1,354 @@ +jQuery( function ( $ ) { + var mshotRemovalTimer = null; + var mshotSecondTryTimer = null + var mshotThirdTryTimer = null + + var mshotEnabledLinkSelector = 'a[id^="author_comment_url"], tr.pingback td.column-author a:first-of-type, td.comment p a'; + + $('.akismet-status').each(function () { + var thisId = $(this).attr('commentid'); + $(this).prependTo('#comment-' + thisId + ' .column-comment'); + }); + $('.akismet-user-comment-count').each(function () { + var thisId = $(this).attr('commentid'); + $(this).insertAfter('#comment-' + thisId + ' .author strong:first').show(); + }); + + akismet_enable_comment_author_url_removal(); + + $( '#the-comment-list' ).on( 'click', '.akismet_remove_url', function () { + var thisId = $(this).attr('commentid'); + var data = { + action: 'comment_author_deurl', + _wpnonce: WPAkismet.comment_author_url_nonce, + id: thisId + }; + $.ajax({ + url: ajaxurl, + type: 'POST', + data: data, + beforeSend: function () { + // Removes "x" link + $("a[commentid='"+ thisId +"']").hide(); + // Show temp status + $("#author_comment_url_"+ thisId).html( $( '' ).text( WPAkismet.strings['Removing...'] ) ); + }, + success: function (response) { + if (response) { + // Show status/undo link + $("#author_comment_url_"+ thisId) + .attr('cid', thisId) + .addClass('akismet_undo_link_removal') + .html( + $( '' ).text( WPAkismet.strings['URL removed'] ) + ) + .append( ' ' ) + .append( + $( '' ) + .text( WPAkismet.strings['(undo)'] ) + .addClass( 'akismet-span-link' ) + ); + } + } + }); + + return false; + }).on( 'click', '.akismet_undo_link_removal', function () { + var thisId = $(this).attr('cid'); + var thisUrl = $(this).attr('href'); + var data = { + action: 'comment_author_reurl', + _wpnonce: WPAkismet.comment_author_url_nonce, + id: thisId, + url: thisUrl + }; + $.ajax({ + url: ajaxurl, + type: 'POST', + data: data, + beforeSend: function () { + // Show temp status + $("#author_comment_url_"+ thisId).html( $( '' ).text( WPAkismet.strings['Re-adding...'] ) ); + }, + success: function (response) { + if (response) { + // Add "x" link + $("a[commentid='"+ thisId +"']").show(); + // Show link. Core strips leading http://, so let's do that too. + $("#author_comment_url_"+ thisId).removeClass('akismet_undo_link_removal').text( thisUrl.replace( /^http:\/\/(www\.)?/ig, '' ) ); + } + } + }); + + return false; + }); + + // Show a preview image of the hovered URL. Applies to author URLs and URLs inside the comments. + $( '#the-comment-list' ).on( 'mouseover', mshotEnabledLinkSelector, function () { + clearTimeout( mshotRemovalTimer ); + + if ( $( '.akismet-mshot' ).length > 0 ) { + if ( $( '.akismet-mshot:first' ).data( 'link' ) == this ) { + // The preview is already showing for this link. + return; + } + else { + // A new link is being hovered, so remove the old preview. + $( '.akismet-mshot' ).remove(); + } + } + + clearTimeout( mshotSecondTryTimer ); + clearTimeout( mshotThirdTryTimer ); + + var thisHref = $( this ).attr( 'href' ); + + var mShot = $( '
' ); + mShot.data( 'link', this ); + + var offset = $( this ).offset(); + + mShot.offset( { + left : Math.min( $( window ).width() - 475, offset.left + $( this ).width() + 10 ), // Keep it on the screen if the link is near the edge of the window. + top: offset.top + ( $( this ).height() / 2 ) - 101 // 101 = top offset of the arrow plus the top border thickness + } ); + + // These retries appear to be superfluous if .mshot-image has already loaded, but it's because mShots + // can return a "Generating thumbnail..." image if it doesn't have a thumbnail ready, so we need + // to retry to see if we can get the newly generated thumbnail. + mshotSecondTryTimer = setTimeout( function () { + mShot.find( '.mshot-image' ).attr( 'src', akismet_mshot_url( thisHref, 2 ) ); + }, 6000 ); + + mshotThirdTryTimer = setTimeout( function () { + mShot.find( '.mshot-image' ).attr( 'src', akismet_mshot_url( thisHref, 3 ) ); + }, 12000 ); + + $( 'body' ).append( mShot ); + } ).on( 'mouseout', 'a[id^="author_comment_url"], tr.pingback td.column-author a:first-of-type, td.comment p a', function () { + mshotRemovalTimer = setTimeout( function () { + clearTimeout( mshotSecondTryTimer ); + clearTimeout( mshotThirdTryTimer ); + + $( '.akismet-mshot' ).remove(); + }, 200 ); + } ).on( 'mouseover', 'tr', function () { + // When the mouse hovers over a comment row, begin preloading mshots for any links in the comment or the comment author. + var linksToPreloadMshotsFor = $( this ).find( mshotEnabledLinkSelector ); + + linksToPreloadMshotsFor.each( function () { + // Don't attempt to preload an mshot for a single link twice. Browser caching should cover this, but in case of + // race conditions, save a flag locally when we've begun trying to preload one. + if ( ! $( this ).data( 'akismet-mshot-preloaded' ) ) { + akismet_preload_mshot( $( this ).attr( 'href' ) ); + $( this ).data( 'akismet-mshot-preloaded', true ); + } + } ); + } ); + + $( '.checkforspam' ).click( function( e ) { + e.preventDefault(); + + if ( $( this ).hasClass( 'button-disabled' ) ) { + window.location.href = $( this ).data( 'success-url' ).replace( '__recheck_count__', 0 ).replace( '__spam_count__', 0 ); + return; + } + + $('.checkforspam').addClass('button-disabled').addClass( 'checking' ); + $('.checkforspam-spinner').addClass( 'spinner' ).addClass( 'is-active' ); + + // Update the label on the "Check for Spam" button to use the active "Checking for Spam" language. + $( '.checkforspam .akismet-label' ).text( $( '.checkforspam' ).data( 'active-label' ) ); + + akismet_check_for_spam(0, 100); + }); + + var spam_count = 0; + var recheck_count = 0; + + function akismet_check_for_spam(offset, limit) { + var check_for_spam_buttons = $( '.checkforspam' ); + + var nonce = check_for_spam_buttons.data( 'nonce' ); + + // We show the percentage complete down to one decimal point so even queues with 100k + // pending comments will show some progress pretty quickly. + var percentage_complete = Math.round( ( recheck_count / check_for_spam_buttons.data( 'pending-comment-count' ) ) * 1000 ) / 10; + + // Update the progress counter on the "Check for Spam" button. + $( '.checkforspam-progress' ).text( check_for_spam_buttons.data( 'progress-label-format' ).replace( '%1$s', percentage_complete ) ); + + $.post( + ajaxurl, + { + 'action': 'akismet_recheck_queue', + 'offset': offset, + 'limit': limit, + 'nonce': nonce + }, + function(result) { + if ( 'error' in result ) { + // An error is only returned in the case of a missing nonce, so we don't need the actual error message. + window.location.href = check_for_spam_buttons.data( 'failure-url' ); + return; + } + + recheck_count += result.counts.processed; + spam_count += result.counts.spam; + + if (result.counts.processed < limit) { + window.location.href = check_for_spam_buttons.data( 'success-url' ).replace( '__recheck_count__', recheck_count ).replace( '__spam_count__', spam_count ); + } + else { + // Account for comments that were caught as spam and moved out of the queue. + akismet_check_for_spam(offset + limit - result.counts.spam, limit); + } + } + ); + } + + if ( "start_recheck" in WPAkismet && WPAkismet.start_recheck ) { + $( '.checkforspam' ).click(); + } + + if ( typeof MutationObserver !== 'undefined' ) { + // Dynamically add the "X" next the the author URL links when a comment is quick-edited. + var comment_list_container = document.getElementById( 'the-comment-list' ); + + if ( comment_list_container ) { + var observer = new MutationObserver( function ( mutations ) { + for ( var i = 0, _len = mutations.length; i < _len; i++ ) { + if ( mutations[i].addedNodes.length > 0 ) { + akismet_enable_comment_author_url_removal(); + + // Once we know that we'll have to check for new author links, skip the rest of the mutations. + break; + } + } + } ); + + observer.observe( comment_list_container, { attributes: true, childList: true, characterData: true } ); + } + } + + function akismet_enable_comment_author_url_removal() { + $( '#the-comment-list' ) + .find( 'tr.comment, tr[id ^= "comment-"]' ) + .find( '.column-author a[href^="http"]:first' ) // Ignore mailto: links, which would be the comment author's email. + .each(function () { + if ( $( this ).parent().find( '.akismet_remove_url' ).length > 0 ) { + return; + } + + var linkHref = $(this).attr( 'href' ); + + // Ignore any links to the current domain, which are diagnostic tools, like the IP address link + // or any other links another plugin might add. + var currentHostParts = document.location.href.split( '/' ); + var currentHost = currentHostParts[0] + '//' + currentHostParts[2] + '/'; + + if ( linkHref.indexOf( currentHost ) != 0 ) { + var thisCommentId = $(this).parents('tr:first').attr('id').split("-"); + + $(this) + .attr("id", "author_comment_url_"+ thisCommentId[1]) + .after( + $( 'x' ) + .attr( 'commentid', thisCommentId[1] ) + .attr( 'title', WPAkismet.strings['Remove this URL'] ) + ); + } + }); + } + + /** + * Generate an mShot URL if given a link URL. + * + * @param string linkUrl + * @param int retry If retrying a request, the number of the retry. + * @return string The mShot URL; + */ + function akismet_mshot_url( linkUrl, retry ) { + var mshotUrl = '//s0.wordpress.com/mshots/v1/' + encodeURIComponent( linkUrl ) + '?w=900'; + + if ( retry ) { + mshotUrl += '&r=' + encodeURIComponent( retry ); + } + + return mshotUrl; + } + + /** + * Begin loading an mShot preview of a link. + * + * @param string linkUrl + */ + function akismet_preload_mshot( linkUrl ) { + var img = new Image(); + img.src = akismet_mshot_url( linkUrl ); + } + + /** + * Sets the comment form privacy notice display to hide when one clicks Core's dismiss button on the related admin notice. + */ + $( '#akismet-privacy-notice-admin-notice' ).on( 'click', '.notice-dismiss', function () { + $.ajax( { + url: './options-general.php?page=akismet-key-config&akismet_comment_form_privacy_notice=hide', + } ); + }); + + $( '.akismet-could-be-primary' ).each( function () { + var form = $( this ).closest( 'form' ); + + form.data( 'initial-state', form.serialize() ); + + form.on( 'change keyup', function () { + var self = $( this ); + var submit_button = self.find( '.akismet-could-be-primary' ); + + if ( self.serialize() != self.data( 'initial-state' ) ) { + submit_button.addClass( 'akismet-is-primary' ); + } + else { + submit_button.removeClass( 'akismet-is-primary' ); + } + } ); + } ); + + /** + * Shows the Enter API key form + */ + $( '.akismet-enter-api-key-box a' ).on( 'click', function ( e ) { + e.preventDefault(); + + var div = $( '.enter-api-key' ); + div.show( 500 ); + div.find( 'input[name=key]' ).focus(); + + $( this ).hide(); + } ); + + /** + * Hides the Connect with Jetpack form | Shows the Activate Akismet Account form + */ + $( 'a.toggle-ak-connect' ).on( 'click', function ( e ) { + e.preventDefault(); + + $( '.akismet-ak-connect' ).slideToggle('slow'); + $( 'a.toggle-ak-connect' ).hide(); + $( '.akismet-jp-connect' ).hide(); + $( 'a.toggle-jp-connect' ).show(); + } ); + + /** + * Shows the Connect with Jetpack form | Hides the Activate Akismet Account form + */ + $( 'a.toggle-jp-connect' ).on( 'click', function ( e ) { + e.preventDefault(); + + $( '.akismet-jp-connect' ).slideToggle('slow'); + $( 'a.toggle-jp-connect' ).hide(); + $( '.akismet-ak-connect' ).hide(); + $( 'a.toggle-ak-connect' ).show(); + } ); +}); diff --git a/srcs/wordpress/wp-content/plugins/akismet/_inc/form.js b/srcs/wordpress/wp-content/plugins/akismet/_inc/form.js new file mode 100644 index 0000000..3a5be8a --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/_inc/form.js @@ -0,0 +1,30 @@ +var ak_js = document.getElementById( "ak_js" ); + +if ( ! ak_js ) { + ak_js = document.createElement( 'input' ); + ak_js.setAttribute( 'id', 'ak_js' ); + ak_js.setAttribute( 'name', 'ak_js' ); + ak_js.setAttribute( 'type', 'hidden' ); +} +else { + ak_js.parentNode.removeChild( ak_js ); +} + +ak_js.setAttribute( 'value', ( new Date() ).getTime() ); + +var commentForm = document.getElementById( 'commentform' ); + +if ( commentForm ) { + commentForm.appendChild( ak_js ); +} +else { + var replyRowContainer = document.getElementById( 'replyrow' ); + + if ( replyRowContainer ) { + var children = replyRowContainer.getElementsByTagName( 'td' ); + + if ( children.length > 0 ) { + children[0].appendChild( ak_js ); + } + } +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/plugins/akismet/_inc/img/logo-full-2x.png b/srcs/wordpress/wp-content/plugins/akismet/_inc/img/logo-full-2x.png new file mode 100644 index 0000000..7954585 Binary files /dev/null and b/srcs/wordpress/wp-content/plugins/akismet/_inc/img/logo-full-2x.png differ diff --git a/srcs/wordpress/wp-content/plugins/akismet/akismet.php b/srcs/wordpress/wp-content/plugins/akismet/akismet.php new file mode 100644 index 0000000..538a7db --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/akismet.php @@ -0,0 +1,66 @@ +protect your blog from spam. It keeps your site protected even while you sleep. To get started: activate the Akismet plugin and then go to your Akismet Settings page to set up your API key. +Version: 4.1.3 +Author: Automattic +Author URI: https://automattic.com/wordpress-plugins/ +License: GPLv2 or later +Text Domain: akismet +*/ + +/* +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +Copyright 2005-2015 Automattic, Inc. +*/ + +// Make sure we don't expose any info if called directly +if ( !function_exists( 'add_action' ) ) { + echo 'Hi there! I\'m just a plugin, not much I can do when called directly.'; + exit; +} + +define( 'AKISMET_VERSION', '4.1.3' ); +define( 'AKISMET__MINIMUM_WP_VERSION', '4.0' ); +define( 'AKISMET__PLUGIN_DIR', plugin_dir_path( __FILE__ ) ); +define( 'AKISMET_DELETE_LIMIT', 100000 ); + +register_activation_hook( __FILE__, array( 'Akismet', 'plugin_activation' ) ); +register_deactivation_hook( __FILE__, array( 'Akismet', 'plugin_deactivation' ) ); + +require_once( AKISMET__PLUGIN_DIR . 'class.akismet.php' ); +require_once( AKISMET__PLUGIN_DIR . 'class.akismet-widget.php' ); +require_once( AKISMET__PLUGIN_DIR . 'class.akismet-rest-api.php' ); + +add_action( 'init', array( 'Akismet', 'init' ) ); + +add_action( 'rest_api_init', array( 'Akismet_REST_API', 'init' ) ); + +if ( is_admin() || ( defined( 'WP_CLI' ) && WP_CLI ) ) { + require_once( AKISMET__PLUGIN_DIR . 'class.akismet-admin.php' ); + add_action( 'init', array( 'Akismet_Admin', 'init' ) ); +} + +//add wrapper class around deprecated akismet functions that are referenced elsewhere +require_once( AKISMET__PLUGIN_DIR . 'wrapper.php' ); + +if ( defined( 'WP_CLI' ) && WP_CLI ) { + require_once( AKISMET__PLUGIN_DIR . 'class.akismet-cli.php' ); +} diff --git a/srcs/wordpress/wp-content/plugins/akismet/class.akismet-admin.php b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-admin.php new file mode 100644 index 0000000..b5e2ef8 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-admin.php @@ -0,0 +1,1267 @@ + array( + 'href' => true, + 'title' => true, + ), + 'b' => array(), + 'code' => array(), + 'del' => array( + 'datetime' => true, + ), + 'em' => array(), + 'i' => array(), + 'q' => array( + 'cite' => true, + ), + 'strike' => array(), + 'strong' => array(), + ); + + public static function init() { + if ( ! self::$initiated ) { + self::init_hooks(); + } + + if ( isset( $_POST['action'] ) && $_POST['action'] == 'enter-key' ) { + self::enter_api_key(); + } + + if ( ! empty( $_GET['akismet_comment_form_privacy_notice'] ) && empty( $_GET['settings-updated']) ) { + self::set_form_privacy_notice_option( $_GET['akismet_comment_form_privacy_notice'] ); + } + } + + public static function init_hooks() { + // The standalone stats page was removed in 3.0 for an all-in-one config and stats page. + // Redirect any links that might have been bookmarked or in browser history. + if ( isset( $_GET['page'] ) && 'akismet-stats-display' == $_GET['page'] ) { + wp_safe_redirect( esc_url_raw( self::get_page_url( 'stats' ) ), 301 ); + die; + } + + self::$initiated = true; + + add_action( 'admin_init', array( 'Akismet_Admin', 'admin_init' ) ); + add_action( 'admin_menu', array( 'Akismet_Admin', 'admin_menu' ), 5 ); # Priority 5, so it's called before Jetpack's admin_menu. + add_action( 'admin_notices', array( 'Akismet_Admin', 'display_notice' ) ); + add_action( 'admin_enqueue_scripts', array( 'Akismet_Admin', 'load_resources' ) ); + add_action( 'activity_box_end', array( 'Akismet_Admin', 'dashboard_stats' ) ); + add_action( 'rightnow_end', array( 'Akismet_Admin', 'rightnow_stats' ) ); + add_action( 'manage_comments_nav', array( 'Akismet_Admin', 'check_for_spam_button' ) ); + add_action( 'admin_action_akismet_recheck_queue', array( 'Akismet_Admin', 'recheck_queue' ) ); + add_action( 'wp_ajax_akismet_recheck_queue', array( 'Akismet_Admin', 'recheck_queue' ) ); + add_action( 'wp_ajax_comment_author_deurl', array( 'Akismet_Admin', 'remove_comment_author_url' ) ); + add_action( 'wp_ajax_comment_author_reurl', array( 'Akismet_Admin', 'add_comment_author_url' ) ); + add_action( 'jetpack_auto_activate_akismet', array( 'Akismet_Admin', 'connect_jetpack_user' ) ); + + add_filter( 'plugin_action_links', array( 'Akismet_Admin', 'plugin_action_links' ), 10, 2 ); + add_filter( 'comment_row_actions', array( 'Akismet_Admin', 'comment_row_action' ), 10, 2 ); + + add_filter( 'plugin_action_links_'.plugin_basename( plugin_dir_path( __FILE__ ) . 'akismet.php'), array( 'Akismet_Admin', 'admin_plugin_settings_link' ) ); + + add_filter( 'wxr_export_skip_commentmeta', array( 'Akismet_Admin', 'exclude_commentmeta_from_export' ), 10, 3 ); + + add_filter( 'all_plugins', array( 'Akismet_Admin', 'modify_plugin_description' ) ); + + if ( class_exists( 'Jetpack' ) ) { + add_filter( 'akismet_comment_form_privacy_notice_url_display', array( 'Akismet_Admin', 'jetpack_comment_form_privacy_notice_url' ) ); + add_filter( 'akismet_comment_form_privacy_notice_url_hide', array( 'Akismet_Admin', 'jetpack_comment_form_privacy_notice_url' ) ); + } + + // priority=1 because we need ours to run before core's comment anonymizer runs, and that's registered at priority=10 + add_filter( 'wp_privacy_personal_data_erasers', array( 'Akismet_Admin', 'register_personal_data_eraser' ), 1 ); + } + + public static function admin_init() { + if ( get_option( 'Activated_Akismet' ) ) { + delete_option( 'Activated_Akismet' ); + if ( ! headers_sent() ) { + wp_redirect( add_query_arg( array( 'page' => 'akismet-key-config', 'view' => 'start' ), class_exists( 'Jetpack' ) ? admin_url( 'admin.php' ) : admin_url( 'options-general.php' ) ) ); + } + } + + load_plugin_textdomain( 'akismet' ); + add_meta_box( 'akismet-status', __('Comment History', 'akismet'), array( 'Akismet_Admin', 'comment_status_meta_box' ), 'comment', 'normal' ); + + if ( function_exists( 'wp_add_privacy_policy_content' ) ) { + wp_add_privacy_policy_content( + __( 'Akismet', 'akismet' ), + __( 'We collect information about visitors who comment on Sites that use our Akismet anti-spam service. The information we collect depends on how the User sets up Akismet for the Site, but typically includes the commenter\'s IP address, user agent, referrer, and Site URL (along with other information directly provided by the commenter such as their name, username, email address, and the comment itself).', 'akismet' ) + ); + } + } + + public static function admin_menu() { + if ( class_exists( 'Jetpack' ) ) + add_action( 'jetpack_admin_menu', array( 'Akismet_Admin', 'load_menu' ) ); + else + self::load_menu(); + } + + public static function admin_head() { + if ( !current_user_can( 'manage_options' ) ) + return; + } + + public static function admin_plugin_settings_link( $links ) { + $settings_link = ''.__('Settings', 'akismet').''; + array_unshift( $links, $settings_link ); + return $links; + } + + public static function load_menu() { + if ( class_exists( 'Jetpack' ) ) { + $hook = add_submenu_page( 'jetpack', __( 'Akismet Anti-Spam' , 'akismet'), __( 'Akismet Anti-Spam' , 'akismet'), 'manage_options', 'akismet-key-config', array( 'Akismet_Admin', 'display_page' ) ); + } + else { + $hook = add_options_page( __('Akismet Anti-Spam', 'akismet'), __('Akismet Anti-Spam', 'akismet'), 'manage_options', 'akismet-key-config', array( 'Akismet_Admin', 'display_page' ) ); + } + + if ( $hook ) { + add_action( "load-$hook", array( 'Akismet_Admin', 'admin_help' ) ); + } + } + + public static function load_resources() { + global $hook_suffix; + + if ( in_array( $hook_suffix, apply_filters( 'akismet_admin_page_hook_suffixes', array( + 'index.php', # dashboard + 'edit-comments.php', + 'comment.php', + 'post.php', + 'settings_page_akismet-key-config', + 'jetpack_page_akismet-key-config', + 'plugins.php', + ) ) ) ) { + wp_register_style( 'akismet.css', plugin_dir_url( __FILE__ ) . '_inc/akismet.css', array(), AKISMET_VERSION ); + wp_enqueue_style( 'akismet.css'); + + wp_register_script( 'akismet.js', plugin_dir_url( __FILE__ ) . '_inc/akismet.js', array('jquery'), AKISMET_VERSION ); + wp_enqueue_script( 'akismet.js' ); + + $inline_js = array( + 'comment_author_url_nonce' => wp_create_nonce( 'comment_author_url_nonce' ), + 'strings' => array( + 'Remove this URL' => __( 'Remove this URL' , 'akismet'), + 'Removing...' => __( 'Removing...' , 'akismet'), + 'URL removed' => __( 'URL removed' , 'akismet'), + '(undo)' => __( '(undo)' , 'akismet'), + 'Re-adding...' => __( 'Re-adding...' , 'akismet'), + ) + ); + + if ( isset( $_GET['akismet_recheck'] ) && wp_verify_nonce( $_GET['akismet_recheck'], 'akismet_recheck' ) ) { + $inline_js['start_recheck'] = true; + } + + wp_localize_script( 'akismet.js', 'WPAkismet', $inline_js ); + } + } + + /** + * Add help to the Akismet page + * + * @return false if not the Akismet page + */ + public static function admin_help() { + $current_screen = get_current_screen(); + + // Screen Content + if ( current_user_can( 'manage_options' ) ) { + if ( !Akismet::get_api_key() || ( isset( $_GET['view'] ) && $_GET['view'] == 'start' ) ) { + //setup page + $current_screen->add_help_tab( + array( + 'id' => 'overview', + 'title' => __( 'Overview' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Setup' , 'akismet') . '

' . + '

' . esc_html__( 'Akismet filters out spam, so you can focus on more important things.' , 'akismet') . '

' . + '

' . esc_html__( 'On this page, you are able to set up the Akismet plugin.' , 'akismet') . '

', + ) + ); + + $current_screen->add_help_tab( + array( + 'id' => 'setup-signup', + 'title' => __( 'New to Akismet' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Setup' , 'akismet') . '

' . + '

' . esc_html__( 'You need to enter an API key to activate the Akismet service on your site.' , 'akismet') . '

' . + '

' . sprintf( __( 'Sign up for an account on %s to get an API Key.' , 'akismet'), 'Akismet.com' ) . '

', + ) + ); + + $current_screen->add_help_tab( + array( + 'id' => 'setup-manual', + 'title' => __( 'Enter an API Key' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Setup' , 'akismet') . '

' . + '

' . esc_html__( 'If you already have an API key' , 'akismet') . '

' . + '
    ' . + '
  1. ' . esc_html__( 'Copy and paste the API key into the text field.' , 'akismet') . '
  2. ' . + '
  3. ' . esc_html__( 'Click the Use this Key button.' , 'akismet') . '
  4. ' . + '
', + ) + ); + } + elseif ( isset( $_GET['view'] ) && $_GET['view'] == 'stats' ) { + //stats page + $current_screen->add_help_tab( + array( + 'id' => 'overview', + 'title' => __( 'Overview' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Stats' , 'akismet') . '

' . + '

' . esc_html__( 'Akismet filters out spam, so you can focus on more important things.' , 'akismet') . '

' . + '

' . esc_html__( 'On this page, you are able to view stats on spam filtered on your site.' , 'akismet') . '

', + ) + ); + } + else { + //configuration page + $current_screen->add_help_tab( + array( + 'id' => 'overview', + 'title' => __( 'Overview' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Configuration' , 'akismet') . '

' . + '

' . esc_html__( 'Akismet filters out spam, so you can focus on more important things.' , 'akismet') . '

' . + '

' . esc_html__( 'On this page, you are able to update your Akismet settings and view spam stats.' , 'akismet') . '

', + ) + ); + + $current_screen->add_help_tab( + array( + 'id' => 'settings', + 'title' => __( 'Settings' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Configuration' , 'akismet') . '

' . + ( Akismet::predefined_api_key() ? '' : '

' . esc_html__( 'API Key' , 'akismet') . ' - ' . esc_html__( 'Enter/remove an API key.' , 'akismet') . '

' ) . + '

' . esc_html__( 'Comments' , 'akismet') . ' - ' . esc_html__( 'Show the number of approved comments beside each comment author in the comments list page.' , 'akismet') . '

' . + '

' . esc_html__( 'Strictness' , 'akismet') . ' - ' . esc_html__( 'Choose to either discard the worst spam automatically or to always put all spam in spam folder.' , 'akismet') . '

', + ) + ); + + if ( ! Akismet::predefined_api_key() ) { + $current_screen->add_help_tab( + array( + 'id' => 'account', + 'title' => __( 'Account' , 'akismet'), + 'content' => + '

' . esc_html__( 'Akismet Configuration' , 'akismet') . '

' . + '

' . esc_html__( 'Subscription Type' , 'akismet') . ' - ' . esc_html__( 'The Akismet subscription plan' , 'akismet') . '

' . + '

' . esc_html__( 'Status' , 'akismet') . ' - ' . esc_html__( 'The subscription status - active, cancelled or suspended' , 'akismet') . '

', + ) + ); + } + } + } + + // Help Sidebar + $current_screen->set_help_sidebar( + '

' . esc_html__( 'For more information:' , 'akismet') . '

' . + '

' . esc_html__( 'Akismet FAQ' , 'akismet') . '

' . + '

' . esc_html__( 'Akismet Support' , 'akismet') . '

' + ); + } + + public static function enter_api_key() { + if ( ! current_user_can( 'manage_options' ) ) { + die( __( 'Cheatin’ uh?', 'akismet' ) ); + } + + if ( !wp_verify_nonce( $_POST['_wpnonce'], self::NONCE ) ) + return false; + + foreach( array( 'akismet_strictness', 'akismet_show_user_comments_approved' ) as $option ) { + update_option( $option, isset( $_POST[$option] ) && (int) $_POST[$option] == 1 ? '1' : '0' ); + } + + if ( ! empty( $_POST['akismet_comment_form_privacy_notice'] ) ) { + self::set_form_privacy_notice_option( $_POST['akismet_comment_form_privacy_notice'] ); + } else { + self::set_form_privacy_notice_option( 'hide' ); + } + + if ( Akismet::predefined_api_key() ) { + return false; //shouldn't have option to save key if already defined + } + + $new_key = preg_replace( '/[^a-f0-9]/i', '', $_POST['key'] ); + $old_key = Akismet::get_api_key(); + + if ( empty( $new_key ) ) { + if ( !empty( $old_key ) ) { + delete_option( 'wordpress_api_key' ); + self::$notices[] = 'new-key-empty'; + } + } + elseif ( $new_key != $old_key ) { + self::save_key( $new_key ); + } + + return true; + } + + public static function save_key( $api_key ) { + $key_status = Akismet::verify_key( $api_key ); + + if ( $key_status == 'valid' ) { + $akismet_user = self::get_akismet_user( $api_key ); + + if ( $akismet_user ) { + if ( in_array( $akismet_user->status, array( 'active', 'active-dunning', 'no-sub' ) ) ) + update_option( 'wordpress_api_key', $api_key ); + + if ( $akismet_user->status == 'active' ) + self::$notices['status'] = 'new-key-valid'; + elseif ( $akismet_user->status == 'notice' ) + self::$notices['status'] = $akismet_user; + else + self::$notices['status'] = $akismet_user->status; + } + else + self::$notices['status'] = 'new-key-invalid'; + } + elseif ( in_array( $key_status, array( 'invalid', 'failed' ) ) ) + self::$notices['status'] = 'new-key-'.$key_status; + } + + public static function dashboard_stats() { + if ( did_action( 'rightnow_end' ) ) { + return; // We already displayed this info in the "Right Now" section + } + + if ( !$count = get_option('akismet_spam_count') ) + return; + + global $submenu; + + echo '

' . esc_html( _x( 'Spam', 'comments' , 'akismet') ) . '

'; + + echo '

'.sprintf( _n( + 'Akismet has protected your site from %3$s spam comment.', + 'Akismet has protected your site from %3$s spam comments.', + $count + , 'akismet'), 'https://akismet.com/wordpress/', esc_url( add_query_arg( array( 'page' => 'akismet-admin' ), admin_url( isset( $submenu['edit-comments.php'] ) ? 'edit-comments.php' : 'edit.php' ) ) ), number_format_i18n($count) ).'

'; + } + + // WP 2.5+ + public static function rightnow_stats() { + if ( $count = get_option('akismet_spam_count') ) { + $intro = sprintf( _n( + 'Akismet has protected your site from %2$s spam comment already. ', + 'Akismet has protected your site from %2$s spam comments already. ', + $count + , 'akismet'), 'https://akismet.com/wordpress/', number_format_i18n( $count ) ); + } else { + $intro = sprintf( __('Akismet blocks spam from getting to your blog. ', 'akismet'), 'https://akismet.com/wordpress/' ); + } + + $link = add_query_arg( array( 'comment_status' => 'spam' ), admin_url( 'edit-comments.php' ) ); + + if ( $queue_count = self::get_spam_count() ) { + $queue_text = sprintf( _n( + 'There’s %1$s comment in your spam queue right now.', + 'There are %1$s comments in your spam queue right now.', + $queue_count + , 'akismet'), number_format_i18n( $queue_count ), esc_url( $link ) ); + } else { + $queue_text = sprintf( __( "There’s nothing in your spam queue at the moment." , 'akismet'), esc_url( $link ) ); + } + + $text = $intro . '
' . $queue_text; + echo "

$text

\n"; + } + + public static function check_for_spam_button( $comment_status ) { + // The "Check for Spam" button should only appear when the page might be showing + // a comment with comment_approved=0, which means an un-trashed, un-spammed, + // not-yet-moderated comment. + if ( 'all' != $comment_status && 'moderated' != $comment_status ) { + return; + } + + $link = add_query_arg( array( 'action' => 'akismet_recheck_queue' ), admin_url( 'admin.php' ) ); + + $comments_count = wp_count_comments(); + + echo ''; + echo '
'; + echo ''; + echo '' . esc_html__('Check for Spam', 'akismet') . ''; + echo ''; + echo ''; + echo ''; + + } + + public static function recheck_queue() { + global $wpdb; + + Akismet::fix_scheduled_recheck(); + + if ( ! ( isset( $_GET['recheckqueue'] ) || ( isset( $_REQUEST['action'] ) && 'akismet_recheck_queue' == $_REQUEST['action'] ) ) ) { + return; + } + + if ( ! wp_verify_nonce( $_POST['nonce'], 'akismet_check_for_spam' ) ) { + wp_send_json( array( + 'error' => __( "You don't have permission to do that."), + )); + return; + } + + $result_counts = self::recheck_queue_portion( empty( $_POST['offset'] ) ? 0 : $_POST['offset'], empty( $_POST['limit'] ) ? 100 : $_POST['limit'] ); + + if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) { + wp_send_json( array( + 'counts' => $result_counts, + )); + } + else { + $redirect_to = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : admin_url( 'edit-comments.php' ); + wp_safe_redirect( $redirect_to ); + exit; + } + } + + public static function recheck_queue_portion( $start = 0, $limit = 100 ) { + global $wpdb; + + $paginate = ''; + + if ( $limit <= 0 ) { + $limit = 100; + } + + if ( $start < 0 ) { + $start = 0; + } + + $moderation = $wpdb->get_col( $wpdb->prepare( "SELECT * FROM {$wpdb->comments} WHERE comment_approved = '0' LIMIT %d OFFSET %d", $limit, $start ) ); + + $result_counts = array( + 'processed' => count( $moderation ), + 'spam' => 0, + 'ham' => 0, + 'error' => 0, + ); + + foreach ( $moderation as $comment_id ) { + $api_response = Akismet::recheck_comment( $comment_id, 'recheck_queue' ); + + if ( 'true' === $api_response ) { + ++$result_counts['spam']; + } + elseif ( 'false' === $api_response ) { + ++$result_counts['ham']; + } + else { + ++$result_counts['error']; + } + } + + return $result_counts; + } + + // Adds an 'x' link next to author URLs, clicking will remove the author URL and show an undo link + public static function remove_comment_author_url() { + if ( !empty( $_POST['id'] ) && check_admin_referer( 'comment_author_url_nonce' ) ) { + $comment_id = intval( $_POST['id'] ); + $comment = get_comment( $comment_id, ARRAY_A ); + if ( $comment && current_user_can( 'edit_comment', $comment['comment_ID'] ) ) { + $comment['comment_author_url'] = ''; + do_action( 'comment_remove_author_url' ); + print( wp_update_comment( $comment ) ); + die(); + } + } + } + + public static function add_comment_author_url() { + if ( !empty( $_POST['id'] ) && !empty( $_POST['url'] ) && check_admin_referer( 'comment_author_url_nonce' ) ) { + $comment_id = intval( $_POST['id'] ); + $comment = get_comment( $comment_id, ARRAY_A ); + if ( $comment && current_user_can( 'edit_comment', $comment['comment_ID'] ) ) { + $comment['comment_author_url'] = esc_url( $_POST['url'] ); + do_action( 'comment_add_author_url' ); + print( wp_update_comment( $comment ) ); + die(); + } + } + } + + public static function comment_row_action( $a, $comment ) { + $akismet_result = get_comment_meta( $comment->comment_ID, 'akismet_result', true ); + $akismet_error = get_comment_meta( $comment->comment_ID, 'akismet_error', true ); + $user_result = get_comment_meta( $comment->comment_ID, 'akismet_user_result', true); + $comment_status = wp_get_comment_status( $comment->comment_ID ); + $desc = null; + if ( $akismet_error ) { + $desc = __( 'Awaiting spam check' , 'akismet'); + } elseif ( !$user_result || $user_result == $akismet_result ) { + // Show the original Akismet result if the user hasn't overridden it, or if their decision was the same + if ( $akismet_result == 'true' && $comment_status != 'spam' && $comment_status != 'trash' ) + $desc = __( 'Flagged as spam by Akismet' , 'akismet'); + elseif ( $akismet_result == 'false' && $comment_status == 'spam' ) + $desc = __( 'Cleared by Akismet' , 'akismet'); + } else { + $who = get_comment_meta( $comment->comment_ID, 'akismet_user', true ); + if ( $user_result == 'true' ) + $desc = sprintf( __('Flagged as spam by %s', 'akismet'), $who ); + else + $desc = sprintf( __('Un-spammed by %s', 'akismet'), $who ); + } + + // add a History item to the hover links, just after Edit + if ( $akismet_result ) { + $b = array(); + foreach ( $a as $k => $item ) { + $b[ $k ] = $item; + if ( + $k == 'edit' + || $k == 'unspam' + ) { + $b['history'] = ' '. esc_html__('History', 'akismet') . ''; + } + } + + $a = $b; + } + + if ( $desc ) + echo ''.esc_html( $desc ).''; + + $show_user_comments_option = get_option( 'akismet_show_user_comments_approved' ); + + if ( $show_user_comments_option === false ) { + // Default to active if the user hasn't made a decision. + $show_user_comments_option = '1'; + } + + $show_user_comments = apply_filters( 'akismet_show_user_comments_approved', $show_user_comments_option ); + $show_user_comments = $show_user_comments === 'false' ? false : $show_user_comments; //option used to be saved as 'false' / 'true' + + if ( $show_user_comments ) { + $comment_count = Akismet::get_user_comments_approved( $comment->user_id, $comment->comment_author_email, $comment->comment_author, $comment->comment_author_url ); + $comment_count = intval( $comment_count ); + echo ''; + } + + return $a; + } + + public static function comment_status_meta_box( $comment ) { + $history = Akismet::get_comment_history( $comment->comment_ID ); + + if ( $history ) { + echo '
'; + + foreach ( $history as $row ) { + $time = date( 'D d M Y @ h:i:m a', $row['time'] ) . ' GMT'; + + $message = ''; + + if ( ! empty( $row['message'] ) ) { + // Old versions of Akismet stored the message as a literal string in the commentmeta. + // New versions don't do that for two reasons: + // 1) Save space. + // 2) The message can be translated into the current language of the blog, not stuck + // in the language of the blog when the comment was made. + $message = $row['message']; + } + + // If possible, use a current translation. + switch ( $row['event'] ) { + case 'recheck-spam'; + $message = __( 'Akismet re-checked and caught this comment as spam.', 'akismet' ); + break; + case 'check-spam': + $message = __( 'Akismet caught this comment as spam.', 'akismet' ); + break; + case 'recheck-ham': + $message = __( 'Akismet re-checked and cleared this comment.', 'akismet' ); + break; + case 'check-ham': + $message = __( 'Akismet cleared this comment.', 'akismet' ); + break; + case 'wp-blacklisted': + $message = __( 'Comment was caught by wp_blacklist_check.', 'akismet' ); + break; + case 'report-spam': + if ( isset( $row['user'] ) ) { + $message = sprintf( __( '%s reported this comment as spam.', 'akismet' ), $row['user'] ); + } + else if ( ! $message ) { + $message = __( 'This comment was reported as spam.', 'akismet' ); + } + break; + case 'report-ham': + if ( isset( $row['user'] ) ) { + $message = sprintf( __( '%s reported this comment as not spam.', 'akismet' ), $row['user'] ); + } + else if ( ! $message ) { + $message = __( 'This comment was reported as not spam.', 'akismet' ); + } + break; + case 'cron-retry-spam': + $message = __( 'Akismet caught this comment as spam during an automatic retry.' , 'akismet'); + break; + case 'cron-retry-ham': + $message = __( 'Akismet cleared this comment during an automatic retry.', 'akismet'); + break; + case 'check-error': + if ( isset( $row['meta'], $row['meta']['response'] ) ) { + $message = sprintf( __( 'Akismet was unable to check this comment (response: %s) but will automatically retry later.', 'akismet'), $row['meta']['response'] ); + } + break; + case 'recheck-error': + if ( isset( $row['meta'], $row['meta']['response'] ) ) { + $message = sprintf( __( 'Akismet was unable to recheck this comment (response: %s).', 'akismet'), $row['meta']['response'] ); + } + break; + default: + if ( preg_match( '/^status-changed/', $row['event'] ) ) { + // Half of these used to be saved without the dash after 'status-changed'. + // See https://plugins.trac.wordpress.org/changeset/1150658/akismet/trunk + $new_status = preg_replace( '/^status-changed-?/', '', $row['event'] ); + $message = sprintf( __( 'Comment status was changed to %s', 'akismet' ), $new_status ); + } + else if ( preg_match( '/^status-/', $row['event'] ) ) { + $new_status = preg_replace( '/^status-/', '', $row['event'] ); + + if ( isset( $row['user'] ) ) { + $message = sprintf( __( '%1$s changed the comment status to %2$s.', 'akismet' ), $row['user'], $new_status ); + } + } + break; + + } + + echo '
'; + echo '' . sprintf( esc_html__('%s ago', 'akismet'), human_time_diff( $row['time'] ) ) . ''; + echo ' - '; + echo esc_html( $message ); + echo '
'; + } + + echo '
'; + } + } + + public static function plugin_action_links( $links, $file ) { + if ( $file == plugin_basename( plugin_dir_url( __FILE__ ) . '/akismet.php' ) ) { + $links[] = ''.esc_html__( 'Settings' , 'akismet').''; + } + + return $links; + } + + // Total spam in queue + // get_option( 'akismet_spam_count' ) is the total caught ever + public static function get_spam_count( $type = false ) { + global $wpdb; + + if ( !$type ) { // total + $count = wp_cache_get( 'akismet_spam_count', 'widget' ); + if ( false === $count ) { + $count = wp_count_comments(); + $count = $count->spam; + wp_cache_set( 'akismet_spam_count', $count, 'widget', 3600 ); + } + return $count; + } elseif ( 'comments' == $type || 'comment' == $type ) { // comments + $type = ''; + } + + return (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(comment_ID) FROM {$wpdb->comments} WHERE comment_approved = 'spam' AND comment_type = %s", $type ) ); + } + + // Check connectivity between the WordPress blog and Akismet's servers. + // Returns an associative array of server IP addresses, where the key is the IP address, and value is true (available) or false (unable to connect). + public static function check_server_ip_connectivity() { + + $servers = $ips = array(); + + // Some web hosts may disable this function + if ( function_exists('gethostbynamel') ) { + + $ips = gethostbynamel( 'rest.akismet.com' ); + if ( $ips && is_array($ips) && count($ips) ) { + $api_key = Akismet::get_api_key(); + + foreach ( $ips as $ip ) { + $response = Akismet::verify_key( $api_key, $ip ); + // even if the key is invalid, at least we know we have connectivity + if ( $response == 'valid' || $response == 'invalid' ) + $servers[$ip] = 'connected'; + else + $servers[$ip] = $response ? $response : 'unable to connect'; + } + } + } + + return $servers; + } + + // Simpler connectivity check + public static function check_server_connectivity($cache_timeout = 86400) { + + $debug = array(); + $debug[ 'PHP_VERSION' ] = PHP_VERSION; + $debug[ 'WORDPRESS_VERSION' ] = $GLOBALS['wp_version']; + $debug[ 'AKISMET_VERSION' ] = AKISMET_VERSION; + $debug[ 'AKISMET__PLUGIN_DIR' ] = AKISMET__PLUGIN_DIR; + $debug[ 'SITE_URL' ] = site_url(); + $debug[ 'HOME_URL' ] = home_url(); + + $servers = get_option('akismet_available_servers'); + if ( (time() - get_option('akismet_connectivity_time') < $cache_timeout) && $servers !== false ) { + $servers = self::check_server_ip_connectivity(); + update_option('akismet_available_servers', $servers); + update_option('akismet_connectivity_time', time()); + } + + if ( wp_http_supports( array( 'ssl' ) ) ) { + $response = wp_remote_get( 'https://rest.akismet.com/1.1/test' ); + } + else { + $response = wp_remote_get( 'http://rest.akismet.com/1.1/test' ); + } + + $debug[ 'gethostbynamel' ] = function_exists('gethostbynamel') ? 'exists' : 'not here'; + $debug[ 'Servers' ] = $servers; + $debug[ 'Test Connection' ] = $response; + + Akismet::log( $debug ); + + if ( $response && 'connected' == wp_remote_retrieve_body( $response ) ) + return true; + + return false; + } + + // Check the server connectivity and store the available servers in an option. + public static function get_server_connectivity($cache_timeout = 86400) { + return self::check_server_connectivity( $cache_timeout ); + } + + /** + * Find out whether any comments in the Pending queue have not yet been checked by Akismet. + * + * @return bool + */ + public static function are_any_comments_waiting_to_be_checked() { + return !! get_comments( array( + // Exclude comments that are not pending. This would happen if someone manually approved or spammed a comment + // that was waiting to be checked. The akismet_error meta entry will eventually be removed by the cron recheck job. + 'status' => 'hold', + + // This is the commentmeta that is saved when a comment couldn't be checked. + 'meta_key' => 'akismet_error', + + // We only need to know whether at least one comment is waiting for a check. + 'number' => 1, + ) ); + } + + public static function get_page_url( $page = 'config' ) { + + $args = array( 'page' => 'akismet-key-config' ); + + if ( $page == 'stats' ) + $args = array( 'page' => 'akismet-key-config', 'view' => 'stats' ); + elseif ( $page == 'delete_key' ) + $args = array( 'page' => 'akismet-key-config', 'view' => 'start', 'action' => 'delete-key', '_wpnonce' => wp_create_nonce( self::NONCE ) ); + + $url = add_query_arg( $args, class_exists( 'Jetpack' ) ? admin_url( 'admin.php' ) : admin_url( 'options-general.php' ) ); + + return $url; + } + + public static function get_akismet_user( $api_key ) { + $akismet_user = false; + + $subscription_verification = Akismet::http_post( Akismet::build_query( array( 'key' => $api_key, 'blog' => get_option( 'home' ) ) ), 'get-subscription' ); + + if ( ! empty( $subscription_verification[1] ) ) { + if ( 'invalid' !== $subscription_verification[1] ) { + $akismet_user = json_decode( $subscription_verification[1] ); + } + } + + return $akismet_user; + } + + public static function get_stats( $api_key ) { + $stat_totals = array(); + + foreach( array( '6-months', 'all' ) as $interval ) { + $response = Akismet::http_post( Akismet::build_query( array( 'blog' => get_option( 'home' ), 'key' => $api_key, 'from' => $interval ) ), 'get-stats' ); + + if ( ! empty( $response[1] ) ) { + $stat_totals[$interval] = json_decode( $response[1] ); + } + } + + return $stat_totals; + } + + public static function verify_wpcom_key( $api_key, $user_id, $extra = array() ) { + $akismet_account = Akismet::http_post( Akismet::build_query( array_merge( array( + 'user_id' => $user_id, + 'api_key' => $api_key, + 'get_account_type' => 'true' + ), $extra ) ), 'verify-wpcom-key' ); + + if ( ! empty( $akismet_account[1] ) ) + $akismet_account = json_decode( $akismet_account[1] ); + + Akismet::log( compact( 'akismet_account' ) ); + + return $akismet_account; + } + + public static function connect_jetpack_user() { + + if ( $jetpack_user = self::get_jetpack_user() ) { + if ( isset( $jetpack_user['user_id'] ) && isset( $jetpack_user['api_key'] ) ) { + $akismet_user = self::verify_wpcom_key( $jetpack_user['api_key'], $jetpack_user['user_id'], array( 'action' => 'connect_jetpack_user' ) ); + + if ( is_object( $akismet_user ) ) { + self::save_key( $akismet_user->api_key ); + return in_array( $akismet_user->status, array( 'active', 'active-dunning', 'no-sub' ) ); + } + } + } + + return false; + } + + public static function display_alert() { + Akismet::view( 'notice', array( + 'type' => 'alert', + 'code' => (int) get_option( 'akismet_alert_code' ), + 'msg' => get_option( 'akismet_alert_msg' ) + ) ); + } + + public static function display_privacy_notice_control_warning() { + if ( !current_user_can( 'manage_options' ) ) + return; + Akismet::view( 'notice', array( + 'type' => 'privacy', + ) ); + } + + public static function display_spam_check_warning() { + Akismet::fix_scheduled_recheck(); + + if ( wp_next_scheduled('akismet_schedule_cron_recheck') > time() && self::are_any_comments_waiting_to_be_checked() ) { + $link_text = apply_filters( 'akismet_spam_check_warning_link_text', sprintf( __( 'Please check your Akismet configuration and contact your web host if problems persist.', 'akismet'), esc_url( self::get_page_url() ) ) ); + Akismet::view( 'notice', array( 'type' => 'spam-check', 'link_text' => $link_text ) ); + } + } + + public static function display_api_key_warning() { + Akismet::view( 'notice', array( 'type' => 'plugin' ) ); + } + + public static function display_page() { + if ( !Akismet::get_api_key() || ( isset( $_GET['view'] ) && $_GET['view'] == 'start' ) ) + self::display_start_page(); + elseif ( isset( $_GET['view'] ) && $_GET['view'] == 'stats' ) + self::display_stats_page(); + else + self::display_configuration_page(); + } + + public static function display_start_page() { + if ( isset( $_GET['action'] ) ) { + if ( $_GET['action'] == 'delete-key' ) { + if ( isset( $_GET['_wpnonce'] ) && wp_verify_nonce( $_GET['_wpnonce'], self::NONCE ) ) + delete_option( 'wordpress_api_key' ); + } + } + + if ( $api_key = Akismet::get_api_key() && ( empty( self::$notices['status'] ) || 'existing-key-invalid' != self::$notices['status'] ) ) { + self::display_configuration_page(); + return; + } + + //the user can choose to auto connect their API key by clicking a button on the akismet done page + //if jetpack, get verified api key by using connected wpcom user id + //if no jetpack, get verified api key by using an akismet token + + $akismet_user = false; + + if ( isset( $_GET['token'] ) && preg_match('/^(\d+)-[0-9a-f]{20}$/', $_GET['token'] ) ) + $akismet_user = self::verify_wpcom_key( '', '', array( 'token' => $_GET['token'] ) ); + elseif ( $jetpack_user = self::get_jetpack_user() ) + $akismet_user = self::verify_wpcom_key( $jetpack_user['api_key'], $jetpack_user['user_id'] ); + + if ( isset( $_GET['action'] ) ) { + if ( $_GET['action'] == 'save-key' ) { + if ( is_object( $akismet_user ) ) { + self::save_key( $akismet_user->api_key ); + self::display_configuration_page(); + return; + } + } + } + + Akismet::view( 'start', compact( 'akismet_user' ) ); + + /* + // To see all variants when testing. + $akismet_user->status = 'no-sub'; + Akismet::view( 'start', compact( 'akismet_user' ) ); + $akismet_user->status = 'cancelled'; + Akismet::view( 'start', compact( 'akismet_user' ) ); + $akismet_user->status = 'suspended'; + Akismet::view( 'start', compact( 'akismet_user' ) ); + $akismet_user->status = 'other'; + Akismet::view( 'start', compact( 'akismet_user' ) ); + $akismet_user = false; + */ + } + + public static function display_stats_page() { + Akismet::view( 'stats' ); + } + + public static function display_configuration_page() { + $api_key = Akismet::get_api_key(); + $akismet_user = self::get_akismet_user( $api_key ); + + if ( ! $akismet_user ) { + // This could happen if the user's key became invalid after it was previously valid and successfully set up. + self::$notices['status'] = 'existing-key-invalid'; + self::display_start_page(); + return; + } + + $stat_totals = self::get_stats( $api_key ); + + // If unset, create the new strictness option using the old discard option to determine its default. + // If the old option wasn't set, default to discarding the blatant spam. + if ( get_option( 'akismet_strictness' ) === false ) { + add_option( 'akismet_strictness', ( get_option( 'akismet_discard_month' ) === 'false' ? '0' : '1' ) ); + } + + // Sync the local "Total spam blocked" count with the authoritative count from the server. + if ( isset( $stat_totals['all'], $stat_totals['all']->spam ) ) { + update_option( 'akismet_spam_count', $stat_totals['all']->spam ); + } + + $notices = array(); + + if ( empty( self::$notices ) ) { + if ( ! empty( $stat_totals['all'] ) && isset( $stat_totals['all']->time_saved ) && $akismet_user->status == 'active' && $akismet_user->account_type == 'free-api-key' ) { + + $time_saved = false; + + if ( $stat_totals['all']->time_saved > 1800 ) { + $total_in_minutes = round( $stat_totals['all']->time_saved / 60 ); + $total_in_hours = round( $total_in_minutes / 60 ); + $total_in_days = round( $total_in_hours / 8 ); + $cleaning_up = __( 'Cleaning up spam takes time.' , 'akismet'); + + if ( $total_in_days > 1 ) + $time_saved = $cleaning_up . ' ' . sprintf( _n( 'Akismet has saved you %s day!', 'Akismet has saved you %s days!', $total_in_days, 'akismet' ), number_format_i18n( $total_in_days ) ); + elseif ( $total_in_hours > 1 ) + $time_saved = $cleaning_up . ' ' . sprintf( _n( 'Akismet has saved you %d hour!', 'Akismet has saved you %d hours!', $total_in_hours, 'akismet' ), $total_in_hours ); + elseif ( $total_in_minutes >= 30 ) + $time_saved = $cleaning_up . ' ' . sprintf( _n( 'Akismet has saved you %d minute!', 'Akismet has saved you %d minutes!', $total_in_minutes, 'akismet' ), $total_in_minutes ); + } + + $notices[] = array( 'type' => 'active-notice', 'time_saved' => $time_saved ); + } + + if ( !empty( $akismet_user->limit_reached ) && in_array( $akismet_user->limit_reached, array( 'yellow', 'red' ) ) ) { + $notices[] = array( 'type' => 'limit-reached', 'level' => $akismet_user->limit_reached ); + } + } + + if ( !isset( self::$notices['status'] ) && in_array( $akismet_user->status, array( 'cancelled', 'suspended', 'missing', 'no-sub' ) ) ) { + $notices[] = array( 'type' => $akismet_user->status ); + } + + if ( false === get_option( 'akismet_comment_form_privacy_notice' ) ) { + $notices[] = array( 'type' => 'privacy' ); + } + + /* + // To see all variants when testing. + $notices[] = array( 'type' => 'active-notice', 'time_saved' => 'Cleaning up spam takes time. Akismet has saved you 1 minute!' ); + $notices[] = array( 'type' => 'plugin' ); + $notices[] = array( 'type' => 'spam-check', 'link_text' => 'Link text.' ); + $notices[] = array( 'type' => 'notice', 'notice_header' => 'This is the notice header.', 'notice_text' => 'This is the notice text.' ); + $notices[] = array( 'type' => 'missing-functions' ); + $notices[] = array( 'type' => 'servers-be-down' ); + $notices[] = array( 'type' => 'active-dunning' ); + $notices[] = array( 'type' => 'cancelled' ); + $notices[] = array( 'type' => 'suspended' ); + $notices[] = array( 'type' => 'missing' ); + $notices[] = array( 'type' => 'no-sub' ); + $notices[] = array( 'type' => 'new-key-valid' ); + $notices[] = array( 'type' => 'new-key-invalid' ); + $notices[] = array( 'type' => 'existing-key-invalid' ); + $notices[] = array( 'type' => 'new-key-failed' ); + $notices[] = array( 'type' => 'limit-reached', 'level' => 'yellow' ); + $notices[] = array( 'type' => 'limit-reached', 'level' => 'red' ); + */ + + Akismet::log( compact( 'stat_totals', 'akismet_user' ) ); + Akismet::view( 'config', compact( 'api_key', 'akismet_user', 'stat_totals', 'notices' ) ); + } + + public static function display_notice() { + global $hook_suffix; + + if ( in_array( $hook_suffix, array( 'jetpack_page_akismet-key-config', 'settings_page_akismet-key-config' ) ) ) { + // This page manages the notices and puts them inline where they make sense. + return; + } + + if ( in_array( $hook_suffix, array( 'edit-comments.php' ) ) && (int) get_option( 'akismet_alert_code' ) > 0 ) { + Akismet::verify_key( Akismet::get_api_key() ); //verify that the key is still in alert state + + if ( get_option( 'akismet_alert_code' ) > 0 ) + self::display_alert(); + } + elseif ( $hook_suffix == 'plugins.php' && !Akismet::get_api_key() ) { + self::display_api_key_warning(); + } + elseif ( $hook_suffix == 'edit-comments.php' && wp_next_scheduled( 'akismet_schedule_cron_recheck' ) ) { + self::display_spam_check_warning(); + } + else if ( isset( $_GET['akismet_recheck_complete'] ) ) { + $recheck_count = (int) $_GET['recheck_count']; + $spam_count = (int) $_GET['spam_count']; + + if ( $recheck_count === 0 ) { + $message = __( 'There were no comments to check. Akismet will only check comments in the Pending queue.', 'akismet' ); + } + else { + $message = sprintf( _n( 'Akismet checked %s comment.', 'Akismet checked %s comments.', $recheck_count, 'akismet' ), number_format( $recheck_count ) ); + $message .= ' '; + + if ( $spam_count === 0 ) { + $message .= __( 'No comments were caught as spam.', 'akismet' ); + } + else { + $message .= sprintf( _n( '%s comment was caught as spam.', '%s comments were caught as spam.', $spam_count, 'akismet' ), number_format( $spam_count ) ); + } + } + + echo '

' . esc_html( $message ) . '

'; + } + else if ( isset( $_GET['akismet_recheck_error'] ) ) { + echo '

' . esc_html( __( 'Akismet could not recheck your comments for spam.', 'akismet' ) ) . '

'; + } + + $akismet_comment_form_privacy_notice_option = get_option( 'akismet_comment_form_privacy_notice' ); + if ( ! in_array( $akismet_comment_form_privacy_notice_option, array( 'hide', 'display' ) ) ) { + $api_key = Akismet::get_api_key(); + if ( ! empty( $api_key ) ) { + self::display_privacy_notice_control_warning(); + } + } + } + + public static function display_status() { + if ( ! self::get_server_connectivity() ) { + Akismet::view( 'notice', array( 'type' => 'servers-be-down' ) ); + } + else if ( ! empty( self::$notices ) ) { + foreach ( self::$notices as $index => $type ) { + if ( is_object( $type ) ) { + $notice_header = $notice_text = ''; + + if ( property_exists( $type, 'notice_header' ) ) { + $notice_header = wp_kses( $type->notice_header, self::$allowed ); + } + + if ( property_exists( $type, 'notice_text' ) ) { + $notice_text = wp_kses( $type->notice_text, self::$allowed ); + } + + if ( property_exists( $type, 'status' ) ) { + $type = wp_kses( $type->status, self::$allowed ); + Akismet::view( 'notice', compact( 'type', 'notice_header', 'notice_text' ) ); + + unset( self::$notices[ $index ] ); + } + } + else { + Akismet::view( 'notice', compact( 'type' ) ); + + unset( self::$notices[ $index ] ); + } + } + } + } + + private static function get_jetpack_user() { + if ( !class_exists('Jetpack') ) + return false; + + if ( defined( 'JETPACK__VERSION' ) && version_compare( JETPACK__VERSION, '7.7', '<' ) ) { + // For version of Jetpack prior to 7.7. + Jetpack::load_xml_rpc_client(); + } + + $xml = new Jetpack_IXR_ClientMulticall( array( 'user_id' => get_current_user_id() ) ); + + $xml->addCall( 'wpcom.getUserID' ); + $xml->addCall( 'akismet.getAPIKey' ); + $xml->query(); + + Akismet::log( compact( 'xml' ) ); + + if ( !$xml->isError() ) { + $responses = $xml->getResponse(); + if ( count( $responses ) > 1 ) { + // Due to a quirk in how Jetpack does multi-calls, the response order + // can't be trusted to match the call order. It's a good thing our + // return values can be mostly differentiated from each other. + $first_response_value = array_shift( $responses[0] ); + $second_response_value = array_shift( $responses[1] ); + + // If WPCOM ever reaches 100 billion users, this will fail. :-) + if ( preg_match( '/^[a-f0-9]{12}$/i', $first_response_value ) ) { + $api_key = $first_response_value; + $user_id = (int) $second_response_value; + } + else { + $api_key = $second_response_value; + $user_id = (int) $first_response_value; + } + + return compact( 'api_key', 'user_id' ); + } + } + return false; + } + + /** + * Some commentmeta isn't useful in an export file. Suppress it (when supported). + * + * @param bool $exclude + * @param string $key The meta key + * @param object $meta The meta object + * @return bool Whether to exclude this meta entry from the export. + */ + public static function exclude_commentmeta_from_export( $exclude, $key, $meta ) { + if ( in_array( $key, array( 'akismet_as_submitted', 'akismet_rechecking', 'akismet_delayed_moderation_email' ) ) ) { + return true; + } + + return $exclude; + } + + /** + * When Akismet is active, remove the "Activate Akismet" step from the plugin description. + */ + public static function modify_plugin_description( $all_plugins ) { + if ( isset( $all_plugins['akismet/akismet.php'] ) ) { + if ( Akismet::get_api_key() ) { + $all_plugins['akismet/akismet.php']['Description'] = __( 'Used by millions, Akismet is quite possibly the best way in the world to protect your blog from spam. Your site is fully configured and being protected, even while you sleep.', 'akismet' ); + } + else { + $all_plugins['akismet/akismet.php']['Description'] = __( 'Used by millions, Akismet is quite possibly the best way in the world to protect your blog from spam. It keeps your site protected even while you sleep. To get started, just go to your Akismet Settings page to set up your API key.', 'akismet' ); + } + } + + return $all_plugins; + } + + private static function set_form_privacy_notice_option( $state ) { + if ( in_array( $state, array( 'display', 'hide' ) ) ) { + update_option( 'akismet_comment_form_privacy_notice', $state ); + } + } + + public static function jetpack_comment_form_privacy_notice_url( $url ) { + return str_replace( 'options-general.php', 'admin.php', $url ); + } + + public static function register_personal_data_eraser( $erasers ) { + $erasers['akismet'] = array( + 'eraser_friendly_name' => __( 'Akismet', 'akismet' ), + 'callback' => array( 'Akismet_Admin', 'erase_personal_data' ), + ); + + return $erasers; + } + + /** + * When a user requests that their personal data be removed, Akismet has a duty to discard + * any personal data we store outside of the comment itself. Right now, that is limited + * to the copy of the comment we store in the akismet_as_submitted commentmeta. + * + * FWIW, this information would be automatically deleted after 15 days. + * + * @param $email_address string The email address of the user who has requested erasure. + * @param $page int This function can (and will) be called multiple times to prevent timeouts, + * so this argument is used for pagination. + * @return array + * @see https://developer.wordpress.org/plugins/privacy/adding-the-personal-data-eraser-to-your-plugin/ + */ + public static function erase_personal_data( $email_address, $page = 1 ) { + $items_removed = false; + + $number = 50; + $page = (int) $page; + + $comments = get_comments( + array( + 'author_email' => $email_address, + 'number' => $number, + 'paged' => $page, + 'order_by' => 'comment_ID', + 'order' => 'ASC', + ) + ); + + foreach ( (array) $comments as $comment ) { + $comment_as_submitted = get_comment_meta( $comment->comment_ID, 'akismet_as_submitted', true ); + + if ( $comment_as_submitted ) { + delete_comment_meta( $comment->comment_ID, 'akismet_as_submitted' ); + $items_removed = true; + } + } + + // Tell core if we have more comments to work on still + $done = count( $comments ) < $number; + + return array( + 'items_removed' => $items_removed, + 'items_retained' => false, // always false in this example + 'messages' => array(), // no messages in this example + 'done' => $done, + ); + } +} diff --git a/srcs/wordpress/wp-content/plugins/akismet/class.akismet-cli.php b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-cli.php new file mode 100644 index 0000000..9cbe7a9 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-cli.php @@ -0,0 +1,185 @@ +... + * : The ID(s) of the comment(s) to check. + * + * [--noaction] + * : Don't change the status of the comment. Just report what Akismet thinks it is. + * + * ## EXAMPLES + * + * wp akismet check 12345 + * + * @alias comment-check + */ + public function check( $args, $assoc_args ) { + foreach ( $args as $comment_id ) { + if ( isset( $assoc_args['noaction'] ) ) { + // Check the comment, but don't reclassify it. + $api_response = Akismet::check_db_comment( $comment_id, 'wp-cli' ); + } + else { + $api_response = Akismet::recheck_comment( $comment_id, 'wp-cli' ); + } + + if ( 'true' === $api_response ) { + WP_CLI::line( sprintf( __( "Comment #%d is spam.", 'akismet' ), $comment_id ) ); + } + else if ( 'false' === $api_response ) { + WP_CLI::line( sprintf( __( "Comment #%d is not spam.", 'akismet' ), $comment_id ) ); + } + else { + if ( false === $api_response ) { + WP_CLI::error( __( "Failed to connect to Akismet.", 'akismet' ) ); + } + else if ( is_wp_error( $api_response ) ) { + WP_CLI::warning( sprintf( __( "Comment #%d could not be checked.", 'akismet' ), $comment_id ) ); + } + } + } + } + + /** + * Recheck all comments in the Pending queue. + * + * ## EXAMPLES + * + * wp akismet recheck_queue + * + * @alias recheck-queue + */ + public function recheck_queue() { + $batch_size = 100; + $start = 0; + + $total_counts = array(); + + do { + $result_counts = Akismet_Admin::recheck_queue_portion( $start, $batch_size ); + + if ( $result_counts['processed'] > 0 ) { + foreach ( $result_counts as $key => $count ) { + if ( ! isset( $total_counts[ $key ] ) ) { + $total_counts[ $key ] = $count; + } + else { + $total_counts[ $key ] += $count; + } + } + $start += $batch_size; + $start -= $result_counts['spam']; // These comments will have been removed from the queue. + } + } while ( $result_counts['processed'] > 0 ); + + WP_CLI::line( sprintf( _n( "Processed %d comment.", "Processed %d comments.", $total_counts['processed'], 'akismet' ), number_format( $total_counts['processed'] ) ) ); + WP_CLI::line( sprintf( _n( "%d comment moved to Spam.", "%d comments moved to Spam.", $total_counts['spam'], 'akismet' ), number_format( $total_counts['spam'] ) ) ); + + if ( $total_counts['error'] ) { + WP_CLI::line( sprintf( _n( "%d comment could not be checked.", "%d comments could not be checked.", $total_counts['error'], 'akismet' ), number_format( $total_counts['error'] ) ) ); + } + } + + /** + * Fetches stats from the Akismet API. + * + * ## OPTIONS + * + * [] + * : The time period for which to retrieve stats. + * --- + * default: all + * options: + * - days + * - months + * - all + * --- + * + * [--format=] + * : Allows overriding the output of the command when listing connections. + * --- + * default: table + * options: + * - table + * - json + * - csv + * - yaml + * - count + * --- + * + * [--summary] + * : When set, will display a summary of the stats. + * + * ## EXAMPLES + * + * wp akismet stats + * wp akismet stats all + * wp akismet stats days + * wp akismet stats months + * wp akismet stats all --summary + */ + public function stats( $args, $assoc_args ) { + $api_key = Akismet::get_api_key(); + + if ( empty( $api_key ) ) { + WP_CLI::error( __( 'API key must be set to fetch stats.', 'akismet' ) ); + } + + switch ( $args[0] ) { + case 'days': + $interval = '60-days'; + break; + case 'months': + $interval = '6-months'; + break; + default: + $interval = 'all'; + break; + } + + $response = Akismet::http_post( + Akismet::build_query( array( + 'blog' => get_option( 'home' ), + 'key' => $api_key, + 'from' => $interval, + ) ), + 'get-stats' + ); + + if ( empty( $response[1] ) ) { + WP_CLI::error( __( 'Currently unable to fetch stats. Please try again.', 'akismet' ) ); + } + + $response_body = json_decode( $response[1], true ); + + if ( is_null( $response_body ) ) { + WP_CLI::error( __( 'Stats response could not be decoded.', 'akismet' ) ); + } + + if ( isset( $assoc_args['summary'] ) ) { + $keys = array( + 'spam', + 'ham', + 'missed_spam', + 'false_positives', + 'accuracy', + 'time_saved', + ); + + WP_CLI\Utils\format_items( $assoc_args['format'], array( $response_body ), $keys ); + } + else { + $stats = $response_body['breakdown']; + WP_CLI\Utils\format_items( $assoc_args['format'], $stats, array_keys( end( $stats ) ) ); + } + } +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/plugins/akismet/class.akismet-rest-api.php b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-rest-api.php new file mode 100644 index 0000000..bf71998 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-rest-api.php @@ -0,0 +1,366 @@ + WP_REST_Server::READABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'get_key' ), + ), array( + 'methods' => WP_REST_Server::EDITABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'set_key' ), + 'args' => array( + 'key' => array( + 'required' => true, + 'type' => 'string', + 'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ), + 'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ), + ), + ), + ), array( + 'methods' => WP_REST_Server::DELETABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'delete_key' ), + ) + ) ); + + register_rest_route( 'akismet/v1', '/settings/', array( + array( + 'methods' => WP_REST_Server::READABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'get_settings' ), + ), + array( + 'methods' => WP_REST_Server::EDITABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'set_boolean_settings' ), + 'args' => array( + 'akismet_strictness' => array( + 'required' => false, + 'type' => 'boolean', + 'description' => __( 'If true, Akismet will automatically discard the worst spam automatically rather than putting it in the spam folder.', 'akismet' ), + ), + 'akismet_show_user_comments_approved' => array( + 'required' => false, + 'type' => 'boolean', + 'description' => __( 'If true, show the number of approved comments beside each comment author in the comments list page.', 'akismet' ), + ), + ), + ) + ) ); + + register_rest_route( 'akismet/v1', '/stats', array( + 'methods' => WP_REST_Server::READABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'get_stats' ), + 'args' => array( + 'interval' => array( + 'required' => false, + 'type' => 'string', + 'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_interval' ), + 'description' => __( 'The time period for which to retrieve stats. Options: 60-days, 6-months, all', 'akismet' ), + 'default' => 'all', + ), + ), + ) ); + + register_rest_route( 'akismet/v1', '/stats/(?P[\w+])', array( + 'args' => array( + 'interval' => array( + 'description' => __( 'The time period for which to retrieve stats. Options: 60-days, 6-months, all', 'akismet' ), + 'type' => 'string', + ), + ), + array( + 'methods' => WP_REST_Server::READABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'privileged_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'get_stats' ), + ) + ) ); + + register_rest_route( 'akismet/v1', '/alert', array( + array( + 'methods' => WP_REST_Server::READABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'get_alert' ), + 'args' => array( + 'key' => array( + 'required' => false, + 'type' => 'string', + 'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ), + 'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ), + ), + ), + ), + array( + 'methods' => WP_REST_Server::EDITABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'set_alert' ), + 'args' => array( + 'key' => array( + 'required' => false, + 'type' => 'string', + 'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ), + 'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ), + ), + ), + ), + array( + 'methods' => WP_REST_Server::DELETABLE, + 'permission_callback' => array( 'Akismet_REST_API', 'remote_call_permission_callback' ), + 'callback' => array( 'Akismet_REST_API', 'delete_alert' ), + 'args' => array( + 'key' => array( + 'required' => false, + 'type' => 'string', + 'sanitize_callback' => array( 'Akismet_REST_API', 'sanitize_key' ), + 'description' => __( 'A 12-character Akismet API key. Available at akismet.com/get/', 'akismet' ), + ), + ), + ) + ) ); + } + + /** + * Get the current Akismet API key. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function get_key( $request = null ) { + return rest_ensure_response( Akismet::get_api_key() ); + } + + /** + * Set the API key, if possible. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function set_key( $request ) { + if ( defined( 'WPCOM_API_KEY' ) ) { + return rest_ensure_response( new WP_Error( 'hardcoded_key', __( 'This site\'s API key is hardcoded and cannot be changed via the API.', 'akismet' ), array( 'status'=> 409 ) ) ); + } + + $new_api_key = $request->get_param( 'key' ); + + if ( ! self::key_is_valid( $new_api_key ) ) { + return rest_ensure_response( new WP_Error( 'invalid_key', __( 'The value provided is not a valid and registered API key.', 'akismet' ), array( 'status' => 400 ) ) ); + } + + update_option( 'wordpress_api_key', $new_api_key ); + + return self::get_key(); + } + + /** + * Unset the API key, if possible. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function delete_key( $request ) { + if ( defined( 'WPCOM_API_KEY' ) ) { + return rest_ensure_response( new WP_Error( 'hardcoded_key', __( 'This site\'s API key is hardcoded and cannot be deleted.', 'akismet' ), array( 'status'=> 409 ) ) ); + } + + delete_option( 'wordpress_api_key' ); + + return rest_ensure_response( true ); + } + + /** + * Get the Akismet settings. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function get_settings( $request = null ) { + return rest_ensure_response( array( + 'akismet_strictness' => ( get_option( 'akismet_strictness', '1' ) === '1' ), + 'akismet_show_user_comments_approved' => ( get_option( 'akismet_show_user_comments_approved', '1' ) === '1' ), + ) ); + } + + /** + * Update the Akismet settings. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function set_boolean_settings( $request ) { + foreach ( array( + 'akismet_strictness', + 'akismet_show_user_comments_approved', + ) as $setting_key ) { + + $setting_value = $request->get_param( $setting_key ); + if ( is_null( $setting_value ) ) { + // This setting was not specified. + continue; + } + + // From 4.7+, WP core will ensure that these are always boolean + // values because they are registered with 'type' => 'boolean', + // but we need to do this ourselves for prior versions. + $setting_value = Akismet_REST_API::parse_boolean( $setting_value ); + + update_option( $setting_key, $setting_value ? '1' : '0' ); + } + + return self::get_settings(); + } + + /** + * Parse a numeric or string boolean value into a boolean. + * + * @param mixed $value The value to convert into a boolean. + * @return bool The converted value. + */ + public static function parse_boolean( $value ) { + switch ( $value ) { + case true: + case 'true': + case '1': + case 1: + return true; + + case false: + case 'false': + case '0': + case 0: + return false; + + default: + return (bool) $value; + } + } + + /** + * Get the Akismet stats for a given time period. + * + * Possible `interval` values: + * - all + * - 60-days + * - 6-months + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function get_stats( $request ) { + $api_key = Akismet::get_api_key(); + + $interval = $request->get_param( 'interval' ); + + $stat_totals = array(); + + $response = Akismet::http_post( Akismet::build_query( array( 'blog' => get_option( 'home' ), 'key' => $api_key, 'from' => $interval ) ), 'get-stats' ); + + if ( ! empty( $response[1] ) ) { + $stat_totals[$interval] = json_decode( $response[1] ); + } + + return rest_ensure_response( $stat_totals ); + } + + /** + * Get the current alert code and message. Alert codes are used to notify the site owner + * if there's a problem, like a connection issue between their site and the Akismet API, + * invalid requests being sent, etc. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function get_alert( $request ) { + return rest_ensure_response( array( + 'code' => get_option( 'akismet_alert_code' ), + 'message' => get_option( 'akismet_alert_msg' ), + ) ); + } + + /** + * Update the current alert code and message by triggering a call to the Akismet server. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function set_alert( $request ) { + delete_option( 'akismet_alert_code' ); + delete_option( 'akismet_alert_msg' ); + + // Make a request so the most recent alert code and message are retrieved. + Akismet::verify_key( Akismet::get_api_key() ); + + return self::get_alert( $request ); + } + + /** + * Clear the current alert code and message. + * + * @param WP_REST_Request $request + * @return WP_Error|WP_REST_Response + */ + public static function delete_alert( $request ) { + delete_option( 'akismet_alert_code' ); + delete_option( 'akismet_alert_msg' ); + + return self::get_alert( $request ); + } + + private static function key_is_valid( $key ) { + $response = Akismet::http_post( + Akismet::build_query( + array( + 'key' => $key, + 'blog' => get_option( 'home' ) + ) + ), + 'verify-key' + ); + + if ( $response[1] == 'valid' ) { + return true; + } + + return false; + } + + public static function privileged_permission_callback() { + return current_user_can( 'manage_options' ); + } + + /** + * For calls that Akismet.com makes to the site to clear outdated alert codes, use the API key for authorization. + */ + public static function remote_call_permission_callback( $request ) { + $local_key = Akismet::get_api_key(); + + return $local_key && ( strtolower( $request->get_param( 'key' ) ) === strtolower( $local_key ) ); + } + + public static function sanitize_interval( $interval, $request, $param ) { + $interval = trim( $interval ); + + $valid_intervals = array( '60-days', '6-months', 'all', ); + + if ( ! in_array( $interval, $valid_intervals ) ) { + $interval = 'all'; + } + + return $interval; + } + + public static function sanitize_key( $key, $request, $param ) { + return trim( $key ); + } +} diff --git a/srcs/wordpress/wp-content/plugins/akismet/class.akismet-widget.php b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-widget.php new file mode 100644 index 0000000..55b0f35 --- /dev/null +++ b/srcs/wordpress/wp-content/plugins/akismet/class.akismet-widget.php @@ -0,0 +1,114 @@ + __( 'Display the number of spam comments Akismet has caught' , 'akismet') ) + ); + + if ( is_active_widget( false, false, $this->id_base ) ) { + add_action( 'wp_head', array( $this, 'css' ) ); + } + } + + function css() { +?> + + + + + +

+ + +

+ + + + + + '', 'blog_charset' => '', 'blog_lang' => '', 'blog_ua' => '', 'comment_agent' => '', 'comment_author' => '', 'comment_author_IP' => '', 'comment_author_email' => '', 'comment_author_url' => '', 'comment_content' => '', 'comment_date_gmt' => '', 'comment_tags' => '', 'comment_type' => '', 'guid' => '', 'is_test' => '', 'permalink' => '', 'reporter' => '', 'site_domain' => '', 'submit_referer' => '', 'submit_uri' => '', 'user_ID' => '', 'user_agent' => '', 'user_id' => '', 'user_ip' => '' ); + private static $is_rest_api_call = false; + + public static function init() { + if ( ! self::$initiated ) { + self::init_hooks(); + } + } + + /** + * Initializes WordPress hooks + */ + private static function init_hooks() { + self::$initiated = true; + + add_action( 'wp_insert_comment', array( 'Akismet', 'auto_check_update_meta' ), 10, 2 ); + add_filter( 'preprocess_comment', array( 'Akismet', 'auto_check_comment' ), 1 ); + add_filter( 'rest_pre_insert_comment', array( 'Akismet', 'rest_auto_check_comment' ), 1 ); + + add_action( 'akismet_scheduled_delete', array( 'Akismet', 'delete_old_comments' ) ); + add_action( 'akismet_scheduled_delete', array( 'Akismet', 'delete_old_comments_meta' ) ); + add_action( 'akismet_scheduled_delete', array( 'Akismet', 'delete_orphaned_commentmeta' ) ); + add_action( 'akismet_schedule_cron_recheck', array( 'Akismet', 'cron_recheck' ) ); + + add_action( 'comment_form', array( 'Akismet', 'add_comment_nonce' ), 1 ); + + add_action( 'admin_head-edit-comments.php', array( 'Akismet', 'load_form_js' ) ); + add_action( 'comment_form', array( 'Akismet', 'load_form_js' ) ); + add_action( 'comment_form', array( 'Akismet', 'inject_ak_js' ) ); + add_filter( 'script_loader_tag', array( 'Akismet', 'set_form_js_async' ), 10, 3 ); + + add_filter( 'comment_moderation_recipients', array( 'Akismet', 'disable_moderation_emails_if_unreachable' ), 1000, 2 ); + add_filter( 'pre_comment_approved', array( 'Akismet', 'last_comment_status' ), 10, 2 ); + + add_action( 'transition_comment_status', array( 'Akismet', 'transition_comment_status' ), 10, 3 ); + + // Run this early in the pingback call, before doing a remote fetch of the source uri + add_action( 'xmlrpc_call', array( 'Akismet', 'pre_check_pingback' ) ); + + // Jetpack compatibility + add_filter( 'jetpack_options_whitelist', array( 'Akismet', 'add_to_jetpack_options_whitelist' ) ); + add_action( 'update_option_wordpress_api_key', array( 'Akismet', 'updated_option' ), 10, 2 ); + add_action( 'add_option_wordpress_api_key', array( 'Akismet', 'added_option' ), 10, 2 ); + + add_action( 'comment_form_after', array( 'Akismet', 'display_comment_form_privacy_notice' ) ); + } + + public static function get_api_key() { + return apply_filters( 'akismet_get_api_key', defined('WPCOM_API_KEY') ? constant('WPCOM_API_KEY') : get_option('wordpress_api_key') ); + } + + public static function check_key_status( $key, $ip = null ) { + return self::http_post( Akismet::build_query( array( 'key' => $key, 'blog' => get_option( 'home' ) ) ), 'verify-key', $ip ); + } + + public static function verify_key( $key, $ip = null ) { + // Shortcut for obviously invalid keys. + if ( strlen( $key ) != 12 ) { + return 'invalid'; + } + + $response = self::check_key_status( $key, $ip ); + + if ( $response[1] != 'valid' && $response[1] != 'invalid' ) + return 'failed'; + + return $response[1]; + } + + public static function deactivate_key( $key ) { + $response = self::http_post( Akismet::build_query( array( 'key' => $key, 'blog' => get_option( 'home' ) ) ), 'deactivate' ); + + if ( $response[1] != 'deactivated' ) + return 'failed'; + + return $response[1]; + } + + /** + * Add the akismet option to the Jetpack options management whitelist. + * + * @param array $options The list of whitelisted option names. + * @return array The updated whitelist + */ + public static function add_to_jetpack_options_whitelist( $options ) { + $options[] = 'wordpress_api_key'; + return $options; + } + + /** + * When the akismet option is updated, run the registration call. + * + * This should only be run when the option is updated from the Jetpack/WP.com + * API call, and only if the new key is different than the old key. + * + * @param mixed $old_value The old option value. + * @param mixed $value The new option value. + */ + public static function updated_option( $old_value, $value ) { + // Not an API call + if ( ! class_exists( 'WPCOM_JSON_API_Update_Option_Endpoint' ) ) { + return; + } + // Only run the registration if the old key is different. + if ( $old_value !== $value ) { + self::verify_key( $value ); + } + } + + /** + * Treat the creation of an API key the same as updating the API key to a new value. + * + * @param mixed $option_name Will always be "wordpress_api_key", until something else hooks in here. + * @param mixed $value The option value. + */ + public static function added_option( $option_name, $value ) { + if ( 'wordpress_api_key' === $option_name ) { + return self::updated_option( '', $value ); + } + } + + public static function rest_auto_check_comment( $commentdata ) { + self::$is_rest_api_call = true; + + return self::auto_check_comment( $commentdata ); + } + + public static function auto_check_comment( $commentdata ) { + self::$last_comment_result = null; + + $comment = $commentdata; + + $comment['user_ip'] = self::get_ip_address(); + $comment['user_agent'] = self::get_user_agent(); + $comment['referrer'] = self::get_referer(); + $comment['blog'] = get_option( 'home' ); + $comment['blog_lang'] = get_locale(); + $comment['blog_charset'] = get_option('blog_charset'); + $comment['permalink'] = get_permalink( $comment['comment_post_ID'] ); + + if ( ! empty( $comment['user_ID'] ) ) { + $comment['user_role'] = Akismet::get_user_roles( $comment['user_ID'] ); + } + + /** See filter documentation in init_hooks(). */ + $akismet_nonce_option = apply_filters( 'akismet_comment_nonce', get_option( 'akismet_comment_nonce' ) ); + $comment['akismet_comment_nonce'] = 'inactive'; + if ( $akismet_nonce_option == 'true' || $akismet_nonce_option == '' ) { + $comment['akismet_comment_nonce'] = 'failed'; + if ( isset( $_POST['akismet_comment_nonce'] ) && wp_verify_nonce( $_POST['akismet_comment_nonce'], 'akismet_comment_nonce_' . $comment['comment_post_ID'] ) ) + $comment['akismet_comment_nonce'] = 'passed'; + + // comment reply in wp-admin + if ( isset( $_POST['_ajax_nonce-replyto-comment'] ) && check_ajax_referer( 'replyto-comment', '_ajax_nonce-replyto-comment' ) ) + $comment['akismet_comment_nonce'] = 'passed'; + + } + + if ( self::is_test_mode() ) + $comment['is_test'] = 'true'; + + foreach( $_POST as $key => $value ) { + if ( is_string( $value ) ) + $comment["POST_{$key}"] = $value; + } + + foreach ( $_SERVER as $key => $value ) { + if ( ! is_string( $value ) ) { + continue; + } + + if ( preg_match( "/^HTTP_COOKIE/", $key ) ) { + continue; + } + + // Send any potentially useful $_SERVER vars, but avoid sending junk we don't need. + if ( preg_match( "/^(HTTP_|REMOTE_ADDR|REQUEST_URI|DOCUMENT_URI)/", $key ) ) { + $comment[ "$key" ] = $value; + } + } + + $post = get_post( $comment['comment_post_ID'] ); + + if ( ! is_null( $post ) ) { + // $post can technically be null, although in the past, it's always been an indicator of another plugin interfering. + $comment[ 'comment_post_modified_gmt' ] = $post->post_modified_gmt; + } + + $response = self::http_post( Akismet::build_query( $comment ), 'comment-check' ); + + do_action( 'akismet_comment_check_response', $response ); + + $commentdata['comment_as_submitted'] = array_intersect_key( $comment, self::$comment_as_submitted_allowed_keys ); + $commentdata['akismet_result'] = $response[1]; + + if ( isset( $response[0]['x-akismet-pro-tip'] ) ) + $commentdata['akismet_pro_tip'] = $response[0]['x-akismet-pro-tip']; + + if ( isset( $response[0]['x-akismet-error'] ) ) { + // An error occurred that we anticipated (like a suspended key) and want the user to act on. + // Send to moderation. + self::$last_comment_result = '0'; + } + else if ( 'true' == $response[1] ) { + // akismet_spam_count will be incremented later by comment_is_spam() + self::$last_comment_result = 'spam'; + + $discard = ( isset( $commentdata['akismet_pro_tip'] ) && $commentdata['akismet_pro_tip'] === 'discard' && self::allow_discard() ); + + do_action( 'akismet_spam_caught', $discard ); + + if ( $discard ) { + // The spam is obvious, so we're bailing out early. + // akismet_result_spam() won't be called so bump the counter here + if ( $incr = apply_filters( 'akismet_spam_count_incr', 1 ) ) { + update_option( 'akismet_spam_count', get_option( 'akismet_spam_count' ) + $incr ); + } + + if ( self::$is_rest_api_call ) { + return new WP_Error( 'akismet_rest_comment_discarded', __( 'Comment discarded.', 'akismet' ) ); + } + else { + // Redirect back to the previous page, or failing that, the post permalink, or failing that, the homepage of the blog. + $redirect_to = isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : ( $post ? get_permalink( $post ) : home_url() ); + wp_safe_redirect( esc_url_raw( $redirect_to ) ); + die(); + } + } + else if ( self::$is_rest_api_call ) { + // The way the REST API structures its calls, we can set the comment_approved value right away. + $commentdata['comment_approved'] = 'spam'; + } + } + + // if the response is neither true nor false, hold the comment for moderation and schedule a recheck + if ( 'true' != $response[1] && 'false' != $response[1] ) { + if ( !current_user_can('moderate_comments') ) { + // Comment status should be moderated + self::$last_comment_result = '0'; + } + + if ( ! wp_next_scheduled( 'akismet_schedule_cron_recheck' ) ) { + wp_schedule_single_event( time() + 1200, 'akismet_schedule_cron_recheck' ); + do_action( 'akismet_scheduled_recheck', 'invalid-response-' . $response[1] ); + } + + self::$prevent_moderation_email_for_these_comments[] = $commentdata; + } + + // Delete old comments daily + if ( ! wp_next_scheduled( 'akismet_scheduled_delete' ) ) { + wp_schedule_event( time(), 'daily', 'akismet_scheduled_delete' ); + } + + self::set_last_comment( $commentdata ); + self::fix_scheduled_recheck(); + + return $commentdata; + } + + public static function get_last_comment() { + return self::$last_comment; + } + + public static function set_last_comment( $comment ) { + if ( is_null( $comment ) ) { + self::$last_comment = null; + } + else { + // We filter it here so that it matches the filtered comment data that we'll have to compare against later. + // wp_filter_comment expects comment_author_IP + self::$last_comment = wp_filter_comment( + array_merge( + array( 'comment_author_IP' => self::get_ip_address() ), + $comment + ) + ); + } + } + + // this fires on wp_insert_comment. we can't update comment_meta when auto_check_comment() runs + // because we don't know the comment ID at that point. + public static function auto_check_update_meta( $id, $comment ) { + // wp_insert_comment() might be called in other contexts, so make sure this is the same comment + // as was checked by auto_check_comment + if ( is_object( $comment ) && !empty( self::$last_comment ) && is_array( self::$last_comment ) ) { + if ( self::matches_last_comment( $comment ) ) { + + load_plugin_textdomain( 'akismet' ); + + // normal result: true or false + if ( self::$last_comment['akismet_result'] == 'true' ) { + update_comment_meta( $comment->comment_ID, 'akismet_result', 'true' ); + self::update_comment_history( $comment->comment_ID, '', 'check-spam' ); + if ( $comment->comment_approved != 'spam' ) + self::update_comment_history( + $comment->comment_ID, + '', + 'status-changed-'.$comment->comment_approved + ); + } + elseif ( self::$last_comment['akismet_result'] == 'false' ) { + update_comment_meta( $comment->comment_ID, 'akismet_result', 'false' ); + self::update_comment_history( $comment->comment_ID, '', 'check-ham' ); + // Status could be spam or trash, depending on the WP version and whether this change applies: + // https://core.trac.wordpress.org/changeset/34726 + if ( $comment->comment_approved == 'spam' || $comment->comment_approved == 'trash' ) { + if ( wp_blacklist_check($comment->comment_author, $comment->comment_author_email, $comment->comment_author_url, $comment->comment_content, $comment->comment_author_IP, $comment->comment_agent) ) + self::update_comment_history( $comment->comment_ID, '', 'wp-blacklisted' ); + else + self::update_comment_history( $comment->comment_ID, '', 'status-changed-'.$comment->comment_approved ); + } + } // abnormal result: error + else { + update_comment_meta( $comment->comment_ID, 'akismet_error', time() ); + self::update_comment_history( + $comment->comment_ID, + '', + 'check-error', + array( 'response' => substr( self::$last_comment['akismet_result'], 0, 50 ) ) + ); + } + + // record the complete original data as submitted for checking + if ( isset( self::$last_comment['comment_as_submitted'] ) ) + update_comment_meta( $comment->comment_ID, 'akismet_as_submitted', self::$last_comment['comment_as_submitted'] ); + + if ( isset( self::$last_comment['akismet_pro_tip'] ) ) + update_comment_meta( $comment->comment_ID, 'akismet_pro_tip', self::$last_comment['akismet_pro_tip'] ); + } + } + } + + public static function delete_old_comments() { + global $wpdb; + + /** + * Determines how many comments will be deleted in each batch. + * + * @param int The default, as defined by AKISMET_DELETE_LIMIT. + */ + $delete_limit = apply_filters( 'akismet_delete_comment_limit', defined( 'AKISMET_DELETE_LIMIT' ) ? AKISMET_DELETE_LIMIT : 10000 ); + $delete_limit = max( 1, intval( $delete_limit ) ); + + /** + * Determines how many days a comment will be left in the Spam queue before being deleted. + * + * @param int The default number of days. + */ + $delete_interval = apply_filters( 'akismet_delete_comment_interval', 15 ); + $delete_interval = max( 1, intval( $delete_interval ) ); + + while ( $comment_ids = $wpdb->get_col( $wpdb->prepare( "SELECT comment_id FROM {$wpdb->comments} WHERE DATE_SUB(NOW(), INTERVAL %d DAY) > comment_date_gmt AND comment_approved = 'spam' LIMIT %d", $delete_interval, $delete_limit ) ) ) { + if ( empty( $comment_ids ) ) + return; + + $wpdb->queries = array(); + + foreach ( $comment_ids as $comment_id ) { + do_action( 'delete_comment', $comment_id ); + do_action( 'akismet_batch_delete_count', __FUNCTION__ ); + } + + // Prepared as strings since comment_id is an unsigned BIGINT, and using %d will constrain the value to the maximum signed BIGINT. + $format_string = implode( ", ", array_fill( 0, count( $comment_ids ), '%s' ) ); + + $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->comments} WHERE comment_id IN ( " . $format_string . " )", $comment_ids ) ); + $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->commentmeta} WHERE comment_id IN ( " . $format_string . " )", $comment_ids ) ); + + clean_comment_cache( $comment_ids ); + do_action( 'akismet_delete_comment_batch', count( $comment_ids ) ); + } + + if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->comments ) ) // lucky number + $wpdb->query("OPTIMIZE TABLE {$wpdb->comments}"); + } + + public static function delete_old_comments_meta() { + global $wpdb; + + $interval = apply_filters( 'akismet_delete_commentmeta_interval', 15 ); + + # enforce a minimum of 1 day + $interval = absint( $interval ); + if ( $interval < 1 ) + $interval = 1; + + // akismet_as_submitted meta values are large, so expire them + // after $interval days regardless of the comment status + while ( $comment_ids = $wpdb->get_col( $wpdb->prepare( "SELECT m.comment_id FROM {$wpdb->commentmeta} as m INNER JOIN {$wpdb->comments} as c USING(comment_id) WHERE m.meta_key = 'akismet_as_submitted' AND DATE_SUB(NOW(), INTERVAL %d DAY) > c.comment_date_gmt LIMIT 10000", $interval ) ) ) { + if ( empty( $comment_ids ) ) + return; + + $wpdb->queries = array(); + + foreach ( $comment_ids as $comment_id ) { + delete_comment_meta( $comment_id, 'akismet_as_submitted' ); + do_action( 'akismet_batch_delete_count', __FUNCTION__ ); + } + + do_action( 'akismet_delete_commentmeta_batch', count( $comment_ids ) ); + } + + if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number + $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}"); + } + + // Clear out comments meta that no longer have corresponding comments in the database + public static function delete_orphaned_commentmeta() { + global $wpdb; + + $last_meta_id = 0; + $start_time = isset( $_SERVER['REQUEST_TIME_FLOAT'] ) ? $_SERVER['REQUEST_TIME_FLOAT'] : microtime( true ); + $max_exec_time = max( ini_get('max_execution_time') - 5, 3 ); + + while ( $commentmeta_results = $wpdb->get_results( $wpdb->prepare( "SELECT m.meta_id, m.comment_id, m.meta_key FROM {$wpdb->commentmeta} as m LEFT JOIN {$wpdb->comments} as c USING(comment_id) WHERE c.comment_id IS NULL AND m.meta_id > %d ORDER BY m.meta_id LIMIT 1000", $last_meta_id ) ) ) { + if ( empty( $commentmeta_results ) ) + return; + + $wpdb->queries = array(); + + $commentmeta_deleted = 0; + + foreach ( $commentmeta_results as $commentmeta ) { + if ( 'akismet_' == substr( $commentmeta->meta_key, 0, 8 ) ) { + delete_comment_meta( $commentmeta->comment_id, $commentmeta->meta_key ); + do_action( 'akismet_batch_delete_count', __FUNCTION__ ); + $commentmeta_deleted++; + } + + $last_meta_id = $commentmeta->meta_id; + } + + do_action( 'akismet_delete_commentmeta_batch', $commentmeta_deleted ); + + // If we're getting close to max_execution_time, quit for this round. + if ( microtime(true) - $start_time > $max_exec_time ) + return; + } + + if ( apply_filters( 'akismet_optimize_table', ( mt_rand(1, 5000) == 11), $wpdb->commentmeta ) ) // lucky number + $wpdb->query("OPTIMIZE TABLE {$wpdb->commentmeta}"); + } + + // how many approved comments does this author have? + public static function get_user_comments_approved( $user_id, $comment_author_email, $comment_author, $comment_author_url ) { + global $wpdb; + + if ( !empty( $user_id ) ) + return (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM {$wpdb->comments} WHERE user_id = %d AND comment_approved = 1", $user_id ) ); + + if ( !empty( $comment_author_email ) ) + return (int) $wpdb->get_var( $wpdb->prepare( "SELECT COUNT(*) FROM {$wpdb->comments} WHERE comment_author_email = %s AND comment_author = %s AND comment_author_url = %s AND comment_approved = 1", $comment_author_email, $comment_author, $comment_author_url ) ); + + return 0; + } + + // get the full comment history for a given comment, as an array in reverse chronological order + public static function get_comment_history( $comment_id ) { + $history = get_comment_meta( $comment_id, 'akismet_history', false ); + usort( $history, array( 'Akismet', '_cmp_time' ) ); + return $history; + } + + /** + * Log an event for a given comment, storing it in comment_meta. + * + * @param int $comment_id The ID of the relevant comment. + * @param string $message The string description of the event. No longer used. + * @param string $event The event code. + * @param array $meta Metadata about the history entry. e.g., the user that reported or changed the status of a given comment. + */ + public static function update_comment_history( $comment_id, $message, $event=null, $meta=null ) { + global $current_user; + + $user = ''; + + $event = array( + 'time' => self::_get_microtime(), + 'event' => $event, + ); + + if ( is_object( $current_user ) && isset( $current_user->user_login ) ) { + $event['user'] = $current_user->user_login; + } + + if ( ! empty( $meta ) ) { + $event['meta'] = $meta; + } + + // $unique = false so as to allow multiple values per comment + $r = add_comment_meta( $comment_id, 'akismet_history', $event, false ); + } + + public static function check_db_comment( $id, $recheck_reason = 'recheck_queue' ) { + global $wpdb; + + $c = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->comments} WHERE comment_ID = %d", $id ), ARRAY_A ); + + if ( ! $c ) { + return new WP_Error( 'invalid-comment-id', __( 'Comment not found.', 'akismet' ) ); + } + + $c['user_ip'] = $c['comment_author_IP']; + $c['user_agent'] = $c['comment_agent']; + $c['referrer'] = ''; + $c['blog'] = get_option( 'home' ); + $c['blog_lang'] = get_locale(); + $c['blog_charset'] = get_option('blog_charset'); + $c['permalink'] = get_permalink($c['comment_post_ID']); + $c['recheck_reason'] = $recheck_reason; + + $c['user_role'] = ''; + if ( ! empty( $c['user_ID'] ) ) { + $c['user_role'] = Akismet::get_user_roles( $c['user_ID'] ); + } + + if ( self::is_test_mode() ) + $c['is_test'] = 'true'; + + $response = self::http_post( Akismet::build_query( $c ), 'comment-check' ); + + if ( ! empty( $response[1] ) ) { + return $response[1]; + } + + return false; + } + + public static function recheck_comment( $id, $recheck_reason = 'recheck_queue' ) { + add_comment_meta( $id, 'akismet_rechecking', true ); + + $api_response = self::check_db_comment( $id, $recheck_reason ); + + delete_comment_meta( $id, 'akismet_rechecking' ); + + if ( is_wp_error( $api_response ) ) { + // Invalid comment ID. + } + else if ( 'true' === $api_response ) { + wp_set_comment_status( $id, 'spam' ); + update_comment_meta( $id, 'akismet_result', 'true' ); + delete_comment_meta( $id, 'akismet_error' ); + delete_comment_meta( $id, 'akismet_delayed_moderation_email' ); + Akismet::update_comment_history( $id, '', 'recheck-spam' ); + } + elseif ( 'false' === $api_response ) { + update_comment_meta( $id, 'akismet_result', 'false' ); + delete_comment_meta( $id, 'akismet_error' ); + delete_comment_meta( $id, 'akismet_delayed_moderation_email' ); + Akismet::update_comment_history( $id, '', 'recheck-ham' ); + } + else { + // abnormal result: error + update_comment_meta( $id, 'akismet_result', 'error' ); + Akismet::update_comment_history( + $id, + '', + 'recheck-error', + array( 'response' => substr( $api_response, 0, 50 ) ) + ); + } + + return $api_response; + } + + public static function transition_comment_status( $new_status, $old_status, $comment ) { + + if ( $new_status == $old_status ) + return; + + if ( 'spam' === $new_status || 'spam' === $old_status ) { + // Clear the cache of the "X comments in your spam queue" count on the dashboard. + wp_cache_delete( 'akismet_spam_count', 'widget' ); + } + + # we don't need to record a history item for deleted comments + if ( $new_status == 'delete' ) + return; + + if ( !current_user_can( 'edit_post', $comment->comment_post_ID ) && !current_user_can( 'moderate_comments' ) ) + return; + + if ( defined('WP_IMPORTING') && WP_IMPORTING == true ) + return; + + // if this is present, it means the status has been changed by a re-check, not an explicit user action + if ( get_comment_meta( $comment->comment_ID, 'akismet_rechecking' ) ) + return; + + // Assumption alert: + // We want to submit comments to Akismet only when a moderator explicitly spams or approves it - not if the status + // is changed automatically by another plugin. Unfortunately WordPress doesn't provide an unambiguous way to + // determine why the transition_comment_status action was triggered. And there are several different ways by which + // to spam and unspam comments: bulk actions, ajax, links in moderation emails, the dashboard, and perhaps others. + // We'll assume that this is an explicit user action if certain POST/GET variables exist. + if ( + // status=spam: Marking as spam via the REST API or... + // status=unspam: I'm not sure. Maybe this used to be used instead of status=approved? Or the UI for removing from spam but not approving has been since removed?... + // status=approved: Unspamming via the REST API (Calypso) or... + ( isset( $_POST['status'] ) && in_array( $_POST['status'], array( 'spam', 'unspam', 'approved', ) ) ) + // spam=1: Clicking "Spam" underneath a comment in wp-admin and allowing the AJAX request to happen. + || ( isset( $_POST['spam'] ) && (int) $_POST['spam'] == 1 ) + // unspam=1: Clicking "Not Spam" underneath a comment in wp-admin and allowing the AJAX request to happen. Or, clicking "Undo" after marking something as spam. + || ( isset( $_POST['unspam'] ) && (int) $_POST['unspam'] == 1 ) + // comment_status=spam/unspam: It's unclear where this is happening. + || ( isset( $_POST['comment_status'] ) && in_array( $_POST['comment_status'], array( 'spam', 'unspam' ) ) ) + // action=spam: Choosing "Mark as Spam" from the Bulk Actions dropdown in wp-admin (or the "Spam it" link in notification emails). + // action=unspam: Choosing "Not Spam" from the Bulk Actions dropdown in wp-admin. + // action=spamcomment: Following the "Spam" link below a comment in wp-admin (not allowing AJAX request to happen). + // action=unspamcomment: Following the "Not Spam" link below a comment in wp-admin (not allowing AJAX request to happen). + || ( isset( $_GET['action'] ) && in_array( $_GET['action'], array( 'spam', 'unspam', 'spamcomment', 'unspamcomment', ) ) ) + // action=editedcomment: Editing a comment via wp-admin (and possibly changing its status). + || ( isset( $_POST['action'] ) && in_array( $_POST['action'], array( 'editedcomment' ) ) ) + // for=jetpack: Moderation via the WordPress app, Calypso, anything powered by the Jetpack connection. + || ( isset( $_GET['for'] ) && ( 'jetpack' == $_GET['for'] ) && ( ! defined( 'IS_WPCOM' ) || ! IS_WPCOM ) ) + // Certain WordPress.com API requests + || ( defined( 'REST_API_REQUEST' ) && REST_API_REQUEST ) + // WordPress.org REST API requests + || ( defined( 'REST_REQUEST' ) && REST_REQUEST ) + ) { + if ( $new_status == 'spam' && ( $old_status == 'approved' || $old_status == 'unapproved' || !$old_status ) ) { + return self::submit_spam_comment( $comment->comment_ID ); + } elseif ( $old_status == 'spam' && ( $new_status == 'approved' || $new_status == 'unapproved' ) ) { + return self::submit_nonspam_comment( $comment->comment_ID ); + } + } + + self::update_comment_history( $comment->comment_ID, '', 'status-' . $new_status ); + } + + public static function submit_spam_comment( $comment_id ) { + global $wpdb, $current_user, $current_site; + + $comment_id = (int) $comment_id; + + $comment = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->comments} WHERE comment_ID = %d", $comment_id ) ); + + if ( !$comment ) // it was deleted + return; + + if ( 'spam' != $comment->comment_approved ) + return; + + // use the original version stored in comment_meta if available + $as_submitted = self::sanitize_comment_as_submitted( get_comment_meta( $comment_id, 'akismet_as_submitted', true ) ); + + if ( $as_submitted && is_array( $as_submitted ) && isset( $as_submitted['comment_content'] ) ) + $comment = (object) array_merge( (array)$comment, $as_submitted ); + + $comment->blog = get_option( 'home' ); + $comment->blog_lang = get_locale(); + $comment->blog_charset = get_option('blog_charset'); + $comment->permalink = get_permalink($comment->comment_post_ID); + + if ( is_object($current_user) ) + $comment->reporter = $current_user->user_login; + + if ( is_object($current_site) ) + $comment->site_domain = $current_site->domain; + + $comment->user_role = ''; + if ( ! empty( $comment->user_ID ) ) { + $comment->user_role = Akismet::get_user_roles( $comment->user_ID ); + } + + if ( self::is_test_mode() ) + $comment->is_test = 'true'; + + $post = get_post( $comment->comment_post_ID ); + + if ( ! is_null( $post ) ) { + $comment->comment_post_modified_gmt = $post->post_modified_gmt; + } + + $response = Akismet::http_post( Akismet::build_query( $comment ), 'submit-spam' ); + if ( $comment->reporter ) { + self::update_comment_history( $comment_id, '', 'report-spam' ); + update_comment_meta( $comment_id, 'akismet_user_result', 'true' ); + update_comment_meta( $comment_id, 'akismet_user', $comment->reporter ); + } + + do_action('akismet_submit_spam_comment', $comment_id, $response[1]); + } + + public static function submit_nonspam_comment( $comment_id ) { + global $wpdb, $current_user, $current_site; + + $comment_id = (int) $comment_id; + + $comment = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM {$wpdb->comments} WHERE comment_ID = %d", $comment_id ) ); + if ( !$comment ) // it was deleted + return; + + // use the original version stored in comment_meta if available + $as_submitted = self::sanitize_comment_as_submitted( get_comment_meta( $comment_id, 'akismet_as_submitted', true ) ); + + if ( $as_submitted && is_array($as_submitted) && isset($as_submitted['comment_content']) ) + $comment = (object) array_merge( (array)$comment, $as_submitted ); + + $comment->blog = get_option( 'home' ); + $comment->blog_lang = get_locale(); + $comment->blog_charset = get_option('blog_charset'); + $comment->permalink = get_permalink( $comment->comment_post_ID ); + $comment->user_role = ''; + + if ( is_object($current_user) ) + $comment->reporter = $current_user->user_login; + + if ( is_object($current_site) ) + $comment->site_domain = $current_site->domain; + + if ( ! empty( $comment->user_ID ) ) { + $comment->user_role = Akismet::get_user_roles( $comment->user_ID ); + } + + if ( Akismet::is_test_mode() ) + $comment->is_test = 'true'; + + $post = get_post( $comment->comment_post_ID ); + + if ( ! is_null( $post ) ) { + $comment->comment_post_modified_gmt = $post->post_modified_gmt; + } + + $response = self::http_post( Akismet::build_query( $comment ), 'submit-ham' ); + if ( $comment->reporter ) { + self::update_comment_history( $comment_id, '', 'report-ham' ); + update_comment_meta( $comment_id, 'akismet_user_result', 'false' ); + update_comment_meta( $comment_id, 'akismet_user', $comment->reporter ); + } + + do_action('akismet_submit_nonspam_comment', $comment_id, $response[1]); + } + + public static function cron_recheck() { + global $wpdb; + + $api_key = self::get_api_key(); + + $status = self::verify_key( $api_key ); + if ( get_option( 'akismet_alert_code' ) || $status == 'invalid' ) { + // since there is currently a problem with the key, reschedule a check for 6 hours hence + wp_schedule_single_event( time() + 21600, 'akismet_schedule_cron_recheck' ); + do_action( 'akismet_scheduled_recheck', 'key-problem-' . get_option( 'akismet_alert_code' ) . '-' . $status ); + return false; + } + + delete_option('akismet_available_servers'); + + $comment_errors = $wpdb->get_col( "SELECT comment_id FROM {$wpdb->commentmeta} WHERE meta_key = 'akismet_error' LIMIT 100" ); + + load_plugin_textdomain( 'akismet' ); + + foreach ( (array) $comment_errors as $comment_id ) { + // if the comment no longer exists, or is too old, remove the meta entry from the queue to avoid getting stuck + $comment = get_comment( $comment_id ); + + if ( + ! $comment // Comment has been deleted + || strtotime( $comment->comment_date_gmt ) < strtotime( "-15 days" ) // Comment is too old. + || $comment->comment_approved !== "0" // Comment is no longer in the Pending queue + ) { + delete_comment_meta( $comment_id, 'akismet_error' ); + delete_comment_meta( $comment_id, 'akismet_delayed_moderation_email' ); + continue; + } + + add_comment_meta( $comment_id, 'akismet_rechecking', true ); + $status = self::check_db_comment( $comment_id, 'retry' ); + + $event = ''; + if ( $status == 'true' ) { + $event = 'cron-retry-spam'; + } elseif ( $status == 'false' ) { + $event = 'cron-retry-ham'; + } + + // If we got back a legit response then update the comment history + // other wise just bail now and try again later. No point in + // re-trying all the comments once we hit one failure. + if ( !empty( $event ) ) { + delete_comment_meta( $comment_id, 'akismet_error' ); + self::update_comment_history( $comment_id, '', $event ); + update_comment_meta( $comment_id, 'akismet_result', $status ); + // make sure the comment status is still pending. if it isn't, that means the user has already moved it elsewhere. + $comment = get_comment( $comment_id ); + if ( $comment && 'unapproved' == wp_get_comment_status( $comment_id ) ) { + if ( $status == 'true' ) { + wp_spam_comment( $comment_id ); + } elseif ( $status == 'false' ) { + // comment is good, but it's still in the pending queue. depending on the moderation settings + // we may need to change it to approved. + if ( check_comment($comment->comment_author, $comment->comment_author_email, $comment->comment_author_url, $comment->comment_content, $comment->comment_author_IP, $comment->comment_agent, $comment->comment_type) ) + wp_set_comment_status( $comment_id, 1 ); + else if ( get_comment_meta( $comment_id, 'akismet_delayed_moderation_email', true ) ) + wp_notify_moderator( $comment_id ); + } + } + + delete_comment_meta( $comment_id, 'akismet_delayed_moderation_email' ); + } else { + // If this comment has been pending moderation for longer than MAX_DELAY_BEFORE_MODERATION_EMAIL, + // send a moderation email now. + if ( ( intval( gmdate( 'U' ) ) - strtotime( $comment->comment_date_gmt ) ) < self::MAX_DELAY_BEFORE_MODERATION_EMAIL ) { + delete_comment_meta( $comment_id, 'akismet_delayed_moderation_email' ); + wp_notify_moderator( $comment_id ); + } + + delete_comment_meta( $comment_id, 'akismet_rechecking' ); + wp_schedule_single_event( time() + 1200, 'akismet_schedule_cron_recheck' ); + do_action( 'akismet_scheduled_recheck', 'check-db-comment-' . $status ); + return; + } + delete_comment_meta( $comment_id, 'akismet_rechecking' ); + } + + $remaining = $wpdb->get_var( "SELECT COUNT(*) FROM {$wpdb->commentmeta} WHERE meta_key = 'akismet_error'" ); + if ( $remaining && !wp_next_scheduled('akismet_schedule_cron_recheck') ) { + wp_schedule_single_event( time() + 1200, 'akismet_schedule_cron_recheck' ); + do_action( 'akismet_scheduled_recheck', 'remaining' ); + } + } + + public static function fix_scheduled_recheck() { + $future_check = wp_next_scheduled( 'akismet_schedule_cron_recheck' ); + if ( !$future_check ) { + return; + } + + if ( get_option( 'akismet_alert_code' ) > 0 ) { + return; + } + + $check_range = time() + 1200; + if ( $future_check > $check_range ) { + wp_clear_scheduled_hook( 'akismet_schedule_cron_recheck' ); + wp_schedule_single_event( time() + 300, 'akismet_schedule_cron_recheck' ); + do_action( 'akismet_scheduled_recheck', 'fix-scheduled-recheck' ); + } + } + + public static function add_comment_nonce( $post_id ) { + /** + * To disable the Akismet comment nonce, add a filter for the 'akismet_comment_nonce' tag + * and return any string value that is not 'true' or '' (empty string). + * + * Don't return boolean false, because that implies that the 'akismet_comment_nonce' option + * has not been set and that Akismet should just choose the default behavior for that + * situation. + */ + $akismet_comment_nonce_option = apply_filters( 'akismet_comment_nonce', get_option( 'akismet_comment_nonce' ) ); + + if ( $akismet_comment_nonce_option == 'true' || $akismet_comment_nonce_option == '' ) { + echo '

'; + wp_nonce_field( 'akismet_comment_nonce_' . $post_id, 'akismet_comment_nonce', FALSE ); + echo '

'; + } + } + + public static function is_test_mode() { + return defined('AKISMET_TEST_MODE') && AKISMET_TEST_MODE; + } + + public static function allow_discard() { + if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) + return false; + if ( is_user_logged_in() ) + return false; + + return ( get_option( 'akismet_strictness' ) === '1' ); + } + + public static function get_ip_address() { + return isset( $_SERVER['REMOTE_ADDR'] ) ? $_SERVER['REMOTE_ADDR'] : null; + } + + /** + * Do these two comments, without checking the comment_ID, "match"? + * + * @param mixed $comment1 A comment object or array. + * @param mixed $comment2 A comment object or array. + * @return bool Whether the two comments should be treated as the same comment. + */ + private static function comments_match( $comment1, $comment2 ) { + $comment1 = (array) $comment1; + $comment2 = (array) $comment2; + + // Set default values for these strings that we check in order to simplify + // the checks and avoid PHP warnings. + if ( ! isset( $comment1['comment_author'] ) ) { + $comment1['comment_author'] = ''; + } + + if ( ! isset( $comment2['comment_author'] ) ) { + $comment2['comment_author'] = ''; + } + + if ( ! isset( $comment1['comment_author_email'] ) ) { + $comment1['comment_author_email'] = ''; + } + + if ( ! isset( $comment2['comment_author_email'] ) ) { + $comment2['comment_author_email'] = ''; + } + + $comments_match = ( + isset( $comment1['comment_post_ID'], $comment2['comment_post_ID'] ) + && intval( $comment1['comment_post_ID'] ) == intval( $comment2['comment_post_ID'] ) + && ( + // The comment author length max is 255 characters, limited by the TINYTEXT column type. + // If the comment author includes multibyte characters right around the 255-byte mark, they + // may be stripped when the author is saved in the DB, so a 300+ char author may turn into + // a 253-char author when it's saved, not 255 exactly. The longest possible character is + // theoretically 6 bytes, so we'll only look at the first 248 bytes to be safe. + substr( $comment1['comment_author'], 0, 248 ) == substr( $comment2['comment_author'], 0, 248 ) + || substr( stripslashes( $comment1['comment_author'] ), 0, 248 ) == substr( $comment2['comment_author'], 0, 248 ) + || substr( $comment1['comment_author'], 0, 248 ) == substr( stripslashes( $comment2['comment_author'] ), 0, 248 ) + // Certain long comment author names will be truncated to nothing, depending on their encoding. + || ( ! $comment1['comment_author'] && strlen( $comment2['comment_author'] ) > 248 ) + || ( ! $comment2['comment_author'] && strlen( $comment1['comment_author'] ) > 248 ) + ) + && ( + // The email max length is 100 characters, limited by the VARCHAR(100) column type. + // Same argument as above for only looking at the first 93 characters. + substr( $comment1['comment_author_email'], 0, 93 ) == substr( $comment2['comment_author_email'], 0, 93 ) + || substr( stripslashes( $comment1['comment_author_email'] ), 0, 93 ) == substr( $comment2['comment_author_email'], 0, 93 ) + || substr( $comment1['comment_author_email'], 0, 93 ) == substr( stripslashes( $comment2['comment_author_email'] ), 0, 93 ) + // Very long emails can be truncated and then stripped if the [0:100] substring isn't a valid address. + || ( ! $comment1['comment_author_email'] && strlen( $comment2['comment_author_email'] ) > 100 ) + || ( ! $comment2['comment_author_email'] && strlen( $comment1['comment_author_email'] ) > 100 ) + ) + ); + + return $comments_match; + } + + // Does the supplied comment match the details of the one most recently stored in self::$last_comment? + public static function matches_last_comment( $comment ) { + return self::comments_match( self::$last_comment, $comment ); + } + + private static function get_user_agent() { + return isset( $_SERVER['HTTP_USER_AGENT'] ) ? $_SERVER['HTTP_USER_AGENT'] : null; + } + + private static function get_referer() { + return isset( $_SERVER['HTTP_REFERER'] ) ? $_SERVER['HTTP_REFERER'] : null; + } + + // return a comma-separated list of role names for the given user + public static function get_user_roles( $user_id ) { + $roles = false; + + if ( !class_exists('WP_User') ) + return false; + + if ( $user_id > 0 ) { + $comment_user = new WP_User( $user_id ); + if ( isset( $comment_user->roles ) ) + $roles = join( ',', $comment_user->roles ); + } + + if ( is_multisite() && is_super_admin( $user_id ) ) { + if ( empty( $roles ) ) { + $roles = 'super_admin'; + } else { + $comment_user->roles[] = 'super_admin'; + $roles = join( ',', $comment_user->roles ); + } + } + + return $roles; + } + + // filter handler used to return a spam result to pre_comment_approved + public static function last_comment_status( $approved, $comment ) { + if ( is_null( self::$last_comment_result ) ) { + // We didn't have reason to store the result of the last check. + return $approved; + } + + // Only do this if it's the correct comment + if ( ! self::matches_last_comment( $comment ) ) { + self::log( "comment_is_spam mismatched comment, returning unaltered $approved" ); + return $approved; + } + + if ( 'trash' === $approved ) { + // If the last comment we checked has had its approval set to 'trash', + // then it failed the comment blacklist check. Let that blacklist override + // the spam check, since users have the (valid) expectation that when + // they fill out their blacklists, comments that match it will always + // end up in the trash. + return $approved; + } + + // bump the counter here instead of when the filter is added to reduce the possibility of overcounting + if ( $incr = apply_filters('akismet_spam_count_incr', 1) ) + update_option( 'akismet_spam_count', get_option('akismet_spam_count') + $incr ); + + return self::$last_comment_result; + } + + /** + * If Akismet is temporarily unreachable, we don't want to "spam" the blogger with + * moderation emails for comments that will be automatically cleared or spammed on + * the next retry. + * + * For comments that will be rechecked later, empty the list of email addresses that + * the moderation email would be sent to. + * + * @param array $emails An array of email addresses that the moderation email will be sent to. + * @param int $comment_id The ID of the relevant comment. + * @return array An array of email addresses that the moderation email will be sent to. + */ + public static function disable_moderation_emails_if_unreachable( $emails, $comment_id ) { + if ( ! empty( self::$prevent_moderation_email_for_these_comments ) && ! empty( $emails ) ) { + $comment = get_comment( $comment_id ); + + foreach ( self::$prevent_moderation_email_for_these_comments as $possible_match ) { + if ( self::comments_match( $possible_match, $comment ) ) { + update_comment_meta( $comment_id, 'akismet_delayed_moderation_email', true ); + return array(); + } + } + } + + return $emails; + } + + public static function _cmp_time( $a, $b ) { + return $a['time'] > $b['time'] ? -1 : 1; + } + + public static function _get_microtime() { + $mtime = explode( ' ', microtime() ); + return $mtime[1] + $mtime[0]; + } + + /** + * Make a POST request to the Akismet API. + * + * @param string $request The body of the request. + * @param string $path The path for the request. + * @param string $ip The specific IP address to hit. + * @return array A two-member array consisting of the headers and the response body, both empty in the case of a failure. + */ + public static function http_post( $request, $path, $ip=null ) { + + $akismet_ua = sprintf( 'WordPress/%s | Akismet/%s', $GLOBALS['wp_version'], constant( 'AKISMET_VERSION' ) ); + $akismet_ua = apply_filters( 'akismet_ua', $akismet_ua ); + + $content_length = strlen( $request ); + + $api_key = self::get_api_key(); + $host = self::API_HOST; + + if ( !empty( $api_key ) ) + $host = $api_key.'.'.$host; + + $http_host = $host; + // use a specific IP if provided + // needed by Akismet_Admin::check_server_connectivity() + if ( $ip && long2ip( ip2long( $ip ) ) ) { + $http_host = $ip; + } + + $http_args = array( + 'body' => $request, + 'headers' => array( + 'Content-Type' => 'application/x-www-form-urlencoded; charset=' . get_option( 'blog_charset' ), + 'Host' => $host, + 'User-Agent' => $akismet_ua, + ), + 'httpversion' => '1.0', + 'timeout' => 15 + ); + + $akismet_url = $http_akismet_url = "http://{$http_host}/1.1/{$path}"; + + /** + * Try SSL first; if that fails, try without it and don't try it again for a while. + */ + + $ssl = $ssl_failed = false; + + // Check if SSL requests were disabled fewer than X hours ago. + $ssl_disabled = get_option( 'akismet_ssl_disabled' ); + + if ( $ssl_disabled && $ssl_disabled < ( time() - 60 * 60 * 24 ) ) { // 24 hours + $ssl_disabled = false; + delete_option( 'akismet_ssl_disabled' ); + } + else if ( $ssl_disabled ) { + do_action( 'akismet_ssl_disabled' ); + } + + if ( ! $ssl_disabled && ( $ssl = wp_http_supports( array( 'ssl' ) ) ) ) { + $akismet_url = set_url_scheme( $akismet_url, 'https' ); + + do_action( 'akismet_https_request_pre' ); + } + + $response = wp_remote_post( $akismet_url, $http_args ); + + Akismet::log( compact( 'akismet_url', 'http_args', 'response' ) ); + + if ( $ssl && is_wp_error( $response ) ) { + do_action( 'akismet_https_request_failure', $response ); + + // Intermittent connection problems may cause the first HTTPS + // request to fail and subsequent HTTP requests to succeed randomly. + // Retry the HTTPS request once before disabling SSL for a time. + $response = wp_remote_post( $akismet_url, $http_args ); + + Akismet::log( compact( 'akismet_url', 'http_args', 'response' ) ); + + if ( is_wp_error( $response ) ) { + $ssl_failed = true; + + do_action( 'akismet_https_request_failure', $response ); + + do_action( 'akismet_http_request_pre' ); + + // Try the request again without SSL. + $response = wp_remote_post( $http_akismet_url, $http_args ); + + Akismet::log( compact( 'http_akismet_url', 'http_args', 'response' ) ); + } + } + + if ( is_wp_error( $response ) ) { + do_action( 'akismet_request_failure', $response ); + + return array( '', '' ); + } + + if ( $ssl_failed ) { + // The request failed when using SSL but succeeded without it. Disable SSL for future requests. + update_option( 'akismet_ssl_disabled', time() ); + + do_action( 'akismet_https_disabled' ); + } + + $simplified_response = array( $response['headers'], $response['body'] ); + + self::update_alert( $simplified_response ); + + return $simplified_response; + } + + // given a response from an API call like check_key_status(), update the alert code options if an alert is present. + public static function update_alert( $response ) { + $code = $msg = null; + if ( isset( $response[0]['x-akismet-alert-code'] ) ) { + $code = $response[0]['x-akismet-alert-code']; + $msg = $response[0]['x-akismet-alert-msg']; + } + + // only call update_option() if the value has changed + if ( $code != get_option( 'akismet_alert_code' ) ) { + if ( ! $code ) { + delete_option( 'akismet_alert_code' ); + delete_option( 'akismet_alert_msg' ); + } + else { + update_option( 'akismet_alert_code', $code ); + update_option( 'akismet_alert_msg', $msg ); + } + } + } + + public static function load_form_js() { + if ( function_exists( 'is_amp_endpoint' ) && is_amp_endpoint() ) { + return; + } + + wp_register_script( 'akismet-form', plugin_dir_url( __FILE__ ) . '_inc/form.js', array(), AKISMET_VERSION, true ); + wp_enqueue_script( 'akismet-form' ); + } + + /** + * Mark form.js as async. Because nothing depends on it, it can run at any time + * after it's loaded, and the browser won't have to wait for it to load to continue + * parsing the rest of the page. + */ + public static function set_form_js_async( $tag, $handle, $src ) { + if ( 'akismet-form' !== $handle ) { + return $tag; + } + + return preg_replace( '/^ + + + + section and everything up until
+ * + * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials + * + * @package WordPress + * @subpackage Twenty_Nineteen + * @since 1.0.0 + */ +?> +> + + + + + + + +> + +
+ + +
+ +
+ +
+ + + + +
+ +
diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/image.php b/srcs/wordpress/wp-content/themes/twentynineteen/image.php new file mode 100644 index 0000000..5e08cf9 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/image.php @@ -0,0 +1,104 @@ + + +
+
+ + + +
> + +
+ ', '' ); ?> +
+ +
+ +
+ + +
+ +
+ + '', + 'link_before' => '', + 'link_after' => '', + 'pagelink' => '' . __( 'Page', 'twentynineteen' ) . ' %', + 'separator' => ', ', + ) + ); + ?> +
+ +
+ %1$s%3$s × %4$s', + _x( 'Full size', 'Used before full size attachment link.', 'twentynineteen' ), + esc_url( wp_get_attachment_url() ), + absint( $metadata['width'] ), + absint( $metadata['height'] ) + ); + } + ?> + + + +
+
+ + _x( 'Published in
%title', 'Parent post link', 'twentynineteen' ), + ) + ); + + // If comments are open or we have at least one comment, load up the comment template. + if ( comments_open() || get_comments_number() ) { + comments_template(); + } + + // End the loop. + endwhile; + ?> + +
+
+ +

%s

', $message ); +} + +/** + * Prevents the Customizer from being loaded on WordPress versions prior to 4.7. + * + * @since Twenty Nineteen 1.0.0 + * + * @global string $wp_version WordPress version. + */ +function twentynineteen_customize() { + wp_die( + sprintf( + /* translators: %s: WordPress version. */ + __( 'Twenty Nineteen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentynineteen' ), + $GLOBALS['wp_version'] + ), + '', + array( + 'back_link' => true, + ) + ); +} +add_action( 'load-customize.php', 'twentynineteen_customize' ); + +/** + * Prevents the Theme Preview from being loaded on WordPress versions prior to 4.7. + * + * @since Twenty Nineteen 1.0.0 + * + * @global string $wp_version WordPress version. + */ +function twentynineteen_preview() { + if ( isset( $_GET['preview'] ) ) { + /* translators: %s: WordPress version. */ + wp_die( sprintf( __( 'Twenty Nineteen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentynineteen' ), $GLOBALS['wp_version'] ) ); + } +} +add_action( 'template_redirect', 'twentynineteen_preview' ); diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/inc/color-patterns.php b/srcs/wordpress/wp-content/themes/twentynineteen/inc/color-patterns.php new file mode 100644 index 0000000..c16c1d6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/inc/color-patterns.php @@ -0,0 +1,271 @@ + .has-primary-background-color, + .entry .entry-content > *[class^="wp-block-"].has-primary-background-color, + .entry .entry-content > *[class^="wp-block-"] .has-primary-background-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color.has-primary-background-color, + .entry .entry-content .wp-block-file .wp-block-file__button { + background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + /* + * Set Color for: + * - all links + * - main navigation links + * - Post navigation links + * - Post entry meta hover + * - Post entry header more-link hover + * - main navigation svg + * - comment navigation + * - Comment edit link hover + * - Site Footer Link hover + * - Widget links + */ + a, + a:visited, + .main-navigation .main-menu > li, + .main-navigation ul.main-menu > li > a, + .post-navigation .post-title, + .entry .entry-meta a:hover, + .entry .entry-footer a:hover, + .entry .entry-content .more-link:hover, + .main-navigation .main-menu > li > a + svg, + .comment .comment-metadata > a:hover, + .comment .comment-metadata .comment-edit-link:hover, + #colophon .site-info a:hover, + .widget a, + .entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), + .entry .entry-content > .has-primary-color, + .entry .entry-content > *[class^="wp-block-"] .has-primary-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-primary-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-primary-color p { + color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + /* + * Set border color for: + * wp block quote + * :focus + */ + blockquote, + .entry .entry-content blockquote, + .entry .entry-content .wp-block-quote:not(.is-large), + .entry .entry-content .wp-block-quote:not(.is-style-large), + input[type="text"]:focus, + input[type="email"]:focus, + input[type="url"]:focus, + input[type="password"]:focus, + input[type="search"]:focus, + input[type="number"]:focus, + input[type="tel"]:focus, + input[type="range"]:focus, + input[type="date"]:focus, + input[type="month"]:focus, + input[type="week"]:focus, + input[type="time"]:focus, + input[type="datetime"]:focus, + input[type="datetime-local"]:focus, + input[type="color"]:focus, + textarea:focus { + border-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + .gallery-item > div > a:focus { + box-shadow: 0 0 0 2px hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + /* Hover colors */ + a:hover, a:active, + .main-navigation .main-menu > li > a:hover, + .main-navigation .main-menu > li > a:hover + svg, + .post-navigation .nav-links a:hover, + .post-navigation .nav-links a:hover .post-title, + .author-bio .author-description .author-link:hover, + .entry .entry-content > .has-secondary-color, + .entry .entry-content > *[class^="wp-block-"] .has-secondary-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-secondary-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color blockquote.has-secondary-color p, + .comment .comment-author .fn a:hover, + .comment-reply-link:hover, + .comment-navigation .nav-previous a:hover, + .comment-navigation .nav-next a:hover, + #cancel-comment-reply-link:hover, + .widget a:hover { + color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness_hover . ' ); /* base: #005177; */ + } + + .main-navigation .sub-menu > li > a:hover, + .main-navigation .sub-menu > li > a:focus, + .main-navigation .sub-menu > li > a:hover:after, + .main-navigation .sub-menu > li > a:focus:after, + .main-navigation .sub-menu > li > .menu-item-link-return:hover, + .main-navigation .sub-menu > li > .menu-item-link-return:focus, + .main-navigation .sub-menu > li > a:not(.submenu-expand):hover, + .main-navigation .sub-menu > li > a:not(.submenu-expand):focus, + .entry .entry-content > .has-secondary-background-color, + .entry .entry-content > *[class^="wp-block-"].has-secondary-background-color, + .entry .entry-content > *[class^="wp-block-"] .has-secondary-background-color, + .entry .entry-content > *[class^="wp-block-"].is-style-solid-color.has-secondary-background-color { + background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness_hover . ' ); /* base: #005177; */ + } + + /* Text selection colors */ + ::selection { + background-color: hsl( ' . $primary_color . ', ' . $saturation_selection . ', ' . $lightness_selection . ' ); /* base: #005177; */ + } + ::-moz-selection { + background-color: hsl( ' . $primary_color . ', ' . $saturation_selection . ', ' . $lightness_selection . ' ); /* base: #005177; */ + }'; + + $editor_css = ' + /* + * Set colors for: + * - links + * - blockquote + * - pullquote (solid color) + * - buttons + */ + .editor-block-list__layout .editor-block-list__block a, + .editor-block-list__layout .editor-block-list__block .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), + .editor-block-list__layout .editor-block-list__block .wp-block-button.is-style-outline:hover .wp-block-button__link:not(.has-text-color), + .editor-block-list__layout .editor-block-list__block .wp-block-button.is-style-outline:focus .wp-block-button__link:not(.has-text-color), + .editor-block-list__layout .editor-block-list__block .wp-block-button.is-style-outline:active .wp-block-button__link:not(.has-text-color), + .editor-block-list__layout .editor-block-list__block .wp-block-file .wp-block-file__textlink { + color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + .editor-block-list__layout .editor-block-list__block .wp-block-quote:not(.is-large):not(.is-style-large), + .editor-styles-wrapper .editor-block-list__layout .wp-block-freeform blockquote { + border-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + .editor-block-list__layout .editor-block-list__block .wp-block-pullquote.is-style-solid-color:not(.has-background-color) { + background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + .editor-block-list__layout .editor-block-list__block .wp-block-file .wp-block-file__button, + .editor-block-list__layout .editor-block-list__block .wp-block-button:not(.is-style-outline) .wp-block-button__link, + .editor-block-list__layout .editor-block-list__block .wp-block-button:not(.is-style-outline) .wp-block-button__link:active, + .editor-block-list__layout .editor-block-list__block .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus, + .editor-block-list__layout .editor-block-list__block .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { + background-color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness . ' ); /* base: #0073a8; */ + } + + /* Hover colors */ + .editor-block-list__layout .editor-block-list__block a:hover, + .editor-block-list__layout .editor-block-list__block a:active, + .editor-block-list__layout .editor-block-list__block .wp-block-file .wp-block-file__textlink:hover { + color: hsl( ' . $primary_color . ', ' . $saturation . ', ' . $lightness_hover . ' ); /* base: #005177; */ + } + + /* Do not overwrite solid color pullquote or cover links */ + .editor-block-list__layout .editor-block-list__block .wp-block-pullquote.is-style-solid-color a, + .editor-block-list__layout .editor-block-list__block .wp-block-cover a { + color: inherit; + } + '; + + if ( function_exists( 'register_block_type' ) && is_admin() ) { + $theme_css = $editor_css; + } + + /** + * Filters Twenty Nineteen custom colors CSS. + * + * @since Twenty Nineteen 1.0 + * + * @param string $css Base theme colors CSS. + * @param int $primary_color The user's selected color hue. + * @param string $saturation Filtered theme color saturation level. + */ + return apply_filters( 'twentynineteen_custom_colors_css', $theme_css, $primary_color, $saturation ); +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/inc/customizer.php b/srcs/wordpress/wp-content/themes/twentynineteen/inc/customizer.php new file mode 100644 index 0000000..b0a784e --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/inc/customizer.php @@ -0,0 +1,158 @@ +get_setting( 'blogname' )->transport = 'postMessage'; + $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; + $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; + + if ( isset( $wp_customize->selective_refresh ) ) { + $wp_customize->selective_refresh->add_partial( + 'blogname', + array( + 'selector' => '.site-title a', + 'render_callback' => 'twentynineteen_customize_partial_blogname', + ) + ); + $wp_customize->selective_refresh->add_partial( + 'blogdescription', + array( + 'selector' => '.site-description', + 'render_callback' => 'twentynineteen_customize_partial_blogdescription', + ) + ); + } + + /** + * Primary color. + */ + $wp_customize->add_setting( + 'primary_color', + array( + 'default' => 'default', + 'transport' => 'postMessage', + 'sanitize_callback' => 'twentynineteen_sanitize_color_option', + ) + ); + + $wp_customize->add_control( + 'primary_color', + array( + 'type' => 'radio', + 'label' => __( 'Primary Color', 'twentynineteen' ), + 'choices' => array( + 'default' => _x( 'Default', 'primary color', 'twentynineteen' ), + 'custom' => _x( 'Custom', 'primary color', 'twentynineteen' ), + ), + 'section' => 'colors', + 'priority' => 5, + ) + ); + + // Add primary color hue setting and control. + $wp_customize->add_setting( + 'primary_color_hue', + array( + 'default' => 199, + 'transport' => 'postMessage', + 'sanitize_callback' => 'absint', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'primary_color_hue', + array( + 'description' => __( 'Apply a custom color for buttons, links, featured images, etc.', 'twentynineteen' ), + 'section' => 'colors', + 'mode' => 'hue', + ) + ) + ); + + // Add image filter setting and control. + $wp_customize->add_setting( + 'image_filter', + array( + 'default' => 1, + 'sanitize_callback' => 'absint', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'image_filter', + array( + 'label' => __( 'Apply a filter to featured images using the primary color', 'twentynineteen' ), + 'section' => 'colors', + 'type' => 'checkbox', + ) + ); +} +add_action( 'customize_register', 'twentynineteen_customize_register' ); + +/** + * Render the site title for the selective refresh partial. + * + * @return void + */ +function twentynineteen_customize_partial_blogname() { + bloginfo( 'name' ); +} + +/** + * Render the site tagline for the selective refresh partial. + * + * @return void + */ +function twentynineteen_customize_partial_blogdescription() { + bloginfo( 'description' ); +} + +/** + * Bind JS handlers to instantly live-preview changes. + */ +function twentynineteen_customize_preview_js() { + wp_enqueue_script( 'twentynineteen-customize-preview', get_theme_file_uri( '/js/customize-preview.js' ), array( 'customize-preview' ), '20181214', true ); +} +add_action( 'customize_preview_init', 'twentynineteen_customize_preview_js' ); + +/** + * Load dynamic logic for the customizer controls area. + */ +function twentynineteen_panels_js() { + wp_enqueue_script( 'twentynineteen-customize-controls', get_theme_file_uri( '/js/customize-controls.js' ), array(), '20181214', true ); +} +add_action( 'customize_controls_enqueue_scripts', 'twentynineteen_panels_js' ); + +/** + * Sanitize custom color choice. + * + * @param string $choice Whether image filter is active. + * + * @return string + */ +function twentynineteen_sanitize_color_option( $choice ) { + $valid = array( + 'default', + 'custom', + ); + + if ( in_array( $choice, $valid, true ) ) { + return $choice; + } + + return 'default'; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/inc/icon-functions.php b/srcs/wordpress/wp-content/themes/twentynineteen/inc/icon-functions.php new file mode 100644 index 0000000..abd7c86 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/inc/icon-functions.php @@ -0,0 +1,52 @@ +theme_location ) { + $svg = twentynineteen_get_social_link_svg( $item->url, 26 ); + if ( empty( $svg ) ) { + $svg = twentynineteen_get_icon_svg( 'link' ); + } + $item_output = str_replace( $args->link_after, '' . $svg, $item_output ); + } + + return $item_output; +} +add_filter( 'walker_nav_menu_start_el', 'twentynineteen_nav_menu_social_icons', 10, 4 ); diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/inc/template-functions.php b/srcs/wordpress/wp-content/themes/twentynineteen/inc/template-functions.php new file mode 100644 index 0000000..6a38224 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/inc/template-functions.php @@ -0,0 +1,422 @@ +'; + } +} +add_action( 'wp_head', 'twentynineteen_pingback_header' ); + +/** + * Changes comment form default fields. + */ +function twentynineteen_comment_form_defaults( $defaults ) { + $comment_field = $defaults['comment_field']; + + // Adjust height of comment form. + $defaults['comment_field'] = preg_replace( '/rows="\d+"/', 'rows="5"', $comment_field ); + + return $defaults; +} +add_filter( 'comment_form_defaults', 'twentynineteen_comment_form_defaults' ); + +/** + * Filters the default archive titles. + */ +function twentynineteen_get_the_archive_title() { + if ( is_category() ) { + $title = __( 'Category Archives: ', 'twentynineteen' ) . '' . single_term_title( '', false ) . ''; + } elseif ( is_tag() ) { + $title = __( 'Tag Archives: ', 'twentynineteen' ) . '' . single_term_title( '', false ) . ''; + } elseif ( is_author() ) { + $title = __( 'Author Archives: ', 'twentynineteen' ) . '' . get_the_author_meta( 'display_name' ) . ''; + } elseif ( is_year() ) { + $title = __( 'Yearly Archives: ', 'twentynineteen' ) . '' . get_the_date( _x( 'Y', 'yearly archives date format', 'twentynineteen' ) ) . ''; + } elseif ( is_month() ) { + $title = __( 'Monthly Archives: ', 'twentynineteen' ) . '' . get_the_date( _x( 'F Y', 'monthly archives date format', 'twentynineteen' ) ) . ''; + } elseif ( is_day() ) { + $title = __( 'Daily Archives: ', 'twentynineteen' ) . '' . get_the_date() . ''; + } elseif ( is_post_type_archive() ) { + $title = __( 'Post Type Archives: ', 'twentynineteen' ) . '' . post_type_archive_title( '', false ) . ''; + } elseif ( is_tax() ) { + $tax = get_taxonomy( get_queried_object()->taxonomy ); + /* translators: %s: Taxonomy singular name. */ + $title = sprintf( esc_html__( '%s Archives:', 'twentynineteen' ), $tax->labels->singular_name ); + } else { + $title = __( 'Archives:', 'twentynineteen' ); + } + return $title; +} +add_filter( 'get_the_archive_title', 'twentynineteen_get_the_archive_title' ); + +/** + * Determines if post thumbnail can be displayed. + */ +function twentynineteen_can_show_post_thumbnail() { + return apply_filters( 'twentynineteen_can_show_post_thumbnail', ! post_password_required() && ! is_attachment() && has_post_thumbnail() ); +} + +/** + * Returns true if image filters are enabled on the theme options. + */ +function twentynineteen_image_filters_enabled() { + return 0 !== get_theme_mod( 'image_filter', 1 ); +} + +/** + * Add custom sizes attribute to responsive image functionality for post thumbnails. + * + * @origin Twenty Nineteen 1.0 + * + * @param array $attr Attributes for the image markup. + * @return string Value for use in post thumbnail 'sizes' attribute. + */ +function twentynineteen_post_thumbnail_sizes_attr( $attr ) { + + if ( is_admin() ) { + return $attr; + } + + if ( ! is_singular() ) { + $attr['sizes'] = '(max-width: 34.9rem) calc(100vw - 2rem), (max-width: 53rem) calc(8 * (100vw / 12)), (min-width: 53rem) calc(6 * (100vw / 12)), 100vw'; + } + + return $attr; +} +add_filter( 'wp_get_attachment_image_attributes', 'twentynineteen_post_thumbnail_sizes_attr', 10, 1 ); + +/** + * Returns the size for avatars used in the theme. + */ +function twentynineteen_get_avatar_size() { + return 60; +} + +/** + * Returns true if comment is by author of the post. + * + * @see get_comment_class() + */ +function twentynineteen_is_comment_by_post_author( $comment = null ) { + if ( is_object( $comment ) && $comment->user_id > 0 ) { + $user = get_userdata( $comment->user_id ); + $post = get_post( $comment->comment_post_ID ); + if ( ! empty( $user ) && ! empty( $post ) ) { + return $comment->user_id === $post->post_author; + } + } + return false; +} + +/** + * Returns information about the current post's discussion, with cache support. + */ +function twentynineteen_get_discussion_data() { + static $discussion, $post_id; + + $current_post_id = get_the_ID(); + if ( $current_post_id === $post_id ) { + return $discussion; /* If we have discussion information for post ID, return cached object */ + } else { + $post_id = $current_post_id; + } + + $comments = get_comments( + array( + 'post_id' => $current_post_id, + 'orderby' => 'comment_date_gmt', + 'order' => get_option( 'comment_order', 'asc' ), /* Respect comment order from Settings » Discussion. */ + 'status' => 'approve', + 'number' => 20, /* Only retrieve the last 20 comments, as the end goal is just 6 unique authors */ + ) + ); + + $authors = array(); + foreach ( $comments as $comment ) { + $authors[] = ( (int) $comment->user_id > 0 ) ? (int) $comment->user_id : $comment->comment_author_email; + } + + $authors = array_unique( $authors ); + $discussion = (object) array( + 'authors' => array_slice( $authors, 0, 6 ), /* Six unique authors commenting on the post. */ + 'responses' => get_comments_number( $current_post_id ), /* Number of responses. */ + ); + + return $discussion; +} + +/** + * Add an extra menu to our nav for our priority+ navigation to use + * + * @param object $nav_menu Nav menu. + * @param object $args Nav menu args. + * @return string More link for hidden menu items. + */ +function twentynineteen_add_ellipses_to_nav( $nav_menu, $args ) { + + if ( 'menu-1' === $args->theme_location ) : + + $nav_menu .= ' + '; + + endif; + + return $nav_menu; +} +add_filter( 'wp_nav_menu', 'twentynineteen_add_ellipses_to_nav', 10, 2 ); + +/** + * WCAG 2.0 Attributes for Dropdown Menus + * + * Adjustments to menu attributes tot support WCAG 2.0 recommendations + * for flyout and dropdown menus. + * + * @ref https://www.w3.org/WAI/tutorials/menus/flyout/ + */ +function twentynineteen_nav_menu_link_attributes( $atts, $item, $args, $depth ) { + + // Add [aria-haspopup] and [aria-expanded] to menu items that have children + $item_has_children = in_array( 'menu-item-has-children', $item->classes ); + if ( $item_has_children ) { + $atts['aria-haspopup'] = 'true'; + $atts['aria-expanded'] = 'false'; + } + + return $atts; +} +add_filter( 'nav_menu_link_attributes', 'twentynineteen_nav_menu_link_attributes', 10, 4 ); + +/** + * Add a dropdown icon to top-level menu items. + * + * @param string $output Nav menu item start element. + * @param object $item Nav menu item. + * @param int $depth Depth. + * @param object $args Nav menu args. + * @return string Nav menu item start element. + * Add a dropdown icon to top-level menu items + */ +function twentynineteen_add_dropdown_icons( $output, $item, $depth, $args ) { + + // Only add class to 'top level' items on the 'primary' menu. + if ( ! isset( $args->theme_location ) || 'menu-1' !== $args->theme_location ) { + return $output; + } + + if ( in_array( 'mobile-parent-nav-menu-item', $item->classes, true ) && isset( $item->original_id ) ) { + // Inject the keyboard_arrow_left SVG inside the parent nav menu item, and let the item link to the parent item. + // @todo Only do this for nested submenus? If on a first-level submenu, then really the link could be "#" since the desire is to remove the target entirely. + $link = sprintf( + ' + $output = preg_replace( + '##i', + '', + $output, + 1 // Limit. + ); + + } elseif ( in_array( 'menu-item-has-children', $item->classes, true ) ) { + + // Add SVG icon to parent items. + $icon = twentynineteen_get_icon_svg( 'keyboard_arrow_down', 24 ); + + $output .= sprintf( + '', + $icon + ); + } + + return $output; +} +add_filter( 'walker_nav_menu_start_el', 'twentynineteen_add_dropdown_icons', 10, 4 ); + +/** + * Create a nav menu item to be displayed on mobile to navigate from submenu back to the parent. + * + * This duplicates each parent nav menu item and makes it the first child of itself. + * + * @param array $sorted_menu_items Sorted nav menu items. + * @param object $args Nav menu args. + * @return array Amended nav menu items. + */ +function twentynineteen_add_mobile_parent_nav_menu_items( $sorted_menu_items, $args ) { + static $pseudo_id = 0; + if ( ! isset( $args->theme_location ) || 'menu-1' !== $args->theme_location ) { + return $sorted_menu_items; + } + + $amended_menu_items = array(); + foreach ( $sorted_menu_items as $nav_menu_item ) { + $amended_menu_items[] = $nav_menu_item; + if ( in_array( 'menu-item-has-children', $nav_menu_item->classes, true ) ) { + $parent_menu_item = clone $nav_menu_item; + $parent_menu_item->original_id = $nav_menu_item->ID; + $parent_menu_item->ID = --$pseudo_id; + $parent_menu_item->db_id = $parent_menu_item->ID; + $parent_menu_item->object_id = $parent_menu_item->ID; + $parent_menu_item->classes = array( 'mobile-parent-nav-menu-item' ); + $parent_menu_item->menu_item_parent = $nav_menu_item->ID; + + $amended_menu_items[] = $parent_menu_item; + } + } + + return $amended_menu_items; +} +add_filter( 'wp_nav_menu_objects', 'twentynineteen_add_mobile_parent_nav_menu_items', 10, 2 ); + +/** + * Convert HSL to HEX colors + */ +function twentynineteen_hsl_hex( $h, $s, $l, $to_hex = true ) { + + $h /= 360; + $s /= 100; + $l /= 100; + + $r = $l; + $g = $l; + $b = $l; + $v = ( $l <= 0.5 ) ? ( $l * ( 1.0 + $s ) ) : ( $l + $s - $l * $s ); + if ( $v > 0 ) { + $m; + $sv; + $sextant; + $fract; + $vsf; + $mid1; + $mid2; + + $m = $l + $l - $v; + $sv = ( $v - $m ) / $v; + $h *= 6.0; + $sextant = floor( $h ); + $fract = $h - $sextant; + $vsf = $v * $sv * $fract; + $mid1 = $m + $vsf; + $mid2 = $v - $vsf; + + switch ( $sextant ) { + case 0: + $r = $v; + $g = $mid1; + $b = $m; + break; + case 1: + $r = $mid2; + $g = $v; + $b = $m; + break; + case 2: + $r = $m; + $g = $v; + $b = $mid1; + break; + case 3: + $r = $m; + $g = $mid2; + $b = $v; + break; + case 4: + $r = $mid1; + $g = $m; + $b = $v; + break; + case 5: + $r = $v; + $g = $m; + $b = $mid2; + break; + } + } + $r = round( $r * 255, 0 ); + $g = round( $g * 255, 0 ); + $b = round( $b * 255, 0 ); + + if ( $to_hex ) { + + $r = ( $r < 15 ) ? '0' . dechex( $r ) : dechex( $r ); + $g = ( $g < 15 ) ? '0' . dechex( $g ) : dechex( $g ); + $b = ( $b < 15 ) ? '0' . dechex( $b ) : dechex( $b ); + + return "#$r$g$b"; + + } + + return "rgb($r, $g, $b)"; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/inc/template-tags.php b/srcs/wordpress/wp-content/themes/twentynineteen/inc/template-tags.php new file mode 100644 index 0000000..a97d5c4 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/inc/template-tags.php @@ -0,0 +1,258 @@ +%2$s'; + if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { + $time_string = ''; + } + + $time_string = sprintf( + $time_string, + esc_attr( get_the_date( DATE_W3C ) ), + esc_html( get_the_date() ), + esc_attr( get_the_modified_date( DATE_W3C ) ), + esc_html( get_the_modified_date() ) + ); + + printf( + '%1$s%3$s', + twentynineteen_get_icon_svg( 'watch', 16 ), + esc_url( get_permalink() ), + $time_string + ); + } +endif; + +if ( ! function_exists( 'twentynineteen_posted_by' ) ) : + /** + * Prints HTML with meta information about theme author. + */ + function twentynineteen_posted_by() { + printf( + /* translators: 1: SVG icon. 2: Post author, only visible to screen readers. 3: Author link. */ + '', + twentynineteen_get_icon_svg( 'person', 16 ), + __( 'Posted by', 'twentynineteen' ), + esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), + esc_html( get_the_author() ) + ); + } +endif; + +if ( ! function_exists( 'twentynineteen_comment_count' ) ) : + /** + * Prints HTML with the comment count for the current post. + */ + function twentynineteen_comment_count() { + if ( ! post_password_required() && ( comments_open() || get_comments_number() ) ) { + echo ''; + echo twentynineteen_get_icon_svg( 'comment', 16 ); + + /* translators: %s: Post title. Only visible to screen readers. */ + comments_popup_link( sprintf( __( 'Leave a comment on %s', 'twentynineteen' ), get_the_title() ) ); + + echo ''; + } + } +endif; + +if ( ! function_exists( 'twentynineteen_entry_footer' ) ) : + /** + * Prints HTML with meta information for the categories, tags and comments. + */ + function twentynineteen_entry_footer() { + + // Hide author, post date, category and tag text for pages. + if ( 'post' === get_post_type() ) { + + // Posted by + twentynineteen_posted_by(); + + // Posted on + twentynineteen_posted_on(); + + /* translators: Used between list items, there is a space after the comma. */ + $categories_list = get_the_category_list( __( ', ', 'twentynineteen' ) ); + if ( $categories_list ) { + printf( + /* translators: 1: SVG icon. 2: Posted in label, only visible to screen readers. 3: List of categories. */ + '%1$s%2$s%3$s', + twentynineteen_get_icon_svg( 'archive', 16 ), + __( 'Posted in', 'twentynineteen' ), + $categories_list + ); // WPCS: XSS OK. + } + + /* translators: Used between list items, there is a space after the comma. */ + $tags_list = get_the_tag_list( '', __( ', ', 'twentynineteen' ) ); + if ( $tags_list ) { + printf( + /* translators: 1: SVG icon. 2: Posted in label, only visible to screen readers. 3: List of tags. */ + '%1$s%2$s %3$s', + twentynineteen_get_icon_svg( 'tag', 16 ), + __( 'Tags:', 'twentynineteen' ), + $tags_list + ); // WPCS: XSS OK. + } + } + + // Comment count. + if ( ! is_singular() ) { + twentynineteen_comment_count(); + } + + // Edit post link. + edit_post_link( + sprintf( + wp_kses( + /* translators: %s: Post title. Only visible to screen readers. */ + __( 'Edit %s', 'twentynineteen' ), + array( + 'span' => array( + 'class' => array(), + ), + ) + ), + get_the_title() + ), + '' . twentynineteen_get_icon_svg( 'edit', 16 ), + '' + ); + } +endif; + +if ( ! function_exists( 'twentynineteen_post_thumbnail' ) ) : + /** + * Displays an optional post thumbnail. + * + * Wraps the post thumbnail in an anchor element on index views, or a div + * element when on single views. + */ + function twentynineteen_post_thumbnail() { + if ( ! twentynineteen_can_show_post_thumbnail() ) { + return; + } + + if ( is_singular() ) : + ?> + +
+ +
+ + + +
+ +
+ + %s
', get_avatar( $id_or_email, twentynineteen_get_avatar_size() ) ); + } +endif; + +if ( ! function_exists( 'twentynineteen_discussion_avatars_list' ) ) : + /** + * Displays a list of avatars involved in a discussion for a given post. + */ + function twentynineteen_discussion_avatars_list( $comment_authors ) { + if ( empty( $comment_authors ) ) { + return; + } + echo '
    ', "\n"; + foreach ( $comment_authors as $id_or_email ) { + printf( + "
  1. %s
  2. \n", + twentynineteen_get_user_avatar_markup( $id_or_email ) + ); + } + echo '
', "\n"; + } +endif; + +if ( ! function_exists( 'twentynineteen_comment_form' ) ) : + /** + * Documentation for function. + */ + function twentynineteen_comment_form( $order ) { + if ( true === $order || strtolower( $order ) === strtolower( get_option( 'comment_order', 'asc' ) ) ) { + + comment_form( + array( + 'logged_in_as' => null, + 'title_reply' => null, + ) + ); + } + } +endif; + +if ( ! function_exists( 'twentynineteen_the_posts_navigation' ) ) : + /** + * Documentation for function. + */ + function twentynineteen_the_posts_navigation() { + the_posts_pagination( + array( + 'mid_size' => 2, + 'prev_text' => sprintf( + '%s %s', + twentynineteen_get_icon_svg( 'chevron_left', 22 ), + __( 'Newer posts', 'twentynineteen' ) + ), + 'next_text' => sprintf( + '%s %s', + __( 'Older posts', 'twentynineteen' ), + twentynineteen_get_icon_svg( 'chevron_right', 22 ) + ), + ) + ); + } +endif; + +if ( ! function_exists( 'wp_body_open' ) ) : + /** + * Fire the wp_body_open action. + * + * Added for backwards compatibility to support pre 5.2.0 WordPress versions. + * + * @since Twenty Nineteen 1.4 + */ + function wp_body_open() { + /** + * Triggered after the opening tag. + * + * @since Twenty Nineteen 1.4 + */ + do_action( 'wp_body_open' ); + } +endif; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/index.php b/srcs/wordpress/wp-content/themes/twentynineteen/index.php new file mode 100644 index 0000000..2c176b8 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/index.php @@ -0,0 +1,47 @@ + + +
+
+ + + +
+
+ + getAvailableSpace( button, container ); + } + + /** + * Set menu container variable + */ + var navContainer = document.querySelector('.main-navigation'); + var breaks = []; + + /** + * Let’s bail if we our menu doesn't exist + */ + if ( ! navContainer ) { + return; + } + + /** + * Refreshes the list item from the menu depending on the menu size + */ + function updateNavigationMenu( container ) { + + /** + * Let’s bail if our menu is empty + */ + if ( ! container.parentNode.querySelector('.main-menu[id]') ) { + return; + } + + // Adds the necessary UI to operate the menu. + var visibleList = container.parentNode.querySelector('.main-menu[id]'); + var hiddenList = visibleList.parentNode.nextElementSibling.querySelector('.hidden-links'); + var toggleButton = visibleList.parentNode.nextElementSibling.querySelector('.main-menu-more-toggle'); + + if ( isOverflowingNavivation( visibleList, toggleButton, container ) ) { + + // Record the width of the list + breaks.push( visibleList.offsetWidth ); + // Move last item to the hidden list + prependElement( hiddenList, ! visibleList.lastChild || null === visibleList.lastChild ? visibleList.previousElementSibling : visibleList.lastChild ); + // Show the toggle button + showButton( toggleButton ); + + } else { + + // There is space for another item in the nav + if ( getAvailableSpace( toggleButton, container ) > breaks[breaks.length - 1] ) { + // Move the item to the visible list + visibleList.appendChild( hiddenList.firstChild.nextSibling ); + breaks.pop(); + } + + // Hide the dropdown btn if hidden list is empty + if (breaks.length < 2) { + hideButton( toggleButton ); + } + } + + // Recur if the visible list is still overflowing the nav + if ( isOverflowingNavivation( visibleList, toggleButton, container ) ) { + updateNavigationMenu( container ); + } + } + + /** + * Run our priority+ function as soon as the document is `ready` + */ + document.addEventListener( 'DOMContentLoaded', function() { + + updateNavigationMenu( navContainer ); + + // Also, run our priority+ function on selective refresh in the customizer + var hasSelectiveRefresh = ( + 'undefined' !== typeof wp && + wp.customize && + wp.customize.selectiveRefresh && + wp.customize.navMenusPreview.NavMenuInstancePartial + ); + + if ( hasSelectiveRefresh ) { + // Re-run our priority+ function on Nav Menu partial refreshes + wp.customize.selectiveRefresh.bind( 'partial-content-rendered', function ( placement ) { + + var isNewNavMenu = ( + placement && + placement.partial.id.includes( 'nav_menu_instance' ) && + 'null' !== placement.container[0].parentNode && + placement.container[0].parentNode.classList.contains( 'main-navigation' ) + ); + + if ( isNewNavMenu ) { + updateNavigationMenu( placement.container[0].parentNode ); + } + }); + } + }); + + /** + * Run our priority+ function on load + */ + window.addEventListener( 'load', function() { + updateNavigationMenu( navContainer ); + }); + + /** + * Run our priority+ function every time the window resizes + */ + var isResizing = false; + window.addEventListener( 'resize', + debounce( function() { + if ( isResizing ) { + return; + } + + isResizing = true; + setTimeout( function() { + updateNavigationMenu( navContainer ); + isResizing = false; + }, 150 ); + } ) + ); + + /** + * Run our priority+ function + */ + updateNavigationMenu( navContainer ); + +})(); diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/js/skip-link-focus-fix.js b/srcs/wordpress/wp-content/themes/twentynineteen/js/skip-link-focus-fix.js new file mode 100644 index 0000000..32ba80c --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/js/skip-link-focus-fix.js @@ -0,0 +1,33 @@ +/** + * File skip-link-focus-fix.js. + * + * Helps with accessibility for keyboard only users. + * + * This is the source file for what is minified in the twentynineteen_skip_link_focus_fix() PHP function. + * + * Learn more: https://git.io/vWdr2 + */ +( function() { + var isIe = /(trident|msie)/i.test( navigator.userAgent ); + + if ( isIe && document.getElementById && window.addEventListener ) { + window.addEventListener( 'hashchange', function() { + var id = location.hash.substring( 1 ), + element; + + if ( ! ( /^[A-z0-9_-]+$/.test( id ) ) ) { + return; + } + + element = document.getElementById( id ); + + if ( element ) { + if ( ! ( /^(?:a|select|input|button|textarea)$/i.test( element.tagName ) ) ) { + element.tabIndex = -1; + } + + element.focus(); + } + }, false ); + } +} )(); diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/js/touch-keyboard-navigation.js b/srcs/wordpress/wp-content/themes/twentynineteen/js/touch-keyboard-navigation.js new file mode 100644 index 0000000..2fa1905 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/js/touch-keyboard-navigation.js @@ -0,0 +1,354 @@ +/** + * Touch & Keyboard navigation. + * + * Contains handlers for touch devices and keyboard navigation. + */ + +(function() { + + /** + * Debounce + * + * @param {Function} func + * @param {number} wait + * @param {boolean} immediate + */ + function debounce(func, wait, immediate) { + 'use strict'; + + var timeout; + wait = (typeof wait !== 'undefined') ? wait : 20; + immediate = (typeof immediate !== 'undefined') ? immediate : true; + + return function() { + + var context = this, args = arguments; + var later = function() { + timeout = null; + + if (!immediate) { + func.apply(context, args); + } + }; + + var callNow = immediate && !timeout; + + clearTimeout(timeout); + timeout = setTimeout(later, wait); + + if (callNow) { + func.apply(context, args); + } + }; + } + + /** + * Add class + * + * @param {Object} el + * @param {string} cls + */ + function addClass(el, cls) { + if ( ! el.className.match( '(?:^|\\s)' + cls + '(?!\\S)') ) { + el.className += ' ' + cls; + } + } + + /** + * Delete class + * + * @param {Object} el + * @param {string} cls + */ + function deleteClass(el, cls) { + el.className = el.className.replace( new RegExp( '(?:^|\\s)' + cls + '(?!\\S)' ),'' ); + } + + /** + * Has class? + * + * @param {Object} el + * @param {string} cls + * + * @returns {boolean} Has class + */ + function hasClass(el, cls) { + + if ( el.className.match( '(?:^|\\s)' + cls + '(?!\\S)' ) ) { + return true; + } + } + + /** + * Toggle Aria Expanded state for screenreaders + * + * @param {Object} ariaItem + */ + function toggleAriaExpandedState( ariaItem ) { + 'use strict'; + + var ariaState = ariaItem.getAttribute('aria-expanded'); + + if ( ariaState === 'true' ) { + ariaState = 'false'; + } else { + ariaState = 'true'; + } + + ariaItem.setAttribute('aria-expanded', ariaState); + } + + /** + * Open sub-menu + * + * @param {Object} currentSubMenu + */ + function openSubMenu( currentSubMenu ) { + 'use strict'; + + // Update classes + // classList.add is not supported in IE11 + currentSubMenu.parentElement.className += ' off-canvas'; + currentSubMenu.parentElement.lastElementChild.className += ' expanded-true'; + + // Update aria-expanded state + toggleAriaExpandedState( currentSubMenu ); + } + + /** + * Close sub-menu + * + * @param {Object} currentSubMenu + */ + function closeSubMenu( currentSubMenu ) { + 'use strict'; + + var menuItem = getCurrentParent( currentSubMenu, '.menu-item' ); // this.parentNode + var menuItemAria = menuItem.querySelector('a[aria-expanded]'); + var subMenu = currentSubMenu.closest('.sub-menu'); + + // If this is in a sub-sub-menu, go back to parent sub-menu + if ( getCurrentParent( currentSubMenu, 'ul' ).classList.contains( 'sub-menu' ) ) { + + // Update classes + // classList.remove is not supported in IE11 + menuItem.className = menuItem.className.replace( 'off-canvas', '' ); + subMenu.className = subMenu.className.replace( 'expanded-true', '' ); + + // Update aria-expanded and :focus states + toggleAriaExpandedState( menuItemAria ); + + // Or else close all sub-menus + } else { + + // Update classes + // classList.remove is not supported in IE11 + menuItem.className = menuItem.className.replace( 'off-canvas', '' ); + menuItem.lastElementChild.className = menuItem.lastElementChild.className.replace( 'expanded-true', '' ); + + // Update aria-expanded and :focus states + toggleAriaExpandedState( menuItemAria ); + } + } + + /** + * Find first ancestor of an element by selector + * + * @param {Object} child + * @param {String} selector + * @param {String} stopSelector + */ + function getCurrentParent( child, selector, stopSelector ) { + + var currentParent = null; + + while ( child ) { + + if ( child.matches(selector) ) { + + currentParent = child; + break; + + } else if ( stopSelector && child.matches(stopSelector) ) { + + break; + } + + child = child.parentElement; + } + + return currentParent; + } + + /** + * Remove all off-canvas states + */ + function removeAllFocusStates() { + 'use strict'; + + var siteBranding = document.getElementsByClassName( 'site-branding' )[0]; + var getFocusedElements = siteBranding.querySelectorAll(':hover, :focus, :focus-within'); + var getFocusedClassElements = siteBranding.querySelectorAll('.is-focused'); + var i; + var o; + + for ( i = 0; i < getFocusedElements.length; i++) { + getFocusedElements[i].blur(); + } + + for ( o = 0; o < getFocusedClassElements.length; o++) { + deleteClass( getFocusedClassElements[o], 'is-focused' ); + } + } + + /** + * Matches polyfill for IE11 + */ + if (!Element.prototype.matches) { + Element.prototype.matches = Element.prototype.msMatchesSelector; + } + + /** + * Toggle `focus` class to allow sub-menu access on touch screens. + */ + function toggleSubmenuDisplay() { + + document.addEventListener('touchstart', function(event) { + + if ( event.target.matches('a') ) { + + var url = event.target.getAttribute( 'href' ) ? event.target.getAttribute( 'href' ) : ''; + + // Open submenu if url is # + if ( '#' === url && event.target.nextSibling.matches('.submenu-expand') ) { + openSubMenu( event.target ); + } + } + + // Check if .submenu-expand is touched + if ( event.target.matches('.submenu-expand') ) { + openSubMenu(event.target); + + // Check if child of .submenu-expand is touched + } else if ( null != getCurrentParent( event.target, '.submenu-expand' ) && + getCurrentParent( event.target, '.submenu-expand' ).matches( '.submenu-expand' ) ) { + openSubMenu( getCurrentParent( event.target, '.submenu-expand' ) ); + + // Check if .menu-item-link-return is touched + } else if ( event.target.matches('.menu-item-link-return') ) { + closeSubMenu( event.target ); + + // Check if child of .menu-item-link-return is touched + } else if ( null != getCurrentParent( event.target, '.menu-item-link-return' ) && getCurrentParent( event.target, '.menu-item-link-return' ).matches( '.menu-item-link-return' ) ) { + closeSubMenu( event.target ); + } + + // Prevent default mouse/focus events + removeAllFocusStates(); + + }, false); + + document.addEventListener('touchend', function(event) { + + var mainNav = getCurrentParent( event.target, '.main-navigation' ); + + if ( null != mainNav && hasClass( mainNav, '.main-navigation' ) ) { + // Prevent default mouse events + event.preventDefault(); + + } else if ( + event.target.matches('.submenu-expand') || + null != getCurrentParent( event.target, '.submenu-expand' ) && + getCurrentParent( event.target, '.submenu-expand' ).matches( '.submenu-expand' ) || + event.target.matches('.menu-item-link-return') || + null != getCurrentParent( event.target, '.menu-item-link-return' ) && + getCurrentParent( event.target, '.menu-item-link-return' ).matches( '.menu-item-link-return' ) ) { + // Prevent default mouse events + event.preventDefault(); + } + + // Prevent default mouse/focus events + removeAllFocusStates(); + + }, false); + + document.addEventListener('focus', function(event) { + + if ( event.target.matches('.main-navigation > div > ul > li a') ) { + + // Remove Focused elements in sibling div + var currentDiv = getCurrentParent( event.target, 'div', '.main-navigation' ); + var currentDivSibling = currentDiv.previousElementSibling === null ? currentDiv.nextElementSibling : currentDiv.previousElementSibling; + var focusedElement = currentDivSibling.querySelector( '.is-focused' ); + var focusedClass = 'is-focused'; + var prevLi = getCurrentParent( event.target, '.main-navigation > div > ul > li', '.main-navigation' ).previousElementSibling; + var nextLi = getCurrentParent( event.target, '.main-navigation > div > ul > li', '.main-navigation' ).nextElementSibling; + + if ( null !== focusedElement && null !== hasClass( focusedElement, focusedClass ) ) { + deleteClass( focusedElement, focusedClass ); + } + + // Add .is-focused class to top-level li + if ( getCurrentParent( event.target, '.main-navigation > div > ul > li', '.main-navigation' ) ) { + addClass( getCurrentParent( event.target, '.main-navigation > div > ul > li', '.main-navigation' ), focusedClass ); + } + + // Check for previous li + if ( prevLi && hasClass( prevLi, focusedClass ) ) { + deleteClass( prevLi, focusedClass ); + } + + // Check for next li + if ( nextLi && hasClass( nextLi, focusedClass ) ) { + deleteClass( nextLi, focusedClass ); + } + } + + }, true); + + document.addEventListener('click', function(event) { + + // Remove all focused menu states when clicking outside site branding + if ( event.target !== document.getElementsByClassName( 'site-branding' )[0] ) { + removeAllFocusStates(); + } else { + // nothing + } + + }, false); + } + + /** + * Run our sub-menu function as soon as the document is `ready` + */ + document.addEventListener( 'DOMContentLoaded', function() { + toggleSubmenuDisplay(); + }); + + /** + * Run our sub-menu function on selective refresh in the customizer + */ + document.addEventListener( 'customize-preview-menu-refreshed', function( e, params ) { + if ( 'menu-1' === params.wpNavMenuArgs.theme_location ) { + toggleSubmenuDisplay(); + } + }); + + /** + * Run our sub-menu function every time the window resizes + */ + var isResizing = false; + window.addEventListener( 'resize', function() { + isResizing = true; + debounce( function() { + if ( isResizing ) { + return; + } + + toggleSubmenuDisplay(); + isResizing = false; + + }, 150 ); + } ); + +})(); diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/package-lock.json b/srcs/wordpress/wp-content/themes/twentynineteen/package-lock.json new file mode 100644 index 0000000..59d5354 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/package-lock.json @@ -0,0 +1,4627 @@ +{ + "name": "twentynineteen", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "dev": true + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", + "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "dev": true, + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, + "@types/node": { + "version": "12.0.10", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.10.tgz", + "integrity": "sha512-LcsGbPomWsad6wmMNv7nBLw7YYYyfdYcz6xryKYQhx89c3XXan+8Q6AJ43G5XDIaklaVkK3mE4fCb0SBvMiPSQ==", + "dev": true + }, + "@wordpress/browserslist-config": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-2.5.0.tgz", + "integrity": "sha512-cspE4iJ87YjweKAtnIsCxm7ZJQ/ved3TdRJWS0DX/0AOukoRhOMYh7CP1aVc0M3J1kB4LtTY7u3HOcqF2Yf2VA==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "ajv": { + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-filter": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", + "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-map": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-map/-/array-map-0.0.0.tgz", + "integrity": "sha1-iKK6tz0c97zVwbEYoAP2b2ZfpmI=", + "dev": true + }, + "array-reduce": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/array-reduce/-/array-reduce-0.0.0.tgz", + "integrity": "sha1-FziZ0//Rx9k4PkR5Ul2+J4yrXys=", + "dev": true + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "autoprefixer": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.6.0.tgz", + "integrity": "sha512-kuip9YilBqhirhHEGHaBTZKXL//xxGnzvsD0FtBQa6z+A69qZD6s/BAX9VzDF1i9VKDquTJDQaPLSEhOnL6FvQ==", + "dev": true, + "requires": { + "browserslist": "^4.6.1", + "caniuse-lite": "^1.0.30000971", + "chalk": "^2.4.2", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.16", + "postcss-value-parser": "^3.3.1" + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, + "requires": { + "inherits": "~2.0.0" + } + }, + "bluebird": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", + "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "browserslist": { + "version": "4.6.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.6.3.tgz", + "integrity": "sha512-CNBqTCq22RKM8wKJNowcqihHJ4SkI8CGeK7KOR9tPboXUuS5Zk5lQgzzTbs4oxD8x+6HUshZUa2OyNI9lR93bQ==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000975", + "electron-to-chromium": "^1.3.164", + "node-releases": "^1.1.23" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "requires": { + "callsites": "^2.0.0" + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + } + } + }, + "caniuse-lite": { + "version": "1.0.30000978", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000978.tgz", + "integrity": "sha512-H6gK6kxUzG6oAwg/Jal279z8pHw0BzrpZfwo/CA9FFm/vA0l8IhDfkZtepyJNE2Y4V6Dp3P3ubz6czby1/Mgsw==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chokidar": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.1.tgz", + "integrity": "sha512-gfw3p2oQV2wEt+8VuMlNsPjCxDxvvgnm/kz+uATu805mWVF8IJN7uz9DN7iBz+RMJISmiVbCOBFs9qBGMjtPfQ==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.0" + } + }, + "chokidar-cli": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chokidar-cli/-/chokidar-cli-2.0.0.tgz", + "integrity": "sha512-E3N0WlV1L4c60cs9owdGQpZXY5obZya5Xds7+sF6GTVWWZKwqlq9QG7c2ESPNtjS+5QusAg8VmUEnOnAtZYNcg==", + "dev": true, + "requires": { + "bluebird": "3.5.5", + "chokidar": "3.0.2", + "lodash": "4.17.15", + "yargs": "13.3.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "binary-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", + "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", + "dev": true + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chokidar": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.0.2.tgz", + "integrity": "sha512-c4PR2egjNjI1um6bamCQ6bUNPDiyofNQruHvKgHQ4gDUP/ITSVSzNsiI5OWtHOsX323i5ha/kk4YmOZ1Ktg7KA==", + "dev": true, + "requires": { + "anymatch": "^3.0.1", + "braces": "^3.0.2", + "fsevents": "^2.0.6", + "glob-parent": "^5.0.0", + "is-binary-path": "^2.1.0", + "is-glob": "^4.0.1", + "normalize-path": "^3.0.0", + "readdirp": "^3.1.1" + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "fsevents": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.0.tgz", + "integrity": "sha512-+iXhW3LuDQsno8dOIrCIT/CBjeBWuP7PXe8w9shnj9Lebny/Gx1ZjVBYwexLz36Ri2jKuXMNpV6CYNh8lHHgrQ==", + "dev": true, + "optional": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "glob-parent": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", + "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "readdirp": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.1.3.tgz", + "integrity": "sha512-ZOsfTGkjO2kqeR5Mzr5RYDbTGYneSkdNKX2fOX2P5jF7vMrd/GNnIAUtDldeHHumHUCQ3V05YfWUdxMPAsRu9Q==", + "dev": true, + "requires": { + "picomatch": "^2.0.4" + } + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", + "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz", + "integrity": "sha1-0SG7roYNmZKj1Re6lvVliOR8Z4E=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + }, + "dependencies": { + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + } + } + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "dependency-graph": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.8.0.tgz", + "integrity": "sha512-DCvzSq2UiMsuLnj/9AL484ummEgLtZIcRS7YvtO38QnpX3vqh9nJ8P+zhu8Ja+SmLrBHO2iDbva20jq38qvBkQ==", + "dev": true + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, + "requires": { + "path-type": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + } + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "electron-to-chromium": { + "version": "1.3.179", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.179.tgz", + "integrity": "sha512-hRjlOdKImgIRicKYRY6hHbUMrX2NJYBrIusTepwPt/apcabuzrzhXpkkWu7elWdTZEQwKV6BfX8EvWIBWLCNQw==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", + "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-keys": "^1.0.12" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "findup": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/findup/-/findup-0.1.5.tgz", + "integrity": "sha1-itkpozk7rGJ5V6fl3kYjsGsOLOs=", + "dev": true, + "requires": { + "colors": "~0.6.0-1", + "commander": "~2.1.0" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "requires": { + "globule": "^1.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, + "globby": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "globule": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", + "dev": true, + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "graceful-fs": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", + "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==", + "dev": true + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hosted-git-info": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", + "dev": true + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, + "requires": { + "import-from": "^2.1.0" + } + }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + } + }, + "in-publish": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", + "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=", + "dev": true + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "js-base64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "memorystream": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", + "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=", + "dev": true + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + } + }, + "merge2": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", + "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + } + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "dev": true, + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true + } + } + }, + "node-releases": { + "version": "1.1.24", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.24.tgz", + "integrity": "sha512-wym2jptfuKowMmkZsfCSTsn8qAVo8zm+UiQA6l5dNqUcpfChZSnS/vbbpOeXczf+VdPhutxh+99lWHhdd6xKzg==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, + "node-sass": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz", + "integrity": "sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ==", + "dev": true, + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash": "^4.17.11", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "^2.2.4", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "npm-run-all": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz", + "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "chalk": "^2.4.1", + "cross-spawn": "^6.0.5", + "memorystream": "^0.3.1", + "minimatch": "^3.0.4", + "pidtree": "^0.3.0", + "read-pkg": "^3.0.0", + "shell-quote": "^1.6.1", + "string.prototype.padend": "^3.0.0" + }, + "dependencies": { + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + } + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.0.7.tgz", + "integrity": "sha512-oLHIdio3tZ0qH76NybpeneBhYVj0QFTfXEFTc/B3zKQspYfYYkWYgFsmzo+4kvId/bQRcNkVeguI3y+CD22BtA==", + "dev": true + }, + "pidtree": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.0.tgz", + "integrity": "sha512-9CT4NFlDcosssyg8KVFltgokyKZIFjoBxw8CTGy+5F38Y1eQWrt8tRayiUOXE+zVKQnYu5BR8JjCtvK3BcnBhg==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "7.0.17", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.17.tgz", + "integrity": "sha512-546ZowA+KZ3OasvQZHsbuEpysvwTZNGJv9EfyCQdsIDltPSWHAeTQ5fQy/Npi2ZDtLI3zs7Ps/p6wThErhm9fQ==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-cli": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-6.1.2.tgz", + "integrity": "sha512-jIWfIkqt8cTThSpH8DBaNxHlBf99OKSem2RseRpfVPqWayxHKQB0IWdS/IF5XSGeFU5QslSDTdVHnw6qggXGkA==", + "dev": true, + "requires": { + "chalk": "^2.1.0", + "chokidar": "^2.0.0", + "dependency-graph": "^0.8.0", + "fs-extra": "^7.0.0", + "get-stdin": "^6.0.0", + "globby": "^9.0.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "postcss-reporter": "^6.0.0", + "pretty-hrtime": "^1.0.3", + "read-cache": "^1.0.0", + "yargs": "^12.0.1" + }, + "dependencies": { + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + } + } + }, + "postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-load-config": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", + "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.0", + "import-cwd": "^2.0.0" + } + }, + "postcss-reporter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-6.0.1.tgz", + "integrity": "sha512-LpmQjfRWyabc+fRygxZjpRxfhRf9u/fdlKf4VHG4TSPbV2XNsuISzYW1KL+1aQzx53CAppa1bKG4APIB/DOXXw==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "lodash": "^4.17.11", + "log-symbols": "^2.2.0", + "postcss": "^7.0.7" + } + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.33", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.33.tgz", + "integrity": "sha512-LTDP2uSrsc7XCb5lO7A8BI1qYxRe/8EqlRvMeEl6rsnYAqDOl8xHR+8lSAIVfrNaSAlTPTNOCgNjWcoUL3AZsw==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "^2.3.0" + } + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "resolve": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.1.tgz", + "integrity": "sha512-vIpgF6wfuJOZI7KKKSP+HmiKggadPQAdsp5HiC1mvqnfp0gF1vdwgBWZIdrVft9pgqoMFQN+R7BSWZiBxx+BBw==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "rtlcss": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-2.4.0.tgz", + "integrity": "sha512-hdjFhZ5FCI0ABOfyXOMOhBtwPWtANLCG7rOiOcRf+yi5eDdxmDjqBruWouEnwVdzfh/TWF6NNncIEsigOCFZOA==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "findup": "^0.1.5", + "mkdirp": "^0.5.1", + "postcss": "^6.0.14", + "strip-json-comments": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.4.0" + } + } + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sass-graph": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", + "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "dev": true, + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^5.0.0" + } + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "dev": true, + "requires": { + "camelcase": "^3.0.0" + } + } + } + }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "dev": true, + "requires": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "semver": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "shell-quote": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz", + "integrity": "sha1-9HgZSczkAmlxJ0MOo7PFR29IF2c=", + "dev": true, + "requires": { + "array-filter": "~0.0.0", + "array-map": "~0.0.0", + "array-reduce": "~0.0.0", + "jsonify": "~0.0.0" + } + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", + "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "string.prototype.padend": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz", + "integrity": "sha1-86rvfBcZ8XDF6rHDK/eA2W4h8vA=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.4.3", + "function-bind": "^1.0.2" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "tar": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", + "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "dev": true, + "requires": { + "block-stream": "*", + "fstream": "^1.0.12", + "inherits": "2" + } + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "dev": true, + "requires": { + "glob": "^7.1.2" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.2.tgz", + "integrity": "sha512-kXpym8nmDmlCBr7nKdIx8P2jNBa+pBpIUFRnKJ4dr8htyYGJFokkr2ZvERRtUN+9SY+JqXouNgUPtv6JQva/2Q==", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/package.json b/srcs/wordpress/wp-content/themes/twentynineteen/package.json new file mode 100644 index 0000000..b2c6879 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/package.json @@ -0,0 +1,44 @@ +{ + "name": "twentynineteen", + "version": "1.0.0", + "description": "Default WP Theme", + "bugs": { + "url": "https://github.com/WordPress/twentynineteen/issues" + }, + "homepage": "https://github.com/WordPress/twentynineteen#readme", + "devDependencies": { + "@wordpress/browserslist-config": "^2.5.0", + "autoprefixer": "^9.6.0", + "chokidar-cli": "^2.0.0", + "node-sass": "^4.12.0", + "npm-run-all": "^4.1.5", + "postcss-cli": "^6.1.2", + "postcss-focus-within": "^3.0.0", + "rtlcss": "^2.4.0" + }, + "rtlcssConfig": { + "options": { + "autoRename": false, + "autoRenameStrict": false, + "blacklist": {}, + "clean": true, + "greedy": false, + "processUrls": false, + "stringMap": [] + }, + "plugins": [], + "map": false + }, + "browserslist": [ + "extends @wordpress/browserslist-config" + ], + "scripts": { + "build:style": "node-sass style.scss style.css --output-style expanded && postcss -r style.css", + "build:style-editor": "node-sass style-editor.scss style-editor.css --output-style expanded && postcss -r style-editor.css", + "build:style-editor-customizer": "node-sass style-editor-customizer.scss style-editor-customizer.css --output-style expanded && postcss -r style-editor-customizer.css", + "build:rtl": "rtlcss style.css style-rtl.css", + "build:print": "node-sass print.scss print.css --output-style expanded && postcss -r print.css", + "build": "run-p \"build:*\"", + "watch": "chokidar \"**/*.scss\" -c \"npm run build\" --initial" + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/page.php b/srcs/wordpress/wp-content/themes/twentynineteen/page.php new file mode 100644 index 0000000..717b041 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/page.php @@ -0,0 +1,38 @@ + + +
+
+ + + +
+
+ +>> TABLE OF CONTENTS: +---------------------------------------------------------------- +# Margins +# Typography +# Page breaks +# Links +# Visibility +--------------------------------------------------------------*/ +@media print { + /* Margins */ + @page { + margin: 2cm; + } + .entry { + margin-top: 1em; + } + .entry .entry-header, .site-footer .site-info { + margin: 0; + } + /* Fonts */ + body { + font: 13pt Georgia, "Times New Roman", Times, serif; + line-height: 1.3; + background: #fff !important; + color: #000; + } + h1 { + font-size: 24pt; + } + h2, + h3, + h4, + .has-regular-font-size, + .has-large-font-size, + h2.author-title, + p.author-bio, + .comments-title, h3 { + font-size: 14pt; + margin-top: 25px; + } + /* Page breaks */ + a { + page-break-inside: avoid; + } + blockquote { + page-break-inside: avoid; + } + h1, + h2, + h3, + h4, + h5, + h6 { + page-break-after: avoid; + page-break-inside: avoid; + } + img { + page-break-inside: avoid; + page-break-after: avoid; + } + table, pre { + page-break-inside: avoid; + } + ul, ol, dl { + page-break-before: avoid; + } + /* Links */ + a:link, a:visited, a { + background: transparent; + font-weight: bold; + text-decoration: underline; + text-align: left; + } + a { + page-break-inside: avoid; + } + a[href^=http]:after { + content: " < " attr(href) "> "; + } + a:after > img { + content: ""; + } + article a[href^="#"]:after { + content: ""; + } + a:not(:local-link):after { + content: " < " attr(href) "> "; + } + /* Visibility */ + .main-navigation, + .site-title + .main-navigation, + .social-navigation, + .site-branding-container:before, + .entry .entry-title:before, + .entry-footer, + .author-description:before, + .post-navigation, + .widget-area, + .comment-form-flex, + .comment-reply, + .comment .comment-metadata .edit-link { + display: none; + } + .entry .entry-content .wp-block-button .wp-block-button__link, + .entry .entry-content .button { + color: #000; + background: none; + } + /* Site Header (With Featured Image) */ + .site-header.featured-image { + min-height: 0; + } + .site-header.featured-image .main-navigation a, + .site-header.featured-image .main-navigation a + svg, + .site-header.featured-image .social-navigation a, + .site-header.featured-image .site-title a, + .site-header.featured-image .site-featured-image a, + .site-header.featured-image .site-branding .site-title, + .site-header.featured-image .site-branding .site-description, + .site-header.featured-image .main-navigation a:after, + .site-header.featured-image .main-navigation .main-menu > li.menu-item-has-children:after, + .site-header.featured-image .main-navigation li, + .site-header.featured-image .social-navigation li, + .site-header.featured-image .entry-meta, + .site-header.featured-image .entry-title, + .site-header.featured-image#masthead .site-title a { + color: #000; + text-shadow: none; + } + .site-header.featured-image .site-featured-image .entry-header, + .site-header.featured-image .site-branding-container { + margin-top: 0; + margin-bottom: 0; + } + .site-header.featured-image .site-featured-image .post-thumbnail img { + position: relative; + height: initial; + width: initial; + object-fit: none; + min-width: 0; + min-height: 0; + max-width: 100%; + margin-top: 1rem; + } + /* Remove image filters from featured image */ + .image-filters-enabled *:after { + display: none !important; + } + .image-filters-enabled .site-header.featured-image .site-featured-image:before { + display: none; + } + .image-filters-enabled .site-header.featured-image .site-featured-image .post-thumbnail img { + filter: none; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/print.scss b/srcs/wordpress/wp-content/themes/twentynineteen/print.scss new file mode 100644 index 0000000..47976da --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/print.scss @@ -0,0 +1,198 @@ +/* +Theme Name: Twenty Nineteen + +Adding print support. The print styles are based on the the great work of +Andreas Hecht in https://www.jotform.com/blog/css-perfect-print-stylesheet-98272/. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +# Margins +# Typography +# Page breaks +# Links +# Visibility +--------------------------------------------------------------*/ + +@media print { + + /* Margins */ + + @page { + margin: 2cm; + } + + .entry { + margin-top: 1em; + } + + .entry .entry-header, .site-footer .site-info { + margin: 0; + } + + /* Fonts */ + + body { + font: 13pt Georgia, "Times New Roman", Times, serif; + line-height: 1.3; + background: #fff !important; + color: #000; + } + + h1 { + font-size: 24pt; + } + + h2, + h3, + h4, + .has-regular-font-size, + .has-large-font-size, + h2.author-title, + p.author-bio, + .comments-title, h3 { + font-size: 14pt; + margin-top: 25px; + } + + /* Page breaks */ + + a { + page-break-inside: avoid + } + + blockquote { + page-break-inside: avoid; + } + + h1, + h2, + h3, + h4, + h5, + h6 { + page-break-after: avoid; + page-break-inside: avoid + } + + img { + page-break-inside: avoid; + page-break-after: avoid; + } + + table, pre { + page-break-inside: avoid; + } + + ul, ol, dl { + page-break-before: avoid; + } + + /* Links */ + + a:link, a:visited, a { + background: transparent; + font-weight: bold; + text-decoration: underline; + text-align: left; + } + + a { + page-break-inside: avoid; + } + + a[href^=http]:after { + content: " < " attr(href) "> "; + } + + a:after > img { + content: ""; + } + + article a[href^="#"]:after { + content: ""; + } + + a:not(:local-link):after { + content: " < " attr(href) "> "; + } + + /* Visibility */ + .main-navigation, + .site-title + .main-navigation, + .social-navigation, + .site-branding-container:before, + .entry .entry-title:before, + .entry-footer, + .author-description:before, + .post-navigation, + .widget-area, + .comment-form-flex, + .comment-reply, + .comment .comment-metadata .edit-link { + display: none; + } + + .entry .entry-content .wp-block-button .wp-block-button__link, + .entry .entry-content .button { + color: #000; + background: none; + } + + /* Site Header (With Featured Image) */ + .site-header.featured-image { + min-height: 0; + + .main-navigation a, + .main-navigation a + svg, + .social-navigation a, + .site-title a, + .site-featured-image a, + .site-branding .site-title, + .site-branding .site-description, + .main-navigation a:after, + .main-navigation .main-menu > li.menu-item-has-children:after, + .main-navigation li, + .social-navigation li, + .entry-meta, + .entry-title, + &#masthead .site-title a { + color: #000; + text-shadow: none; + } + + .site-featured-image .entry-header, + .site-branding-container { + margin-top: 0; + margin-bottom: 0; + } + + .site-featured-image .post-thumbnail img { + position: relative; + height: initial; + width: initial; + object-fit: none; + min-width: 0; + min-height: 0; + max-width: 100%; + margin-top: 1rem; + } + } + + /* Remove image filters from featured image */ + .image-filters-enabled { + + *:after { + display: none !important; + } + + .site-header.featured-image .site-featured-image:before { + display: none; + } + + .site-header.featured-image .site-featured-image .post-thumbnail img { + filter: none; + } + } +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/readme.txt b/srcs/wordpress/wp-content/themes/twentynineteen/readme.txt new file mode 100644 index 0000000..08437d2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/readme.txt @@ -0,0 +1,69 @@ +=== Twenty Nineteen === +Contributors: wordpressdotorg +Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready +Requires at least: 4.9.6 +Tested up to: 5.0 +Stable tag: 1.4 +License: GPLv2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html + +Our 2019 default theme is designed to show off the power of the block editor. + +== Description == +Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether you’re running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes. + +For more information about Twenty Nineteen please go to https://wordpress.org/support/article/twenty-nineteen/. + +== Installation == + +1. In your admin panel, go to Appearance -> Themes and click the 'Add New' button. +2. Type in Twenty Nineteen in the search form and press the 'Enter' key on your keyboard. +3. Click on the 'Activate' button to use your new theme right away. +4. Go to https://wordpress.org/support/article/twenty-nineteen/ for a guide on how to customize this theme. +5. Navigate to Appearance > Customize in your admin panel and customize to taste. + +== Copyright == + +Twenty Nineteen WordPress Theme, Copyright 2018-2019 WordPress.org +Twenty Nineteen is distributed under the terms of the GNU GPL + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +== Changelog == + += 1.4 = +* Released: May 7, 2019 + +https://codex.wordpress.org/Twenty_Nineteen_Theme_Changelog#Version_1.4 + += 1.3 = +* Released: February 21, 2019 + +https://codex.wordpress.org/Twenty_Nineteen_Theme_Changelog#Version_1.3 + += 1.2 = +* Released: January 9, 2019 + +https://codex.wordpress.org/Twenty_Nineteen_Theme_Changelog#Version_1.2 + += 1.1 = +* Released: December 19, 2018 + +https://codex.wordpress.org/Twenty_Nineteen_Theme_Changelog#Version_1.1 + += 1.0 = +* Released: December 6, 2018 + +Initial release + +== Resources == +* normalize.css, © 2012-2018 Nicolas Gallagher and Jonathan Neal, MIT +* Underscores, © 2012-2019 Automattic, Inc., GNU GPL v2 or later diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/_normalize.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/_normalize.scss new file mode 100644 index 0000000..c5ad67a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/_normalize.scss @@ -0,0 +1,341 @@ +/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ + +/* Document + ========================================================================== */ + +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ + +html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ +} + +/* Sections + ========================================================================== */ + +/** + * Remove the margin in all browsers. + */ + +body { + margin: 0; +} + +/** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/* Grouping content + ========================================================================== */ + +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + +hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +pre { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/* Text-level semantics + ========================================================================== */ + +/** + * Remove the gray background on active links in IE 10. + */ + +a { + background-color: transparent; +} + +/** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + +abbr[title] { + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + +b, +strong { + font-weight: bolder; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +code, +kbd, +samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ +} + +/** + * Add the correct font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ + +/** + * Remove the border on images inside links in IE 10. + */ + +img { + border-style: none; +} + +/* Forms + ========================================================================== */ + +/** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ + +button, +input, +optgroup, +select, +textarea { + font-family: inherit; /* 1 */ + font-size: 100%; /* 1 */ + line-height: 1.15; /* 1 */ + margin: 0; /* 2 */ +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + +button, +input { /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + +button, +select { /* 1 */ + text-transform: none; +} + +/** + * Correct the inability to style clickable types in iOS and Safari. + */ + +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +/** + * Remove the inner border and padding in Firefox. + */ + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ + +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Correct the padding in Firefox. + */ + +fieldset { + padding: 0.35em 0.75em 0.625em; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + +legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + +progress { + vertical-align: baseline; +} + +/** + * Remove the default vertical scrollbar in IE 10+. + */ + +textarea { + overflow: auto; +} + +/** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ + +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + +[type="search"] { + -webkit-appearance: textfield; /* 1 */ + outline-offset: -2px; /* 2 */ +} + +/** + * Remove the inner padding in Chrome and Safari on macOS. + */ + +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + +::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ +} + +/* Interactive + ========================================================================== */ + +/* + * Add the correct display in Edge, IE 10+, and Firefox. + */ + +details { + display: block; +} + +/* + * Add the correct display in all browsers. + */ + +summary { + display: list-item; +} + +/* Misc + ========================================================================== */ + +/** + * Add the correct display in IE 10+. + */ + +template { + display: none; +} + +/** + * Add the correct display in IE 10. + */ + +[hidden] { + display: none; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/blocks/_blocks.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/blocks/_blocks.scss new file mode 100644 index 0000000..0a5920f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/blocks/_blocks.scss @@ -0,0 +1,1028 @@ +/* !Block styles */ + + +// Default block margin and alignment rules. +// These are replicated inside of the Group block +// so that child blocks in there appear the same way. +.entry .entry-content > *, +.entry .entry-summary > *, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + margin: 32px 0; + max-width: 100%; + + @include postContentMaxWidth(); + + @include media(tablet) { + margin: 32px 0; + } + + &.alignwide { + margin-left: auto; + margin-right: auto; + clear: both; + + @include media(tablet) { + width: 100%; + max-width: 100%; + } + } + + &.alignfull { + position: relative; + left: -#{$size__spacing-unit }; + width: calc( 100% + (2 * #{$size__spacing-unit})); + max-width: calc( 100% + (2 * #{$size__spacing-unit})); + clear: both; + + @include media(tablet) { + margin-top: calc(2 * #{$size__spacing-unit}); + margin-bottom: calc(2 * #{$size__spacing-unit}); + left: calc( -12.5% - 75px ); + width: calc( 125% + 150px ); + max-width: calc( 125% + 150px ); + } + } + + &.alignleft { + /*rtl:ignore*/ + float: left; + max-width: calc(5 * (100vw / 12)); + margin-top: 0; + margin-left: 0; + /*rtl:ignore*/ + margin-right: $size__spacing-unit; + + @include media(tablet) { + max-width: calc(4 * (100vw / 12)); + /*rtl:ignore*/ + margin-right: calc(2 * #{$size__spacing-unit}); + } + } + + &.alignright { + /*rtl:ignore*/ + float: right; + max-width: calc(5 * (100vw / 12)); + margin-top: 0; + margin-right: 0; + /*rtl:ignore*/ + margin-left: $size__spacing-unit; + + @include media(tablet) { + max-width: calc(4 * (100vw / 12)); + margin-right: 0; + /*rtl:ignore*/ + margin-left: calc(2 * #{$size__spacing-unit}); + } + } + &.aligncenter { + margin-left: auto; + margin-right: auto; + + @include postContentMaxWidth(); + + @include media(tablet) { + margin-left: 0; + margin-right: 0; + } + } +} + +.entry .entry-content > *, +.entry .entry-summary > * { + + > *:first-child { + margin-top: 0; + } + + > *:last-child { + margin-bottom: 0; + } +} + +/* + * Unset nested content selector styles + * - Prevents layout styles from cascading too deeply + * - helps with plugin compatibility + */ +.entry .entry-content, +.entry .entry-summary { + + .entry-content, + .entry-summary, + .entry { + margin: inherit; + max-width: inherit; + padding: inherit; + + @include media(tablet) { + margin: inherit; + max-width: inherit; + padding: inherit; + } + } +} + +.entry .entry-content { + + //! Paragraphs + p.has-background { + padding: 20px 30px; + } + + //! Audio + .wp-block-audio { + + width: 100%; + + audio { + width: 100%; + } + + &.alignleft audio, + &.alignright audio { + + max-width: (0.33 * $mobile_width); + + @include media(tablet) { + max-width: (0.5 * $tablet_width); + } + + @include media(wide) { + max-width: (0.33 * $desktop_width); + } + } + } + + //! Video + .wp-block-video { + + video { + width: 100%; + } + } + + //! Button + .wp-block-button { + + .wp-block-button__link { + @include button-transition; + border: none; + font-size: $font__size-sm; + @include font-family( $font__heading ); + line-height: $font__line-height-heading; + box-sizing: border-box; + font-weight: bold; + text-decoration: none; + padding: ($size__spacing-unit * .76) $size__spacing-unit; + outline: none; + outline: none; + + &:not(.has-background) { + background-color: $color__background-button; + } + + &:not(.has-text-color) { + color: white; + } + + &:hover { + color: white; + background: $color__background-button-hover; + cursor: pointer; + } + + &:focus { + color: white; + background: $color__background-button-hover; + outline: thin dotted; + outline-offset: -4px; + } + } + + &:not(.is-style-squared) .wp-block-button__link { + border-radius: 5px; + } + + &.is-style-outline .wp-block-button__link, + &.is-style-outline .wp-block-button__link:focus, + &.is-style-outline .wp-block-button__link:active { + @include button-all-transition; + border-width: 2px; + border-style: solid; + + &:not(.has-background) { + background: transparent; + } + + &:not(.has-text-color) { + color: $color__background-button; + border-color: currentColor; + } + } + + &.is-style-outline .wp-block-button__link:hover { + color: white; + border-color: $color__background-button-hover; + &:not(.has-background) { + color: $color__background-button-hover; + } + } + } + + //! Latest posts, categories, archives + .wp-block-archives, + .wp-block-categories, + .wp-block-latest-posts { + padding: 0; + list-style: none; + + li > a { + @include font-family( $font__heading ); + font-size: calc(#{$font__size_base} * #{$font__size-ratio}); + font-weight: bold; + line-height: $font__line-height-heading; + text-decoration: none; + } + } + + .wp-block-archives, + .wp-block-categories { + + &.aligncenter { + text-align: center; + } + } + + //! Latest categories + .wp-block-categories { + + ul { + padding-top: ( .75 * $size__spacing-unit ); + } + + li ul { + list-style: none; + padding-left: 0; + } + + @include nestedSubMenuPadding(); + } + + //! Latest posts + .wp-block-latest-posts { + + .wp-block-latest-posts__post-date { + @include font-family( $font__heading ); + font-size: $font__size-xs; + color: $color__text-light; + line-height: 1.2; + } + + .wp-block-latest-posts__post-full-content, + .wp-block-latest-posts__post-excerpt { + margin-top: $size__spacing-unit; + margin-bottom: $size__spacing-unit; + } + + li { + padding-bottom: ( .5 * $size__spacing-unit ); + + &.menu-item-has-children, + &:last-child { + padding-bottom: 0; + } + + :not(:last-child) .wp-block-latest-posts__post-excerpt { + padding-bottom: ( .5 * $size__spacing-unit ); + } + } + + &.is-grid li { + border-top: 2px solid $color__border; + padding-top: (1 * $size__spacing-unit); + margin-bottom: (2 * $size__spacing-unit); + a { + &:after { + content: ''; + } + } + &:last-child { + margin-bottom: auto; + a:after { + content: ''; + } + } + } + } + + //! Latest preformatted text + .wp-block-preformatted { + font-size: $font__size-xs; + line-height: 1.8; + padding: $size__spacing-unit; + } + + //! Verse + .wp-block-verse { + @include font-family( $font__body ); + font-size: $font__size_base; + line-height: 1.8; + } + + //! Paragraphs + .has-drop-cap { + &:not(:focus):first-letter { + @include font-family( $font__heading ); + font-size: $font__size-xxxl; + line-height: 1; + font-weight: bold; + margin: 0 0.25em 0 0; + } + } + + //! Pullquote + .wp-block-pullquote { + border-color: transparent; + border-width: 2px; + padding: $size__spacing-unit; + + blockquote { + color: $color__text-main; + border: none; + margin-top: calc(4 * #{ $size__spacing-unit}); + margin-bottom: calc(4.33 * #{ $size__spacing-unit}); + margin-right: 0; + padding-left: 0; + } + + p { + font-size: $font__size-lg; + font-style: italic; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; + + em { + font-style: normal; + } + + @include media(tablet) { + font-size: $font__size-xl; + } + } + + cite { + display: inline-block; + @include font-family( $font__heading ); + line-height: 1.6; + text-transform: none; + color: $color__text-light; + + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * #{$font__size-ratio})); + } + + &.alignleft, + &.alignright { + width: 100%; + padding: 0; + + blockquote { + margin: $size__spacing-unit 0; + padding: 0; + text-align: left; + max-width: 100%; + + p:first-child { + margin-top: 0; + } + } + } + + &.is-style-solid-color { + background-color: $color__link; + padding-left: 0; + padding-right: 0; + + @include media(tablet) { + padding-left: 10%; + padding-right: 10%; + } + + p { + font-size: $font__size-lg; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; + + @include media(tablet) { + font-size: $font__size-xl; + } + } + + a { + color: $color__background-body; + } + + cite { + color: inherit; + } + + blockquote { + max-width: 100%; + color: $color__background-body; + padding-left: 0; + margin-left: $size__spacing-unit; + margin-right: $size__spacing-unit; + + &.has-text-color p, + &.has-text-color a, + &.has-primary-color, + &.has-secondary-color, + &.has-dark-gray-color, + &.has-light-gray-color, + &.has-white-color { + color: inherit; + } + + @include media(tablet) { + margin-left: 0; + margin-right: 0; + } + } + + &.alignright, + &.alignleft { + + @include media(tablet) { + padding: $size__spacing-unit calc(2 * #{$size__spacing-unit}); + } + } + + &.alignfull { + + @include media(tablet) { + padding-left: calc(10% + 58px + (2 * #{$size__spacing-unit})); + padding-right: calc(10% + 58px + (2 * #{$size__spacing-unit})); + } + } + } + } + + //! Blockquote + .wp-block-quote { + + &:not(.is-large), + &:not(.is-style-large) { + border-width: 2px; + border-color: $color__link; + padding-top: 0; + padding-bottom: 0; + } + + p { + font-size: 1em; + font-style: normal; + line-height: 1.8; + } + + cite { + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * #{$font__size-ratio})); + } + + &.is-large, + &.is-style-large { + margin: $size__spacing-unit 0; + padding: 0; + border-left: none; + + p { + font-size: $font__size-lg; + line-height: 1.4; + font-style: italic; + } + + cite, + footer { + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * #{$font__size-ratio})); + } + + @include media(tablet) { + margin: $size__spacing-unit 0; + padding: $size__spacing-unit 0; + + p { + font-size: $font__size-lg; + } + } + } + } + + //! Image + .wp-block-image { + max-width: 100%; + + img { + display: block; + } + + // If an image does not have a left/center/right alignment, + // it's a direct child of .wp-block-img. If it has no other + // alignment added, we want to make sure the image does not + // extend beyond the width of the text column. + &:not(.alignwide):not(.alignfull) > img { + @include postContentMaxWidth(); + } + + .aligncenter { + + @include postContentMaxWidth(); + + @include media(tablet) { + margin: 0; + width: $size__site-tablet-content; + + img { + margin: 0 auto; + } + } + + @include media(desktop) { + width: $size__site-desktop-content; + + img { + margin: 0 auto; + } + } + } + + &.alignfull img { + width: 100vw; + max-width: calc( 100% + (2 * #{$size__spacing-unit})); + + @include media(tablet) { + max-width: calc( 125% + 150px ); + margin-left: auto; + margin-right: auto; + } + } + } + + //! Cover Image + .wp-block-cover-image, + .wp-block-cover { + position: relative; + min-height: 430px; + padding: $size__spacing-unit; + + @include media(tablet) { + padding: $size__spacing-unit 10%; + } + + .wp-block-cover-image-text, + .wp-block-cover-text, + h2 { + @include font-family( $font__heading ); + font-size: $font__size-lg; + font-weight: bold; + line-height: 1.25; + padding: 0; + color: #fff; + + @include media(tablet) { + font-size: $font__size-xl; + max-width: 100%; + } + } + + &.alignleft, + &.alignright { + width: 100%; + + @include media(tablet) { + padding: $size__spacing-unit calc(2 * #{$size__spacing-unit}); + } + } + + &.alignfull { + + .wp-block-cover-image-text, + .wp-block-cover-text, + h2 { + @include postContentMaxWidth(); + } + + @include media(tablet) { + padding-left: calc(10% + 58px + (2 * #{$size__spacing-unit})); + padding-right: calc(10% + 58px + (2 * #{$size__spacing-unit})); + + .wp-block-cover-image-text, + .wp-block-cover-text, + h2 { + padding: 0; + } + } + } + } + + //! Galleries + .wp-block-gallery { + list-style-type: none; + padding-left: 0; + + .blocks-gallery-image:last-child, + .blocks-gallery-item:last-child { + margin-bottom: 16px; + } + + figcaption a { + color: #fff; + } + } + + //! Captions + .wp-block-audio figcaption, + .wp-block-video figcaption, + .wp-block-image figcaption, + .wp-block-gallery .blocks-gallery-image figcaption, + .wp-block-gallery .blocks-gallery-item figcaption { + font-size: $font__size-xs; + @include font-family( $font__heading ); + line-height: $font__line-height-pre; + margin: 0; + padding: ( $size__spacing-unit * .5 ); + text-align: center; + } + + //! Separator + .wp-block-separator, + hr { + background-color: $color__text-light; + border: 0; + height: 2px; + margin-bottom: (2 * $size__spacing-unit); + margin-top: (2 * $size__spacing-unit); + max-width: 2.25em; + text-align: left; + + &.is-style-wide { + max-width: 100%; + @include postContentMaxWidth(); + } + + &.is-style-dots { + max-width: 100%; + @include postContentMaxWidth(); + background-color: inherit; + border: inherit; + height: inherit; + text-align: center; + + // Only apply the default dot color if there's no separator color specified. + &:not(.has-text-color):not(.has-background) { + color: $color__text-light; + } + + &:before { + font-size: $font__size-lg; + letter-spacing: $font__size-sm; + padding-left: $font__size-sm; + } + } + + /* Remove duplicate rule-line when a separator + * is followed by an H1, or H2 */ + & + h1, + & + h2 { + + &:before { + display: none; + } + } + } + + //! Twitter Embed + .wp-block-embed-twitter { + word-break: break-word; + } + + //! Table + .wp-block-table { + + th, + td { + border-color: $color__text-light; + } + } + + //! File + .wp-block-file { + @include font-family( $font__heading ); + + .wp-block-file__button { + display: table; + @include button-transition; + border: none; + border-radius: 5px; + background: $color__background-button; + font-size: $font__size-base; + @include font-family( $font__heading ); + line-height: $font__line-height-heading; + text-decoration: none; + font-weight: bold; + padding: ($size__spacing-unit * .75) $size__spacing-unit; + color: #fff; + margin-left: 0; + margin-top: calc(0.75 * #{$size__spacing-unit}); + + @include media(desktop) { + font-size: $font__size-base; + padding: ($size__spacing-unit * .875) ($size__spacing-unit * 1.5); + } + + &:hover { + background: $color__background-button-hover; + cursor: pointer; + } + + &:focus { + background: $color__background-button-hover; + outline: thin dotted; + outline-offset: -4px; + } + } + } + + //! Code + .wp-block-code { + border-radius: 0; + + code { + font-size: $font__size-md; + white-space: pre-wrap; + word-break: break-word; + } + } + + //! Columns + .wp-block-columns { + + .wp-block-column > * { + + &:first-child { + margin-top: 0; + } + + &:last-child { + margin-bottom: 0; + } + } + + // Ensure images do not expand beyond the column. + .wp-block-image > img:not(.alignwide):not(.alignfull), + .wp-block-image > figure { + + @include media(tablet) { + max-width: 100%; + } + + @include media(desktop) { + max-width: 100%; + } + } + + @include media(tablet) { + flex-wrap: nowrap; + + .wp-block-column:not(:first-child) { + margin-left: 32px; + } + } + } + + //! Group + .wp-block-group { + + // When the Group block is standard/wide, we need to prevent full-aligned + // child blocks from expanding out of their container. + &:not(.alignfull) > .wp-block-group__inner-container > .alignfull, + &:not(.alignfull) > .wp-block-group__inner-container > .wp-block-image > img { + + @include media(tablet) { + left: 0; + max-width: 100%; + } + } + + // The full-width Group block's inner container should mimic .entry-content styles. + &.alignfull > .wp-block-group__inner-container { + max-width: calc(100% - (2 * #{ $size__spacing-unit })); + margin: 0 $size__spacing-unit; + + @include media(tablet) { + max-width: 80%; + margin: 0 10%; + padding: 0 60px; + } + } + + // Group block with a colored background. + &.has-background { + padding: $size__spacing-unit; + margin-top: 0; + margin-bottom: 0; + + // Remove the top and bottom margins of inner blocks. + .wp-block-group__inner-container { + + > *:first-child { + margin-top: 0; + } + + > *:last-child { + margin-bottom: 0; + } + } + + // If the Group block is full-width, it does not need this extra padding. + &.alignfull { + padding-left: 0; + padding-right: 0; + + @include media(tablet) { + padding-top: $size__spacing-unit; + padding-bottom: $size__spacing-unit; + } + } + + // Full-aligned child blocks should take up the maximum width available in their container. + &:not(.alignfull) > .wp-block-group__inner-container > .alignfull { + width: 100%; + max-width: 100%; + + @include media(tablet) { + width: calc( 100% + #{$size__spacing-unit * 2} ); + max-width: calc( 100% + #{$size__spacing-unit * 2} ); + margin-left: -#{$size__spacing-unit}; + } + } + } + + } + + //! Latest Comments + .wp-block-latest-comments { + + .wp-block-latest-comments__comment-meta { + @include font-family( $font__heading ); + font-weight: bold; + + .wp-block-latest-comments__comment-date { + font-weight: normal; + } + } + + .wp-block-latest-comments__comment, + .wp-block-latest-comments__comment-date, + .wp-block-latest-comments__comment-excerpt p { + font-size: inherit; + } + + &.has-avatars { + + } + + &.has-dates { + + .wp-block-latest-comments__comment-date { + font-size: $font__size-xs; + } + } + + &.has-excerpts { + + } + } + + //! Font Sizes + .has-small-font-size { + font-size: $font__size-sm; + } + + .has-normal-font-size { + font-size: $font__size-md; + } + + .has-large-font-size { + font-size: $font__size-lg; + } + + .has-huge-font-size { + font-size: $font__size-xl; + } + + //! Custom background colors + .has-primary-background-color, + .has-secondary-background-color, + .has-dark-gray-background-color, + .has-light-gray-background-color { + + // Use white text against these backgrounds by default. + color: $color__background-body; + + > p, + > h1, + > h2, + > h3, + > h4, + > h5, + > h6, + > a { + color: $color__background-body; + } + } + + .has-white-background-color { + color: $color__text-main; + + // Use dark gray text against this background by default. + > p, + > h1, + > h2, + > h3, + > h4, + > h5, + > h6, + > a { + color: $color__text-main; + } + } + + .has-primary-background-color, + .wp-block-pullquote.is-style-solid-color.has-primary-background-color { + background-color: $color__link; + } + + .has-secondary-background-color, + .wp-block-pullquote.is-style-solid-color.has-secondary-background-color { + background-color: $color__border-link-hover; + } + + .has-dark-gray-background-color, + .wp-block-pullquote.is-style-solid-color.has-dark-gray-background-color { + background-color: $color__text-main; + } + + .has-light-gray-background-color, + .wp-block-pullquote.is-style-solid-color.has-light-gray-background-color { + background-color: $color__text-light; + } + + .has-white-background-color, + .wp-block-pullquote.is-style-solid-color.has-white-background-color { + background-color: #FFF; + } + + //! Custom foreground colors + .has-primary-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color > p { + color: $color__link; + } + + .has-secondary-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color > p { + color: $color__border-link-hover; + } + + .has-dark-gray-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color > p { + color: $color__text-main; + } + + .has-light-gray-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color > p { + color: $color__text-light; + } + + .has-white-color, + .wp-block-pullquote.is-style-solid-color blockquote.has-white-color { + color: #FFF; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_elements.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_elements.scss new file mode 100644 index 0000000..b1fad05 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_elements.scss @@ -0,0 +1,92 @@ +html { + box-sizing: border-box; +} + +::-moz-selection { + background-color: $color__background_selection; +} + +::selection { + background-color: $color__background_selection; +} + +*, +*:before, +*:after { + box-sizing: inherit; +} + +body { + background-color: $color__background-body; +} + +a { + @include link-transition; + color: $color__link; +} + +a:visited { + +} + +a:hover, +a:active { + color: $color__link-hover; + outline: 0; + text-decoration: none; +} + +a:focus { + outline: thin; + outline-style: dotted; + text-decoration: underline; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + margin: $size__spacing-unit 0; +} + +h1:not(.site-title), +h2 { + @include post-section-dash; +} + +hr { + background-color: $color__text-light; + border: 0; + height: 2px; +} + +@import "lists"; + +img { + height: auto; + max-width: 100%; + position: relative; +} + +figure { + margin: 0; +} + +blockquote { + border-left: 2px solid $color__link; + margin-left: 0; + padding: 0 0 0 $size__spacing-unit; + + > p { + margin: 0 0 $size__spacing-unit; + } + + cite { + color: $color__text-light; + } +} + +@import "tables"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_lists.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_lists.scss new file mode 100644 index 0000000..1db7633 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_lists.scss @@ -0,0 +1,33 @@ +ul, +ol { + padding-left: ( 1 * $size__spacing-unit ); +} + +ul { + list-style: disc; + + ul { + list-style-type: circle; + } +} + +ol { + list-style: decimal; +} + +li { + line-height: $font__line-height-body; +} + +li > ul, +li > ol { + padding-left: ( 2 * $size__spacing-unit ); +} + +dt { + font-weight: bold; +} + +dd { + margin: 0 $size__spacing-unit $size__spacing-unit; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_tables.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_tables.scss new file mode 100644 index 0000000..0f653a5 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/elements/_tables.scss @@ -0,0 +1,13 @@ +table { + margin: 0 0 $size__spacing-unit; + border-collapse: collapse; + width: 100%; + @include font-family( $font__heading ); + + td, + th { + padding: 0.5em; + border: 1px solid $color__text-light; + word-break: break-all; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_buttons.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_buttons.scss new file mode 100644 index 0000000..f527a08 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_buttons.scss @@ -0,0 +1,37 @@ +.button, +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + + @include button-transition; + background: $color__background-button; + border: none; + border-radius: 5px; + box-sizing: border-box; + color: $color__background-body; + @include font-family( $font__heading ); + font-size: $font__size-sm; + font-weight: 700; + line-height: $font__line-height-heading; + outline: none; + padding: ( $size__spacing-unit * .76 ) $size__spacing-unit; + text-decoration: none; + vertical-align: bottom; + + &:hover { + background: $color__background-button-hover; + cursor: pointer; + } + + &:visited { + color: $color__background-body; + text-decoration: none; + } + + &:focus { + background: $color__background-button-hover; + outline: thin dotted; + outline-offset: -4px; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_fields.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_fields.scss new file mode 100644 index 0000000..448b707 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_fields.scss @@ -0,0 +1,58 @@ +input[type="text"], +input[type="email"], +input[type="url"], +input[type="password"], +input[type="search"], +input[type="number"], +input[type="tel"], +input[type="range"], +input[type="date"], +input[type="month"], +input[type="week"], +input[type="time"], +input[type="datetime"], +input[type="datetime-local"], +input[type="color"], +textarea { + -webkit-backface-visibility: hidden; + background: $color__background-input; + border: solid 1px $color__border; + box-sizing: border-box; + outline: none; + padding: #{.36 * $size__spacing-unit} #{.66 * $size__spacing-unit}; + -webkit-appearance: none; + outline-offset: 0; + border-radius: 0; + + &:focus { + border-color: $color__link; + outline: thin solid rgba( $color__link, 0.15 ); + outline-offset: -4px; + } +} + +input[type="search"] { + &::-webkit-search-decoration { + display: none; + } +} + +select { + +} + +textarea { + box-sizing: border-box; + display: block; + width: 100%; + max-width: 100%; + resize: vertical; +} + +form { + + p { + margin: $size__spacing-unit 0; + } + +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_forms.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_forms.scss new file mode 100644 index 0000000..2036ef9 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/forms/_forms.scss @@ -0,0 +1,3 @@ +@import "buttons"; + +@import "fields"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/layout/_layout.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/layout/_layout.scss new file mode 100644 index 0000000..e0e2c76 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/layout/_layout.scss @@ -0,0 +1,11 @@ + +/** === Layout === */ + +#page { + width: 100%; +} + +.site-content { + overflow: hidden; +} + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_captions.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_captions.scss new file mode 100644 index 0000000..761eb2f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_captions.scss @@ -0,0 +1,32 @@ +.wp-caption { + margin-bottom: calc(1.5 * #{$size__spacing-unit}); + + &.aligncenter { + + @include media(tablet) { + position: relative; + left: calc( #{$size__site-tablet-content} / 2 ); + transform: translateX( -50% ); + } + + @include media(desktop) { + left: calc( #{$size__site-desktop-content} / 2 ); + } + } +} + +.wp-caption img[class*="wp-image-"] { + display: block; + margin-left: auto; + margin-right: auto; +} + +.wp-caption-text { + color: $color__text-light; + font-size: $font__size-xs; + @include font-family( $font__heading ); + line-height: $font__line-height-pre; + margin: 0; + padding: ( $size__spacing-unit * .5 ); + text-align: center; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_galleries.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_galleries.scss new file mode 100644 index 0000000..fbc0bb1 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_galleries.scss @@ -0,0 +1,52 @@ +.gallery { + display: flex; + flex-flow: row wrap; + justify-content: center; + margin-bottom: calc(1.5 * #{$size__spacing-unit}); +} + +.gallery-item { + display: inline-block; + margin-right: 16px; + margin-bottom: 16px; + text-align: center; + vertical-align: top; + width: 100%; + + // Loops to enumerate the classes for gallery columns. + @for $i from 2 through 9 { + .gallery-columns-#{$i} & { + max-width: calc((100% - 16px * #{ $i - 1 }) / #{ $i }); + + &:nth-of-type(#{$i}n+#{$i}) { + margin-right: 0; + } + } + } + + &:last-of-type { + padding-right: 0; + } +} + +.gallery-caption { + display: block; + font-size: $font__size-xs; + @include font-family( $font__heading ); + line-height: $font__line-height-pre; + margin: 0; + padding: ( $size__spacing-unit * .5 ); +} + +.gallery-item > div > a { + display: block; + line-height: 0; + + // Accessibility + box-shadow: 0 0 0 0 transparent; + + &:focus { + box-shadow: 0 0 0 2px rgba( $color__link, 1 ); + } +} + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_media.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_media.scss new file mode 100644 index 0000000..3fba8c6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/media/_media.scss @@ -0,0 +1,41 @@ +.page-content .wp-smiley, +.entry-content .wp-smiley, +.comment-content .wp-smiley { + border: none; + margin-bottom: 0; + margin-top: 0; + padding: 0; +} + +embed, +iframe, +object { + max-width: 100%; +} + +.custom-logo-link { + display: inline-block; +} + +.avatar { + border-radius: 100%; + display: block; + height: calc(2.25 * #{$size__spacing-unit}); + min-height: inherit; + width: calc(2.25 * #{$size__spacing-unit}); +} + +svg { + transition: fill $icon_transition ease-in-out; + fill: currentColor; +} + +/*-------------------------------------------------------------- +## Captions +--------------------------------------------------------------*/ +@import "captions"; + +/*-------------------------------------------------------------- +## Galleries +--------------------------------------------------------------*/ +@import "galleries"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_mixins-master.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_mixins-master.scss new file mode 100644 index 0000000..16065f9 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_mixins-master.scss @@ -0,0 +1,132 @@ +// Rem output with px fallback +@mixin font-size($sizeValue: 1) { + font-size: ($sizeValue * 16) * 1px; + font-size: $sizeValue * 1rem; +} + +// Center block +@mixin center-block { + display: block; + margin-left: auto; + margin-right: auto; +} + +// Clearfix +@mixin clearfix() { + content: ""; + display: table; + table-layout: fixed; +} + +// Clear after (not all clearfix need this also) +@mixin clearfix-after() { + clear: both; +} + +// Column width with margin +@mixin column-width($numberColumns: 3) { + width: map-get($columns, $numberColumns) - (($columns__margin * ($numberColumns - 1)) / $numberColumns); +} + +@mixin filter-duotone { + + &:before { + background: $color__link; + mix-blend-mode: screen; + opacity: 0.1; + z-index: 2; + } + + &:after { + background: $color__link; + mix-blend-mode: multiply; + opacity: .8; + z-index: 3; + + /* Browsers supporting mix-blend-mode don't need opacity < 1 */ + @supports (mix-blend-mode: multiply) { + opacity: 1; + } + } +} + +@mixin filter-grayscale { + + position: relative; + filter: grayscale(100%); + z-index: 1; + + &:after { + display: block; + width: 100%; + height: 100%; + z-index: 10; + } +} + +@mixin post-section-dash { + + &:before { + background: $color__text-light; + content: "\020"; + display: block; + height: 2px; + margin: $size__spacing-unit 0; + width: 1em; + } +} + +/* If we add the border using a regular CSS border, it won't look good on non-retina devices, + * since its edges can look jagged due to lack of antialiasing. In this case, we are several + * layers of box-shadow to add the border visually, which will render the border smoother. */ + +@mixin box-shadow( $size ) { + box-shadow: + 0 0 0 $size $color__text-light inset, // Original border. + 0 0 0 ($size + 1px) $color__text-light inset, // Antialiasing, inner edge. + 0 0 1px 0 rgba( $color__text-light, 0.7 ); // Antialiasing, outer edge. +} + +/* Calculates maximum width for post content */ +@mixin postContentMaxWidth() { + + @include media(tablet) { + max-width: $size__site-tablet-content; + } + + @include media(desktop) { + max-width: $size__site-desktop-content; + } +} + +/* Nested sub-menu padding: 10 levels deep */ +@mixin nestedSubMenuPadding() { + + ul { + counter-reset: submenu; + } + + ul > li > a::before { + font-family: $font__body; + font-weight: normal; + content: "\2013\00a0" counters(submenu, "\2013\00a0", none); + counter-increment: submenu + } +} + +/* Ensure all font family declarations come with non-latin fallbacks */ +@mixin font-family( $font_family: $font__body ) { + font-family: $font_family; + @extend %non-latin-fonts; +} + +/* Build our non-latin font styles */ +%non-latin-fonts { + @each $lang, $font__fallback in $font__fallbacks { + &:lang(#{$lang}) { + font-family: unquote( $font__fallback ); + } + } +} + +@import "utilities"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_utilities.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_utilities.scss new file mode 100644 index 0000000..c753fe2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/mixins/_utilities.scss @@ -0,0 +1,51 @@ + +@mixin media( $res ) { + @if mobile == $res { + @media only screen and (min-width: $mobile_width) { + @content; + } + } + + @if tablet == $res { + @media only screen and (min-width: $tablet_width) { + @content; + } + } + + @if desktop == $res { + @media only screen and (min-width: $desktop_width) { + @content; + } + } + + @if wide == $res { + @media only screen and (min-width: $wide_width) { + @content; + } + } +} + +@mixin link-transition( $attr: color ) { + transition: $attr $link_transition ease-in-out; +} + +@mixin button-transition() { + transition: background $button_transition ease-in-out; +} + +@mixin button-all-transition() { + transition: all $button_transition ease-in-out; +} + +@mixin background-transition() { + transition: background $background_transition ease-in-out; +} + +@mixin selection { + ::-moz-selection { + @content; + } + ::selection { + @content; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_accessibility.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_accessibility.scss new file mode 100644 index 0000000..469887c --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_accessibility.scss @@ -0,0 +1,38 @@ +/* Text meant only for screen readers. */ +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute !important; + width: 1px; + word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ + + &:focus { + background-color: $color__background-screen; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + clip-path: none; + color: $color__text-screen; + display: block; + @include font-size(0.875); + font-weight: bold; + height: auto; + left: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; /* Above WP toolbar. */ + } +} + +/* Do not show the outline on the skip link target. */ +#content[tabindex="-1"]:focus { + outline: 0; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_alignments.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_alignments.scss new file mode 100644 index 0000000..2fb584a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_alignments.scss @@ -0,0 +1,28 @@ +.alignleft { + /*rtl:ignore*/ + float: left; + /*rtl:ignore*/ + margin-right: $size__spacing-unit; + + @include media(tablet) { + /*rtl:ignore*/ + margin-right: calc(2 * #{$size__spacing-unit}); + } +} + +.alignright { + /*rtl:ignore*/ + float: right; + /*rtl:ignore*/ + margin-left: $size__spacing-unit; + + @include media(tablet) { + /*rtl:ignore*/ + margin-left: calc(2 * #{$size__spacing-unit}); + } +} + +.aligncenter { + clear: both; + @include center-block; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_clearings.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_clearings.scss new file mode 100644 index 0000000..444b6b6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/modules/_clearings.scss @@ -0,0 +1,23 @@ +.clear:before, +.clear:after, +.entry-content:before, +.entry-content:after, +.comment-content:before, +.comment-content:after, +.site-header:before, +.site-header:after, +.site-content:before, +.site-content:after, +.site-footer:before, +.site-footer:after { + @include clearfix; +} + +.clear:after, +.entry-content:after, +.comment-content:after, +.site-header:after, +.site-content:after, +.site-footer:after { + @include clearfix-after; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_links.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_links.scss new file mode 100644 index 0000000..cbee457 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_links.scss @@ -0,0 +1,21 @@ +a { + + @include link-transition; + color: $color__link; + + &:visited { + color: $color__link-visited; + } + + &:hover, + &:active { + color: $color__link-hover; + outline: 0; + text-decoration: none; + } + + &:focus { + outline: thin dotted; + text-decoration: underline; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-footer-navigation.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-footer-navigation.scss new file mode 100644 index 0000000..afe6971 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-footer-navigation.scss @@ -0,0 +1,22 @@ +/** === Footer menu === */ + +.footer-navigation { + + display: inline; + + & > div { + display: inline; + } + + .footer-menu { + + display: inline; + padding-left: 0; + + li { + display: inline; + margin-right: 1rem; + } + } + +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-main-navigation.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-main-navigation.scss new file mode 100644 index 0000000..4bbd9cf --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-main-navigation.scss @@ -0,0 +1,506 @@ +/** === Main menu === */ + +.main-navigation { + + display: block; + margin-top: #{0.25 * $size__spacing-unit}; + + body.page & { + display: block; + } + + > div { + display: inline; + } + + /* Un-style buttons */ + button { + display: inline-block; + border: none; + padding: 0; + margin: 0; + font-family: $font__heading; + font-weight: 700; + line-height: $font__line-height-heading; + text-decoration: none; + background: transparent; + color: inherit; + cursor: pointer; + transition: + background 250ms ease-in-out, + transform 150ms ease; + -webkit-appearance: none; + -moz-appearance: none; + + &:hover, + &:focus { + background: transparent; + } + + &:focus { + outline: 1px solid transparent; + outline-offset: -4px; + } + + &:active { + transform: scale(0.99); + } + } + + .main-menu { + + display: inline-block; + margin: 0; + padding: 0; + + > li { + + color: $color__link; + display: inline; + position: relative; + + > a { + + font-weight: 700; + color: $color__link; + margin-right: #{0.5 * $size__spacing-unit}; + + + svg { + margin-right: #{0.5 * $size__spacing-unit}; + } + + &:hover, + &:hover + svg { + color: $color__link-hover; + } + } + + &.menu-item-has-children { + + display: inline-block; + position: inherit; + + @include media(tablet) { + position: relative; + } + + > a { + margin-right: #{0.125 * $size__spacing-unit}; + } + + & > a, + .menu-item-has-children > a { + + &:after { + content: ""; + display: none; + } + } + + .submenu-expand { + + display: inline-block; + margin-right: #{0.25 * $size__spacing-unit}; + + /* Priority+ Menu */ + &.main-menu-more-toggle { + + position: relative; + height: 24px; + line-height: $font__line-height-heading; + width: 24px; + padding: 0; + margin-left: #{0.5 * $size__spacing-unit}; + + svg { + height: 24px; + width: 24px; + top: #{-0.125 * $size__spacing-unit}; + vertical-align: text-bottom; + } + } + + .wp-customizer-unloading &, + &.is-empty { + display: none; + } + + svg { + position: relative; + top: 0.2rem; + } + } + } + + &:last-child > a, + &:last-child.menu-item-has-children .submenu-expand { + margin-right: 0; + } + } + } + + .sub-menu { + + background-color: $color__link; + color: $color__background-body; + list-style: none; + padding-left: 0; + + position: absolute; + opacity: 0; + left: -9999px; + z-index: 99999; + + @include media(tablet) { + width: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + } + + > li { + + display: block; + float: none; + position: relative; + + &.menu-item-has-children { + + .submenu-expand { + display: inline-block; + position: absolute; + width: calc( 24px + #{$size__spacing-unit} ); + right: 0; + top: calc( .125 * #{$size__spacing-unit} ); + bottom: 0; + color: white; + line-height: 1; + padding: calc( .5 * #{$size__spacing-unit} ); + + svg { + top: 0; + } + } + + .submenu-expand { + margin-right: 0; + } + + @include media(tablet) { + + .menu-item-has-children > a { + + &:after { + content: "\203a"; + } + } + } + } + + > a, + > .menu-item-link-return { + + color: $color__background-body; + display: block; + line-height: $font__line-height-heading; + text-shadow: none; + padding: calc( .5 * #{$size__spacing-unit} ) calc( 24px + #{$size__spacing-unit} ) calc( .5 * #{$size__spacing-unit} ) $size__spacing-unit; + white-space: nowrap; + + &:hover, + &:focus { + background: $color__link-hover; + + &:after { + background: $color__link-hover; + } + } + } + + > .menu-item-link-return { + width: 100%; + font-size: $font__size_base; + font-weight: normal; + text-align: left; + } + + > a:empty { + display: none; + } + + &.mobile-parent-nav-menu-item { + + display: none; + font-size: $font__size-sm; + font-weight: normal; + + svg { + position: relative; + top: 0.2rem; + margin-right: calc( .25 * #{$size__spacing-unit} ); + } + } + } + } + + /* + * Sub-menu styles + * + * :focus-within needs its own selector so other similar + * selectors don’t get ignored if a browser doesn’t recognize it + */ + .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu { + + display: block; + left: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + + + /* Non-mobile position */ + @include media(tablet) { + display: block; + margin-top: 0; + opacity: 1; + position: absolute; + left: 0; + right: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } + + &.hidden-links { + left: 0; + width: 100%; + display: table; + position: absolute; + + @include media(tablet) { + right: 0; + left: auto; + display: block; + width: max-content; + } + } + + .submenu-expand { + display: none; + } + + .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + left: 0; + opacity: 1; + + /* Non-mobile position */ + @include media(tablet) { + float: none; + max-width: 100%; + } + } + + /* Nested sub-menu dashes */ + .sub-menu { + counter-reset: submenu; + } + + .sub-menu > li > a::before { + font-family: $font__body; + font-weight: normal; + content: "\2013\00a0" counters(submenu, "\2013\00a0", none); + counter-increment: submenu + } + } + + .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu, + .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu, + .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu { + + display: block; + left: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + + + /* Non-mobile position */ + @include media(tablet) { + display: block; + float: none; + margin-top: 0; + opacity: 1; + position: absolute; + left: 0; + right: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } + + &.hidden-links { + left: 0; + width: 100%; + display: table; + position: absolute; + + @include media(tablet) { + right: 0; + left: auto; + display: table; + width: max-content; + } + } + + .submenu-expand { + display: none; + } + + .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + left: 0; + opacity: 1; + + /* Non-mobile position */ + @include media(tablet) { + float: none; + max-width: 100%; + } + } + + /* Nested sub-menu dashes */ + .sub-menu { + counter-reset: submenu; + } + + .sub-menu > li > a::before { + font-family: $font__body; + font-weight: normal; + content: "\2013\00a0" counters(submenu, "\2013\00a0", none); + counter-increment: submenu + } + } + + /** + * Fade-in animation for top-level submenus + */ + .main-menu > .menu-item-has-children:not(.off-canvas):hover > .sub-menu { + animation: fade_in 0.1s forwards; + } + + /** + * Off-canvas touch device styles + */ + .main-menu .menu-item-has-children.off-canvas .sub-menu { + + .submenu-expand .svg-icon { + transform: rotate(270deg); + } + + .sub-menu { + opacity: 0; + position: absolute; + z-index: 0; + transform: translateX(-100%); + } + + li:hover, + li:focus, + li > a:hover, + li > a:focus { + background-color: transparent; + } + + > li > a, + > li > .menu-item-link-return { + white-space: inherit; + } + + &.expanded-true { + + display: table; + margin-top: 0; + opacity: 1; + padding-left: 0; + + /* Mobile position */ + left: 0; + top: 0; + right: 0; + bottom: 0; + position: fixed; + z-index: 100000; /* Make sure appears above mobile admin bar */ + width: 100vw; + height: 100vh; + max-width: 100vw; + transform: translateX(+100%); + animation: slide_in_right 0.3s forwards; + + > .mobile-parent-nav-menu-item { + display: block; + } + + /* Prevent menu from being blocked by admin bar */ + .admin-bar & { + top: 46px; + height: calc( 100vh - 46px ); + + .sub-menu.expanded-true { + top: 0; + } + + /* WP core breakpoint */ + @media only screen and ( min-width: 782px ) { + top: 32px; + height: calc( 100vh - 32px ); + + .sub-menu.expanded-true { + top: 0; + } + } + } + } + } + + // Hide duplicate menu-more-link when re-loading a menu in the customizer + .main-menu-more { + &:nth-child(n+3) { + display: none; + } + } + +} + +/* Menu animation */ + +@keyframes slide_in_right { + 100% { + transform: translateX(0%); + } +} + +@keyframes fade_in { + from { + opacity: 0; + } + to { + opacity: 1; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-social-navigation.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-social-navigation.scss new file mode 100644 index 0000000..00724b5 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_menu-social-navigation.scss @@ -0,0 +1,66 @@ +/* Social menu */ + +.social-navigation { + margin-top: calc(#{$size__spacing-unit} / 2 ); + text-align: left; + + ul.social-links-menu { + @include clearfix; + + display: inline-block; + margin: 0; + padding: 0; + + li { + display: inline-block; + vertical-align: bottom; + vertical-align: -webkit-baseline-middle; + list-style: none; + + &:nth-child(n+2) { + margin-left: 0.1em; + } + + a { + border-bottom: 1px solid transparent; + display: block; + color: $color__text-main; + margin-bottom: -1px; + transition: opacity $link_transition ease-in-out; + + &:hover, + &:active { + color: $color__text-main; + opacity: 0.6; + } + + &:focus { + color: $color__text-main; + opacity: 1; + border-bottom: 1px solid $color__text-main; + } + + svg { + display: block; + width: 32px; + height: 32px; + + // Prevent icons from jumping in Safari using hardware acceleration. + transform: translateZ(0); + + &#ui-icon-link { + transform: rotate(-45deg); + } + } + } + } + } +} + +.site-title + .social-navigation, +.site-description + .social-navigation { + + @include media(tablet) { + margin-top: calc(#{$size__spacing-unit} / 5 ); + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_navigation.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_navigation.scss new file mode 100644 index 0000000..a4cf515 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_navigation.scss @@ -0,0 +1,16 @@ +/*-------------------------------------------------------------- +## Links +--------------------------------------------------------------*/ +@import "links"; + +/*-------------------------------------------------------------- +## Menus +--------------------------------------------------------------*/ +@import "menu-main-navigation"; +@import "menu-social-navigation"; +@import "menu-footer-navigation"; + +/*-------------------------------------------------------------- +## Next / Previous +--------------------------------------------------------------*/ +@import "next-previous"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_next-previous.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_next-previous.scss new file mode 100644 index 0000000..b2a4c1d --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/navigation/_next-previous.scss @@ -0,0 +1,201 @@ +/* Next/Previous navigation */ + +// Singular navigation +.post-navigation { + + margin: calc(3 * 1rem) 0; + + @include media(tablet) { + margin: calc(3 * 1rem) $size__site-margins; + max-width: calc(6 * (100vw / 12)); + } + + @include media(desktop) { + margin: calc(3 * 1rem) 0; + max-width: 100%; + } + + .nav-links { + + margin: 0 $size__spacing-unit; + max-width: 100%; + display: flex; + flex-direction: column; + + @include media(tablet) { + margin: 0; + } + + @include media(desktop) { + flex-direction: row; + margin: 0 $size__site-margins; + max-width: $size__site-desktop-content; + } + + a { + .meta-nav { + color: $color__text-light; + user-select: none; + + &:before, + &:after { + display: none; + content: "—"; + width: 2em; + color: $color__text-light; + height: 1em; + } + } + + .post-title { + hyphens: auto; + } + + &:hover { + color: $color__link-hover; + } + } + + .nav-previous, + .nav-next { + + @include media(desktop) { + min-width: calc(50% - 2 * #{$size__spacing-unit}); + } + } + + .nav-previous { + order: 2; + + @include media(desktop) { + order: 1; + } + + + .nav-next { + margin-bottom: $size__spacing-unit; + } + + .meta-nav { + &:before { + display: inline; + } + } + } + + .nav-next { + order: 1; + + @include media(desktop) { + order: 2; + padding-left: $size__spacing-unit; + } + + .meta-nav { + &:after { + display: inline; + } + } + } + } +} + +// Index/archive navigation +.pagination { + + .nav-links { + + display: flex; + flex-wrap: wrap; + padding: 0 calc(.5 * #{$size__spacing-unit}); + + + & > * { + padding: calc(.5 * #{$size__spacing-unit}); + + &.dots, + &.prev { + padding-left: 0; + } + + &.dots, + &.next { + padding-right: 0; + } + } + + a:focus { + text-decoration: underline; + outline-offset: -1px; + + &.prev, + &.next { + text-decoration: none; + + .nav-prev-text, + .nav-next-text { + text-decoration: underline; + } + } + } + + .nav-next-text, + .nav-prev-text { + display: none; + } + + @include media(tablet) { + + margin-left: $size__site-margins; + padding: 0; + + .prev, + .next { + + & > * { + display: inline-block; + vertical-align: text-bottom; + } + } + + & > * { + padding: $size__spacing-unit; + } + } + } +} + +// Comments navigation +.comment-navigation { + + .nav-links { + display: flex; + flex-direction: row; + } + + .nav-previous, + .nav-next { + min-width: 50%; + width: 100%; + @include font-family( $font__heading ); + font-weight: bold; + + .secondary-text { + display: none; + + @include media(tablet) { + display: inline; + } + } + + svg { + vertical-align: middle; + position: relative; + margin: 0 -0.35em; + top: -1px; + } + } + + .nav-next { + text-align: right; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/_site.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/_site.scss new file mode 100644 index 0000000..692244f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/_site.scss @@ -0,0 +1,27 @@ + +/*-------------------------------------------------------------- +## Header +--------------------------------------------------------------*/ +@import "header/site-header"; +@import "header/site-featured-image"; + +/*-------------------------------------------------------------- +## Posts and pages +--------------------------------------------------------------*/ +@import "primary/posts-and-pages"; + +/*-------------------------------------------------------------- +## Comments +--------------------------------------------------------------*/ +@import "primary/comments"; + +/*-------------------------------------------------------------- +## Archives +--------------------------------------------------------------*/ +@import "primary/archives"; + +/*-------------------------------------------------------------- +## Footer +--------------------------------------------------------------*/ +@import "footer/site-footer"; + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/footer/_site-footer.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/footer/_site-footer.scss new file mode 100644 index 0000000..4e13794 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/footer/_site-footer.scss @@ -0,0 +1,53 @@ +/* Site footer */ + +#colophon { + + .widget-area, + .site-info { + margin: calc(2 * #{$size__spacing-unit}) $size__spacing-unit; + + @include media(tablet) { + margin: calc(3 * #{$size__spacing-unit}) $size__site-margins; + } + } + + .widget-column { + display: flex; + flex-wrap: wrap; + .widget { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + width: 100%; + word-wrap: break-word; + @include media(desktop) { + margin-right: calc(3 * #{$size__spacing-unit}); + width: calc(50% - (3 * #{$size__spacing-unit})); + } + } + } + + .site-info { + color: $color__text-light; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + word-wrap: break-word; + + a { + color: inherit; + + &:hover { + text-decoration: none; + color: $color__link; + } + } + + .imprint, + .privacy-policy-link { + margin-right: $size__spacing-unit; + } + } +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-featured-image.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-featured-image.scss new file mode 100644 index 0000000..5e67aa2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-featured-image.scss @@ -0,0 +1,301 @@ +// Featured image styles + +.site-header.featured-image { + + /* Hide overflow for overflowing featured image */ + overflow: hidden; + + /* Need relative positioning to properly align layers. */ + position: relative; + + /* Add text shadow to text, to increase readability. */ + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35); + + /* Set white text color when featured image is set. */ + .site-branding .site-title, + .site-branding .site-description, + .main-navigation a:after, + .main-navigation .main-menu > li.menu-item-has-children:after, + .main-navigation li, + .social-navigation li, + .entry-meta, + .entry-title { + color: $color__background-body; + } + + .main-navigation a, + .main-navigation a + svg, + .social-navigation a, + .site-title a, + .site-featured-image a { + color: $color__background-body; + transition: opacity $link_transition ease-in-out; + + &:hover, + &:active, + &:hover + svg, + &:active + svg { + color: $color__background-body; + opacity: 0.6; + } + + &:focus, + &:focus + svg { + color: $color__background-body; + } + } + + .main-navigation .sub-menu a { + opacity: inherit; + } + + /* add focus state to social media icons */ + .social-navigation a { + &:focus { + color: $color__background-body; + opacity: 1; + border-bottom: 1px solid $color__background-body; + } + } + + .social-navigation svg, + .site-featured-image svg { + /* Use -webkit- only if supporting: Chrome < 54, iOS < 9.3, Android < 4.4.4 */ + -webkit-filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35) ); + filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35) ); + } + + /* Entry header */ + .site-featured-image { + + /* First layer: grayscale. */ + .post-thumbnail img { + height: auto; + left: 50%; + max-width: 1000%; + min-height: 100%; + min-width: 100vw; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%); + width: auto; + z-index: 1; + + @supports ( object-fit: cover ) { + height: 100%; + left: 0; + object-fit: cover; + top: 0; + transform: none; + width: 100%; + } + + /* When image filters are active, make it grayscale to colorize it blue. */ + .image-filters-enabled & { + filter: grayscale(100%); + } + } + + .entry-header { + + margin-top: calc( 4 * #{$size__spacing-unit}); + margin-bottom: 0; + margin-left: 0; + margin-right: 0; + + @include media (tablet) { + + margin-left: $size__site-margins; + margin-right: $size__site-margins; + } + + .entry-title { + + &:before { + background: $color__background-body; + } + } + + /* Entry meta */ + + .entry-meta { + + font-weight: 500; + + > span { + + margin-right: $size__spacing-unit; + display: inline-block; + + &:last-child { + margin-right: 0; + } + } + + a { + + @include link-transition; + color: currentColor; + + &:hover { + text-decoration: none; + } + } + + .svg-icon { + position: relative; + display: inline-block; + vertical-align: middle; + margin-right: 0.5em; + } + + .discussion-avatar-list { + display: none; + } + } + + &.has-discussion { + + @include media (tablet) { + + .entry-meta { + display: flex; + position: relative; + } + + .entry-title { + padding-right: calc(1 * (100vw / 12) + #{$size__spacing-unit}); + } + + .entry-meta .comment-count { + position: absolute; + right: 0; + } + + .entry-meta .discussion-avatar-list { + display: block; + position: absolute; + bottom: 100%; + } + } + } + } + } + + /* Custom Logo Link */ + + .custom-logo-link { + + background: $color__background-body; + box-shadow: 0 0 0 0 rgba($color__background-body, 0); + + &:hover, + &:active, + &:focus { + box-shadow: 0 0 0 2px rgba($color__background-body, 1); + } + } + + /* Make sure important elements are above pseudo elements used for effects. */ + .site-branding { + position: relative; + z-index: 10; + } + + .site-featured-image .entry-header { + position: relative; + z-index: 9; + } + + /* Set up image filter layer positioning */ + .site-branding-container:after, + .site-featured-image:before, + .site-featured-image:after, + &:after { + display: block; + position: absolute; + top: 0; left: 0; + content: "\020"; + width: 100%; + height: 100%; + } + + /* Background & Effects */ + /* Shared background settings between pseudo elements. */ + background-position: center; + background-repeat: no-repeat; + background-size: cover; + + /* The intensity of each blend mode is controlled via layer opacity. */ + + /* Second layer: screen. */ + .image-filters-enabled & .site-featured-image:before { + background: $color__link; + mix-blend-mode: screen; + opacity: 0.1; + } + + /* Third layer: multiply. */ + /* When image filters are inactive, a black overlay is added. */ + .site-featured-image:after { + background: #000; + mix-blend-mode: multiply; + opacity: .7; + + /* When image filters are active, a blue overlay is added. */ + .image-filters-enabled & { + background: $color__link; + opacity: .8; + z-index: 3; + + /* Browsers supporting mix-blend-mode don't need opacity < 1 */ + @supports (mix-blend-mode: multiply) { + opacity: 1; + } + } + } + + /* Fourth layer: overlay. */ + .image-filters-enabled & .site-branding-container:after { + background: rgba(0, 0, 0, 0.35); + mix-blend-mode: overlay; + opacity: 0.5; + z-index: 4; + + /* Browsers supporting mix-blend-mode can have a light overlay */ + @supports (mix-blend-mode: overlay) { + background: rgba($color__background-body, 0.35); + } + } + + /* Fifth layer: readability overlay */ + &:after { + background: #000; + /** + * Add a transition to the readability overlay, to add a subtle + * but smooth effect when resizing the screen. + */ + transition: opacity 1200ms ease-in-out; + opacity: 0.7; + z-index: 5; + + /* When image filters are active, a blue overlay is added. */ + .image-filters-enabled & { + background: mix($color__link, black, 12%); + opacity: 0.38; + + @include media(tablet) { + opacity: 0.18; + } + } + } + + + ::-moz-selection { + background: rgba($color__background-body, 0.17); + } + + ::selection { + background: rgba($color__background-body, 0.17); + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-header.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-header.scss new file mode 100644 index 0000000..3f723ba --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/header/_site-header.scss @@ -0,0 +1,139 @@ +// Site header + +.site-header { + padding: 1em; + + &.featured-image { + display: flex; + flex-direction: column; + justify-content: space-between; + min-height: 90vh; + + .site-branding-container { + margin-bottom: auto; + } + } + + @include media(tablet) { + margin: 0; + padding: 3rem 0; + + &.featured-image { + min-height: 100vh; + margin-bottom: 3rem; + } + } +} + +// Site branding + +.site-branding { + + color: $color__text-light; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + position: relative; + word-wrap: break-word; + + @include media(tablet) { + margin: 0 $size__site-margins; + } +} + +// Site logo + +.site-logo { + + position: relative; + z-index: 999; + margin-bottom: calc(.66 * #{$size__spacing-unit}); + + @include media(tablet) { + margin-bottom: 0; + position: absolute; + right: calc(100% + (1.25 * #{$size__spacing-unit})); + top: 4px; // Accounts for box-shadow widths + z-index: 999; + } + + .custom-logo-link { + border-radius: 100%; + box-sizing: content-box; + box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); + display: block; + width: 50px; + height: 50px; + overflow: hidden; + transition: box-shadow $background_transition ease-in-out; + + .custom-logo { + min-height: inherit; + } + + &:hover, + &:active, + &:focus { + box-shadow: 0 0 0 2px rgba(0, 0, 0, 1); + } + + @include media(tablet) { + width: 64px; + height: 64px; + } + } +} + +// Site title + +.site-title { + margin: auto; + display: inline; + color: $color__text-main; + + a { + color: $color__text-main; + + &:link, + &:visited { + color: $color__text-main; + } + + &:hover { + color: $color__text-hover; + } + } + + .featured-image & { + margin: 0; + + @include media(tablet) { + display: inline-block; + } + } + + /* When there is no description set, make sure navigation appears below title. */ + + .main-navigation { + display: block; + } + + @include media(tablet) { + display: inline; + } + + &:not(:empty) + .site-description:not(:empty):before { + content: "\2014"; + margin: 0 .2em; + } +} + +// Site description + +.site-description { + + display: inline; + color: $color__text-light; + font-weight: normal; + margin: 0; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_archives.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_archives.scss new file mode 100644 index 0000000..a3cb801 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_archives.scss @@ -0,0 +1,65 @@ +.archive .page-header, +.search .page-header, +.error404 .page-header { + + margin: $size__spacing-unit $size__spacing-unit calc(3 * #{$size__spacing-unit}); + + @include media(tablet) { + margin: 0 $size__site-margins calc(3 * #{$size__spacing-unit}); + } + + .page-title { + + color: $color__text-light; + display: inline; + letter-spacing: normal; + + &:before { + display: none; + } + } + + .search-term, + .page-description { + display: inherit; + clear: both; + } +} + +.archive .page-header .page-description, +.search .page-header .page-description { + display: block; + color: $color__text-main; + font-size: 1em; +} + +.hfeed .entry .entry-header { + + @include media(tablet) { + margin: calc(3 * #{$size__spacing-unit}) $size__site-margins calc(#{ $size__spacing-unit } / 2); + } +} + +/* 404 & Not found */ + +.error-404.not-found, +.no-results.not-found { + + .page-content { + + margin: calc(3 * #{$size__spacing-unit}) #{$size__spacing-unit}; + + @include media(tablet) { + margin: calc(3 * #{$size__spacing-unit}) $size__site-margins calc(#{ $size__spacing-unit } / 2); + } + } + + .search-submit { + vertical-align: middle; + margin: $size__spacing-unit 0; + } + + .search-field { + width: 100%; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_comments.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_comments.scss new file mode 100644 index 0000000..ec9fb12 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_comments.scss @@ -0,0 +1,405 @@ +.comment-content a { + word-wrap: break-word; +} + +.bypostauthor { + display: block; +} + +.comments-area { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + margin: calc(2 * #{$size__spacing-unit}) $size__spacing-unit; + word-wrap: break-word; + @include postContentMaxWidth(); + + @include media(tablet) { + margin: calc(3 * #{$size__spacing-unit}) $size__site-margins; + } + + & > * { + margin-top: calc(2 * #{$size__spacing-unit}); + margin-bottom: calc(2 * #{$size__spacing-unit}); + + @include media(tablet) { + margin-top: calc(3 * #{$size__spacing-unit}); + margin-bottom: calc(3 * #{$size__spacing-unit}); + } + } + + /* Add extra margin when the comments section is located immediately after the + * post itself (this happens on pages). + */ + .entry + & { + margin-top: calc(3 * #{$size__spacing-unit}); + } + + .comments-title-wrap { + + @include media(tablet) { + align-items: baseline; + display: flex; + justify-content: space-between; + } + + .comments-title { + @include post-section-dash; + margin: 0; + + @include media(tablet) { + flex: 1 0 calc(3 * (100vw / 12)); + } + } + + .discussion-meta { + @include media(tablet) { + flex: 0 0 calc(2 * (100vw / 12)); + margin-left: #{$size__spacing-unit}; + } + } + } +} + +#comment { + max-width: 100%; + box-sizing: border-box; +} + +#respond { + position: relative; + + .comment-user-avatar { + margin: $size__spacing-unit 0 -#{$size__spacing-unit}; + } + + .comment .comment-form { + padding-left: 0; + } + + > small { + display: block; + font-size: $font__size_base; + position: absolute; + left: calc(#{$size__spacing-unit} + 100%); + top: calc(-3.5 * #{$size__spacing-unit}); + width: calc(100vw / 12 ); + } +} + +#comments { + + > .comments-title:last-child { + display: none; + } +} + +.comment-form-flex { + display: flex; + flex-direction: column; + + .comments-title { + display: none; + margin: 0; + order: 1; + } + + #respond { + order: 2; + + + .comments-title { + display: block; + } + } +} + +.comment-list { + list-style: none; + padding: 0; + + .children { + margin: 0; + padding: 0 0 0 $size__spacing-unit; + } + + > .comment:first-child { + margin-top: 0; + } + + .pingback, + .trackback { + + .comment-body { + color: $color__text-light; + @include font-family( $font__heading ); + font-size: $font__size-xs; + font-weight: 500; + margin-top: $size__spacing-unit; + margin-bottom: $size__spacing-unit; + + a:not(.comment-edit-link) { + font-weight: bold; + font-size: $font__size-base / (1 * $font__size-ratio); + line-height: 1.5; + padding-right: #{0.5 * $size__spacing-unit}; + display: block; + } + + .comment-edit-link { + color: $color__text-light; + @include font-family( $font__heading ); + font-weight: 500; + } + } + } +} + +.comment-reply { + + #respond + & { + display: none; + } + + .comment-reply-link { + display: inline-block; + } +} + +.comment { + list-style: none; + position: relative; + + @include media(tablet) { + padding-left: calc(.5 * (#{$size__spacing-unit} + calc(100vw / 12 ))); + + &.depth-1, + .children { + padding-left: 0; + } + + &.depth-1 { + margin-left: calc(3.25 * #{$size__spacing-unit}); + } + } + + .comment-body { + margin: calc(2 * #{$size__spacing-unit}) 0 0; + } + + + .comment-meta { + position: relative; + } + + .comment-author { + + .avatar { + float: left; + margin-right: $size__spacing-unit; + position: relative; + + @include media(tablet) { + float: inherit; + margin-right: inherit; + position: absolute; + top: 0; + right: calc(100% + #{$size__spacing-unit}); + } + } + + .fn { + position: relative; + display: block; + + a { + color: inherit; + + &:hover { + color: $color__link-hover; + } + } + } + + .post-author-badge { + border-radius: 100%; + display: block; + height: 18px; + position: absolute; + background: lighten( $color__link, 8% ); + right: calc(100% - #{$size__spacing-unit * 2.5}); + top: -3px; + width: 18px; + + @include media(tablet) { + right: calc(100% + #{$size__spacing-unit * .75}); + } + + svg { + width: inherit; + height: inherit; + display: block; + fill: white; + transform: scale(0.875); + } + } + } + + .comment-metadata { + + > a, + .comment-edit-link { + display: inline; + font-weight: 500; + color: $color__text-light; + vertical-align: baseline; + + time { + vertical-align: baseline; + } + + &:hover { + color: $color__link-hover; + text-decoration: none; + } + } + + > * { + display: inline-block; + } + + .edit-link-sep { + color: $color__text-light; + margin: 0 0.2em; + vertical-align: baseline; + } + + .edit-link { + color: $color__text-light; + + svg { + transform: scale(0.8); + vertical-align: baseline; + margin-right: 0.1em; + } + } + + .comment-edit-link { + position: relative; + padding-left: $size__spacing-unit; + margin-left: -#{$size__spacing-unit}; + z-index: 1; + + &:hover { + color: $color__link; + } + } + } + + .comment-content { + + margin: $size__spacing-unit 0; + + @include media(desktop) { + padding-right: $size__spacing-unit; + } + + > *:first-child { + margin-top: 0; + } + + > *:last-child { + margin-bottom: 0; + } + + blockquote { + margin-left: 0; + } + + a { + text-decoration: underline; + + &:hover { + text-decoration: none; + } + } + } +} + +.comment-reply-link, +#cancel-comment-reply-link { + font-weight: 500; + + &:hover { + color: $color__link-hover; + } +} + +.discussion-avatar-list { + @include clearfix; + + margin: 0; + padding: 0; + + li { + position: relative; + list-style: none; + margin: 0 -8px 0 0; + padding: 0; + float: left; + } + + .comment-user-avatar { + + img { + height: calc(1.5 * #{$size__spacing-unit}); + width: calc(1.5 * #{$size__spacing-unit}); + } + } +} + +.discussion-meta { + + .discussion-meta-info { + margin: 0; + + .svg-icon { + vertical-align: middle; + fill: currentColor; + transform: scale( 0.6 ) scaleX(-1) translateY(-0.1em); + margin-left: -#{.25 * $size__spacing-unit}; // Align icon with avatars above. + } + } + +} + +.comment-form { + + .comment-notes, + label { + @include font-family( $font__heading ); + font-size: $font__size-xs; + color: $color__text-light; + } + + .comment-form-author, + .comment-form-email { + @include media(tablet) { + width: calc(50% - #{$size__spacing-unit / 2}); + float: left; + } + } + + .comment-form-email { + @include media(tablet) { + margin-left: $size__spacing-unit; + } + } + + input[name="author"], + input[name="email"], + input[name="url"] { + display: block; + width: 100%; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_posts-and-pages.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_posts-and-pages.scss new file mode 100644 index 0000000..ce1c6f2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/primary/_posts-and-pages.scss @@ -0,0 +1,304 @@ +.sticky { + display: block; +} + +.sticky-post { + background: $color__background-button; + color: #fff; + display: inline-block; + font-weight: bold; + line-height: 1; + padding: .25rem; + position: absolute; + text-transform: uppercase; + top: -$size__spacing-unit; + z-index: 1; +} + +.updated:not(.published) { + display: none; +} + +.page-links { + clear: both; + margin: 0 0 calc(1.5 * #{$size__spacing-unit}); +} + +.entry { + + margin-top: calc(6 * #{$size__spacing-unit}); + + &:first-of-type { + margin-top: 0; + } + + .entry-header { + + margin: calc(3 * #{ $size__spacing-unit}) $size__spacing-unit $size__spacing-unit; + position: relative; + + @include media(tablet) { + margin: calc(3 * #{ $size__spacing-unit}) $size__site-margins $size__spacing-unit; + } + } + + .entry-title { + + @include post-section-dash; + margin: 0; + + a { + color: inherit; + + &:hover { + color: $color__text-hover; + } + } + } + + .entry-meta, + .entry-footer { + + color: $color__text-light; + font-weight: 500; + + > span { + + margin-right: $size__spacing-unit; + display: inline-block; + + &:last-child { + margin-right: 0; + } + } + + a { + + @include link-transition; + color: currentColor; + + &:hover { + text-decoration: none; + color: $color__link; + } + } + + .svg-icon { + position: relative; + display: inline-block; + vertical-align: middle; + margin-right: 0.5em; + } + } + + .entry-meta { + margin: $size__spacing-unit 0; + } + + .entry-footer { + + margin: calc(2 * #{$size__spacing-unit}) $size__spacing-unit $size__spacing-unit; + + @include media(tablet) { + margin: $size__spacing-unit $size__site-margins calc(3 * #{$size__spacing-unit}); + max-width: $size__site-tablet-content; + } + + @include media(tablet) { + max-width: $size__site-desktop-content; + } + } + + .post-thumbnail { + + margin: $size__spacing-unit; + + @include media(tablet) { + margin: $size__spacing-unit $size__site-margins; + } + + &:focus { + outline: none; + } + + .post-thumbnail-inner { + display: block; + + img { + position: relative; + display: block; + width: 100%; + } + } + } + + .image-filters-enabled & { + + .post-thumbnail { + position: relative; + display: block; + + .post-thumbnail-inner { + filter: grayscale(100%); + + &:after { + background: rgba(0, 0, 0, 0.35); + content: ""; + display: block; + height: 100%; + opacity: .5; + pointer-events: none; + position: absolute; + top: 0; + width: 100%; + z-index: 4; + + @supports (mix-blend-mode: multiply) { + display: none; + } + } + } + + &:before, + &:after { + position: absolute; + display: block; + width: 100%; + height: 100%; + top: 0; left: 0; + content: "\020"; + pointer-events: none; + } + + @include filter-duotone; + + } + } + + .entry-content, + .entry-summary { + max-width: calc(100% - (2 * #{ $size__spacing-unit })); + margin: 0 $size__spacing-unit; + + @include media(tablet) { + max-width: 80%; + margin: 0 10%; + padding: 0 60px; + } + } + + .entry-content { + + p { + word-wrap: break-word; + } + + .more-link { + @include link-transition; + display: inline; + color: inherit; + + &:after { + content: "\02192"; + display: inline-block; + margin-left: 0.5em; + } + + &:hover { + color: $color__link; + text-decoration: none; + } + } + + a { + text-decoration: underline; + + &.button, + &:hover { + text-decoration: none; + } + + &.button { + display: inline-block; + } + + &.button:hover { + background: $color__background-button-hover; + color: $color__background-body; + cursor: pointer; + } + } + + // Overwrite iframe embeds that have inline styles. + > iframe[style] { + + margin: 32px 0 !important; + max-width: 100% !important; + + @include media(tablet) { + max-width: $size__site-tablet-content !important; + } + + @include media(desktop) { + max-width: $size__site-desktop-content !important; + } + } + + // Page links + .page-links a { + margin: calc(0.5 * #{$size__spacing-unit}); + text-decoration: none; + } + + // Classic editor audio embeds. + .wp-audio-shortcode { + max-width: calc(100vw - (2 * #{ $size__spacing-unit })); + + @include media(tablet) { + max-width: $size__site-tablet-content; + } + + @include media(desktop) { + max-width: $size__site-desktop-content; + } + } + } +} + +/* Author description */ + +.author-bio { + margin: calc(2 * #{$size__spacing-unit}) $size__spacing-unit $size__spacing-unit; + + @include postContentMaxWidth(); + + @include media(tablet) { + margin: calc(3 * #{$size__spacing-unit}) $size__site-margins; + } + + @include media(desktop) { + margin: calc(3 * #{$size__spacing-unit}) $size__site-margins; + } + + .author-title { + @include post-section-dash; + display: inline; + } + + .author-description { + + display: inline; + color: $color__text-light; + font-size: $font__size-md; + line-height: $font__line-height-heading; + + .author-link { + display: inline-block; + + &:hover { + color: $color__link-hover; + text-decoration: none; + } + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/secondary/_widgets.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/secondary/_widgets.scss new file mode 100644 index 0000000..3156a8e --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/site/secondary/_widgets.scss @@ -0,0 +1,81 @@ +.widget { + margin: 0 0 #{$size__spacing-unit}; + + /* Make sure select elements fit in widgets. */ + select { + max-width: 100%; + } + + a { + color: $color__link; + + &:hover { + color: $color__link-hover; + } + } +} + +.widget_archive, +.widget_categories, +.widget_meta, +.widget_nav_menu, +.widget_pages, +.widget_recent_comments, +.widget_recent_entries, +.widget_rss { + + ul { + padding: 0; + list-style: none; + + li { + color: $color__text-light; + @include font-family( $font__heading ); + font-size: calc(#{$font__size_base} * #{$font__size-ratio}); + font-weight: 700; + line-height: $font__line-height-heading; + margin-top: #{0.5 * $size__spacing-unit}; + margin-bottom: #{0.5 * $size__spacing-unit}; + } + + @include nestedSubMenuPadding(); + } +} + +.widget_tag_cloud { + + .tagcloud { + @include font-family( $font__heading ); + font-weight: 700; + } +} + + +.widget_search { + + .search-field { + width: 100%; + + @include media(mobile) { + width: auto; + } + } + + .search-submit { + display: block; + margin-top: $size__spacing-unit; + } +} + +.widget_calendar .calendar_wrap { + text-align: center; + + table td, + table th { + border: none; + } + + a { + text-decoration: underline; + } +} \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_copy.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_copy.scss new file mode 100644 index 0000000..bfbd0fe --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_copy.scss @@ -0,0 +1,62 @@ +p { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote { + + cite { + font-size: $font__size-xs; + font-style: normal; + @include font-family( $font__heading ); + } +} + +pre { + font-size: $font__size-sm; + font-family: $font__pre; + line-height: $font__line-height-body; + overflow: auto; +} + +code, +kbd, +tt, +var { + font-size: $font__size-sm; + font-family: $font__code; +} + +abbr, acronym { + border-bottom: 1px dotted #666; + cursor: help; +} + +mark, +ins { + background: #fff9c0; + text-decoration: none; +} + +big { + font-size: 125%; +} + +a { + text-decoration: none; + + &:hover { + text-decoration: none; + } + + &:focus { + text-decoration: underline; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_headings.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_headings.scss new file mode 100644 index 0000000..21ea2e4 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_headings.scss @@ -0,0 +1,164 @@ +.author-description .author-link, +.comment-metadata, +.comment-reply-link, +.comments-title, +.comment-author .fn, +.discussion-meta-info, +.entry-meta, +.entry-footer, +.main-navigation, +.no-comments, +.not-found .page-title, +.error-404 .page-title, +.post-navigation .post-title, +.page-links, +.page-description, +.pagination .nav-links, +.sticky-post, +.site-title, +.site-info, +#cancel-comment-reply-link, +h1, +h2, +h3, +h4, +h5, +h6 { + @include font-family( $font__heading ); +} + +.main-navigation, +.page-description, +.author-description .author-link, +.not-found .page-title, +.error-404 .page-title, +.post-navigation .post-title, +.pagination .nav-links, +.comments-title, +.comment-author .fn, +.no-comments, +.site-title, +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 700; + letter-spacing: -0.02em; + line-height: $font__line-height-heading; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.page-title { + @include font-family( $font__body ); +} + +.site-branding, +.main-navigation ul.main-menu > li, +.social-navigation, +.author-description .author-bio, +.nav-links { + line-height: 1.25; +} + +h1 { + font-size: $font__size-xl; + + @include media(tablet) { + font-size: $font__size-xxl; + } +} + +.entry-title, +.not-found .page-title, +.error-404 .page-title, +.has-larger-font-size, +h2 { + font-size: $font__size-lg; + + @include media(tablet) { + font-size: $font__size-xl; + } +} + +.has-regular-font-size, +.has-large-font-size, +.comments-title, +h3 { + font-size: $font__size-lg; +} + +.site-title, +.site-description, +.main-navigation, +.nav-links, +.page-title, +.page-description, +.comment-author .fn, +.no-comments, +h2.author-title, +p.author-bio, +h4 { + font-size: $font__size-md; +} + +.pagination .nav-links, +.comment-content, +h5 { + font-size: $font__size-sm; +} + +.entry-meta, +.entry-footer, +.discussion-meta-info, +.site-info, +.has-small-font-size, +.comment-reply-link, +.comment-metadata, +.comment-notes, +.sticky-post, +#cancel-comment-reply-link, +img:after, +h6 { + font-size: $font__size-xs; +} + +.site-title, +.page-title { + font-weight: normal; +} + +.page-description, +.page-links a { + font-weight: bold; +} + +.site-description { + letter-spacing: -0.01em; +} + +.post-navigation .post-title, +.entry-title, +.not-found .page-title, +.error-404 .page-title, +.comments-title, +blockquote { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + word-break: break-word; + word-wrap: break-word; +} + +/* Do not hyphenate entry title on tablet view and bigger. */ +.entry-title { + @include media(tablet) { + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_typography.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_typography.scss new file mode 100644 index 0000000..055b7a6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/typography/_typography.scss @@ -0,0 +1,32 @@ + +html { + font-size: $font__size_base; +} + +body { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + color: $color__text-main; + @include font-family( $font__body ); + font-weight: 400; + font-size: 1em; + line-height: $font__line-height-body; + margin: 0; + text-rendering: optimizeLegibility; +} + +button, +input, +select, +optgroup, +textarea { + color: $color__text-main; + @include font-family( $font__body ); + font-weight: 400; + line-height: $font__line-height-body; + text-rendering: optimizeLegibility; +} + +@import "headings"; + +@import "copy"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_colors.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_colors.scss new file mode 100644 index 0000000..989daa0 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_colors.scss @@ -0,0 +1,34 @@ + +// Backgrounds +$color__background-body: #fff; +$color__background-input: #fff; +$color__background-screen: #f1f1f1; +$color__background-hr: #ccc; +$color__background-button: #0073aa; +$color__background-button-hover: #111; +$color__background-pre: #eee; +$color__background-ins: #fff9c0; +$color__background_selection: mix( $color__background-body, $color__background-button, 75% ); // lighten( salmon, 22.5% ); // lighten( #0999d4, 48% ); + +// Text +$color__text-main: #111; +$color__text-light: #767676; +$color__text-hover: lighten( #111, 22.5% ); +$color__text-screen: #21759b; +$color__text-input: #666; +$color__text-input-focus: #111; + +// Links +$color__link: #0073aa; +$color__link-visited: #0073aa; +$color__link-hover: darken( $color__link, 10% ); + +// Borders +$color__border: #ccc; +$color__border-link: #0073aa; +$color__border-link-hover: darken( $color__link, 10% ); +$color__border-button: #ccc #ccc #bbb; +$color__border-button-hover: #ccc #bbb #aaa; +$color__border-button-focus: #aaa #bbb #bbb; +$color__border-input: $color__border; +$color__border-abbr: #666; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_columns.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_columns.scss new file mode 100644 index 0000000..6bd29bc --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_columns.scss @@ -0,0 +1,16 @@ +$columns: ( + 1: calc(1 * (100vw / 12)), + 2: calc(2 * (100vw / 12)), + 3: calc(3 * (100vw / 12)), + 4: calc(4 * (100vw / 12)), + 5: calc(5 * (100vw / 12)), + 6: calc(6 * (100vw / 12)), + 7: calc(7 * (100vw / 12)), + 8: calc(8 * (100vw / 12)), + 9: calc(9 * (100vw / 12)), + 10: calc(10 * (100vw / 12)), + 11: calc(11 * (100vw / 12)), + 12: calc(12 * (100vw / 12)) +); + +$columns__margin: $size__spacing-unit; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_fonts.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_fonts.scss new file mode 100644 index 0000000..59ab20b --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_fonts.scss @@ -0,0 +1,83 @@ +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the Classic and block + * editors. The following font-face override fixes the issue by manually inserting + * a custom font that includes just a Hoefler Text space replacement for that + * character instead. + */ +@font-face { + font-family: 'NonBreakingSpaceOverride'; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format('woff2'), + url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format('woff'); + +} + +// Font and typographic variables + +$font__body: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; +$font__heading: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +$font__fallbacks: ( + /* Arabic */ + ar: 'Tahoma, Arial, sans-serif', + ary: 'Tahoma, Arial, sans-serif', + azb: 'Tahoma, Arial, sans-serif', + ckb: 'Tahoma, Arial, sans-serif', + fa-IR: 'Tahoma, Arial, sans-serif', + haz: 'Tahoma, Arial, sans-serif', + ps: 'Tahoma, Arial, sans-serif', + /* Cyrillic */ + be: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + bg-BG: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + kk: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + mk-MK: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + mn: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + ru-RU: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + sah: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + sr-RS: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + tt-RU: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + uk: '"Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif', + /* Chinese (Hong Kong) */ + zh-HK: '-apple-system, BlinkMacSystemFont, "PingFang HK", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif', + /* Chinese (Taiwan) */ + zh-TW: '-apple-system, BlinkMacSystemFont, "PingFang TC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif', + /* Chinese (China) */ + zh-CN: '-apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif', + /* Devanagari */ + bn-BD: 'Arial, sans-serif', + hi-IN: 'Arial, sans-serif', + mr: 'Arial, sans-serif', + ne-NP: 'Arial, sans-serif', + /* Greek */ + el: '"Helvetica Neue", Helvetica, Arial, sans-serif', + /* Gujarati */ + gu: 'Arial, sans-serif', + /* Hebrew */ + he-IL: '"Arial Hebrew", Arial, sans-serif', + /* Japanese */ + ja: '-apple-system, BlinkMacSystemFont, "Hiragino Sans", Meiryo, "Helvetica Neue", sans-serif', + /* Korean */ + ko-KR: '"Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif', + /* Thai */ + th: '"Sukhumvit Set", "Helvetica Neue", helvetica, arial, sans-serif', + /* Vietnamese */ + vi: '"Libre Franklin", sans-serif', +); +$font__code: Menlo, monaco, Consolas, Lucida Console, monospace; +$font__pre: "Courier 10 Pitch", Courier, monospace; + +$font__size_base: 22px; +$font__size-ratio: 1.125; + +$font__size-xxs: 1em / (1.5 * $font__size-ratio); +$font__size-xs: 1em / (1.25 * $font__size-ratio); +$font__size-sm: 1em / (1 * $font__size-ratio); +$font__size-md: 1em * (1 * $font__size-ratio); +$font__size-lg: 1em * (1.5 * $font__size-ratio); +$font__size-xl: 1em * (2 * $font__size-ratio); +$font__size-xxl: 1em * (2.5 * $font__size-ratio); +$font__size-xxxl: 1em * (3 * $font__size-ratio); + +$font__line-height-body: 1.8; +$font__line-height-pre: 1.6; +$font__line-height-heading: 1.2; +$font__line-height-double: 2 * $font__line-height-heading; \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_structure.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_structure.scss new file mode 100644 index 0000000..dc62145 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_structure.scss @@ -0,0 +1,16 @@ +// Responsive widths. + +$size__spacing-unit: 1rem; +$size__site-main: 100%; +$size__site-sidebar: 25%; +$size__site-margins: calc(10% + 60px); +$size__site-tablet-content: calc(8 * (100vw / 12) - 28px); +$size__site-desktop-content: calc(6 * (100vw / 12) - 28px); + +// Responsive widths. + +$mobile_width: 600px; +$tablet_width: 768px; +$desktop_width: 1168px; +$wide_width: 1379px; + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_transitions.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_transitions.scss new file mode 100644 index 0000000..f0eebbd --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_transitions.scss @@ -0,0 +1,6 @@ +// Transition timeouts. + +$link_transition: 110ms; +$icon_transition: 120ms; +$button_transition: 150ms; +$background_transition: 200ms; \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_variables-site.scss b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_variables-site.scss new file mode 100644 index 0000000..9d527f9 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/sass/variables-site/_variables-site.scss @@ -0,0 +1,5 @@ +@import "colors"; +@import "fonts"; +@import "structure"; +@import "columns"; +@import "transitions"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/screenshot.png b/srcs/wordpress/wp-content/themes/twentynineteen/screenshot.png new file mode 100644 index 0000000..7dc53c5 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentynineteen/screenshot.png differ diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/search.php b/srcs/wordpress/wp-content/themes/twentynineteen/search.php new file mode 100644 index 0000000..84091a2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/search.php @@ -0,0 +1,55 @@ + + +
+
+ + + + + + +
+
+ + + +
+
+ + sprintf( __( 'Published in%s', 'twentynineteen' ), '%title' ), + ) + ); + } elseif ( is_singular( 'post' ) ) { + // Previous/next post navigation. + the_post_navigation( + array( + 'next_text' => ' ' . + '' . __( 'Next post:', 'twentynineteen' ) . '
' . + '%title', + 'prev_text' => ' ' . + '' . __( 'Previous post:', 'twentynineteen' ) . '
' . + '%title', + ) + ); + } + + // If comments are open or we have at least one comment, load up the comment template. + if ( comments_open() || get_comments_number() ) { + comments_template(); + } + + endwhile; // End of the loop. + ?> + +
+
+ + a:lang(ar), +.wp-block-categories li > a:lang(ar), +.wp-block-latest-posts li > a:lang(ar), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ar), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ar), .wp-caption dd:lang(ar), .wp-block-freeform blockquote cite:lang(ar) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ary), h1:lang(ary), +h2:lang(ary), +h3:lang(ary), +h4:lang(ary), +h5:lang(ary), +h6:lang(ary), figcaption:lang(ary), +.gallery-caption:lang(ary), .editor-post-title__block .editor-post-title__input:lang(ary), .editor-default-block-appender .editor-default-block-appender__content:lang(ary), .wp-block-paragraph.has-drop-cap:lang(ary):not(:focus)::first-letter, .wp-block-table:lang(ary), .wp-block-cover h2:lang(ary), +.wp-block-cover .wp-block-cover-text:lang(ary), .wp-block-button .wp-block-button__link:lang(ary), .wp-block-quote cite:lang(ary), +.wp-block-quote footer:lang(ary), +.wp-block-quote .wp-block-quote__citation:lang(ary), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ary), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ary), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ary), .wp-block-file:lang(ary), ul.wp-block-archives li > a:lang(ary), +.wp-block-categories li > a:lang(ary), +.wp-block-latest-posts li > a:lang(ary), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ary), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ary), .wp-caption dd:lang(ary), .wp-block-freeform blockquote cite:lang(ary) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(azb), h1:lang(azb), +h2:lang(azb), +h3:lang(azb), +h4:lang(azb), +h5:lang(azb), +h6:lang(azb), figcaption:lang(azb), +.gallery-caption:lang(azb), .editor-post-title__block .editor-post-title__input:lang(azb), .editor-default-block-appender .editor-default-block-appender__content:lang(azb), .wp-block-paragraph.has-drop-cap:lang(azb):not(:focus)::first-letter, .wp-block-table:lang(azb), .wp-block-cover h2:lang(azb), +.wp-block-cover .wp-block-cover-text:lang(azb), .wp-block-button .wp-block-button__link:lang(azb), .wp-block-quote cite:lang(azb), +.wp-block-quote footer:lang(azb), +.wp-block-quote .wp-block-quote__citation:lang(azb), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(azb), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(azb), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(azb), .wp-block-file:lang(azb), ul.wp-block-archives li > a:lang(azb), +.wp-block-categories li > a:lang(azb), +.wp-block-latest-posts li > a:lang(azb), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(azb), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(azb), .wp-caption dd:lang(azb), .wp-block-freeform blockquote cite:lang(azb) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ckb), h1:lang(ckb), +h2:lang(ckb), +h3:lang(ckb), +h4:lang(ckb), +h5:lang(ckb), +h6:lang(ckb), figcaption:lang(ckb), +.gallery-caption:lang(ckb), .editor-post-title__block .editor-post-title__input:lang(ckb), .editor-default-block-appender .editor-default-block-appender__content:lang(ckb), .wp-block-paragraph.has-drop-cap:lang(ckb):not(:focus)::first-letter, .wp-block-table:lang(ckb), .wp-block-cover h2:lang(ckb), +.wp-block-cover .wp-block-cover-text:lang(ckb), .wp-block-button .wp-block-button__link:lang(ckb), .wp-block-quote cite:lang(ckb), +.wp-block-quote footer:lang(ckb), +.wp-block-quote .wp-block-quote__citation:lang(ckb), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ckb), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ckb), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ckb), .wp-block-file:lang(ckb), ul.wp-block-archives li > a:lang(ckb), +.wp-block-categories li > a:lang(ckb), +.wp-block-latest-posts li > a:lang(ckb), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ckb), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ckb), .wp-caption dd:lang(ckb), .wp-block-freeform blockquote cite:lang(ckb) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(fa-IR), h1:lang(fa-IR), +h2:lang(fa-IR), +h3:lang(fa-IR), +h4:lang(fa-IR), +h5:lang(fa-IR), +h6:lang(fa-IR), figcaption:lang(fa-IR), +.gallery-caption:lang(fa-IR), .editor-post-title__block .editor-post-title__input:lang(fa-IR), .editor-default-block-appender .editor-default-block-appender__content:lang(fa-IR), .wp-block-paragraph.has-drop-cap:lang(fa-IR):not(:focus)::first-letter, .wp-block-table:lang(fa-IR), .wp-block-cover h2:lang(fa-IR), +.wp-block-cover .wp-block-cover-text:lang(fa-IR), .wp-block-button .wp-block-button__link:lang(fa-IR), .wp-block-quote cite:lang(fa-IR), +.wp-block-quote footer:lang(fa-IR), +.wp-block-quote .wp-block-quote__citation:lang(fa-IR), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(fa-IR), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(fa-IR), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(fa-IR), .wp-block-file:lang(fa-IR), ul.wp-block-archives li > a:lang(fa-IR), +.wp-block-categories li > a:lang(fa-IR), +.wp-block-latest-posts li > a:lang(fa-IR), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(fa-IR), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(fa-IR), .wp-caption dd:lang(fa-IR), .wp-block-freeform blockquote cite:lang(fa-IR) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(haz), h1:lang(haz), +h2:lang(haz), +h3:lang(haz), +h4:lang(haz), +h5:lang(haz), +h6:lang(haz), figcaption:lang(haz), +.gallery-caption:lang(haz), .editor-post-title__block .editor-post-title__input:lang(haz), .editor-default-block-appender .editor-default-block-appender__content:lang(haz), .wp-block-paragraph.has-drop-cap:lang(haz):not(:focus)::first-letter, .wp-block-table:lang(haz), .wp-block-cover h2:lang(haz), +.wp-block-cover .wp-block-cover-text:lang(haz), .wp-block-button .wp-block-button__link:lang(haz), .wp-block-quote cite:lang(haz), +.wp-block-quote footer:lang(haz), +.wp-block-quote .wp-block-quote__citation:lang(haz), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(haz), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(haz), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(haz), .wp-block-file:lang(haz), ul.wp-block-archives li > a:lang(haz), +.wp-block-categories li > a:lang(haz), +.wp-block-latest-posts li > a:lang(haz), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(haz), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(haz), .wp-caption dd:lang(haz), .wp-block-freeform blockquote cite:lang(haz) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ps), h1:lang(ps), +h2:lang(ps), +h3:lang(ps), +h4:lang(ps), +h5:lang(ps), +h6:lang(ps), figcaption:lang(ps), +.gallery-caption:lang(ps), .editor-post-title__block .editor-post-title__input:lang(ps), .editor-default-block-appender .editor-default-block-appender__content:lang(ps), .wp-block-paragraph.has-drop-cap:lang(ps):not(:focus)::first-letter, .wp-block-table:lang(ps), .wp-block-cover h2:lang(ps), +.wp-block-cover .wp-block-cover-text:lang(ps), .wp-block-button .wp-block-button__link:lang(ps), .wp-block-quote cite:lang(ps), +.wp-block-quote footer:lang(ps), +.wp-block-quote .wp-block-quote__citation:lang(ps), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ps), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ps), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ps), .wp-block-file:lang(ps), ul.wp-block-archives li > a:lang(ps), +.wp-block-categories li > a:lang(ps), +.wp-block-latest-posts li > a:lang(ps), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ps), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ps), .wp-caption dd:lang(ps), .wp-block-freeform blockquote cite:lang(ps) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(be), h1:lang(be), +h2:lang(be), +h3:lang(be), +h4:lang(be), +h5:lang(be), +h6:lang(be), figcaption:lang(be), +.gallery-caption:lang(be), .editor-post-title__block .editor-post-title__input:lang(be), .editor-default-block-appender .editor-default-block-appender__content:lang(be), .wp-block-paragraph.has-drop-cap:lang(be):not(:focus)::first-letter, .wp-block-table:lang(be), .wp-block-cover h2:lang(be), +.wp-block-cover .wp-block-cover-text:lang(be), .wp-block-button .wp-block-button__link:lang(be), .wp-block-quote cite:lang(be), +.wp-block-quote footer:lang(be), +.wp-block-quote .wp-block-quote__citation:lang(be), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(be), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(be), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(be), .wp-block-file:lang(be), ul.wp-block-archives li > a:lang(be), +.wp-block-categories li > a:lang(be), +.wp-block-latest-posts li > a:lang(be), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(be), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(be), .wp-caption dd:lang(be), .wp-block-freeform blockquote cite:lang(be) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(bg-BG), h1:lang(bg-BG), +h2:lang(bg-BG), +h3:lang(bg-BG), +h4:lang(bg-BG), +h5:lang(bg-BG), +h6:lang(bg-BG), figcaption:lang(bg-BG), +.gallery-caption:lang(bg-BG), .editor-post-title__block .editor-post-title__input:lang(bg-BG), .editor-default-block-appender .editor-default-block-appender__content:lang(bg-BG), .wp-block-paragraph.has-drop-cap:lang(bg-BG):not(:focus)::first-letter, .wp-block-table:lang(bg-BG), .wp-block-cover h2:lang(bg-BG), +.wp-block-cover .wp-block-cover-text:lang(bg-BG), .wp-block-button .wp-block-button__link:lang(bg-BG), .wp-block-quote cite:lang(bg-BG), +.wp-block-quote footer:lang(bg-BG), +.wp-block-quote .wp-block-quote__citation:lang(bg-BG), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(bg-BG), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(bg-BG), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(bg-BG), .wp-block-file:lang(bg-BG), ul.wp-block-archives li > a:lang(bg-BG), +.wp-block-categories li > a:lang(bg-BG), +.wp-block-latest-posts li > a:lang(bg-BG), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(bg-BG), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(bg-BG), .wp-caption dd:lang(bg-BG), .wp-block-freeform blockquote cite:lang(bg-BG) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(kk), h1:lang(kk), +h2:lang(kk), +h3:lang(kk), +h4:lang(kk), +h5:lang(kk), +h6:lang(kk), figcaption:lang(kk), +.gallery-caption:lang(kk), .editor-post-title__block .editor-post-title__input:lang(kk), .editor-default-block-appender .editor-default-block-appender__content:lang(kk), .wp-block-paragraph.has-drop-cap:lang(kk):not(:focus)::first-letter, .wp-block-table:lang(kk), .wp-block-cover h2:lang(kk), +.wp-block-cover .wp-block-cover-text:lang(kk), .wp-block-button .wp-block-button__link:lang(kk), .wp-block-quote cite:lang(kk), +.wp-block-quote footer:lang(kk), +.wp-block-quote .wp-block-quote__citation:lang(kk), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(kk), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(kk), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(kk), .wp-block-file:lang(kk), ul.wp-block-archives li > a:lang(kk), +.wp-block-categories li > a:lang(kk), +.wp-block-latest-posts li > a:lang(kk), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(kk), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(kk), .wp-caption dd:lang(kk), .wp-block-freeform blockquote cite:lang(kk) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(mk-MK), h1:lang(mk-MK), +h2:lang(mk-MK), +h3:lang(mk-MK), +h4:lang(mk-MK), +h5:lang(mk-MK), +h6:lang(mk-MK), figcaption:lang(mk-MK), +.gallery-caption:lang(mk-MK), .editor-post-title__block .editor-post-title__input:lang(mk-MK), .editor-default-block-appender .editor-default-block-appender__content:lang(mk-MK), .wp-block-paragraph.has-drop-cap:lang(mk-MK):not(:focus)::first-letter, .wp-block-table:lang(mk-MK), .wp-block-cover h2:lang(mk-MK), +.wp-block-cover .wp-block-cover-text:lang(mk-MK), .wp-block-button .wp-block-button__link:lang(mk-MK), .wp-block-quote cite:lang(mk-MK), +.wp-block-quote footer:lang(mk-MK), +.wp-block-quote .wp-block-quote__citation:lang(mk-MK), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(mk-MK), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(mk-MK), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(mk-MK), .wp-block-file:lang(mk-MK), ul.wp-block-archives li > a:lang(mk-MK), +.wp-block-categories li > a:lang(mk-MK), +.wp-block-latest-posts li > a:lang(mk-MK), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mk-MK), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mk-MK), .wp-caption dd:lang(mk-MK), .wp-block-freeform blockquote cite:lang(mk-MK) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(mn), h1:lang(mn), +h2:lang(mn), +h3:lang(mn), +h4:lang(mn), +h5:lang(mn), +h6:lang(mn), figcaption:lang(mn), +.gallery-caption:lang(mn), .editor-post-title__block .editor-post-title__input:lang(mn), .editor-default-block-appender .editor-default-block-appender__content:lang(mn), .wp-block-paragraph.has-drop-cap:lang(mn):not(:focus)::first-letter, .wp-block-table:lang(mn), .wp-block-cover h2:lang(mn), +.wp-block-cover .wp-block-cover-text:lang(mn), .wp-block-button .wp-block-button__link:lang(mn), .wp-block-quote cite:lang(mn), +.wp-block-quote footer:lang(mn), +.wp-block-quote .wp-block-quote__citation:lang(mn), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(mn), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(mn), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(mn), .wp-block-file:lang(mn), ul.wp-block-archives li > a:lang(mn), +.wp-block-categories li > a:lang(mn), +.wp-block-latest-posts li > a:lang(mn), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mn), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mn), .wp-caption dd:lang(mn), .wp-block-freeform blockquote cite:lang(mn) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(ru-RU), h1:lang(ru-RU), +h2:lang(ru-RU), +h3:lang(ru-RU), +h4:lang(ru-RU), +h5:lang(ru-RU), +h6:lang(ru-RU), figcaption:lang(ru-RU), +.gallery-caption:lang(ru-RU), .editor-post-title__block .editor-post-title__input:lang(ru-RU), .editor-default-block-appender .editor-default-block-appender__content:lang(ru-RU), .wp-block-paragraph.has-drop-cap:lang(ru-RU):not(:focus)::first-letter, .wp-block-table:lang(ru-RU), .wp-block-cover h2:lang(ru-RU), +.wp-block-cover .wp-block-cover-text:lang(ru-RU), .wp-block-button .wp-block-button__link:lang(ru-RU), .wp-block-quote cite:lang(ru-RU), +.wp-block-quote footer:lang(ru-RU), +.wp-block-quote .wp-block-quote__citation:lang(ru-RU), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ru-RU), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ru-RU), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ru-RU), .wp-block-file:lang(ru-RU), ul.wp-block-archives li > a:lang(ru-RU), +.wp-block-categories li > a:lang(ru-RU), +.wp-block-latest-posts li > a:lang(ru-RU), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ru-RU), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ru-RU), .wp-caption dd:lang(ru-RU), .wp-block-freeform blockquote cite:lang(ru-RU) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(sah), h1:lang(sah), +h2:lang(sah), +h3:lang(sah), +h4:lang(sah), +h5:lang(sah), +h6:lang(sah), figcaption:lang(sah), +.gallery-caption:lang(sah), .editor-post-title__block .editor-post-title__input:lang(sah), .editor-default-block-appender .editor-default-block-appender__content:lang(sah), .wp-block-paragraph.has-drop-cap:lang(sah):not(:focus)::first-letter, .wp-block-table:lang(sah), .wp-block-cover h2:lang(sah), +.wp-block-cover .wp-block-cover-text:lang(sah), .wp-block-button .wp-block-button__link:lang(sah), .wp-block-quote cite:lang(sah), +.wp-block-quote footer:lang(sah), +.wp-block-quote .wp-block-quote__citation:lang(sah), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(sah), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(sah), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(sah), .wp-block-file:lang(sah), ul.wp-block-archives li > a:lang(sah), +.wp-block-categories li > a:lang(sah), +.wp-block-latest-posts li > a:lang(sah), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(sah), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(sah), .wp-caption dd:lang(sah), .wp-block-freeform blockquote cite:lang(sah) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(sr-RS), h1:lang(sr-RS), +h2:lang(sr-RS), +h3:lang(sr-RS), +h4:lang(sr-RS), +h5:lang(sr-RS), +h6:lang(sr-RS), figcaption:lang(sr-RS), +.gallery-caption:lang(sr-RS), .editor-post-title__block .editor-post-title__input:lang(sr-RS), .editor-default-block-appender .editor-default-block-appender__content:lang(sr-RS), .wp-block-paragraph.has-drop-cap:lang(sr-RS):not(:focus)::first-letter, .wp-block-table:lang(sr-RS), .wp-block-cover h2:lang(sr-RS), +.wp-block-cover .wp-block-cover-text:lang(sr-RS), .wp-block-button .wp-block-button__link:lang(sr-RS), .wp-block-quote cite:lang(sr-RS), +.wp-block-quote footer:lang(sr-RS), +.wp-block-quote .wp-block-quote__citation:lang(sr-RS), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(sr-RS), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(sr-RS), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(sr-RS), .wp-block-file:lang(sr-RS), ul.wp-block-archives li > a:lang(sr-RS), +.wp-block-categories li > a:lang(sr-RS), +.wp-block-latest-posts li > a:lang(sr-RS), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(sr-RS), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(sr-RS), .wp-caption dd:lang(sr-RS), .wp-block-freeform blockquote cite:lang(sr-RS) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(tt-RU), h1:lang(tt-RU), +h2:lang(tt-RU), +h3:lang(tt-RU), +h4:lang(tt-RU), +h5:lang(tt-RU), +h6:lang(tt-RU), figcaption:lang(tt-RU), +.gallery-caption:lang(tt-RU), .editor-post-title__block .editor-post-title__input:lang(tt-RU), .editor-default-block-appender .editor-default-block-appender__content:lang(tt-RU), .wp-block-paragraph.has-drop-cap:lang(tt-RU):not(:focus)::first-letter, .wp-block-table:lang(tt-RU), .wp-block-cover h2:lang(tt-RU), +.wp-block-cover .wp-block-cover-text:lang(tt-RU), .wp-block-button .wp-block-button__link:lang(tt-RU), .wp-block-quote cite:lang(tt-RU), +.wp-block-quote footer:lang(tt-RU), +.wp-block-quote .wp-block-quote__citation:lang(tt-RU), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(tt-RU), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(tt-RU), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(tt-RU), .wp-block-file:lang(tt-RU), ul.wp-block-archives li > a:lang(tt-RU), +.wp-block-categories li > a:lang(tt-RU), +.wp-block-latest-posts li > a:lang(tt-RU), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(tt-RU), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(tt-RU), .wp-caption dd:lang(tt-RU), .wp-block-freeform blockquote cite:lang(tt-RU) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(uk), h1:lang(uk), +h2:lang(uk), +h3:lang(uk), +h4:lang(uk), +h5:lang(uk), +h6:lang(uk), figcaption:lang(uk), +.gallery-caption:lang(uk), .editor-post-title__block .editor-post-title__input:lang(uk), .editor-default-block-appender .editor-default-block-appender__content:lang(uk), .wp-block-paragraph.has-drop-cap:lang(uk):not(:focus)::first-letter, .wp-block-table:lang(uk), .wp-block-cover h2:lang(uk), +.wp-block-cover .wp-block-cover-text:lang(uk), .wp-block-button .wp-block-button__link:lang(uk), .wp-block-quote cite:lang(uk), +.wp-block-quote footer:lang(uk), +.wp-block-quote .wp-block-quote__citation:lang(uk), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(uk), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(uk), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(uk), .wp-block-file:lang(uk), ul.wp-block-archives li > a:lang(uk), +.wp-block-categories li > a:lang(uk), +.wp-block-latest-posts li > a:lang(uk), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(uk), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(uk), .wp-caption dd:lang(uk), .wp-block-freeform blockquote cite:lang(uk) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(zh-HK), h1:lang(zh-HK), +h2:lang(zh-HK), +h3:lang(zh-HK), +h4:lang(zh-HK), +h5:lang(zh-HK), +h6:lang(zh-HK), figcaption:lang(zh-HK), +.gallery-caption:lang(zh-HK), .editor-post-title__block .editor-post-title__input:lang(zh-HK), .editor-default-block-appender .editor-default-block-appender__content:lang(zh-HK), .wp-block-paragraph.has-drop-cap:lang(zh-HK):not(:focus)::first-letter, .wp-block-table:lang(zh-HK), .wp-block-cover h2:lang(zh-HK), +.wp-block-cover .wp-block-cover-text:lang(zh-HK), .wp-block-button .wp-block-button__link:lang(zh-HK), .wp-block-quote cite:lang(zh-HK), +.wp-block-quote footer:lang(zh-HK), +.wp-block-quote .wp-block-quote__citation:lang(zh-HK), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(zh-HK), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(zh-HK), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(zh-HK), .wp-block-file:lang(zh-HK), ul.wp-block-archives li > a:lang(zh-HK), +.wp-block-categories li > a:lang(zh-HK), +.wp-block-latest-posts li > a:lang(zh-HK), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-HK), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-HK), .wp-caption dd:lang(zh-HK), .wp-block-freeform blockquote cite:lang(zh-HK) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang HK", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(zh-TW), h1:lang(zh-TW), +h2:lang(zh-TW), +h3:lang(zh-TW), +h4:lang(zh-TW), +h5:lang(zh-TW), +h6:lang(zh-TW), figcaption:lang(zh-TW), +.gallery-caption:lang(zh-TW), .editor-post-title__block .editor-post-title__input:lang(zh-TW), .editor-default-block-appender .editor-default-block-appender__content:lang(zh-TW), .wp-block-paragraph.has-drop-cap:lang(zh-TW):not(:focus)::first-letter, .wp-block-table:lang(zh-TW), .wp-block-cover h2:lang(zh-TW), +.wp-block-cover .wp-block-cover-text:lang(zh-TW), .wp-block-button .wp-block-button__link:lang(zh-TW), .wp-block-quote cite:lang(zh-TW), +.wp-block-quote footer:lang(zh-TW), +.wp-block-quote .wp-block-quote__citation:lang(zh-TW), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(zh-TW), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(zh-TW), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(zh-TW), .wp-block-file:lang(zh-TW), ul.wp-block-archives li > a:lang(zh-TW), +.wp-block-categories li > a:lang(zh-TW), +.wp-block-latest-posts li > a:lang(zh-TW), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-TW), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-TW), .wp-caption dd:lang(zh-TW), .wp-block-freeform blockquote cite:lang(zh-TW) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(zh-CN), h1:lang(zh-CN), +h2:lang(zh-CN), +h3:lang(zh-CN), +h4:lang(zh-CN), +h5:lang(zh-CN), +h6:lang(zh-CN), figcaption:lang(zh-CN), +.gallery-caption:lang(zh-CN), .editor-post-title__block .editor-post-title__input:lang(zh-CN), .editor-default-block-appender .editor-default-block-appender__content:lang(zh-CN), .wp-block-paragraph.has-drop-cap:lang(zh-CN):not(:focus)::first-letter, .wp-block-table:lang(zh-CN), .wp-block-cover h2:lang(zh-CN), +.wp-block-cover .wp-block-cover-text:lang(zh-CN), .wp-block-button .wp-block-button__link:lang(zh-CN), .wp-block-quote cite:lang(zh-CN), +.wp-block-quote footer:lang(zh-CN), +.wp-block-quote .wp-block-quote__citation:lang(zh-CN), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(zh-CN), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(zh-CN), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(zh-CN), .wp-block-file:lang(zh-CN), ul.wp-block-archives li > a:lang(zh-CN), +.wp-block-categories li > a:lang(zh-CN), +.wp-block-latest-posts li > a:lang(zh-CN), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-CN), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-CN), .wp-caption dd:lang(zh-CN), .wp-block-freeform blockquote cite:lang(zh-CN) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(bn-BD), h1:lang(bn-BD), +h2:lang(bn-BD), +h3:lang(bn-BD), +h4:lang(bn-BD), +h5:lang(bn-BD), +h6:lang(bn-BD), figcaption:lang(bn-BD), +.gallery-caption:lang(bn-BD), .editor-post-title__block .editor-post-title__input:lang(bn-BD), .editor-default-block-appender .editor-default-block-appender__content:lang(bn-BD), .wp-block-paragraph.has-drop-cap:lang(bn-BD):not(:focus)::first-letter, .wp-block-table:lang(bn-BD), .wp-block-cover h2:lang(bn-BD), +.wp-block-cover .wp-block-cover-text:lang(bn-BD), .wp-block-button .wp-block-button__link:lang(bn-BD), .wp-block-quote cite:lang(bn-BD), +.wp-block-quote footer:lang(bn-BD), +.wp-block-quote .wp-block-quote__citation:lang(bn-BD), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(bn-BD), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(bn-BD), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(bn-BD), .wp-block-file:lang(bn-BD), ul.wp-block-archives li > a:lang(bn-BD), +.wp-block-categories li > a:lang(bn-BD), +.wp-block-latest-posts li > a:lang(bn-BD), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(bn-BD), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(bn-BD), .wp-caption dd:lang(bn-BD), .wp-block-freeform blockquote cite:lang(bn-BD) { + font-family: Arial, sans-serif; +} + +body:lang(hi-IN), h1:lang(hi-IN), +h2:lang(hi-IN), +h3:lang(hi-IN), +h4:lang(hi-IN), +h5:lang(hi-IN), +h6:lang(hi-IN), figcaption:lang(hi-IN), +.gallery-caption:lang(hi-IN), .editor-post-title__block .editor-post-title__input:lang(hi-IN), .editor-default-block-appender .editor-default-block-appender__content:lang(hi-IN), .wp-block-paragraph.has-drop-cap:lang(hi-IN):not(:focus)::first-letter, .wp-block-table:lang(hi-IN), .wp-block-cover h2:lang(hi-IN), +.wp-block-cover .wp-block-cover-text:lang(hi-IN), .wp-block-button .wp-block-button__link:lang(hi-IN), .wp-block-quote cite:lang(hi-IN), +.wp-block-quote footer:lang(hi-IN), +.wp-block-quote .wp-block-quote__citation:lang(hi-IN), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(hi-IN), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(hi-IN), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(hi-IN), .wp-block-file:lang(hi-IN), ul.wp-block-archives li > a:lang(hi-IN), +.wp-block-categories li > a:lang(hi-IN), +.wp-block-latest-posts li > a:lang(hi-IN), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(hi-IN), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(hi-IN), .wp-caption dd:lang(hi-IN), .wp-block-freeform blockquote cite:lang(hi-IN) { + font-family: Arial, sans-serif; +} + +body:lang(mr), h1:lang(mr), +h2:lang(mr), +h3:lang(mr), +h4:lang(mr), +h5:lang(mr), +h6:lang(mr), figcaption:lang(mr), +.gallery-caption:lang(mr), .editor-post-title__block .editor-post-title__input:lang(mr), .editor-default-block-appender .editor-default-block-appender__content:lang(mr), .wp-block-paragraph.has-drop-cap:lang(mr):not(:focus)::first-letter, .wp-block-table:lang(mr), .wp-block-cover h2:lang(mr), +.wp-block-cover .wp-block-cover-text:lang(mr), .wp-block-button .wp-block-button__link:lang(mr), .wp-block-quote cite:lang(mr), +.wp-block-quote footer:lang(mr), +.wp-block-quote .wp-block-quote__citation:lang(mr), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(mr), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(mr), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(mr), .wp-block-file:lang(mr), ul.wp-block-archives li > a:lang(mr), +.wp-block-categories li > a:lang(mr), +.wp-block-latest-posts li > a:lang(mr), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mr), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mr), .wp-caption dd:lang(mr), .wp-block-freeform blockquote cite:lang(mr) { + font-family: Arial, sans-serif; +} + +body:lang(ne-NP), h1:lang(ne-NP), +h2:lang(ne-NP), +h3:lang(ne-NP), +h4:lang(ne-NP), +h5:lang(ne-NP), +h6:lang(ne-NP), figcaption:lang(ne-NP), +.gallery-caption:lang(ne-NP), .editor-post-title__block .editor-post-title__input:lang(ne-NP), .editor-default-block-appender .editor-default-block-appender__content:lang(ne-NP), .wp-block-paragraph.has-drop-cap:lang(ne-NP):not(:focus)::first-letter, .wp-block-table:lang(ne-NP), .wp-block-cover h2:lang(ne-NP), +.wp-block-cover .wp-block-cover-text:lang(ne-NP), .wp-block-button .wp-block-button__link:lang(ne-NP), .wp-block-quote cite:lang(ne-NP), +.wp-block-quote footer:lang(ne-NP), +.wp-block-quote .wp-block-quote__citation:lang(ne-NP), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ne-NP), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ne-NP), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ne-NP), .wp-block-file:lang(ne-NP), ul.wp-block-archives li > a:lang(ne-NP), +.wp-block-categories li > a:lang(ne-NP), +.wp-block-latest-posts li > a:lang(ne-NP), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ne-NP), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ne-NP), .wp-caption dd:lang(ne-NP), .wp-block-freeform blockquote cite:lang(ne-NP) { + font-family: Arial, sans-serif; +} + +body:lang(el), h1:lang(el), +h2:lang(el), +h3:lang(el), +h4:lang(el), +h5:lang(el), +h6:lang(el), figcaption:lang(el), +.gallery-caption:lang(el), .editor-post-title__block .editor-post-title__input:lang(el), .editor-default-block-appender .editor-default-block-appender__content:lang(el), .wp-block-paragraph.has-drop-cap:lang(el):not(:focus)::first-letter, .wp-block-table:lang(el), .wp-block-cover h2:lang(el), +.wp-block-cover .wp-block-cover-text:lang(el), .wp-block-button .wp-block-button__link:lang(el), .wp-block-quote cite:lang(el), +.wp-block-quote footer:lang(el), +.wp-block-quote .wp-block-quote__citation:lang(el), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(el), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(el), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(el), .wp-block-file:lang(el), ul.wp-block-archives li > a:lang(el), +.wp-block-categories li > a:lang(el), +.wp-block-latest-posts li > a:lang(el), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(el), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(el), .wp-caption dd:lang(el), .wp-block-freeform blockquote cite:lang(el) { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +body:lang(gu), h1:lang(gu), +h2:lang(gu), +h3:lang(gu), +h4:lang(gu), +h5:lang(gu), +h6:lang(gu), figcaption:lang(gu), +.gallery-caption:lang(gu), .editor-post-title__block .editor-post-title__input:lang(gu), .editor-default-block-appender .editor-default-block-appender__content:lang(gu), .wp-block-paragraph.has-drop-cap:lang(gu):not(:focus)::first-letter, .wp-block-table:lang(gu), .wp-block-cover h2:lang(gu), +.wp-block-cover .wp-block-cover-text:lang(gu), .wp-block-button .wp-block-button__link:lang(gu), .wp-block-quote cite:lang(gu), +.wp-block-quote footer:lang(gu), +.wp-block-quote .wp-block-quote__citation:lang(gu), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(gu), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(gu), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(gu), .wp-block-file:lang(gu), ul.wp-block-archives li > a:lang(gu), +.wp-block-categories li > a:lang(gu), +.wp-block-latest-posts li > a:lang(gu), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(gu), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(gu), .wp-caption dd:lang(gu), .wp-block-freeform blockquote cite:lang(gu) { + font-family: Arial, sans-serif; +} + +body:lang(he-IL), h1:lang(he-IL), +h2:lang(he-IL), +h3:lang(he-IL), +h4:lang(he-IL), +h5:lang(he-IL), +h6:lang(he-IL), figcaption:lang(he-IL), +.gallery-caption:lang(he-IL), .editor-post-title__block .editor-post-title__input:lang(he-IL), .editor-default-block-appender .editor-default-block-appender__content:lang(he-IL), .wp-block-paragraph.has-drop-cap:lang(he-IL):not(:focus)::first-letter, .wp-block-table:lang(he-IL), .wp-block-cover h2:lang(he-IL), +.wp-block-cover .wp-block-cover-text:lang(he-IL), .wp-block-button .wp-block-button__link:lang(he-IL), .wp-block-quote cite:lang(he-IL), +.wp-block-quote footer:lang(he-IL), +.wp-block-quote .wp-block-quote__citation:lang(he-IL), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(he-IL), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(he-IL), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(he-IL), .wp-block-file:lang(he-IL), ul.wp-block-archives li > a:lang(he-IL), +.wp-block-categories li > a:lang(he-IL), +.wp-block-latest-posts li > a:lang(he-IL), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(he-IL), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(he-IL), .wp-caption dd:lang(he-IL), .wp-block-freeform blockquote cite:lang(he-IL) { + font-family: "Arial Hebrew", Arial, sans-serif; +} + +body:lang(ja), h1:lang(ja), +h2:lang(ja), +h3:lang(ja), +h4:lang(ja), +h5:lang(ja), +h6:lang(ja), figcaption:lang(ja), +.gallery-caption:lang(ja), .editor-post-title__block .editor-post-title__input:lang(ja), .editor-default-block-appender .editor-default-block-appender__content:lang(ja), .wp-block-paragraph.has-drop-cap:lang(ja):not(:focus)::first-letter, .wp-block-table:lang(ja), .wp-block-cover h2:lang(ja), +.wp-block-cover .wp-block-cover-text:lang(ja), .wp-block-button .wp-block-button__link:lang(ja), .wp-block-quote cite:lang(ja), +.wp-block-quote footer:lang(ja), +.wp-block-quote .wp-block-quote__citation:lang(ja), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ja), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ja), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ja), .wp-block-file:lang(ja), ul.wp-block-archives li > a:lang(ja), +.wp-block-categories li > a:lang(ja), +.wp-block-latest-posts li > a:lang(ja), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ja), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ja), .wp-caption dd:lang(ja), .wp-block-freeform blockquote cite:lang(ja) { + font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", Meiryo, "Helvetica Neue", sans-serif; +} + +body:lang(ko-KR), h1:lang(ko-KR), +h2:lang(ko-KR), +h3:lang(ko-KR), +h4:lang(ko-KR), +h5:lang(ko-KR), +h6:lang(ko-KR), figcaption:lang(ko-KR), +.gallery-caption:lang(ko-KR), .editor-post-title__block .editor-post-title__input:lang(ko-KR), .editor-default-block-appender .editor-default-block-appender__content:lang(ko-KR), .wp-block-paragraph.has-drop-cap:lang(ko-KR):not(:focus)::first-letter, .wp-block-table:lang(ko-KR), .wp-block-cover h2:lang(ko-KR), +.wp-block-cover .wp-block-cover-text:lang(ko-KR), .wp-block-button .wp-block-button__link:lang(ko-KR), .wp-block-quote cite:lang(ko-KR), +.wp-block-quote footer:lang(ko-KR), +.wp-block-quote .wp-block-quote__citation:lang(ko-KR), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(ko-KR), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(ko-KR), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(ko-KR), .wp-block-file:lang(ko-KR), ul.wp-block-archives li > a:lang(ko-KR), +.wp-block-categories li > a:lang(ko-KR), +.wp-block-latest-posts li > a:lang(ko-KR), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ko-KR), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ko-KR), .wp-caption dd:lang(ko-KR), .wp-block-freeform blockquote cite:lang(ko-KR) { + font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif; +} + +body:lang(th), h1:lang(th), +h2:lang(th), +h3:lang(th), +h4:lang(th), +h5:lang(th), +h6:lang(th), figcaption:lang(th), +.gallery-caption:lang(th), .editor-post-title__block .editor-post-title__input:lang(th), .editor-default-block-appender .editor-default-block-appender__content:lang(th), .wp-block-paragraph.has-drop-cap:lang(th):not(:focus)::first-letter, .wp-block-table:lang(th), .wp-block-cover h2:lang(th), +.wp-block-cover .wp-block-cover-text:lang(th), .wp-block-button .wp-block-button__link:lang(th), .wp-block-quote cite:lang(th), +.wp-block-quote footer:lang(th), +.wp-block-quote .wp-block-quote__citation:lang(th), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(th), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(th), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(th), .wp-block-file:lang(th), ul.wp-block-archives li > a:lang(th), +.wp-block-categories li > a:lang(th), +.wp-block-latest-posts li > a:lang(th), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(th), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(th), .wp-caption dd:lang(th), .wp-block-freeform blockquote cite:lang(th) { + font-family: "Sukhumvit Set", "Helvetica Neue", helvetica, arial, sans-serif; +} + +body:lang(vi), h1:lang(vi), +h2:lang(vi), +h3:lang(vi), +h4:lang(vi), +h5:lang(vi), +h6:lang(vi), figcaption:lang(vi), +.gallery-caption:lang(vi), .editor-post-title__block .editor-post-title__input:lang(vi), .editor-default-block-appender .editor-default-block-appender__content:lang(vi), .wp-block-paragraph.has-drop-cap:lang(vi):not(:focus)::first-letter, .wp-block-table:lang(vi), .wp-block-cover h2:lang(vi), +.wp-block-cover .wp-block-cover-text:lang(vi), .wp-block-button .wp-block-button__link:lang(vi), .wp-block-quote cite:lang(vi), +.wp-block-quote footer:lang(vi), +.wp-block-quote .wp-block-quote__citation:lang(vi), .wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation:lang(vi), +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation:lang(vi), +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation:lang(vi), .wp-block-file:lang(vi), ul.wp-block-archives li > a:lang(vi), +.wp-block-categories li > a:lang(vi), +.wp-block-latest-posts li > a:lang(vi), .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(vi), .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(vi), .wp-caption dd:lang(vi), .wp-block-freeform blockquote cite:lang(vi) { + font-family: "Libre Franklin", sans-serif; +} + +/** === Editor Frame === */ +body .wp-block[data-align="full"] { + width: 100%; +} + +@media only screen and (min-width: 600px) { + body .wp-block[data-align="full"] { + width: calc( 100% + 90px); + max-width: calc( 100% + 90px); + } +} + +@media only screen and (min-width: 768px) { + body .editor-writing-flow { + max-width: 80%; + margin: 0 10%; + } + body .editor-post-title__block, + body .editor-default-block-appender, + body .editor-block-list__block { + margin-left: 0; + margin-right: 0; + } + body .wp-block[data-align="wide"] { + width: 100%; + } + body .wp-block[data-align="full"] { + position: relative; + left: calc( -12.5% - 14px); + width: calc( 125% + 116px); + max-width: calc( 125% + 115px); + } + body .wp-block[data-align="right"] { + max-width: 125%; + } +} + +/** === Content Width === */ +.wp-block { + width: calc(100vw - (2 * 1rem)); + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .wp-block { + width: calc(8 * (100vw / 12)); + } +} + +@media only screen and (min-width: 1168px) { + .wp-block { + width: calc(6 * (100vw / 12 )); + } +} + +.wp-block .wp-block { + width: 100%; +} + +/** === Base Typography === */ +body { + font-size: 22px; + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + line-height: 1.8; + color: #111; +} + +p { + font-size: 22px; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 700; +} + +h1 { + font-size: 2.25em; +} + +h1:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +@media only screen and (min-width: 768px) { + h1 { + font-size: 2.8125em; + } +} + +h2 { + font-size: 1.6875em; +} + +h2:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +@media only screen and (min-width: 768px) { + h2 { + font-size: 2.25em; + } +} + +h3 { + font-size: 1.6875em; +} + +h4 { + font-size: 1.125em; +} + +h5 { + font-size: 0.88889em; +} + +h6 { + font-size: 0.71111em; +} + +a { + transition: color 110ms ease-in-out; + color: #0073aa; +} + +a:hover, a:active { + color: #005177; + outline: 0; + text-decoration: none; +} + +a:focus { + outline: 0; + text-decoration: underline; +} + +.has-primary-background-color, +.has-secondary-background-color, +.has-dark-gray-background-color, +.has-light-gray-background-color { + color: #fff; +} + +.has-primary-background-color p, +.has-primary-background-color h1, +.has-primary-background-color h2, +.has-primary-background-color h3, +.has-primary-background-color h4, +.has-primary-background-color h5, +.has-primary-background-color h6, +.has-primary-background-color a, +.has-secondary-background-color p, +.has-secondary-background-color h1, +.has-secondary-background-color h2, +.has-secondary-background-color h3, +.has-secondary-background-color h4, +.has-secondary-background-color h5, +.has-secondary-background-color h6, +.has-secondary-background-color a, +.has-dark-gray-background-color p, +.has-dark-gray-background-color h1, +.has-dark-gray-background-color h2, +.has-dark-gray-background-color h3, +.has-dark-gray-background-color h4, +.has-dark-gray-background-color h5, +.has-dark-gray-background-color h6, +.has-dark-gray-background-color a, +.has-light-gray-background-color p, +.has-light-gray-background-color h1, +.has-light-gray-background-color h2, +.has-light-gray-background-color h3, +.has-light-gray-background-color h4, +.has-light-gray-background-color h5, +.has-light-gray-background-color h6, +.has-light-gray-background-color a { + color: #fff; +} + +.has-white-background-color { + color: #111; +} + +.has-white-background-color p, +.has-white-background-color h1, +.has-white-background-color h2, +.has-white-background-color h3, +.has-white-background-color h4, +.has-white-background-color h5, +.has-white-background-color h6, +.has-white-background-color a { + color: #111; +} + +figcaption, +.gallery-caption { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + line-height: 1.6; + color: #767676; +} + +/** === Post Title === */ +.editor-post-title__block:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +.editor-post-title__block:before { + width: 2.8125em; + margin-top: 0; + margin-bottom: 0; + margin-left: 1em; + position: relative; + top: 0.5em; +} + +.editor-post-title__block .editor-post-title__input { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 2.8125em; + font-weight: 700; +} + +/** === Default Appender === */ +.editor-default-block-appender .editor-default-block-appender__content { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-size: 22px; +} + +/** === Heading === */ +.wp-block-heading strong { + font-weight: bolder; +} + +/** === Paragraph === */ +.wp-block-paragraph.has-drop-cap:not(:focus)::first-letter { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 3.375em; + line-height: 1; + font-weight: bold; + margin: 0 0.25em 0 0; +} + +/** === Table === */ +.wp-block-table { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +/** === Cover === */ +.wp-block-cover h2, +.wp-block-cover .wp-block-cover-text { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 1.6875em; + font-weight: bold; + line-height: 1.4; + padding-left: 1rem; + padding-right: 1rem; +} + +.wp-block-cover h2 strong, +.wp-block-cover .wp-block-cover-text strong { + font-weight: bolder; +} + +@media only screen and (min-width: 768px) { + .wp-block-cover h2, + .wp-block-cover .wp-block-cover-text { + margin-left: auto; + margin-right: auto; + padding: 0; + } +} + +@media only screen and (min-width: 768px) { + .wp-block-cover { + padding-left: 10%; + padding-right: 10%; + } + .wp-block-cover h2, + .wp-block-cover .wp-block-cover-text { + font-size: 2.25em; + } +} + +.wp-block[data-type="core/cover"][data-align="left"] .editor-block-list__block-edit, +.wp-block[data-type="core/cover"][data-align="right"] .editor-block-list__block-edit { + width: calc(4 * (100vw / 12)); +} + +.wp-block[data-type="core/cover"][data-align="left"] .wp-block-cover, +.wp-block[data-type="core/cover"][data-align="right"] .wp-block-cover { + width: 100%; + max-width: 100%; + padding: calc(1.375 * 1rem); +} + +.wp-block[data-type="core/cover"][data-align="left"] .wp-block-cover p, +.wp-block[data-type="core/cover"][data-align="right"] .wp-block-cover p { + padding-left: 0; + padding-right: 0; +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/cover"][data-align="left"] .wp-block-cover, + .wp-block[data-type="core/cover"][data-align="right"] .wp-block-cover { + padding: calc(2.75 * 1rem) calc(2.75 * 1rem) calc(3.125 * 1rem); + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/cover"][data-align="wide"] h2, + .wp-block[data-type="core/cover"][data-align="wide"] .wp-block-cover-text, + .wp-block[data-type="core/cover"][data-align="full"] h2, + .wp-block[data-type="core/cover"][data-align="full"] .wp-block-cover-text { + max-width: calc(8 * (100vw / 12)); + } +} + +@media only screen and (min-width: 1168px) { + .wp-block[data-type="core/cover"][data-align="wide"] h2, + .wp-block[data-type="core/cover"][data-align="wide"] .wp-block-cover-text, + .wp-block[data-type="core/cover"][data-align="full"] h2, + .wp-block[data-type="core/cover"][data-align="full"] .wp-block-cover-text { + max-width: calc(6 * (100vw / 12)); + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/cover"][data-align="full"] .wp-block-cover { + padding-left: calc(10% + 64px); + padding-right: calc(10% + 64px); + } +} + +/** === Gallery === */ +.wp-block-gallery .blocks-gallery-image figcaption, +.wp-block-gallery .blocks-gallery-item figcaption, +.wp-block-gallery .gallery-item .gallery-caption { + font-size: 0.71111em; + line-height: 1.6; +} + +/** === Button === */ +.wp-block-button .wp-block-button__link { + line-height: 1.8; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.88889em; + font-weight: bold; +} + +.wp-block-button:not(.is-style-outline) .wp-block-button__link { + background: #0073aa; +} + +.wp-block-button:not(.is-style-squared) .wp-block-button__link { + border-radius: 5px; +} + +.wp-block-button.is-style-outline, .wp-block-button.is-style-outline:hover, .wp-block-button.is-style-outline:focus, .wp-block-button.is-style-outline:active { + background: transparent; + color: #0073aa; +} + +.wp-block-button.is-style-outline .wp-block-button__link, .wp-block-button.is-style-outline:hover .wp-block-button__link, .wp-block-button.is-style-outline:focus .wp-block-button__link, .wp-block-button.is-style-outline:active .wp-block-button__link { + background: transparent; +} + +.wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), .wp-block-button.is-style-outline:hover .wp-block-button__link:not(.has-text-color), .wp-block-button.is-style-outline:focus .wp-block-button__link:not(.has-text-color), .wp-block-button.is-style-outline:active .wp-block-button__link:not(.has-text-color) { + color: #0073aa; +} + +/** === Blockquote === */ +.wp-block-quote:not(.is-large):not(.is-style-large) { + border-width: 2px; + border-color: #0073aa; +} + +.wp-block-quote.is-large, .wp-block-quote.is-style-large { + margin-top: 2.8125em; + margin-bottom: 2.8125em; +} + +.wp-block-quote.is-large p, +.wp-block-quote.is-style-large p { + font-size: 1.6875em; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +.wp-block-quote cite, +.wp-block-quote footer, +.wp-block-quote .wp-block-quote__citation { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + line-height: 1.6; + color: #767676; +} + +/** === Pullquote === */ +.wp-block-pullquote { + border-color: transparent; + border-width: 2px; + color: #000; +} + +.wp-block-pullquote blockquote { + margin-top: calc(3 * 1rem); + margin-bottom: calc(3.33 * 1rem); + hyphens: auto; + word-break: break-word; +} + +.wp-block-pullquote:not(.is-style-solid-color) .wp-block-pullquote__citation { + color: #767676; +} + +.wp-block-pullquote.is-style-solid-color blockquote { + width: calc(100% - (2 * 1rem)); + max-width: calc( 100% - (2 * 1rem)); +} + +.wp-block-pullquote.is-style-solid-color blockquote a, +.wp-block-pullquote.is-style-solid-color blockquote.has-text-color p, +.wp-block-pullquote.is-style-solid-color blockquote.has-text-color a { + color: inherit; +} + +.wp-block-pullquote.is-style-solid-color blockquote:not(.has-text-color) { + color: #fff; +} + +@media only screen and (min-width: 768px) { + .wp-block-pullquote.is-style-solid-color blockquote { + max-width: 80%; + } +} + +.wp-block-pullquote.is-style-solid-color:not(.has-background-color) { + background-color: #0073aa; +} + +.wp-block[data-type="core/pullquote"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, +.wp-block[data-type="core/pullquote"] blockquote > .editor-rich-text p, +.wp-block[data-type="core/pullquote"] p, +.wp-block[data-type="core/pullquote"][data-align="left"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, +.wp-block[data-type="core/pullquote"][data-align="left"] blockquote > .editor-rich-text p, +.wp-block[data-type="core/pullquote"][data-align="left"] p, +.wp-block[data-type="core/pullquote"][data-align="right"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, +.wp-block[data-type="core/pullquote"][data-align="right"] blockquote > .editor-rich-text p, +.wp-block[data-type="core/pullquote"][data-align="right"] p { + font-size: 1.6875em; + font-style: italic; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/pullquote"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, + .wp-block[data-type="core/pullquote"] blockquote > .editor-rich-text p, + .wp-block[data-type="core/pullquote"] p, + .wp-block[data-type="core/pullquote"][data-align="left"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, + .wp-block[data-type="core/pullquote"][data-align="left"] blockquote > .editor-rich-text p, + .wp-block[data-type="core/pullquote"][data-align="left"] p, + .wp-block[data-type="core/pullquote"][data-align="right"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, + .wp-block[data-type="core/pullquote"][data-align="right"] blockquote > .editor-rich-text p, + .wp-block[data-type="core/pullquote"][data-align="right"] p { + font-size: 2.25em; + } +} + +.wp-block[data-type="core/pullquote"] .wp-block-pullquote__citation, +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation, +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + line-height: 1.6; + text-transform: none; +} + +.wp-block[data-type="core/pullquote"] em, +.wp-block[data-type="core/pullquote"][data-align="left"] em, +.wp-block[data-type="core/pullquote"][data-align="right"] em { + font-style: normal; +} + +.wp-block[data-type="core/pullquote"][data-align="left"] .editor-block-list__block-edit, +.wp-block[data-type="core/pullquote"][data-align="right"] .editor-block-list__block-edit { + width: calc(4 * (100vw / 12)); + max-width: 50%; +} + +.wp-block[data-type="core/pullquote"][data-align="left"] .editor-block-list__block-edit .wp-block-pullquote:not(.is-style-solid-color), +.wp-block[data-type="core/pullquote"][data-align="right"] .editor-block-list__block-edit .wp-block-pullquote:not(.is-style-solid-color) { + padding: 0; +} + +.wp-block[data-type="core/pullquote"][data-align="left"] .editor-block-list__block-edit .wp-block-pullquote.is-style-solid-color, +.wp-block[data-type="core/pullquote"][data-align="right"] .editor-block-list__block-edit .wp-block-pullquote.is-style-solid-color { + padding: 1em; +} + +.wp-block[data-type="core/pullquote"][data-align="left"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, +.wp-block[data-type="core/pullquote"][data-align="left"] blockquote > .editor-rich-text p, +.wp-block[data-type="core/pullquote"][data-align="left"] p, +.wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote__citation, +.wp-block[data-type="core/pullquote"][data-align="right"] blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, +.wp-block[data-type="core/pullquote"][data-align="right"] blockquote > .editor-rich-text p, +.wp-block[data-type="core/pullquote"][data-align="right"] p, +.wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote__citation { + text-align: left; +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote blockquote { + max-width: calc(80% - 128px); + } +} + +/** === File === */ +.wp-block-file { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +.wp-block-file .wp-block-file__textlink { + text-decoration: underline; + color: #0073aa; +} + +.wp-block-file .wp-block-file__textlink:hover { + color: #005177; + text-decoration: none; +} + +.wp-block-file .wp-block-file__button { + display: table; + line-height: 1.8; + font-size: 0.88889em; + font-weight: bold; + background-color: #0073aa; + border-radius: 5px; +} + +.wp-block-file .wp-block-file__button-richtext-wrapper { + display: block; + margin-top: calc(0.75 * 1rem); + margin-left: 0; +} + +/** === Verse === */ +.wp-block-verse, +.wp-block-verse pre { + padding: 0; +} + +/** === Code === */ +.wp-block-code { + border-radius: 0; +} + +/** === Table === */ +.wp-block-table td, .wp-block-table th { + border-color: #767676; +} + +/** === Separator === */ +.wp-block-separator:not(.is-style-dots) { + background-color: #767676; + height: 2px; +} + +.wp-block-separator:not(.is-style-wide):not(.is-style-dots) { + width: 2.25em; + margin-left: 0; +} + +.wp-block-separator.is-style-dots { + color: #767676; +} + +.wp-block-separator.is-style-dots:before { + font-size: 1.6875em; + letter-spacing: calc(2 * 1rem); + padding-left: calc(2 * 1rem); +} + +/* Remove duplicate rule-line when a separator + * is followed by an H1, or H2 */ +.wp-block[data-type="core/separator"] + .wp-block[data-type="core/heading"] h1:before, +.wp-block[data-type="core/separator"] + .wp-block[data-type="core/heading"] h2:before { + display: none; +} + +/** === Latest Posts, Archives, Categories === */ +ul.wp-block-archives, +.wp-block-categories, +.wp-block-latest-posts { + padding: 0; + list-style-type: none; +} + +ul.wp-block-archives ul, +.wp-block-categories ul, +.wp-block-latest-posts ul { + padding: 0; + list-style-type: none; +} + +ul.wp-block-archives li > a, +.wp-block-categories li > a, +.wp-block-latest-posts li > a { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: calc(22px * 1.125); + font-weight: bold; + line-height: 1.2; + text-decoration: none; +} + +ul.wp-block-archives li ul, +.wp-block-categories li ul, +.wp-block-latest-posts li ul { + padding-left: 1rem; +} + +.wp-block-categories ul { + padding-top: 0.75rem; +} + +.wp-block-categories ul ul { + counter-reset: submenu; +} + +.wp-block-categories ul ul > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.wp-block-categories li ul { + list-style: none; + padding-left: 0; + margin-bottom: -0.75rem; +} + +/** === Latest Posts === */ +.wp-block-latest-posts .wp-block-latest-posts__post-date { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + color: #767676; + line-height: 1.2; +} + +.wp-block-latest-posts .wp-block-latest-posts__post-full-content, +.wp-block-latest-posts .wp-block-latest-posts__post-excerpt { + margin-top: 22px; + margin-bottom: 22px; +} + +.wp-block-latest-posts .wp-block-latest-posts__post-full-content > div > p:first-child, +.wp-block-latest-posts .wp-block-latest-posts__post-excerpt > div > p:first-child { + margin-top: 22px; +} + +.wp-block-latest-posts li { + padding-bottom: 0.5rem; +} + +.wp-block-latest-posts li.menu-item-has-children, .wp-block-latest-posts li:last-child { + padding-bottom: 0; +} + +.wp-block-latest-posts li :not(:last-child) .wp-block-latest-posts__post-excerpt { + padding-bottom: 0.5rem; +} + +.wp-block-latest-posts.is-grid li { + border-top: 2px solid #ccc; + padding-top: 1rem; + margin-bottom: 2rem; +} + +.wp-block-latest-posts.is-grid li a:after { + content: ''; +} + +.wp-block-latest-posts.is-grid li:last-child { + margin-bottom: auto; +} + +.wp-block-latest-posts.is-grid li:last-child a:after { + content: ''; +} + +/** === Latest Comments === */ +.wp-block-latest-comments .wp-block-latest-comments__comment-meta { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: bold; +} + +.wp-block-latest-comments .wp-block-latest-comments__comment-meta .wp-block-latest-comments__comment-date { + font-weight: normal; +} + +.wp-block-latest-comments .wp-block-latest-comments__comment, +.wp-block-latest-comments .wp-block-latest-comments__comment-date, +.wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p { + font-size: inherit; +} + +.wp-block-latest-comments .wp-block-latest-comments__comment-date { + font-size: 0.71111em; +} + +/** === Classic Editor === */ +/* Properly center-align captions in the classic-editor block */ +.wp-caption dd { + color: #767676; + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; + text-align: left; + text-align: center; + -webkit-margin-start: 0px; + margin-inline-start: 0px; +} + +.wp-block-freeform { + /* Add style for galleries in classic-editor block */ +} + +.wp-block-freeform blockquote { + border-left: 2px solid #0073aa; +} + +.wp-block-freeform blockquote cite { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + font-style: normal; + line-height: 1.6; + color: #767676; +} + +/** === Group Block === */ +.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + left: 0; +} + +.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group.has-background { + padding: 22px; +} + +.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + margin-left: -22px; + width: calc(100% + 44px); + max-width: calc(100% + 44px); +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="wide"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="wide"]):not([data-align="full"]) { + width: calc(8 * (100vw / 12)); + } +} + +@media only screen and (min-width: 1168px) { + .wp-block[data-type="core/group"][data-align="wide"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="wide"]):not([data-align="full"]) { + width: calc(6 * (100vw / 12 )); + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="wide"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="wide"]):not([data-align="full"]) { + width: calc(8 * (100vw / 12) - 44px); + } +} + +@media only screen and (min-width: 1168px) { + .wp-block[data-type="core/group"][data-align="wide"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="wide"]):not([data-align="full"]) { + width: calc(6 * (100vw / 12 ) - 44px); + } +} + +@media only screen and (min-width: 600px) { + .wp-block[data-type="core/group"][data-align="full"] { + max-width: calc(100% + 89px); + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] { + max-width: calc(125% + 114px); + } +} + +@media only screen and (min-width: 600px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout { + padding-left: 46px; + padding-right: 46px; + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout { + width: 80%; + margin-left: 10%; + margin-right: 10%; + padding-left: 48px; + padding-right: 48px; + } +} + +.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="full"]) { + max-width: calc(100vw - (2 * 1rem)); +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="full"]) { + max-width: calc(8 * (100vw / 12)); + } +} + +@media only screen and (min-width: 1168px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="full"]) { + max-width: calc(6 * (100vw / 12)); + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="right"] { + max-width: 125%; + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="wide"] { + width: calc(100% + 4px); + max-width: calc(100% + 4px); + } +} + +.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align=full] { + max-width: calc(100vw + (2 * 1rem)); +} + +@media only screen and (min-width: 600px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align=full] { + width: calc(100% + 92px); + left: -46px; + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align=full] { + left: calc(-12.5% - 58px); + width: calc(125% + 120px); + max-width: calc(125% + 119px); + } +} + +.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background { + padding: 22px 0; +} + +@media only screen and (min-width: 600px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background { + padding-left: 0; + padding-right: 0; + } +} + +.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + margin-left: 0; + width: 100%; +} + +@media only screen and (min-width: 600px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + width: calc(100% + 92px); + } +} + +@media only screen and (min-width: 768px) { + .wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + width: calc(125% + 120px); + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/style-editor.scss b/srcs/wordpress/wp-content/themes/twentynineteen/style-editor.scss new file mode 100644 index 0000000..1c6c4de --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/style-editor.scss @@ -0,0 +1,948 @@ +/*! +Twenty Nineteen Editor Styles +*/ + +/** === Includes === */ + +@import "sass/variables-site/variables-site"; +@import "sass/mixins/mixins-master"; + +/** === Editor Frame === */ + +body { + + .wp-block[data-align="full"] { + width: 100%; + } + + @include media(mobile) { + + .wp-block[data-align="full"] { + width: calc( 100% + 90px ); + max-width: calc( 100% + 90px ); + } + } + + @include media(tablet) { + + .editor-writing-flow { + max-width: 80%; + margin: 0 10%; + } + + .editor-post-title__block, + .editor-default-block-appender, + .editor-block-list__block { + margin-left: 0; + margin-right: 0; + } + + .wp-block[data-align="wide"] { + width: 100%; + } + + .wp-block[data-align="full"] { + position: relative; + left: calc( -12.5% - 14px ); + width: calc( 125% + 116px ); + max-width: calc( 125% + 115px ); // Subtract 1px here to avoid the rounding errors that happen due to the usage of percentages. + } + + .wp-block[data-align="right"] { + max-width: 125%; + } + } +} + +/** === Content Width === */ + +.wp-block { + width: calc(100vw - (2 * #{$size__spacing-unit})); + max-width: 100%; + + @include media(tablet) { + width: calc(8 * (100vw / 12)); + } + + @include media(desktop) { + width: calc(6 * (100vw / 12 )); + } + + // Only the top level blocks need specific widths, therefore override for every nested block. + .wp-block { + width: 100%; + } +} + +/** === Base Typography === */ + +body { + font-size: $font__size_base; + @include font-family( $font__body ); + line-height: $font__line-height-body; + color: $color__text-main; +} + +p { + font-size: $font__size_base; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + @include font-family( $font__heading ); + font-weight: 700; +} + +h1 { + font-size: $font__size-xl; + @include post-section-dash; + + @include media(tablet) { + font-size: $font__size-xxl; + } +} + +h2 { + font-size: $font__size-lg; + @include post-section-dash; + + @include media(tablet) { + font-size: $font__size-xl; + } +} + +h3 { + font-size: $font__size-lg; +} + +h4 { + font-size: $font__size-md; +} + +h5 { + font-size: $font__size-sm; +} + +h6 { + font-size: $font__size-xs; +} + +a { + @include link-transition; + color: $color__link; + + *:visited { + + } + + &:hover, + &:active { + color: $color__link-hover; + outline: 0; + text-decoration: none; + } + + &:focus { + outline: 0; + text-decoration: underline; + } +} + +// Use white text against these backgrounds by default. +.has-primary-background-color, +.has-secondary-background-color, +.has-dark-gray-background-color, +.has-light-gray-background-color { + color: $color__background-body; + + p, + h1, + h2, + h3, + h4, + h5, + h6, + a { + color: $color__background-body; + } +} + +// Use dark gray text against this background by default. +.has-white-background-color { + color: $color__text-main; + + p, + h1, + h2, + h3, + h4, + h5, + h6, + a { + color: $color__text-main; + } +} + +figcaption, +.gallery-caption { + @include font-family( $font__heading ); + font-size: $font__size-xs; + line-height: 1.6; + color: $color__text-light; +} + +/** === Post Title === */ + +.editor-post-title__block { + @include post-section-dash; + + &:before { + width: $font__size-xxl; + margin-top: 0; + margin-bottom: 0; + margin-left: 1em; + position: relative; + top: 0.5em; + } + + .editor-post-title__input { + @include font-family( $font__heading ); + font-size: $font__size-xxl; + font-weight: 700; + } +} + +/** === Default Appender === */ + +.editor-default-block-appender .editor-default-block-appender__content { + @include font-family( $font__body ); + font-size: $font__size_base; +} + +/** === Heading === */ + +.wp-block-heading { + strong { + font-weight: bolder; + } +} +/** === Paragraph === */ + +.wp-block-paragraph { + + &.has-drop-cap:not(:focus)::first-letter { + @include font-family( $font__heading ); + font-size: $font__size-xxxl; + line-height: 1; + font-weight: bold; + margin: 0 0.25em 0 0; + } +} + +/** === Table === */ + +.wp-block-table { + @include font-family( $font__heading ); +} + +/** === Cover === */ + +.wp-block-cover { + + h2, + .wp-block-cover-text { + @include font-family( $font__heading ); + font-size: $font__size-lg; + font-weight: bold; + line-height: 1.4; + padding-left: $size__spacing-unit; + padding-right: $size__spacing-unit; + + strong { + font-weight: bolder; + } + + @include media(tablet) { + margin-left: auto; + margin-right: auto; + padding: 0; + } + } + + @include media(tablet) { + padding-left: 10%; + padding-right: 10%; + + h2, + .wp-block-cover-text { + font-size: $font__size-xl; + } + } +} + +.wp-block[data-type="core/cover"][data-align="left"], +.wp-block[data-type="core/cover"][data-align="right"] { + + .editor-block-list__block-edit { + width: calc(4 * (100vw / 12)); + } + + .wp-block-cover { + width: 100%; + max-width: 100%; + padding: calc(1.375 * #{$size__spacing-unit}); + + p { + padding-left: 0; + padding-right: 0; + } + + @include media(tablet) { + padding: calc(2.75 * #{$size__spacing-unit}) calc(2.75 * #{$size__spacing-unit}) calc(3.125 * #{$size__spacing-unit}); + } + } +} + +.wp-block[data-type="core/cover"][data-align="wide"], +.wp-block[data-type="core/cover"][data-align="full"] { + + @include media(tablet) { + + h2, + .wp-block-cover-text { + max-width: calc(8 * (100vw / 12)); + } + } + + @include media(desktop) { + + h2, + .wp-block-cover-text { + max-width: calc(6 * (100vw / 12)); + } + } +} + +.wp-block[data-type="core/cover"][data-align="full"] { + + @include media(tablet) { + + .wp-block-cover { + padding-left: calc(10% + 64px); + padding-right: calc(10% + 64px); + } + } +} + +/** === Gallery === */ + +.wp-block-gallery { + + .blocks-gallery-image figcaption, + .blocks-gallery-item figcaption, + .gallery-item .gallery-caption { + font-size: $font__size-xs; + line-height: 1.6; + } +} + +/** === Button === */ + +.wp-block-button { + + .wp-block-button__link { + line-height: 1.8; + @include font-family( $font__heading ); + font-size: $font__size-sm; + font-weight: bold; + } + + &:not(.is-style-outline) .wp-block-button__link { + background: $color__background-button; + } + + &:not(.is-style-squared) .wp-block-button__link { + border-radius: 5px; + } + + &.is-style-outline, + &.is-style-outline:hover, + &.is-style-outline:focus, + &.is-style-outline:active { + background: transparent; + color: $color__background-button; + + .wp-block-button__link { + background: transparent; + + &:not(.has-text-color) { + color: $color__background-button; + } + } + } +} + +/** === Blockquote === */ + +.wp-block-quote { + + &:not(.is-large):not(.is-style-large) { + border-width: 2px; + border-color: $color__link; + } + + &.is-large, + &.is-style-large { + margin-top: $font__size-xxl; + margin-bottom: $font__size-xxl; + } + + &.is-large p, + &.is-style-large p { + font-size: $font__size-lg; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; + } + + cite, + footer, + .wp-block-quote__citation { + @include font-family( $font__heading ); + font-size: $font__size-xs; + line-height: 1.6; + color: $color__text-light; + } +} + +/** === Pullquote === */ + +.wp-block-pullquote { + border-color: transparent; + border-width: 2px; + color: #000; + + blockquote { + margin-top: calc(3 * #{ $size__spacing-unit}); + margin-bottom: calc(3.33 * #{ $size__spacing-unit}); + hyphens: auto; + word-break: break-word; + } + + &:not(.is-style-solid-color) .wp-block-pullquote__citation { + color: $color__text-light; + } + + &.is-style-solid-color { + + blockquote { + width: calc(100% - (2 * #{ $size__spacing-unit})); + max-width: calc( 100% - (2 * #{ $size__spacing-unit})); + + a, + &.has-text-color p, + &.has-text-color a { + color: inherit; + } + + &:not(.has-text-color) { + color: $color__background-body; + } + + @include media(tablet) { + max-width: 80%; + } + } + + &:not(.has-background-color) { + background-color: $color__link; + } + } +} + +.wp-block[data-type="core/pullquote"], +.wp-block[data-type="core/pullquote"][data-align="left"], +.wp-block[data-type="core/pullquote"][data-align="right"] { + + blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, + blockquote > .editor-rich-text p, + p { + font-size: $font__size-lg; + font-style: italic; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; + + @include media(tablet) { + font-size: $font__size-xl; + } + } + + .wp-block-pullquote__citation { + @include font-family( $font__heading ); + font-size: $font__size-xs; + line-height: 1.6; + text-transform: none; + } + + em { + font-style: normal; + } +} + +.wp-block[data-type="core/pullquote"][data-align="left"], +.wp-block[data-type="core/pullquote"][data-align="right"] { + + .editor-block-list__block-edit { + width: calc(4 * (100vw / 12)); + max-width: 50%; + + .wp-block-pullquote:not(.is-style-solid-color) { + padding: 0; + } + + .wp-block-pullquote.is-style-solid-color { + padding: 1em; + } + } + + blockquote > .block-library-pullquote__content .editor-rich-text__tinymce[data-is-empty="true"]::before, + blockquote > .editor-rich-text p, + p, + .wp-block-pullquote__citation { + text-align: left; + } +} + +.wp-block[data-type="core/pullquote"][data-align="full"] { + + @include media(tablet) { + + .wp-block-pullquote blockquote { + max-width: calc(80% - 128px); + } + } +} + + +/** === File === */ + +.wp-block-file { + @include font-family( $font__heading ); + + .wp-block-file__textlink { + text-decoration: underline; + color: $color__link; + + &:hover { + color: $color__link-hover; + text-decoration: none; + } + } + + .wp-block-file__button { + display: table; + line-height: 1.8; + font-size: $font__size-sm; + font-weight: bold; + background-color: $color__link; + border-radius: 5px; + } + + .wp-block-file__button-richtext-wrapper { + display: block; + margin-top: calc(0.75 * #{$size__spacing-unit}); + margin-left: 0; + } + +} + +/** === Verse === */ + +.wp-block-verse, +.wp-block-verse pre { + padding: 0; +} + +/** === Code === */ + +.wp-block-code { + border-radius: 0; +} + +/** === Table === */ + +.wp-block-table { + + td, th { + border-color: $color__text-light; + } +} + +/** === Separator === */ + +.wp-block-separator { + + &:not(.is-style-dots) { + background-color: $color__text-light; + height: 2px; + } + + &:not(.is-style-wide):not(.is-style-dots) { + width: $font__size-xl; + margin-left: 0; + } + + &.is-style-dots { + color: $color__text-light; + } + + &.is-style-dots:before { + font-size: $font__size-lg; + letter-spacing: calc(2 * #{$size__spacing-unit}); + padding-left: calc(2 * #{$size__spacing-unit}); + } +} + +/* Remove duplicate rule-line when a separator + * is followed by an H1, or H2 */ +.wp-block[data-type="core/separator"] + .wp-block[data-type="core/heading"] h1:before, +.wp-block[data-type="core/separator"] + .wp-block[data-type="core/heading"] h2:before { + display: none; +} + +/** === Latest Posts, Archives, Categories === */ + +ul.wp-block-archives, +.wp-block-categories, +.wp-block-latest-posts { + padding: 0; + list-style-type: none; + + ul { + padding: 0; + list-style-type: none; + } + + li { + + > a { + @include font-family( $font__heading ); + font-size: calc(#{$font__size_base} * #{$font__size-ratio}); + font-weight: bold; + line-height: $font__line-height-heading; + text-decoration: none; + } + + ul { + padding-left: $size__spacing-unit; + } + } +} + +.wp-block-categories { + + ul { + padding-top: ( .75 * $size__spacing-unit ); + @include nestedSubMenuPadding(); + } + + li ul { + list-style: none; + padding-left: 0; + margin-bottom: ( -.75 * $size__spacing-unit ); + } + +} + +/** === Latest Posts === */ +.wp-block-latest-posts { + + .wp-block-latest-posts__post-date { + @include font-family( $font__heading ); + font-size: $font__size-xs; + color: $color__text-light; + line-height: 1.2; + } + + .wp-block-latest-posts__post-full-content, + .wp-block-latest-posts__post-excerpt { + margin-top: $font__size_base; + margin-bottom: $font__size_base; + + > div > p:first-child { + margin-top: $font__size_base; + } + } + + li { + padding-bottom: ( .5 * $size__spacing-unit ); + + &.menu-item-has-children, + &:last-child { + padding-bottom: 0; + } + + :not(:last-child) .wp-block-latest-posts__post-excerpt { + padding-bottom: ( .5 * $size__spacing-unit ); + } + } + + &.is-grid { + li { + border-top: 2px solid $color__border; + padding-top: (1 * $size__spacing-unit); + margin-bottom: (2 * $size__spacing-unit); + a { + &:after { + content: ''; + } + } + &:last-child { + margin-bottom: auto; + a:after { + content: ''; + } + } + } + } +} + +/** === Latest Comments === */ + +.wp-block-latest-comments { + + .wp-block-latest-comments__comment-meta { + @include font-family( $font__heading ); + font-weight: bold; + + .wp-block-latest-comments__comment-date { + font-weight: normal; + } + } + + .wp-block-latest-comments__comment, + .wp-block-latest-comments__comment-date, + .wp-block-latest-comments__comment-excerpt p { + font-size: inherit; + } + + .wp-block-latest-comments__comment-date { + font-size: $font__size-xs; + } +} + +/** === Classic Editor === */ + +/* Properly center-align captions in the classic-editor block */ +.wp-caption { + dd { + color: $color__text-light; + font-size: $font__size-xs; + @include font-family( $font__heading ); + line-height: $font__line-height-pre; + margin: 0; + padding: ( $size__spacing-unit * .5 ); + text-align: left; + text-align: center; + -webkit-margin-start: 0px; + margin-inline-start: 0px; + } +} + +.wp-block-freeform { + + /* Add style for galleries in classic-editor block */ + blockquote { + border-left: 2px solid $color__link; + + cite { + @include font-family( $font__heading ); + font-size: $font__size-xs; + font-style: normal; + line-height: 1.6; + color: $color__text-light; + } + } +} + +/** === Group Block === */ + +// This matches the 22px value for 1rem that used on the front end. +// It must be specified in pixels for the editor, since the root font +// size is different here. +$group-block-background__padding: $font__size_base; + +.wp-block[data-type="core/group"] { + + // Group block base styles + > .editor-block-list__block-edit > div > .wp-block-group { + + // Child: Full alignment + > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + left: 0; + } + } + + // Group block with background color + > .editor-block-list__block-edit > div > .wp-block-group.has-background { + padding: $group-block-background__padding; + + // Child: Full alignment + > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + margin-left: -$group-block-background__padding; + width: calc(100% + #{$group-block-background__padding * 2}); + max-width: calc(100% + #{$group-block-background__padding * 2}); + } + } + + // Wide and full alignments + &[data-align="wide"] { + + // Group block base styles. + > .editor-block-list__block-edit > div > .wp-block-group { + + // Child blocks: Default alignments + > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="wide"]):not([data-align="full"]) { + @include media(tablet) { + width: calc(8 * (100vw / 12)); + } + + @include media(desktop) { + width: calc(6 * (100vw / 12 )); + } + } + } + + // Group block with background color + > .editor-block-list__block-edit > div > .wp-block-group.has-background { + + // Child blocks: Default alignments + > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block:not([data-align="wide"]):not([data-align="full"]) { + @include media(tablet) { + width: calc(8 * (100vw / 12) - #{$group-block-background__padding * 2}); + } + + @include media(desktop) { + width: calc(6 * (100vw / 12 ) - #{$group-block-background__padding * 2}); + } + } + } + } + + // Full alignment + &[data-align="full"] { + + // Max-width needs to be a pixel narrower than usual to prevent horizontal scrolling. + @include media(mobile) { + max-width: calc(100% + 89px); + } + @include media(tablet) { + max-width: calc(125% + 114px); + } + + // Group block base styles + > .editor-block-list__block-edit > div > .wp-block-group { + + // Margins & padding are added to this container to mimic + // the style + spacing of the .editor-writing-flow global + // container. This way, child items sync up with the placement + // and size of other top-level blocks. + > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout { + + @include media(mobile) { + padding-left: 46px; + padding-right: 46px; + } + + // 2px of extra padding are added to each side here + // To better match up with the spacing of the whole + // document. + @include media(tablet) { + width: 80%; + margin-left: 10%; + margin-right: 10%; + padding-left: 48px; + padding-right: 48px; + } + + // Child blocks: All alignments except full + > .wp-block:not([data-align="full"]) { + max-width: calc(100vw - (2 * 1rem)); + + @include media(tablet) { + max-width: calc(8 * (100vw / 12)); + } + + @include media(desktop) { + max-width: calc(6 * (100vw / 12)); + } + } + + // Child blocks: Right alignments + > .wp-block[data-align="right"] { + + @include media(tablet) { + max-width: 125%; + } + } + + // Child blocks: Wide alignments + > .wp-block[data-align="wide"] { + + @include media(tablet) { + width: calc(100% + 4px); + max-width: calc(100% + 4px); + } + } + + // Child blocks: Full alignments + > .wp-block[data-align=full] { + max-width: calc(100vw + (2 * 1rem)); + + @include media(mobile) { + width: calc(100% + 92px); + left: -46px; + } + + @include media(tablet) { + left: calc(-12.5% - 58px); + width: calc(125% + 120px); + max-width: calc(125% + 119px); + } + } + } + } + + // Group block with background color + > .editor-block-list__block-edit > div > .wp-block-group.has-background { + + // When the Group block is full width, we can remove the left/right padding + // and let this inherit the + padding: $group-block-background__padding 0; + + @include media(mobile) { + padding-left: 0; + padding-right: 0; + } + + // Child blocks: Full alignment + > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + margin-left: 0; + width: 100%; + + @include media(mobile) { + width: calc(100% + 92px); + } + + @include media(tablet) { + width: calc(125% + 120px); + } + } + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/style-rtl.css b/srcs/wordpress/wp-content/themes/twentynineteen/style-rtl.css new file mode 100644 index 0000000..84f857a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/style-rtl.css @@ -0,0 +1,6488 @@ +@charset "UTF-8"; +/* +Theme Name: Twenty Nineteen +Theme URI: https://wordpress.org/themes/twentynineteen/ +Author: the WordPress team +Author URI: https://wordpress.org/ +Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether you’re running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes. +Requires at least: 4.9.6 +Requires PHP: 5.2.4 +Version: 1.4 +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html +Text Domain: twentynineteen +Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready + +This theme, like WordPress, is licensed under the GPL. +Use it to make something cool, have fun, and share what you've learned with others. + +Twenty Nineteen is based on Underscores https://underscores.me/, (C) 2012-2019 Automattic, Inc. +Underscores is distributed under the terms of the GNU GPL v2 or later. + +Normalizing styles have been helped along thanks to the fine work of +Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/ +*/ +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +# Variables +# Normalize +# Typography + ## Headings + ## Copy +# Elements + ## Lists + ## Tables +# Forms + ## Buttons + ## Fields +# Navigation + ## Links + ## Menus + ## Next & Previous +# Accessibility +# Alignments +# Clearings +# Layout +# Widgets +# Content + ## Archives + ## Posts and pages + ## Comments +# Blocks +# Media + ## Captions + ## Galleries +--------------------------------------------------------------*/ +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the Classic and block + * editors. The following font-face override fixes the issue by manually inserting + * a custom font that includes just a Hoefler Text space replacement for that + * character instead. + */ +@font-face { + font-family: 'NonBreakingSpaceOverride'; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* If we add the border using a regular CSS border, it won't look good on non-retina devices, + * since its edges can look jagged due to lack of antialiasing. In this case, we are several + * layers of box-shadow to add the border visually, which will render the border smoother. */ +/* Calculates maximum width for post content */ +/* Nested sub-menu padding: 10 levels deep */ +/* Ensure all font family declarations come with non-latin fallbacks */ +/* Build our non-latin font styles */ +body:lang(ar), button:lang(ar), +input:lang(ar), +select:lang(ar), +optgroup:lang(ar), +textarea:lang(ar), .author-description .author-link:lang(ar), +.comment-metadata:lang(ar), +.comment-reply-link:lang(ar), +.comments-title:lang(ar), +.comment-author .fn:lang(ar), +.discussion-meta-info:lang(ar), +.entry-meta:lang(ar), +.entry-footer:lang(ar), +.main-navigation:lang(ar), +.no-comments:lang(ar), +.not-found .page-title:lang(ar), +.error-404 .page-title:lang(ar), +.post-navigation .post-title:lang(ar), +.page-links:lang(ar), +.page-description:lang(ar), +.pagination .nav-links:lang(ar), +.sticky-post:lang(ar), +.site-title:lang(ar), +.site-info:lang(ar), +#cancel-comment-reply-link:lang(ar), +h1:lang(ar), +h2:lang(ar), +h3:lang(ar), +h4:lang(ar), +h5:lang(ar), +h6:lang(ar), .page-title:lang(ar), blockquote cite:lang(ar), table:lang(ar), .button:lang(ar), +input:lang(ar)[type="button"], +input:lang(ar)[type="reset"], +input:lang(ar)[type="submit"], .comment-navigation .nav-previous:lang(ar), +.comment-navigation .nav-next:lang(ar), .comment-list .pingback .comment-body:lang(ar), +.comment-list .trackback .comment-body:lang(ar), .comment-list .pingback .comment-body .comment-edit-link:lang(ar), +.comment-list .trackback .comment-body .comment-edit-link:lang(ar), .comment-form .comment-notes:lang(ar), +.comment-form label:lang(ar), .widget_archive ul li:lang(ar), +.widget_categories ul li:lang(ar), +.widget_meta ul li:lang(ar), +.widget_nav_menu ul li:lang(ar), +.widget_pages ul li:lang(ar), +.widget_recent_comments ul li:lang(ar), +.widget_recent_entries ul li:lang(ar), +.widget_rss ul li:lang(ar), .widget_tag_cloud .tagcloud:lang(ar), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ar), .entry .entry-content .wp-block-archives li > a:lang(ar), +.entry .entry-content .wp-block-categories li > a:lang(ar), +.entry .entry-content .wp-block-latest-posts li > a:lang(ar), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ar), .entry .entry-content .wp-block-verse:lang(ar), .entry .entry-content .has-drop-cap:lang(ar):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ar), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ar), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ar), +.entry .entry-content .wp-block-cover-image h2:lang(ar), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ar), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ar), +.entry .entry-content .wp-block-cover h2:lang(ar), .entry .entry-content .wp-block-audio figcaption:lang(ar), +.entry .entry-content .wp-block-video figcaption:lang(ar), +.entry .entry-content .wp-block-image figcaption:lang(ar), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ar), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ar), .entry .entry-content .wp-block-file:lang(ar), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ar), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ar), .wp-caption-text:lang(ar), .gallery-caption:lang(ar) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ary), button:lang(ary), +input:lang(ary), +select:lang(ary), +optgroup:lang(ary), +textarea:lang(ary), .author-description .author-link:lang(ary), +.comment-metadata:lang(ary), +.comment-reply-link:lang(ary), +.comments-title:lang(ary), +.comment-author .fn:lang(ary), +.discussion-meta-info:lang(ary), +.entry-meta:lang(ary), +.entry-footer:lang(ary), +.main-navigation:lang(ary), +.no-comments:lang(ary), +.not-found .page-title:lang(ary), +.error-404 .page-title:lang(ary), +.post-navigation .post-title:lang(ary), +.page-links:lang(ary), +.page-description:lang(ary), +.pagination .nav-links:lang(ary), +.sticky-post:lang(ary), +.site-title:lang(ary), +.site-info:lang(ary), +#cancel-comment-reply-link:lang(ary), +h1:lang(ary), +h2:lang(ary), +h3:lang(ary), +h4:lang(ary), +h5:lang(ary), +h6:lang(ary), .page-title:lang(ary), blockquote cite:lang(ary), table:lang(ary), .button:lang(ary), +input:lang(ary)[type="button"], +input:lang(ary)[type="reset"], +input:lang(ary)[type="submit"], .comment-navigation .nav-previous:lang(ary), +.comment-navigation .nav-next:lang(ary), .comment-list .pingback .comment-body:lang(ary), +.comment-list .trackback .comment-body:lang(ary), .comment-list .pingback .comment-body .comment-edit-link:lang(ary), +.comment-list .trackback .comment-body .comment-edit-link:lang(ary), .comment-form .comment-notes:lang(ary), +.comment-form label:lang(ary), .widget_archive ul li:lang(ary), +.widget_categories ul li:lang(ary), +.widget_meta ul li:lang(ary), +.widget_nav_menu ul li:lang(ary), +.widget_pages ul li:lang(ary), +.widget_recent_comments ul li:lang(ary), +.widget_recent_entries ul li:lang(ary), +.widget_rss ul li:lang(ary), .widget_tag_cloud .tagcloud:lang(ary), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ary), .entry .entry-content .wp-block-archives li > a:lang(ary), +.entry .entry-content .wp-block-categories li > a:lang(ary), +.entry .entry-content .wp-block-latest-posts li > a:lang(ary), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ary), .entry .entry-content .wp-block-verse:lang(ary), .entry .entry-content .has-drop-cap:lang(ary):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ary), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ary), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ary), +.entry .entry-content .wp-block-cover-image h2:lang(ary), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ary), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ary), +.entry .entry-content .wp-block-cover h2:lang(ary), .entry .entry-content .wp-block-audio figcaption:lang(ary), +.entry .entry-content .wp-block-video figcaption:lang(ary), +.entry .entry-content .wp-block-image figcaption:lang(ary), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ary), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ary), .entry .entry-content .wp-block-file:lang(ary), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ary), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ary), .wp-caption-text:lang(ary), .gallery-caption:lang(ary) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(azb), button:lang(azb), +input:lang(azb), +select:lang(azb), +optgroup:lang(azb), +textarea:lang(azb), .author-description .author-link:lang(azb), +.comment-metadata:lang(azb), +.comment-reply-link:lang(azb), +.comments-title:lang(azb), +.comment-author .fn:lang(azb), +.discussion-meta-info:lang(azb), +.entry-meta:lang(azb), +.entry-footer:lang(azb), +.main-navigation:lang(azb), +.no-comments:lang(azb), +.not-found .page-title:lang(azb), +.error-404 .page-title:lang(azb), +.post-navigation .post-title:lang(azb), +.page-links:lang(azb), +.page-description:lang(azb), +.pagination .nav-links:lang(azb), +.sticky-post:lang(azb), +.site-title:lang(azb), +.site-info:lang(azb), +#cancel-comment-reply-link:lang(azb), +h1:lang(azb), +h2:lang(azb), +h3:lang(azb), +h4:lang(azb), +h5:lang(azb), +h6:lang(azb), .page-title:lang(azb), blockquote cite:lang(azb), table:lang(azb), .button:lang(azb), +input:lang(azb)[type="button"], +input:lang(azb)[type="reset"], +input:lang(azb)[type="submit"], .comment-navigation .nav-previous:lang(azb), +.comment-navigation .nav-next:lang(azb), .comment-list .pingback .comment-body:lang(azb), +.comment-list .trackback .comment-body:lang(azb), .comment-list .pingback .comment-body .comment-edit-link:lang(azb), +.comment-list .trackback .comment-body .comment-edit-link:lang(azb), .comment-form .comment-notes:lang(azb), +.comment-form label:lang(azb), .widget_archive ul li:lang(azb), +.widget_categories ul li:lang(azb), +.widget_meta ul li:lang(azb), +.widget_nav_menu ul li:lang(azb), +.widget_pages ul li:lang(azb), +.widget_recent_comments ul li:lang(azb), +.widget_recent_entries ul li:lang(azb), +.widget_rss ul li:lang(azb), .widget_tag_cloud .tagcloud:lang(azb), .entry .entry-content .wp-block-button .wp-block-button__link:lang(azb), .entry .entry-content .wp-block-archives li > a:lang(azb), +.entry .entry-content .wp-block-categories li > a:lang(azb), +.entry .entry-content .wp-block-latest-posts li > a:lang(azb), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(azb), .entry .entry-content .wp-block-verse:lang(azb), .entry .entry-content .has-drop-cap:lang(azb):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(azb), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(azb), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(azb), +.entry .entry-content .wp-block-cover-image h2:lang(azb), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(azb), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(azb), +.entry .entry-content .wp-block-cover h2:lang(azb), .entry .entry-content .wp-block-audio figcaption:lang(azb), +.entry .entry-content .wp-block-video figcaption:lang(azb), +.entry .entry-content .wp-block-image figcaption:lang(azb), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(azb), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(azb), .entry .entry-content .wp-block-file:lang(azb), .entry .entry-content .wp-block-file .wp-block-file__button:lang(azb), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(azb), .wp-caption-text:lang(azb), .gallery-caption:lang(azb) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ckb), button:lang(ckb), +input:lang(ckb), +select:lang(ckb), +optgroup:lang(ckb), +textarea:lang(ckb), .author-description .author-link:lang(ckb), +.comment-metadata:lang(ckb), +.comment-reply-link:lang(ckb), +.comments-title:lang(ckb), +.comment-author .fn:lang(ckb), +.discussion-meta-info:lang(ckb), +.entry-meta:lang(ckb), +.entry-footer:lang(ckb), +.main-navigation:lang(ckb), +.no-comments:lang(ckb), +.not-found .page-title:lang(ckb), +.error-404 .page-title:lang(ckb), +.post-navigation .post-title:lang(ckb), +.page-links:lang(ckb), +.page-description:lang(ckb), +.pagination .nav-links:lang(ckb), +.sticky-post:lang(ckb), +.site-title:lang(ckb), +.site-info:lang(ckb), +#cancel-comment-reply-link:lang(ckb), +h1:lang(ckb), +h2:lang(ckb), +h3:lang(ckb), +h4:lang(ckb), +h5:lang(ckb), +h6:lang(ckb), .page-title:lang(ckb), blockquote cite:lang(ckb), table:lang(ckb), .button:lang(ckb), +input:lang(ckb)[type="button"], +input:lang(ckb)[type="reset"], +input:lang(ckb)[type="submit"], .comment-navigation .nav-previous:lang(ckb), +.comment-navigation .nav-next:lang(ckb), .comment-list .pingback .comment-body:lang(ckb), +.comment-list .trackback .comment-body:lang(ckb), .comment-list .pingback .comment-body .comment-edit-link:lang(ckb), +.comment-list .trackback .comment-body .comment-edit-link:lang(ckb), .comment-form .comment-notes:lang(ckb), +.comment-form label:lang(ckb), .widget_archive ul li:lang(ckb), +.widget_categories ul li:lang(ckb), +.widget_meta ul li:lang(ckb), +.widget_nav_menu ul li:lang(ckb), +.widget_pages ul li:lang(ckb), +.widget_recent_comments ul li:lang(ckb), +.widget_recent_entries ul li:lang(ckb), +.widget_rss ul li:lang(ckb), .widget_tag_cloud .tagcloud:lang(ckb), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ckb), .entry .entry-content .wp-block-archives li > a:lang(ckb), +.entry .entry-content .wp-block-categories li > a:lang(ckb), +.entry .entry-content .wp-block-latest-posts li > a:lang(ckb), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ckb), .entry .entry-content .wp-block-verse:lang(ckb), .entry .entry-content .has-drop-cap:lang(ckb):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ckb), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ckb), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ckb), +.entry .entry-content .wp-block-cover-image h2:lang(ckb), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ckb), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ckb), +.entry .entry-content .wp-block-cover h2:lang(ckb), .entry .entry-content .wp-block-audio figcaption:lang(ckb), +.entry .entry-content .wp-block-video figcaption:lang(ckb), +.entry .entry-content .wp-block-image figcaption:lang(ckb), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ckb), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ckb), .entry .entry-content .wp-block-file:lang(ckb), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ckb), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ckb), .wp-caption-text:lang(ckb), .gallery-caption:lang(ckb) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(fa-IR), button:lang(fa-IR), +input:lang(fa-IR), +select:lang(fa-IR), +optgroup:lang(fa-IR), +textarea:lang(fa-IR), .author-description .author-link:lang(fa-IR), +.comment-metadata:lang(fa-IR), +.comment-reply-link:lang(fa-IR), +.comments-title:lang(fa-IR), +.comment-author .fn:lang(fa-IR), +.discussion-meta-info:lang(fa-IR), +.entry-meta:lang(fa-IR), +.entry-footer:lang(fa-IR), +.main-navigation:lang(fa-IR), +.no-comments:lang(fa-IR), +.not-found .page-title:lang(fa-IR), +.error-404 .page-title:lang(fa-IR), +.post-navigation .post-title:lang(fa-IR), +.page-links:lang(fa-IR), +.page-description:lang(fa-IR), +.pagination .nav-links:lang(fa-IR), +.sticky-post:lang(fa-IR), +.site-title:lang(fa-IR), +.site-info:lang(fa-IR), +#cancel-comment-reply-link:lang(fa-IR), +h1:lang(fa-IR), +h2:lang(fa-IR), +h3:lang(fa-IR), +h4:lang(fa-IR), +h5:lang(fa-IR), +h6:lang(fa-IR), .page-title:lang(fa-IR), blockquote cite:lang(fa-IR), table:lang(fa-IR), .button:lang(fa-IR), +input:lang(fa-IR)[type="button"], +input:lang(fa-IR)[type="reset"], +input:lang(fa-IR)[type="submit"], .comment-navigation .nav-previous:lang(fa-IR), +.comment-navigation .nav-next:lang(fa-IR), .comment-list .pingback .comment-body:lang(fa-IR), +.comment-list .trackback .comment-body:lang(fa-IR), .comment-list .pingback .comment-body .comment-edit-link:lang(fa-IR), +.comment-list .trackback .comment-body .comment-edit-link:lang(fa-IR), .comment-form .comment-notes:lang(fa-IR), +.comment-form label:lang(fa-IR), .widget_archive ul li:lang(fa-IR), +.widget_categories ul li:lang(fa-IR), +.widget_meta ul li:lang(fa-IR), +.widget_nav_menu ul li:lang(fa-IR), +.widget_pages ul li:lang(fa-IR), +.widget_recent_comments ul li:lang(fa-IR), +.widget_recent_entries ul li:lang(fa-IR), +.widget_rss ul li:lang(fa-IR), .widget_tag_cloud .tagcloud:lang(fa-IR), .entry .entry-content .wp-block-button .wp-block-button__link:lang(fa-IR), .entry .entry-content .wp-block-archives li > a:lang(fa-IR), +.entry .entry-content .wp-block-categories li > a:lang(fa-IR), +.entry .entry-content .wp-block-latest-posts li > a:lang(fa-IR), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(fa-IR), .entry .entry-content .wp-block-verse:lang(fa-IR), .entry .entry-content .has-drop-cap:lang(fa-IR):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(fa-IR), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(fa-IR), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(fa-IR), +.entry .entry-content .wp-block-cover-image h2:lang(fa-IR), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(fa-IR), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(fa-IR), +.entry .entry-content .wp-block-cover h2:lang(fa-IR), .entry .entry-content .wp-block-audio figcaption:lang(fa-IR), +.entry .entry-content .wp-block-video figcaption:lang(fa-IR), +.entry .entry-content .wp-block-image figcaption:lang(fa-IR), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(fa-IR), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(fa-IR), .entry .entry-content .wp-block-file:lang(fa-IR), .entry .entry-content .wp-block-file .wp-block-file__button:lang(fa-IR), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(fa-IR), .wp-caption-text:lang(fa-IR), .gallery-caption:lang(fa-IR) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(haz), button:lang(haz), +input:lang(haz), +select:lang(haz), +optgroup:lang(haz), +textarea:lang(haz), .author-description .author-link:lang(haz), +.comment-metadata:lang(haz), +.comment-reply-link:lang(haz), +.comments-title:lang(haz), +.comment-author .fn:lang(haz), +.discussion-meta-info:lang(haz), +.entry-meta:lang(haz), +.entry-footer:lang(haz), +.main-navigation:lang(haz), +.no-comments:lang(haz), +.not-found .page-title:lang(haz), +.error-404 .page-title:lang(haz), +.post-navigation .post-title:lang(haz), +.page-links:lang(haz), +.page-description:lang(haz), +.pagination .nav-links:lang(haz), +.sticky-post:lang(haz), +.site-title:lang(haz), +.site-info:lang(haz), +#cancel-comment-reply-link:lang(haz), +h1:lang(haz), +h2:lang(haz), +h3:lang(haz), +h4:lang(haz), +h5:lang(haz), +h6:lang(haz), .page-title:lang(haz), blockquote cite:lang(haz), table:lang(haz), .button:lang(haz), +input:lang(haz)[type="button"], +input:lang(haz)[type="reset"], +input:lang(haz)[type="submit"], .comment-navigation .nav-previous:lang(haz), +.comment-navigation .nav-next:lang(haz), .comment-list .pingback .comment-body:lang(haz), +.comment-list .trackback .comment-body:lang(haz), .comment-list .pingback .comment-body .comment-edit-link:lang(haz), +.comment-list .trackback .comment-body .comment-edit-link:lang(haz), .comment-form .comment-notes:lang(haz), +.comment-form label:lang(haz), .widget_archive ul li:lang(haz), +.widget_categories ul li:lang(haz), +.widget_meta ul li:lang(haz), +.widget_nav_menu ul li:lang(haz), +.widget_pages ul li:lang(haz), +.widget_recent_comments ul li:lang(haz), +.widget_recent_entries ul li:lang(haz), +.widget_rss ul li:lang(haz), .widget_tag_cloud .tagcloud:lang(haz), .entry .entry-content .wp-block-button .wp-block-button__link:lang(haz), .entry .entry-content .wp-block-archives li > a:lang(haz), +.entry .entry-content .wp-block-categories li > a:lang(haz), +.entry .entry-content .wp-block-latest-posts li > a:lang(haz), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(haz), .entry .entry-content .wp-block-verse:lang(haz), .entry .entry-content .has-drop-cap:lang(haz):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(haz), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(haz), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(haz), +.entry .entry-content .wp-block-cover-image h2:lang(haz), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(haz), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(haz), +.entry .entry-content .wp-block-cover h2:lang(haz), .entry .entry-content .wp-block-audio figcaption:lang(haz), +.entry .entry-content .wp-block-video figcaption:lang(haz), +.entry .entry-content .wp-block-image figcaption:lang(haz), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(haz), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(haz), .entry .entry-content .wp-block-file:lang(haz), .entry .entry-content .wp-block-file .wp-block-file__button:lang(haz), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(haz), .wp-caption-text:lang(haz), .gallery-caption:lang(haz) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ps), button:lang(ps), +input:lang(ps), +select:lang(ps), +optgroup:lang(ps), +textarea:lang(ps), .author-description .author-link:lang(ps), +.comment-metadata:lang(ps), +.comment-reply-link:lang(ps), +.comments-title:lang(ps), +.comment-author .fn:lang(ps), +.discussion-meta-info:lang(ps), +.entry-meta:lang(ps), +.entry-footer:lang(ps), +.main-navigation:lang(ps), +.no-comments:lang(ps), +.not-found .page-title:lang(ps), +.error-404 .page-title:lang(ps), +.post-navigation .post-title:lang(ps), +.page-links:lang(ps), +.page-description:lang(ps), +.pagination .nav-links:lang(ps), +.sticky-post:lang(ps), +.site-title:lang(ps), +.site-info:lang(ps), +#cancel-comment-reply-link:lang(ps), +h1:lang(ps), +h2:lang(ps), +h3:lang(ps), +h4:lang(ps), +h5:lang(ps), +h6:lang(ps), .page-title:lang(ps), blockquote cite:lang(ps), table:lang(ps), .button:lang(ps), +input:lang(ps)[type="button"], +input:lang(ps)[type="reset"], +input:lang(ps)[type="submit"], .comment-navigation .nav-previous:lang(ps), +.comment-navigation .nav-next:lang(ps), .comment-list .pingback .comment-body:lang(ps), +.comment-list .trackback .comment-body:lang(ps), .comment-list .pingback .comment-body .comment-edit-link:lang(ps), +.comment-list .trackback .comment-body .comment-edit-link:lang(ps), .comment-form .comment-notes:lang(ps), +.comment-form label:lang(ps), .widget_archive ul li:lang(ps), +.widget_categories ul li:lang(ps), +.widget_meta ul li:lang(ps), +.widget_nav_menu ul li:lang(ps), +.widget_pages ul li:lang(ps), +.widget_recent_comments ul li:lang(ps), +.widget_recent_entries ul li:lang(ps), +.widget_rss ul li:lang(ps), .widget_tag_cloud .tagcloud:lang(ps), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ps), .entry .entry-content .wp-block-archives li > a:lang(ps), +.entry .entry-content .wp-block-categories li > a:lang(ps), +.entry .entry-content .wp-block-latest-posts li > a:lang(ps), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ps), .entry .entry-content .wp-block-verse:lang(ps), .entry .entry-content .has-drop-cap:lang(ps):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ps), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ps), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ps), +.entry .entry-content .wp-block-cover-image h2:lang(ps), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ps), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ps), +.entry .entry-content .wp-block-cover h2:lang(ps), .entry .entry-content .wp-block-audio figcaption:lang(ps), +.entry .entry-content .wp-block-video figcaption:lang(ps), +.entry .entry-content .wp-block-image figcaption:lang(ps), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ps), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ps), .entry .entry-content .wp-block-file:lang(ps), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ps), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ps), .wp-caption-text:lang(ps), .gallery-caption:lang(ps) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(be), button:lang(be), +input:lang(be), +select:lang(be), +optgroup:lang(be), +textarea:lang(be), .author-description .author-link:lang(be), +.comment-metadata:lang(be), +.comment-reply-link:lang(be), +.comments-title:lang(be), +.comment-author .fn:lang(be), +.discussion-meta-info:lang(be), +.entry-meta:lang(be), +.entry-footer:lang(be), +.main-navigation:lang(be), +.no-comments:lang(be), +.not-found .page-title:lang(be), +.error-404 .page-title:lang(be), +.post-navigation .post-title:lang(be), +.page-links:lang(be), +.page-description:lang(be), +.pagination .nav-links:lang(be), +.sticky-post:lang(be), +.site-title:lang(be), +.site-info:lang(be), +#cancel-comment-reply-link:lang(be), +h1:lang(be), +h2:lang(be), +h3:lang(be), +h4:lang(be), +h5:lang(be), +h6:lang(be), .page-title:lang(be), blockquote cite:lang(be), table:lang(be), .button:lang(be), +input:lang(be)[type="button"], +input:lang(be)[type="reset"], +input:lang(be)[type="submit"], .comment-navigation .nav-previous:lang(be), +.comment-navigation .nav-next:lang(be), .comment-list .pingback .comment-body:lang(be), +.comment-list .trackback .comment-body:lang(be), .comment-list .pingback .comment-body .comment-edit-link:lang(be), +.comment-list .trackback .comment-body .comment-edit-link:lang(be), .comment-form .comment-notes:lang(be), +.comment-form label:lang(be), .widget_archive ul li:lang(be), +.widget_categories ul li:lang(be), +.widget_meta ul li:lang(be), +.widget_nav_menu ul li:lang(be), +.widget_pages ul li:lang(be), +.widget_recent_comments ul li:lang(be), +.widget_recent_entries ul li:lang(be), +.widget_rss ul li:lang(be), .widget_tag_cloud .tagcloud:lang(be), .entry .entry-content .wp-block-button .wp-block-button__link:lang(be), .entry .entry-content .wp-block-archives li > a:lang(be), +.entry .entry-content .wp-block-categories li > a:lang(be), +.entry .entry-content .wp-block-latest-posts li > a:lang(be), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(be), .entry .entry-content .wp-block-verse:lang(be), .entry .entry-content .has-drop-cap:lang(be):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(be), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(be), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(be), +.entry .entry-content .wp-block-cover-image h2:lang(be), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(be), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(be), +.entry .entry-content .wp-block-cover h2:lang(be), .entry .entry-content .wp-block-audio figcaption:lang(be), +.entry .entry-content .wp-block-video figcaption:lang(be), +.entry .entry-content .wp-block-image figcaption:lang(be), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(be), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(be), .entry .entry-content .wp-block-file:lang(be), .entry .entry-content .wp-block-file .wp-block-file__button:lang(be), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(be), .wp-caption-text:lang(be), .gallery-caption:lang(be) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(bg-BG), button:lang(bg-BG), +input:lang(bg-BG), +select:lang(bg-BG), +optgroup:lang(bg-BG), +textarea:lang(bg-BG), .author-description .author-link:lang(bg-BG), +.comment-metadata:lang(bg-BG), +.comment-reply-link:lang(bg-BG), +.comments-title:lang(bg-BG), +.comment-author .fn:lang(bg-BG), +.discussion-meta-info:lang(bg-BG), +.entry-meta:lang(bg-BG), +.entry-footer:lang(bg-BG), +.main-navigation:lang(bg-BG), +.no-comments:lang(bg-BG), +.not-found .page-title:lang(bg-BG), +.error-404 .page-title:lang(bg-BG), +.post-navigation .post-title:lang(bg-BG), +.page-links:lang(bg-BG), +.page-description:lang(bg-BG), +.pagination .nav-links:lang(bg-BG), +.sticky-post:lang(bg-BG), +.site-title:lang(bg-BG), +.site-info:lang(bg-BG), +#cancel-comment-reply-link:lang(bg-BG), +h1:lang(bg-BG), +h2:lang(bg-BG), +h3:lang(bg-BG), +h4:lang(bg-BG), +h5:lang(bg-BG), +h6:lang(bg-BG), .page-title:lang(bg-BG), blockquote cite:lang(bg-BG), table:lang(bg-BG), .button:lang(bg-BG), +input:lang(bg-BG)[type="button"], +input:lang(bg-BG)[type="reset"], +input:lang(bg-BG)[type="submit"], .comment-navigation .nav-previous:lang(bg-BG), +.comment-navigation .nav-next:lang(bg-BG), .comment-list .pingback .comment-body:lang(bg-BG), +.comment-list .trackback .comment-body:lang(bg-BG), .comment-list .pingback .comment-body .comment-edit-link:lang(bg-BG), +.comment-list .trackback .comment-body .comment-edit-link:lang(bg-BG), .comment-form .comment-notes:lang(bg-BG), +.comment-form label:lang(bg-BG), .widget_archive ul li:lang(bg-BG), +.widget_categories ul li:lang(bg-BG), +.widget_meta ul li:lang(bg-BG), +.widget_nav_menu ul li:lang(bg-BG), +.widget_pages ul li:lang(bg-BG), +.widget_recent_comments ul li:lang(bg-BG), +.widget_recent_entries ul li:lang(bg-BG), +.widget_rss ul li:lang(bg-BG), .widget_tag_cloud .tagcloud:lang(bg-BG), .entry .entry-content .wp-block-button .wp-block-button__link:lang(bg-BG), .entry .entry-content .wp-block-archives li > a:lang(bg-BG), +.entry .entry-content .wp-block-categories li > a:lang(bg-BG), +.entry .entry-content .wp-block-latest-posts li > a:lang(bg-BG), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(bg-BG), .entry .entry-content .wp-block-verse:lang(bg-BG), .entry .entry-content .has-drop-cap:lang(bg-BG):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(bg-BG), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(bg-BG), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(bg-BG), +.entry .entry-content .wp-block-cover-image h2:lang(bg-BG), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(bg-BG), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(bg-BG), +.entry .entry-content .wp-block-cover h2:lang(bg-BG), .entry .entry-content .wp-block-audio figcaption:lang(bg-BG), +.entry .entry-content .wp-block-video figcaption:lang(bg-BG), +.entry .entry-content .wp-block-image figcaption:lang(bg-BG), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(bg-BG), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(bg-BG), .entry .entry-content .wp-block-file:lang(bg-BG), .entry .entry-content .wp-block-file .wp-block-file__button:lang(bg-BG), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(bg-BG), .wp-caption-text:lang(bg-BG), .gallery-caption:lang(bg-BG) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(kk), button:lang(kk), +input:lang(kk), +select:lang(kk), +optgroup:lang(kk), +textarea:lang(kk), .author-description .author-link:lang(kk), +.comment-metadata:lang(kk), +.comment-reply-link:lang(kk), +.comments-title:lang(kk), +.comment-author .fn:lang(kk), +.discussion-meta-info:lang(kk), +.entry-meta:lang(kk), +.entry-footer:lang(kk), +.main-navigation:lang(kk), +.no-comments:lang(kk), +.not-found .page-title:lang(kk), +.error-404 .page-title:lang(kk), +.post-navigation .post-title:lang(kk), +.page-links:lang(kk), +.page-description:lang(kk), +.pagination .nav-links:lang(kk), +.sticky-post:lang(kk), +.site-title:lang(kk), +.site-info:lang(kk), +#cancel-comment-reply-link:lang(kk), +h1:lang(kk), +h2:lang(kk), +h3:lang(kk), +h4:lang(kk), +h5:lang(kk), +h6:lang(kk), .page-title:lang(kk), blockquote cite:lang(kk), table:lang(kk), .button:lang(kk), +input:lang(kk)[type="button"], +input:lang(kk)[type="reset"], +input:lang(kk)[type="submit"], .comment-navigation .nav-previous:lang(kk), +.comment-navigation .nav-next:lang(kk), .comment-list .pingback .comment-body:lang(kk), +.comment-list .trackback .comment-body:lang(kk), .comment-list .pingback .comment-body .comment-edit-link:lang(kk), +.comment-list .trackback .comment-body .comment-edit-link:lang(kk), .comment-form .comment-notes:lang(kk), +.comment-form label:lang(kk), .widget_archive ul li:lang(kk), +.widget_categories ul li:lang(kk), +.widget_meta ul li:lang(kk), +.widget_nav_menu ul li:lang(kk), +.widget_pages ul li:lang(kk), +.widget_recent_comments ul li:lang(kk), +.widget_recent_entries ul li:lang(kk), +.widget_rss ul li:lang(kk), .widget_tag_cloud .tagcloud:lang(kk), .entry .entry-content .wp-block-button .wp-block-button__link:lang(kk), .entry .entry-content .wp-block-archives li > a:lang(kk), +.entry .entry-content .wp-block-categories li > a:lang(kk), +.entry .entry-content .wp-block-latest-posts li > a:lang(kk), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(kk), .entry .entry-content .wp-block-verse:lang(kk), .entry .entry-content .has-drop-cap:lang(kk):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(kk), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(kk), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(kk), +.entry .entry-content .wp-block-cover-image h2:lang(kk), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(kk), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(kk), +.entry .entry-content .wp-block-cover h2:lang(kk), .entry .entry-content .wp-block-audio figcaption:lang(kk), +.entry .entry-content .wp-block-video figcaption:lang(kk), +.entry .entry-content .wp-block-image figcaption:lang(kk), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(kk), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(kk), .entry .entry-content .wp-block-file:lang(kk), .entry .entry-content .wp-block-file .wp-block-file__button:lang(kk), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(kk), .wp-caption-text:lang(kk), .gallery-caption:lang(kk) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(mk-MK), button:lang(mk-MK), +input:lang(mk-MK), +select:lang(mk-MK), +optgroup:lang(mk-MK), +textarea:lang(mk-MK), .author-description .author-link:lang(mk-MK), +.comment-metadata:lang(mk-MK), +.comment-reply-link:lang(mk-MK), +.comments-title:lang(mk-MK), +.comment-author .fn:lang(mk-MK), +.discussion-meta-info:lang(mk-MK), +.entry-meta:lang(mk-MK), +.entry-footer:lang(mk-MK), +.main-navigation:lang(mk-MK), +.no-comments:lang(mk-MK), +.not-found .page-title:lang(mk-MK), +.error-404 .page-title:lang(mk-MK), +.post-navigation .post-title:lang(mk-MK), +.page-links:lang(mk-MK), +.page-description:lang(mk-MK), +.pagination .nav-links:lang(mk-MK), +.sticky-post:lang(mk-MK), +.site-title:lang(mk-MK), +.site-info:lang(mk-MK), +#cancel-comment-reply-link:lang(mk-MK), +h1:lang(mk-MK), +h2:lang(mk-MK), +h3:lang(mk-MK), +h4:lang(mk-MK), +h5:lang(mk-MK), +h6:lang(mk-MK), .page-title:lang(mk-MK), blockquote cite:lang(mk-MK), table:lang(mk-MK), .button:lang(mk-MK), +input:lang(mk-MK)[type="button"], +input:lang(mk-MK)[type="reset"], +input:lang(mk-MK)[type="submit"], .comment-navigation .nav-previous:lang(mk-MK), +.comment-navigation .nav-next:lang(mk-MK), .comment-list .pingback .comment-body:lang(mk-MK), +.comment-list .trackback .comment-body:lang(mk-MK), .comment-list .pingback .comment-body .comment-edit-link:lang(mk-MK), +.comment-list .trackback .comment-body .comment-edit-link:lang(mk-MK), .comment-form .comment-notes:lang(mk-MK), +.comment-form label:lang(mk-MK), .widget_archive ul li:lang(mk-MK), +.widget_categories ul li:lang(mk-MK), +.widget_meta ul li:lang(mk-MK), +.widget_nav_menu ul li:lang(mk-MK), +.widget_pages ul li:lang(mk-MK), +.widget_recent_comments ul li:lang(mk-MK), +.widget_recent_entries ul li:lang(mk-MK), +.widget_rss ul li:lang(mk-MK), .widget_tag_cloud .tagcloud:lang(mk-MK), .entry .entry-content .wp-block-button .wp-block-button__link:lang(mk-MK), .entry .entry-content .wp-block-archives li > a:lang(mk-MK), +.entry .entry-content .wp-block-categories li > a:lang(mk-MK), +.entry .entry-content .wp-block-latest-posts li > a:lang(mk-MK), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mk-MK), .entry .entry-content .wp-block-verse:lang(mk-MK), .entry .entry-content .has-drop-cap:lang(mk-MK):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(mk-MK), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(mk-MK), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(mk-MK), +.entry .entry-content .wp-block-cover-image h2:lang(mk-MK), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(mk-MK), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(mk-MK), +.entry .entry-content .wp-block-cover h2:lang(mk-MK), .entry .entry-content .wp-block-audio figcaption:lang(mk-MK), +.entry .entry-content .wp-block-video figcaption:lang(mk-MK), +.entry .entry-content .wp-block-image figcaption:lang(mk-MK), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(mk-MK), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(mk-MK), .entry .entry-content .wp-block-file:lang(mk-MK), .entry .entry-content .wp-block-file .wp-block-file__button:lang(mk-MK), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mk-MK), .wp-caption-text:lang(mk-MK), .gallery-caption:lang(mk-MK) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(mn), button:lang(mn), +input:lang(mn), +select:lang(mn), +optgroup:lang(mn), +textarea:lang(mn), .author-description .author-link:lang(mn), +.comment-metadata:lang(mn), +.comment-reply-link:lang(mn), +.comments-title:lang(mn), +.comment-author .fn:lang(mn), +.discussion-meta-info:lang(mn), +.entry-meta:lang(mn), +.entry-footer:lang(mn), +.main-navigation:lang(mn), +.no-comments:lang(mn), +.not-found .page-title:lang(mn), +.error-404 .page-title:lang(mn), +.post-navigation .post-title:lang(mn), +.page-links:lang(mn), +.page-description:lang(mn), +.pagination .nav-links:lang(mn), +.sticky-post:lang(mn), +.site-title:lang(mn), +.site-info:lang(mn), +#cancel-comment-reply-link:lang(mn), +h1:lang(mn), +h2:lang(mn), +h3:lang(mn), +h4:lang(mn), +h5:lang(mn), +h6:lang(mn), .page-title:lang(mn), blockquote cite:lang(mn), table:lang(mn), .button:lang(mn), +input:lang(mn)[type="button"], +input:lang(mn)[type="reset"], +input:lang(mn)[type="submit"], .comment-navigation .nav-previous:lang(mn), +.comment-navigation .nav-next:lang(mn), .comment-list .pingback .comment-body:lang(mn), +.comment-list .trackback .comment-body:lang(mn), .comment-list .pingback .comment-body .comment-edit-link:lang(mn), +.comment-list .trackback .comment-body .comment-edit-link:lang(mn), .comment-form .comment-notes:lang(mn), +.comment-form label:lang(mn), .widget_archive ul li:lang(mn), +.widget_categories ul li:lang(mn), +.widget_meta ul li:lang(mn), +.widget_nav_menu ul li:lang(mn), +.widget_pages ul li:lang(mn), +.widget_recent_comments ul li:lang(mn), +.widget_recent_entries ul li:lang(mn), +.widget_rss ul li:lang(mn), .widget_tag_cloud .tagcloud:lang(mn), .entry .entry-content .wp-block-button .wp-block-button__link:lang(mn), .entry .entry-content .wp-block-archives li > a:lang(mn), +.entry .entry-content .wp-block-categories li > a:lang(mn), +.entry .entry-content .wp-block-latest-posts li > a:lang(mn), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mn), .entry .entry-content .wp-block-verse:lang(mn), .entry .entry-content .has-drop-cap:lang(mn):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(mn), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(mn), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(mn), +.entry .entry-content .wp-block-cover-image h2:lang(mn), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(mn), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(mn), +.entry .entry-content .wp-block-cover h2:lang(mn), .entry .entry-content .wp-block-audio figcaption:lang(mn), +.entry .entry-content .wp-block-video figcaption:lang(mn), +.entry .entry-content .wp-block-image figcaption:lang(mn), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(mn), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(mn), .entry .entry-content .wp-block-file:lang(mn), .entry .entry-content .wp-block-file .wp-block-file__button:lang(mn), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mn), .wp-caption-text:lang(mn), .gallery-caption:lang(mn) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(ru-RU), button:lang(ru-RU), +input:lang(ru-RU), +select:lang(ru-RU), +optgroup:lang(ru-RU), +textarea:lang(ru-RU), .author-description .author-link:lang(ru-RU), +.comment-metadata:lang(ru-RU), +.comment-reply-link:lang(ru-RU), +.comments-title:lang(ru-RU), +.comment-author .fn:lang(ru-RU), +.discussion-meta-info:lang(ru-RU), +.entry-meta:lang(ru-RU), +.entry-footer:lang(ru-RU), +.main-navigation:lang(ru-RU), +.no-comments:lang(ru-RU), +.not-found .page-title:lang(ru-RU), +.error-404 .page-title:lang(ru-RU), +.post-navigation .post-title:lang(ru-RU), +.page-links:lang(ru-RU), +.page-description:lang(ru-RU), +.pagination .nav-links:lang(ru-RU), +.sticky-post:lang(ru-RU), +.site-title:lang(ru-RU), +.site-info:lang(ru-RU), +#cancel-comment-reply-link:lang(ru-RU), +h1:lang(ru-RU), +h2:lang(ru-RU), +h3:lang(ru-RU), +h4:lang(ru-RU), +h5:lang(ru-RU), +h6:lang(ru-RU), .page-title:lang(ru-RU), blockquote cite:lang(ru-RU), table:lang(ru-RU), .button:lang(ru-RU), +input:lang(ru-RU)[type="button"], +input:lang(ru-RU)[type="reset"], +input:lang(ru-RU)[type="submit"], .comment-navigation .nav-previous:lang(ru-RU), +.comment-navigation .nav-next:lang(ru-RU), .comment-list .pingback .comment-body:lang(ru-RU), +.comment-list .trackback .comment-body:lang(ru-RU), .comment-list .pingback .comment-body .comment-edit-link:lang(ru-RU), +.comment-list .trackback .comment-body .comment-edit-link:lang(ru-RU), .comment-form .comment-notes:lang(ru-RU), +.comment-form label:lang(ru-RU), .widget_archive ul li:lang(ru-RU), +.widget_categories ul li:lang(ru-RU), +.widget_meta ul li:lang(ru-RU), +.widget_nav_menu ul li:lang(ru-RU), +.widget_pages ul li:lang(ru-RU), +.widget_recent_comments ul li:lang(ru-RU), +.widget_recent_entries ul li:lang(ru-RU), +.widget_rss ul li:lang(ru-RU), .widget_tag_cloud .tagcloud:lang(ru-RU), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ru-RU), .entry .entry-content .wp-block-archives li > a:lang(ru-RU), +.entry .entry-content .wp-block-categories li > a:lang(ru-RU), +.entry .entry-content .wp-block-latest-posts li > a:lang(ru-RU), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ru-RU), .entry .entry-content .wp-block-verse:lang(ru-RU), .entry .entry-content .has-drop-cap:lang(ru-RU):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ru-RU), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ru-RU), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ru-RU), +.entry .entry-content .wp-block-cover-image h2:lang(ru-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ru-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ru-RU), +.entry .entry-content .wp-block-cover h2:lang(ru-RU), .entry .entry-content .wp-block-audio figcaption:lang(ru-RU), +.entry .entry-content .wp-block-video figcaption:lang(ru-RU), +.entry .entry-content .wp-block-image figcaption:lang(ru-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ru-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ru-RU), .entry .entry-content .wp-block-file:lang(ru-RU), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ru-RU), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ru-RU), .wp-caption-text:lang(ru-RU), .gallery-caption:lang(ru-RU) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(sah), button:lang(sah), +input:lang(sah), +select:lang(sah), +optgroup:lang(sah), +textarea:lang(sah), .author-description .author-link:lang(sah), +.comment-metadata:lang(sah), +.comment-reply-link:lang(sah), +.comments-title:lang(sah), +.comment-author .fn:lang(sah), +.discussion-meta-info:lang(sah), +.entry-meta:lang(sah), +.entry-footer:lang(sah), +.main-navigation:lang(sah), +.no-comments:lang(sah), +.not-found .page-title:lang(sah), +.error-404 .page-title:lang(sah), +.post-navigation .post-title:lang(sah), +.page-links:lang(sah), +.page-description:lang(sah), +.pagination .nav-links:lang(sah), +.sticky-post:lang(sah), +.site-title:lang(sah), +.site-info:lang(sah), +#cancel-comment-reply-link:lang(sah), +h1:lang(sah), +h2:lang(sah), +h3:lang(sah), +h4:lang(sah), +h5:lang(sah), +h6:lang(sah), .page-title:lang(sah), blockquote cite:lang(sah), table:lang(sah), .button:lang(sah), +input:lang(sah)[type="button"], +input:lang(sah)[type="reset"], +input:lang(sah)[type="submit"], .comment-navigation .nav-previous:lang(sah), +.comment-navigation .nav-next:lang(sah), .comment-list .pingback .comment-body:lang(sah), +.comment-list .trackback .comment-body:lang(sah), .comment-list .pingback .comment-body .comment-edit-link:lang(sah), +.comment-list .trackback .comment-body .comment-edit-link:lang(sah), .comment-form .comment-notes:lang(sah), +.comment-form label:lang(sah), .widget_archive ul li:lang(sah), +.widget_categories ul li:lang(sah), +.widget_meta ul li:lang(sah), +.widget_nav_menu ul li:lang(sah), +.widget_pages ul li:lang(sah), +.widget_recent_comments ul li:lang(sah), +.widget_recent_entries ul li:lang(sah), +.widget_rss ul li:lang(sah), .widget_tag_cloud .tagcloud:lang(sah), .entry .entry-content .wp-block-button .wp-block-button__link:lang(sah), .entry .entry-content .wp-block-archives li > a:lang(sah), +.entry .entry-content .wp-block-categories li > a:lang(sah), +.entry .entry-content .wp-block-latest-posts li > a:lang(sah), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(sah), .entry .entry-content .wp-block-verse:lang(sah), .entry .entry-content .has-drop-cap:lang(sah):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(sah), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(sah), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(sah), +.entry .entry-content .wp-block-cover-image h2:lang(sah), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(sah), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(sah), +.entry .entry-content .wp-block-cover h2:lang(sah), .entry .entry-content .wp-block-audio figcaption:lang(sah), +.entry .entry-content .wp-block-video figcaption:lang(sah), +.entry .entry-content .wp-block-image figcaption:lang(sah), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(sah), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(sah), .entry .entry-content .wp-block-file:lang(sah), .entry .entry-content .wp-block-file .wp-block-file__button:lang(sah), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(sah), .wp-caption-text:lang(sah), .gallery-caption:lang(sah) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(sr-RS), button:lang(sr-RS), +input:lang(sr-RS), +select:lang(sr-RS), +optgroup:lang(sr-RS), +textarea:lang(sr-RS), .author-description .author-link:lang(sr-RS), +.comment-metadata:lang(sr-RS), +.comment-reply-link:lang(sr-RS), +.comments-title:lang(sr-RS), +.comment-author .fn:lang(sr-RS), +.discussion-meta-info:lang(sr-RS), +.entry-meta:lang(sr-RS), +.entry-footer:lang(sr-RS), +.main-navigation:lang(sr-RS), +.no-comments:lang(sr-RS), +.not-found .page-title:lang(sr-RS), +.error-404 .page-title:lang(sr-RS), +.post-navigation .post-title:lang(sr-RS), +.page-links:lang(sr-RS), +.page-description:lang(sr-RS), +.pagination .nav-links:lang(sr-RS), +.sticky-post:lang(sr-RS), +.site-title:lang(sr-RS), +.site-info:lang(sr-RS), +#cancel-comment-reply-link:lang(sr-RS), +h1:lang(sr-RS), +h2:lang(sr-RS), +h3:lang(sr-RS), +h4:lang(sr-RS), +h5:lang(sr-RS), +h6:lang(sr-RS), .page-title:lang(sr-RS), blockquote cite:lang(sr-RS), table:lang(sr-RS), .button:lang(sr-RS), +input:lang(sr-RS)[type="button"], +input:lang(sr-RS)[type="reset"], +input:lang(sr-RS)[type="submit"], .comment-navigation .nav-previous:lang(sr-RS), +.comment-navigation .nav-next:lang(sr-RS), .comment-list .pingback .comment-body:lang(sr-RS), +.comment-list .trackback .comment-body:lang(sr-RS), .comment-list .pingback .comment-body .comment-edit-link:lang(sr-RS), +.comment-list .trackback .comment-body .comment-edit-link:lang(sr-RS), .comment-form .comment-notes:lang(sr-RS), +.comment-form label:lang(sr-RS), .widget_archive ul li:lang(sr-RS), +.widget_categories ul li:lang(sr-RS), +.widget_meta ul li:lang(sr-RS), +.widget_nav_menu ul li:lang(sr-RS), +.widget_pages ul li:lang(sr-RS), +.widget_recent_comments ul li:lang(sr-RS), +.widget_recent_entries ul li:lang(sr-RS), +.widget_rss ul li:lang(sr-RS), .widget_tag_cloud .tagcloud:lang(sr-RS), .entry .entry-content .wp-block-button .wp-block-button__link:lang(sr-RS), .entry .entry-content .wp-block-archives li > a:lang(sr-RS), +.entry .entry-content .wp-block-categories li > a:lang(sr-RS), +.entry .entry-content .wp-block-latest-posts li > a:lang(sr-RS), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(sr-RS), .entry .entry-content .wp-block-verse:lang(sr-RS), .entry .entry-content .has-drop-cap:lang(sr-RS):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(sr-RS), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(sr-RS), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(sr-RS), +.entry .entry-content .wp-block-cover-image h2:lang(sr-RS), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(sr-RS), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(sr-RS), +.entry .entry-content .wp-block-cover h2:lang(sr-RS), .entry .entry-content .wp-block-audio figcaption:lang(sr-RS), +.entry .entry-content .wp-block-video figcaption:lang(sr-RS), +.entry .entry-content .wp-block-image figcaption:lang(sr-RS), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(sr-RS), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(sr-RS), .entry .entry-content .wp-block-file:lang(sr-RS), .entry .entry-content .wp-block-file .wp-block-file__button:lang(sr-RS), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(sr-RS), .wp-caption-text:lang(sr-RS), .gallery-caption:lang(sr-RS) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(tt-RU), button:lang(tt-RU), +input:lang(tt-RU), +select:lang(tt-RU), +optgroup:lang(tt-RU), +textarea:lang(tt-RU), .author-description .author-link:lang(tt-RU), +.comment-metadata:lang(tt-RU), +.comment-reply-link:lang(tt-RU), +.comments-title:lang(tt-RU), +.comment-author .fn:lang(tt-RU), +.discussion-meta-info:lang(tt-RU), +.entry-meta:lang(tt-RU), +.entry-footer:lang(tt-RU), +.main-navigation:lang(tt-RU), +.no-comments:lang(tt-RU), +.not-found .page-title:lang(tt-RU), +.error-404 .page-title:lang(tt-RU), +.post-navigation .post-title:lang(tt-RU), +.page-links:lang(tt-RU), +.page-description:lang(tt-RU), +.pagination .nav-links:lang(tt-RU), +.sticky-post:lang(tt-RU), +.site-title:lang(tt-RU), +.site-info:lang(tt-RU), +#cancel-comment-reply-link:lang(tt-RU), +h1:lang(tt-RU), +h2:lang(tt-RU), +h3:lang(tt-RU), +h4:lang(tt-RU), +h5:lang(tt-RU), +h6:lang(tt-RU), .page-title:lang(tt-RU), blockquote cite:lang(tt-RU), table:lang(tt-RU), .button:lang(tt-RU), +input:lang(tt-RU)[type="button"], +input:lang(tt-RU)[type="reset"], +input:lang(tt-RU)[type="submit"], .comment-navigation .nav-previous:lang(tt-RU), +.comment-navigation .nav-next:lang(tt-RU), .comment-list .pingback .comment-body:lang(tt-RU), +.comment-list .trackback .comment-body:lang(tt-RU), .comment-list .pingback .comment-body .comment-edit-link:lang(tt-RU), +.comment-list .trackback .comment-body .comment-edit-link:lang(tt-RU), .comment-form .comment-notes:lang(tt-RU), +.comment-form label:lang(tt-RU), .widget_archive ul li:lang(tt-RU), +.widget_categories ul li:lang(tt-RU), +.widget_meta ul li:lang(tt-RU), +.widget_nav_menu ul li:lang(tt-RU), +.widget_pages ul li:lang(tt-RU), +.widget_recent_comments ul li:lang(tt-RU), +.widget_recent_entries ul li:lang(tt-RU), +.widget_rss ul li:lang(tt-RU), .widget_tag_cloud .tagcloud:lang(tt-RU), .entry .entry-content .wp-block-button .wp-block-button__link:lang(tt-RU), .entry .entry-content .wp-block-archives li > a:lang(tt-RU), +.entry .entry-content .wp-block-categories li > a:lang(tt-RU), +.entry .entry-content .wp-block-latest-posts li > a:lang(tt-RU), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(tt-RU), .entry .entry-content .wp-block-verse:lang(tt-RU), .entry .entry-content .has-drop-cap:lang(tt-RU):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(tt-RU), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(tt-RU), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(tt-RU), +.entry .entry-content .wp-block-cover-image h2:lang(tt-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(tt-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(tt-RU), +.entry .entry-content .wp-block-cover h2:lang(tt-RU), .entry .entry-content .wp-block-audio figcaption:lang(tt-RU), +.entry .entry-content .wp-block-video figcaption:lang(tt-RU), +.entry .entry-content .wp-block-image figcaption:lang(tt-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(tt-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(tt-RU), .entry .entry-content .wp-block-file:lang(tt-RU), .entry .entry-content .wp-block-file .wp-block-file__button:lang(tt-RU), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(tt-RU), .wp-caption-text:lang(tt-RU), .gallery-caption:lang(tt-RU) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(uk), button:lang(uk), +input:lang(uk), +select:lang(uk), +optgroup:lang(uk), +textarea:lang(uk), .author-description .author-link:lang(uk), +.comment-metadata:lang(uk), +.comment-reply-link:lang(uk), +.comments-title:lang(uk), +.comment-author .fn:lang(uk), +.discussion-meta-info:lang(uk), +.entry-meta:lang(uk), +.entry-footer:lang(uk), +.main-navigation:lang(uk), +.no-comments:lang(uk), +.not-found .page-title:lang(uk), +.error-404 .page-title:lang(uk), +.post-navigation .post-title:lang(uk), +.page-links:lang(uk), +.page-description:lang(uk), +.pagination .nav-links:lang(uk), +.sticky-post:lang(uk), +.site-title:lang(uk), +.site-info:lang(uk), +#cancel-comment-reply-link:lang(uk), +h1:lang(uk), +h2:lang(uk), +h3:lang(uk), +h4:lang(uk), +h5:lang(uk), +h6:lang(uk), .page-title:lang(uk), blockquote cite:lang(uk), table:lang(uk), .button:lang(uk), +input:lang(uk)[type="button"], +input:lang(uk)[type="reset"], +input:lang(uk)[type="submit"], .comment-navigation .nav-previous:lang(uk), +.comment-navigation .nav-next:lang(uk), .comment-list .pingback .comment-body:lang(uk), +.comment-list .trackback .comment-body:lang(uk), .comment-list .pingback .comment-body .comment-edit-link:lang(uk), +.comment-list .trackback .comment-body .comment-edit-link:lang(uk), .comment-form .comment-notes:lang(uk), +.comment-form label:lang(uk), .widget_archive ul li:lang(uk), +.widget_categories ul li:lang(uk), +.widget_meta ul li:lang(uk), +.widget_nav_menu ul li:lang(uk), +.widget_pages ul li:lang(uk), +.widget_recent_comments ul li:lang(uk), +.widget_recent_entries ul li:lang(uk), +.widget_rss ul li:lang(uk), .widget_tag_cloud .tagcloud:lang(uk), .entry .entry-content .wp-block-button .wp-block-button__link:lang(uk), .entry .entry-content .wp-block-archives li > a:lang(uk), +.entry .entry-content .wp-block-categories li > a:lang(uk), +.entry .entry-content .wp-block-latest-posts li > a:lang(uk), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(uk), .entry .entry-content .wp-block-verse:lang(uk), .entry .entry-content .has-drop-cap:lang(uk):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(uk), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(uk), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(uk), +.entry .entry-content .wp-block-cover-image h2:lang(uk), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(uk), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(uk), +.entry .entry-content .wp-block-cover h2:lang(uk), .entry .entry-content .wp-block-audio figcaption:lang(uk), +.entry .entry-content .wp-block-video figcaption:lang(uk), +.entry .entry-content .wp-block-image figcaption:lang(uk), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(uk), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(uk), .entry .entry-content .wp-block-file:lang(uk), .entry .entry-content .wp-block-file .wp-block-file__button:lang(uk), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(uk), .wp-caption-text:lang(uk), .gallery-caption:lang(uk) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(zh-HK), button:lang(zh-HK), +input:lang(zh-HK), +select:lang(zh-HK), +optgroup:lang(zh-HK), +textarea:lang(zh-HK), .author-description .author-link:lang(zh-HK), +.comment-metadata:lang(zh-HK), +.comment-reply-link:lang(zh-HK), +.comments-title:lang(zh-HK), +.comment-author .fn:lang(zh-HK), +.discussion-meta-info:lang(zh-HK), +.entry-meta:lang(zh-HK), +.entry-footer:lang(zh-HK), +.main-navigation:lang(zh-HK), +.no-comments:lang(zh-HK), +.not-found .page-title:lang(zh-HK), +.error-404 .page-title:lang(zh-HK), +.post-navigation .post-title:lang(zh-HK), +.page-links:lang(zh-HK), +.page-description:lang(zh-HK), +.pagination .nav-links:lang(zh-HK), +.sticky-post:lang(zh-HK), +.site-title:lang(zh-HK), +.site-info:lang(zh-HK), +#cancel-comment-reply-link:lang(zh-HK), +h1:lang(zh-HK), +h2:lang(zh-HK), +h3:lang(zh-HK), +h4:lang(zh-HK), +h5:lang(zh-HK), +h6:lang(zh-HK), .page-title:lang(zh-HK), blockquote cite:lang(zh-HK), table:lang(zh-HK), .button:lang(zh-HK), +input:lang(zh-HK)[type="button"], +input:lang(zh-HK)[type="reset"], +input:lang(zh-HK)[type="submit"], .comment-navigation .nav-previous:lang(zh-HK), +.comment-navigation .nav-next:lang(zh-HK), .comment-list .pingback .comment-body:lang(zh-HK), +.comment-list .trackback .comment-body:lang(zh-HK), .comment-list .pingback .comment-body .comment-edit-link:lang(zh-HK), +.comment-list .trackback .comment-body .comment-edit-link:lang(zh-HK), .comment-form .comment-notes:lang(zh-HK), +.comment-form label:lang(zh-HK), .widget_archive ul li:lang(zh-HK), +.widget_categories ul li:lang(zh-HK), +.widget_meta ul li:lang(zh-HK), +.widget_nav_menu ul li:lang(zh-HK), +.widget_pages ul li:lang(zh-HK), +.widget_recent_comments ul li:lang(zh-HK), +.widget_recent_entries ul li:lang(zh-HK), +.widget_rss ul li:lang(zh-HK), .widget_tag_cloud .tagcloud:lang(zh-HK), .entry .entry-content .wp-block-button .wp-block-button__link:lang(zh-HK), .entry .entry-content .wp-block-archives li > a:lang(zh-HK), +.entry .entry-content .wp-block-categories li > a:lang(zh-HK), +.entry .entry-content .wp-block-latest-posts li > a:lang(zh-HK), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-HK), .entry .entry-content .wp-block-verse:lang(zh-HK), .entry .entry-content .has-drop-cap:lang(zh-HK):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(zh-HK), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(zh-HK), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(zh-HK), +.entry .entry-content .wp-block-cover-image h2:lang(zh-HK), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(zh-HK), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(zh-HK), +.entry .entry-content .wp-block-cover h2:lang(zh-HK), .entry .entry-content .wp-block-audio figcaption:lang(zh-HK), +.entry .entry-content .wp-block-video figcaption:lang(zh-HK), +.entry .entry-content .wp-block-image figcaption:lang(zh-HK), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(zh-HK), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(zh-HK), .entry .entry-content .wp-block-file:lang(zh-HK), .entry .entry-content .wp-block-file .wp-block-file__button:lang(zh-HK), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-HK), .wp-caption-text:lang(zh-HK), .gallery-caption:lang(zh-HK) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang HK", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(zh-TW), button:lang(zh-TW), +input:lang(zh-TW), +select:lang(zh-TW), +optgroup:lang(zh-TW), +textarea:lang(zh-TW), .author-description .author-link:lang(zh-TW), +.comment-metadata:lang(zh-TW), +.comment-reply-link:lang(zh-TW), +.comments-title:lang(zh-TW), +.comment-author .fn:lang(zh-TW), +.discussion-meta-info:lang(zh-TW), +.entry-meta:lang(zh-TW), +.entry-footer:lang(zh-TW), +.main-navigation:lang(zh-TW), +.no-comments:lang(zh-TW), +.not-found .page-title:lang(zh-TW), +.error-404 .page-title:lang(zh-TW), +.post-navigation .post-title:lang(zh-TW), +.page-links:lang(zh-TW), +.page-description:lang(zh-TW), +.pagination .nav-links:lang(zh-TW), +.sticky-post:lang(zh-TW), +.site-title:lang(zh-TW), +.site-info:lang(zh-TW), +#cancel-comment-reply-link:lang(zh-TW), +h1:lang(zh-TW), +h2:lang(zh-TW), +h3:lang(zh-TW), +h4:lang(zh-TW), +h5:lang(zh-TW), +h6:lang(zh-TW), .page-title:lang(zh-TW), blockquote cite:lang(zh-TW), table:lang(zh-TW), .button:lang(zh-TW), +input:lang(zh-TW)[type="button"], +input:lang(zh-TW)[type="reset"], +input:lang(zh-TW)[type="submit"], .comment-navigation .nav-previous:lang(zh-TW), +.comment-navigation .nav-next:lang(zh-TW), .comment-list .pingback .comment-body:lang(zh-TW), +.comment-list .trackback .comment-body:lang(zh-TW), .comment-list .pingback .comment-body .comment-edit-link:lang(zh-TW), +.comment-list .trackback .comment-body .comment-edit-link:lang(zh-TW), .comment-form .comment-notes:lang(zh-TW), +.comment-form label:lang(zh-TW), .widget_archive ul li:lang(zh-TW), +.widget_categories ul li:lang(zh-TW), +.widget_meta ul li:lang(zh-TW), +.widget_nav_menu ul li:lang(zh-TW), +.widget_pages ul li:lang(zh-TW), +.widget_recent_comments ul li:lang(zh-TW), +.widget_recent_entries ul li:lang(zh-TW), +.widget_rss ul li:lang(zh-TW), .widget_tag_cloud .tagcloud:lang(zh-TW), .entry .entry-content .wp-block-button .wp-block-button__link:lang(zh-TW), .entry .entry-content .wp-block-archives li > a:lang(zh-TW), +.entry .entry-content .wp-block-categories li > a:lang(zh-TW), +.entry .entry-content .wp-block-latest-posts li > a:lang(zh-TW), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-TW), .entry .entry-content .wp-block-verse:lang(zh-TW), .entry .entry-content .has-drop-cap:lang(zh-TW):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(zh-TW), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(zh-TW), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(zh-TW), +.entry .entry-content .wp-block-cover-image h2:lang(zh-TW), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(zh-TW), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(zh-TW), +.entry .entry-content .wp-block-cover h2:lang(zh-TW), .entry .entry-content .wp-block-audio figcaption:lang(zh-TW), +.entry .entry-content .wp-block-video figcaption:lang(zh-TW), +.entry .entry-content .wp-block-image figcaption:lang(zh-TW), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(zh-TW), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(zh-TW), .entry .entry-content .wp-block-file:lang(zh-TW), .entry .entry-content .wp-block-file .wp-block-file__button:lang(zh-TW), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-TW), .wp-caption-text:lang(zh-TW), .gallery-caption:lang(zh-TW) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(zh-CN), button:lang(zh-CN), +input:lang(zh-CN), +select:lang(zh-CN), +optgroup:lang(zh-CN), +textarea:lang(zh-CN), .author-description .author-link:lang(zh-CN), +.comment-metadata:lang(zh-CN), +.comment-reply-link:lang(zh-CN), +.comments-title:lang(zh-CN), +.comment-author .fn:lang(zh-CN), +.discussion-meta-info:lang(zh-CN), +.entry-meta:lang(zh-CN), +.entry-footer:lang(zh-CN), +.main-navigation:lang(zh-CN), +.no-comments:lang(zh-CN), +.not-found .page-title:lang(zh-CN), +.error-404 .page-title:lang(zh-CN), +.post-navigation .post-title:lang(zh-CN), +.page-links:lang(zh-CN), +.page-description:lang(zh-CN), +.pagination .nav-links:lang(zh-CN), +.sticky-post:lang(zh-CN), +.site-title:lang(zh-CN), +.site-info:lang(zh-CN), +#cancel-comment-reply-link:lang(zh-CN), +h1:lang(zh-CN), +h2:lang(zh-CN), +h3:lang(zh-CN), +h4:lang(zh-CN), +h5:lang(zh-CN), +h6:lang(zh-CN), .page-title:lang(zh-CN), blockquote cite:lang(zh-CN), table:lang(zh-CN), .button:lang(zh-CN), +input:lang(zh-CN)[type="button"], +input:lang(zh-CN)[type="reset"], +input:lang(zh-CN)[type="submit"], .comment-navigation .nav-previous:lang(zh-CN), +.comment-navigation .nav-next:lang(zh-CN), .comment-list .pingback .comment-body:lang(zh-CN), +.comment-list .trackback .comment-body:lang(zh-CN), .comment-list .pingback .comment-body .comment-edit-link:lang(zh-CN), +.comment-list .trackback .comment-body .comment-edit-link:lang(zh-CN), .comment-form .comment-notes:lang(zh-CN), +.comment-form label:lang(zh-CN), .widget_archive ul li:lang(zh-CN), +.widget_categories ul li:lang(zh-CN), +.widget_meta ul li:lang(zh-CN), +.widget_nav_menu ul li:lang(zh-CN), +.widget_pages ul li:lang(zh-CN), +.widget_recent_comments ul li:lang(zh-CN), +.widget_recent_entries ul li:lang(zh-CN), +.widget_rss ul li:lang(zh-CN), .widget_tag_cloud .tagcloud:lang(zh-CN), .entry .entry-content .wp-block-button .wp-block-button__link:lang(zh-CN), .entry .entry-content .wp-block-archives li > a:lang(zh-CN), +.entry .entry-content .wp-block-categories li > a:lang(zh-CN), +.entry .entry-content .wp-block-latest-posts li > a:lang(zh-CN), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-CN), .entry .entry-content .wp-block-verse:lang(zh-CN), .entry .entry-content .has-drop-cap:lang(zh-CN):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(zh-CN), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(zh-CN), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(zh-CN), +.entry .entry-content .wp-block-cover-image h2:lang(zh-CN), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(zh-CN), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(zh-CN), +.entry .entry-content .wp-block-cover h2:lang(zh-CN), .entry .entry-content .wp-block-audio figcaption:lang(zh-CN), +.entry .entry-content .wp-block-video figcaption:lang(zh-CN), +.entry .entry-content .wp-block-image figcaption:lang(zh-CN), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(zh-CN), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(zh-CN), .entry .entry-content .wp-block-file:lang(zh-CN), .entry .entry-content .wp-block-file .wp-block-file__button:lang(zh-CN), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-CN), .wp-caption-text:lang(zh-CN), .gallery-caption:lang(zh-CN) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(bn-BD), button:lang(bn-BD), +input:lang(bn-BD), +select:lang(bn-BD), +optgroup:lang(bn-BD), +textarea:lang(bn-BD), .author-description .author-link:lang(bn-BD), +.comment-metadata:lang(bn-BD), +.comment-reply-link:lang(bn-BD), +.comments-title:lang(bn-BD), +.comment-author .fn:lang(bn-BD), +.discussion-meta-info:lang(bn-BD), +.entry-meta:lang(bn-BD), +.entry-footer:lang(bn-BD), +.main-navigation:lang(bn-BD), +.no-comments:lang(bn-BD), +.not-found .page-title:lang(bn-BD), +.error-404 .page-title:lang(bn-BD), +.post-navigation .post-title:lang(bn-BD), +.page-links:lang(bn-BD), +.page-description:lang(bn-BD), +.pagination .nav-links:lang(bn-BD), +.sticky-post:lang(bn-BD), +.site-title:lang(bn-BD), +.site-info:lang(bn-BD), +#cancel-comment-reply-link:lang(bn-BD), +h1:lang(bn-BD), +h2:lang(bn-BD), +h3:lang(bn-BD), +h4:lang(bn-BD), +h5:lang(bn-BD), +h6:lang(bn-BD), .page-title:lang(bn-BD), blockquote cite:lang(bn-BD), table:lang(bn-BD), .button:lang(bn-BD), +input:lang(bn-BD)[type="button"], +input:lang(bn-BD)[type="reset"], +input:lang(bn-BD)[type="submit"], .comment-navigation .nav-previous:lang(bn-BD), +.comment-navigation .nav-next:lang(bn-BD), .comment-list .pingback .comment-body:lang(bn-BD), +.comment-list .trackback .comment-body:lang(bn-BD), .comment-list .pingback .comment-body .comment-edit-link:lang(bn-BD), +.comment-list .trackback .comment-body .comment-edit-link:lang(bn-BD), .comment-form .comment-notes:lang(bn-BD), +.comment-form label:lang(bn-BD), .widget_archive ul li:lang(bn-BD), +.widget_categories ul li:lang(bn-BD), +.widget_meta ul li:lang(bn-BD), +.widget_nav_menu ul li:lang(bn-BD), +.widget_pages ul li:lang(bn-BD), +.widget_recent_comments ul li:lang(bn-BD), +.widget_recent_entries ul li:lang(bn-BD), +.widget_rss ul li:lang(bn-BD), .widget_tag_cloud .tagcloud:lang(bn-BD), .entry .entry-content .wp-block-button .wp-block-button__link:lang(bn-BD), .entry .entry-content .wp-block-archives li > a:lang(bn-BD), +.entry .entry-content .wp-block-categories li > a:lang(bn-BD), +.entry .entry-content .wp-block-latest-posts li > a:lang(bn-BD), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(bn-BD), .entry .entry-content .wp-block-verse:lang(bn-BD), .entry .entry-content .has-drop-cap:lang(bn-BD):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(bn-BD), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(bn-BD), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(bn-BD), +.entry .entry-content .wp-block-cover-image h2:lang(bn-BD), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(bn-BD), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(bn-BD), +.entry .entry-content .wp-block-cover h2:lang(bn-BD), .entry .entry-content .wp-block-audio figcaption:lang(bn-BD), +.entry .entry-content .wp-block-video figcaption:lang(bn-BD), +.entry .entry-content .wp-block-image figcaption:lang(bn-BD), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(bn-BD), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(bn-BD), .entry .entry-content .wp-block-file:lang(bn-BD), .entry .entry-content .wp-block-file .wp-block-file__button:lang(bn-BD), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(bn-BD), .wp-caption-text:lang(bn-BD), .gallery-caption:lang(bn-BD) { + font-family: Arial, sans-serif; +} + +body:lang(hi-IN), button:lang(hi-IN), +input:lang(hi-IN), +select:lang(hi-IN), +optgroup:lang(hi-IN), +textarea:lang(hi-IN), .author-description .author-link:lang(hi-IN), +.comment-metadata:lang(hi-IN), +.comment-reply-link:lang(hi-IN), +.comments-title:lang(hi-IN), +.comment-author .fn:lang(hi-IN), +.discussion-meta-info:lang(hi-IN), +.entry-meta:lang(hi-IN), +.entry-footer:lang(hi-IN), +.main-navigation:lang(hi-IN), +.no-comments:lang(hi-IN), +.not-found .page-title:lang(hi-IN), +.error-404 .page-title:lang(hi-IN), +.post-navigation .post-title:lang(hi-IN), +.page-links:lang(hi-IN), +.page-description:lang(hi-IN), +.pagination .nav-links:lang(hi-IN), +.sticky-post:lang(hi-IN), +.site-title:lang(hi-IN), +.site-info:lang(hi-IN), +#cancel-comment-reply-link:lang(hi-IN), +h1:lang(hi-IN), +h2:lang(hi-IN), +h3:lang(hi-IN), +h4:lang(hi-IN), +h5:lang(hi-IN), +h6:lang(hi-IN), .page-title:lang(hi-IN), blockquote cite:lang(hi-IN), table:lang(hi-IN), .button:lang(hi-IN), +input:lang(hi-IN)[type="button"], +input:lang(hi-IN)[type="reset"], +input:lang(hi-IN)[type="submit"], .comment-navigation .nav-previous:lang(hi-IN), +.comment-navigation .nav-next:lang(hi-IN), .comment-list .pingback .comment-body:lang(hi-IN), +.comment-list .trackback .comment-body:lang(hi-IN), .comment-list .pingback .comment-body .comment-edit-link:lang(hi-IN), +.comment-list .trackback .comment-body .comment-edit-link:lang(hi-IN), .comment-form .comment-notes:lang(hi-IN), +.comment-form label:lang(hi-IN), .widget_archive ul li:lang(hi-IN), +.widget_categories ul li:lang(hi-IN), +.widget_meta ul li:lang(hi-IN), +.widget_nav_menu ul li:lang(hi-IN), +.widget_pages ul li:lang(hi-IN), +.widget_recent_comments ul li:lang(hi-IN), +.widget_recent_entries ul li:lang(hi-IN), +.widget_rss ul li:lang(hi-IN), .widget_tag_cloud .tagcloud:lang(hi-IN), .entry .entry-content .wp-block-button .wp-block-button__link:lang(hi-IN), .entry .entry-content .wp-block-archives li > a:lang(hi-IN), +.entry .entry-content .wp-block-categories li > a:lang(hi-IN), +.entry .entry-content .wp-block-latest-posts li > a:lang(hi-IN), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(hi-IN), .entry .entry-content .wp-block-verse:lang(hi-IN), .entry .entry-content .has-drop-cap:lang(hi-IN):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(hi-IN), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(hi-IN), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(hi-IN), +.entry .entry-content .wp-block-cover-image h2:lang(hi-IN), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(hi-IN), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(hi-IN), +.entry .entry-content .wp-block-cover h2:lang(hi-IN), .entry .entry-content .wp-block-audio figcaption:lang(hi-IN), +.entry .entry-content .wp-block-video figcaption:lang(hi-IN), +.entry .entry-content .wp-block-image figcaption:lang(hi-IN), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(hi-IN), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(hi-IN), .entry .entry-content .wp-block-file:lang(hi-IN), .entry .entry-content .wp-block-file .wp-block-file__button:lang(hi-IN), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(hi-IN), .wp-caption-text:lang(hi-IN), .gallery-caption:lang(hi-IN) { + font-family: Arial, sans-serif; +} + +body:lang(mr), button:lang(mr), +input:lang(mr), +select:lang(mr), +optgroup:lang(mr), +textarea:lang(mr), .author-description .author-link:lang(mr), +.comment-metadata:lang(mr), +.comment-reply-link:lang(mr), +.comments-title:lang(mr), +.comment-author .fn:lang(mr), +.discussion-meta-info:lang(mr), +.entry-meta:lang(mr), +.entry-footer:lang(mr), +.main-navigation:lang(mr), +.no-comments:lang(mr), +.not-found .page-title:lang(mr), +.error-404 .page-title:lang(mr), +.post-navigation .post-title:lang(mr), +.page-links:lang(mr), +.page-description:lang(mr), +.pagination .nav-links:lang(mr), +.sticky-post:lang(mr), +.site-title:lang(mr), +.site-info:lang(mr), +#cancel-comment-reply-link:lang(mr), +h1:lang(mr), +h2:lang(mr), +h3:lang(mr), +h4:lang(mr), +h5:lang(mr), +h6:lang(mr), .page-title:lang(mr), blockquote cite:lang(mr), table:lang(mr), .button:lang(mr), +input:lang(mr)[type="button"], +input:lang(mr)[type="reset"], +input:lang(mr)[type="submit"], .comment-navigation .nav-previous:lang(mr), +.comment-navigation .nav-next:lang(mr), .comment-list .pingback .comment-body:lang(mr), +.comment-list .trackback .comment-body:lang(mr), .comment-list .pingback .comment-body .comment-edit-link:lang(mr), +.comment-list .trackback .comment-body .comment-edit-link:lang(mr), .comment-form .comment-notes:lang(mr), +.comment-form label:lang(mr), .widget_archive ul li:lang(mr), +.widget_categories ul li:lang(mr), +.widget_meta ul li:lang(mr), +.widget_nav_menu ul li:lang(mr), +.widget_pages ul li:lang(mr), +.widget_recent_comments ul li:lang(mr), +.widget_recent_entries ul li:lang(mr), +.widget_rss ul li:lang(mr), .widget_tag_cloud .tagcloud:lang(mr), .entry .entry-content .wp-block-button .wp-block-button__link:lang(mr), .entry .entry-content .wp-block-archives li > a:lang(mr), +.entry .entry-content .wp-block-categories li > a:lang(mr), +.entry .entry-content .wp-block-latest-posts li > a:lang(mr), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mr), .entry .entry-content .wp-block-verse:lang(mr), .entry .entry-content .has-drop-cap:lang(mr):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(mr), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(mr), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(mr), +.entry .entry-content .wp-block-cover-image h2:lang(mr), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(mr), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(mr), +.entry .entry-content .wp-block-cover h2:lang(mr), .entry .entry-content .wp-block-audio figcaption:lang(mr), +.entry .entry-content .wp-block-video figcaption:lang(mr), +.entry .entry-content .wp-block-image figcaption:lang(mr), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(mr), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(mr), .entry .entry-content .wp-block-file:lang(mr), .entry .entry-content .wp-block-file .wp-block-file__button:lang(mr), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mr), .wp-caption-text:lang(mr), .gallery-caption:lang(mr) { + font-family: Arial, sans-serif; +} + +body:lang(ne-NP), button:lang(ne-NP), +input:lang(ne-NP), +select:lang(ne-NP), +optgroup:lang(ne-NP), +textarea:lang(ne-NP), .author-description .author-link:lang(ne-NP), +.comment-metadata:lang(ne-NP), +.comment-reply-link:lang(ne-NP), +.comments-title:lang(ne-NP), +.comment-author .fn:lang(ne-NP), +.discussion-meta-info:lang(ne-NP), +.entry-meta:lang(ne-NP), +.entry-footer:lang(ne-NP), +.main-navigation:lang(ne-NP), +.no-comments:lang(ne-NP), +.not-found .page-title:lang(ne-NP), +.error-404 .page-title:lang(ne-NP), +.post-navigation .post-title:lang(ne-NP), +.page-links:lang(ne-NP), +.page-description:lang(ne-NP), +.pagination .nav-links:lang(ne-NP), +.sticky-post:lang(ne-NP), +.site-title:lang(ne-NP), +.site-info:lang(ne-NP), +#cancel-comment-reply-link:lang(ne-NP), +h1:lang(ne-NP), +h2:lang(ne-NP), +h3:lang(ne-NP), +h4:lang(ne-NP), +h5:lang(ne-NP), +h6:lang(ne-NP), .page-title:lang(ne-NP), blockquote cite:lang(ne-NP), table:lang(ne-NP), .button:lang(ne-NP), +input:lang(ne-NP)[type="button"], +input:lang(ne-NP)[type="reset"], +input:lang(ne-NP)[type="submit"], .comment-navigation .nav-previous:lang(ne-NP), +.comment-navigation .nav-next:lang(ne-NP), .comment-list .pingback .comment-body:lang(ne-NP), +.comment-list .trackback .comment-body:lang(ne-NP), .comment-list .pingback .comment-body .comment-edit-link:lang(ne-NP), +.comment-list .trackback .comment-body .comment-edit-link:lang(ne-NP), .comment-form .comment-notes:lang(ne-NP), +.comment-form label:lang(ne-NP), .widget_archive ul li:lang(ne-NP), +.widget_categories ul li:lang(ne-NP), +.widget_meta ul li:lang(ne-NP), +.widget_nav_menu ul li:lang(ne-NP), +.widget_pages ul li:lang(ne-NP), +.widget_recent_comments ul li:lang(ne-NP), +.widget_recent_entries ul li:lang(ne-NP), +.widget_rss ul li:lang(ne-NP), .widget_tag_cloud .tagcloud:lang(ne-NP), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ne-NP), .entry .entry-content .wp-block-archives li > a:lang(ne-NP), +.entry .entry-content .wp-block-categories li > a:lang(ne-NP), +.entry .entry-content .wp-block-latest-posts li > a:lang(ne-NP), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ne-NP), .entry .entry-content .wp-block-verse:lang(ne-NP), .entry .entry-content .has-drop-cap:lang(ne-NP):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ne-NP), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ne-NP), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ne-NP), +.entry .entry-content .wp-block-cover-image h2:lang(ne-NP), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ne-NP), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ne-NP), +.entry .entry-content .wp-block-cover h2:lang(ne-NP), .entry .entry-content .wp-block-audio figcaption:lang(ne-NP), +.entry .entry-content .wp-block-video figcaption:lang(ne-NP), +.entry .entry-content .wp-block-image figcaption:lang(ne-NP), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ne-NP), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ne-NP), .entry .entry-content .wp-block-file:lang(ne-NP), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ne-NP), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ne-NP), .wp-caption-text:lang(ne-NP), .gallery-caption:lang(ne-NP) { + font-family: Arial, sans-serif; +} + +body:lang(el), button:lang(el), +input:lang(el), +select:lang(el), +optgroup:lang(el), +textarea:lang(el), .author-description .author-link:lang(el), +.comment-metadata:lang(el), +.comment-reply-link:lang(el), +.comments-title:lang(el), +.comment-author .fn:lang(el), +.discussion-meta-info:lang(el), +.entry-meta:lang(el), +.entry-footer:lang(el), +.main-navigation:lang(el), +.no-comments:lang(el), +.not-found .page-title:lang(el), +.error-404 .page-title:lang(el), +.post-navigation .post-title:lang(el), +.page-links:lang(el), +.page-description:lang(el), +.pagination .nav-links:lang(el), +.sticky-post:lang(el), +.site-title:lang(el), +.site-info:lang(el), +#cancel-comment-reply-link:lang(el), +h1:lang(el), +h2:lang(el), +h3:lang(el), +h4:lang(el), +h5:lang(el), +h6:lang(el), .page-title:lang(el), blockquote cite:lang(el), table:lang(el), .button:lang(el), +input:lang(el)[type="button"], +input:lang(el)[type="reset"], +input:lang(el)[type="submit"], .comment-navigation .nav-previous:lang(el), +.comment-navigation .nav-next:lang(el), .comment-list .pingback .comment-body:lang(el), +.comment-list .trackback .comment-body:lang(el), .comment-list .pingback .comment-body .comment-edit-link:lang(el), +.comment-list .trackback .comment-body .comment-edit-link:lang(el), .comment-form .comment-notes:lang(el), +.comment-form label:lang(el), .widget_archive ul li:lang(el), +.widget_categories ul li:lang(el), +.widget_meta ul li:lang(el), +.widget_nav_menu ul li:lang(el), +.widget_pages ul li:lang(el), +.widget_recent_comments ul li:lang(el), +.widget_recent_entries ul li:lang(el), +.widget_rss ul li:lang(el), .widget_tag_cloud .tagcloud:lang(el), .entry .entry-content .wp-block-button .wp-block-button__link:lang(el), .entry .entry-content .wp-block-archives li > a:lang(el), +.entry .entry-content .wp-block-categories li > a:lang(el), +.entry .entry-content .wp-block-latest-posts li > a:lang(el), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(el), .entry .entry-content .wp-block-verse:lang(el), .entry .entry-content .has-drop-cap:lang(el):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(el), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(el), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(el), +.entry .entry-content .wp-block-cover-image h2:lang(el), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(el), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(el), +.entry .entry-content .wp-block-cover h2:lang(el), .entry .entry-content .wp-block-audio figcaption:lang(el), +.entry .entry-content .wp-block-video figcaption:lang(el), +.entry .entry-content .wp-block-image figcaption:lang(el), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(el), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(el), .entry .entry-content .wp-block-file:lang(el), .entry .entry-content .wp-block-file .wp-block-file__button:lang(el), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(el), .wp-caption-text:lang(el), .gallery-caption:lang(el) { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +body:lang(gu), button:lang(gu), +input:lang(gu), +select:lang(gu), +optgroup:lang(gu), +textarea:lang(gu), .author-description .author-link:lang(gu), +.comment-metadata:lang(gu), +.comment-reply-link:lang(gu), +.comments-title:lang(gu), +.comment-author .fn:lang(gu), +.discussion-meta-info:lang(gu), +.entry-meta:lang(gu), +.entry-footer:lang(gu), +.main-navigation:lang(gu), +.no-comments:lang(gu), +.not-found .page-title:lang(gu), +.error-404 .page-title:lang(gu), +.post-navigation .post-title:lang(gu), +.page-links:lang(gu), +.page-description:lang(gu), +.pagination .nav-links:lang(gu), +.sticky-post:lang(gu), +.site-title:lang(gu), +.site-info:lang(gu), +#cancel-comment-reply-link:lang(gu), +h1:lang(gu), +h2:lang(gu), +h3:lang(gu), +h4:lang(gu), +h5:lang(gu), +h6:lang(gu), .page-title:lang(gu), blockquote cite:lang(gu), table:lang(gu), .button:lang(gu), +input:lang(gu)[type="button"], +input:lang(gu)[type="reset"], +input:lang(gu)[type="submit"], .comment-navigation .nav-previous:lang(gu), +.comment-navigation .nav-next:lang(gu), .comment-list .pingback .comment-body:lang(gu), +.comment-list .trackback .comment-body:lang(gu), .comment-list .pingback .comment-body .comment-edit-link:lang(gu), +.comment-list .trackback .comment-body .comment-edit-link:lang(gu), .comment-form .comment-notes:lang(gu), +.comment-form label:lang(gu), .widget_archive ul li:lang(gu), +.widget_categories ul li:lang(gu), +.widget_meta ul li:lang(gu), +.widget_nav_menu ul li:lang(gu), +.widget_pages ul li:lang(gu), +.widget_recent_comments ul li:lang(gu), +.widget_recent_entries ul li:lang(gu), +.widget_rss ul li:lang(gu), .widget_tag_cloud .tagcloud:lang(gu), .entry .entry-content .wp-block-button .wp-block-button__link:lang(gu), .entry .entry-content .wp-block-archives li > a:lang(gu), +.entry .entry-content .wp-block-categories li > a:lang(gu), +.entry .entry-content .wp-block-latest-posts li > a:lang(gu), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(gu), .entry .entry-content .wp-block-verse:lang(gu), .entry .entry-content .has-drop-cap:lang(gu):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(gu), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(gu), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(gu), +.entry .entry-content .wp-block-cover-image h2:lang(gu), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(gu), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(gu), +.entry .entry-content .wp-block-cover h2:lang(gu), .entry .entry-content .wp-block-audio figcaption:lang(gu), +.entry .entry-content .wp-block-video figcaption:lang(gu), +.entry .entry-content .wp-block-image figcaption:lang(gu), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(gu), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(gu), .entry .entry-content .wp-block-file:lang(gu), .entry .entry-content .wp-block-file .wp-block-file__button:lang(gu), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(gu), .wp-caption-text:lang(gu), .gallery-caption:lang(gu) { + font-family: Arial, sans-serif; +} + +body:lang(he-IL), button:lang(he-IL), +input:lang(he-IL), +select:lang(he-IL), +optgroup:lang(he-IL), +textarea:lang(he-IL), .author-description .author-link:lang(he-IL), +.comment-metadata:lang(he-IL), +.comment-reply-link:lang(he-IL), +.comments-title:lang(he-IL), +.comment-author .fn:lang(he-IL), +.discussion-meta-info:lang(he-IL), +.entry-meta:lang(he-IL), +.entry-footer:lang(he-IL), +.main-navigation:lang(he-IL), +.no-comments:lang(he-IL), +.not-found .page-title:lang(he-IL), +.error-404 .page-title:lang(he-IL), +.post-navigation .post-title:lang(he-IL), +.page-links:lang(he-IL), +.page-description:lang(he-IL), +.pagination .nav-links:lang(he-IL), +.sticky-post:lang(he-IL), +.site-title:lang(he-IL), +.site-info:lang(he-IL), +#cancel-comment-reply-link:lang(he-IL), +h1:lang(he-IL), +h2:lang(he-IL), +h3:lang(he-IL), +h4:lang(he-IL), +h5:lang(he-IL), +h6:lang(he-IL), .page-title:lang(he-IL), blockquote cite:lang(he-IL), table:lang(he-IL), .button:lang(he-IL), +input:lang(he-IL)[type="button"], +input:lang(he-IL)[type="reset"], +input:lang(he-IL)[type="submit"], .comment-navigation .nav-previous:lang(he-IL), +.comment-navigation .nav-next:lang(he-IL), .comment-list .pingback .comment-body:lang(he-IL), +.comment-list .trackback .comment-body:lang(he-IL), .comment-list .pingback .comment-body .comment-edit-link:lang(he-IL), +.comment-list .trackback .comment-body .comment-edit-link:lang(he-IL), .comment-form .comment-notes:lang(he-IL), +.comment-form label:lang(he-IL), .widget_archive ul li:lang(he-IL), +.widget_categories ul li:lang(he-IL), +.widget_meta ul li:lang(he-IL), +.widget_nav_menu ul li:lang(he-IL), +.widget_pages ul li:lang(he-IL), +.widget_recent_comments ul li:lang(he-IL), +.widget_recent_entries ul li:lang(he-IL), +.widget_rss ul li:lang(he-IL), .widget_tag_cloud .tagcloud:lang(he-IL), .entry .entry-content .wp-block-button .wp-block-button__link:lang(he-IL), .entry .entry-content .wp-block-archives li > a:lang(he-IL), +.entry .entry-content .wp-block-categories li > a:lang(he-IL), +.entry .entry-content .wp-block-latest-posts li > a:lang(he-IL), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(he-IL), .entry .entry-content .wp-block-verse:lang(he-IL), .entry .entry-content .has-drop-cap:lang(he-IL):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(he-IL), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(he-IL), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(he-IL), +.entry .entry-content .wp-block-cover-image h2:lang(he-IL), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(he-IL), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(he-IL), +.entry .entry-content .wp-block-cover h2:lang(he-IL), .entry .entry-content .wp-block-audio figcaption:lang(he-IL), +.entry .entry-content .wp-block-video figcaption:lang(he-IL), +.entry .entry-content .wp-block-image figcaption:lang(he-IL), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(he-IL), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(he-IL), .entry .entry-content .wp-block-file:lang(he-IL), .entry .entry-content .wp-block-file .wp-block-file__button:lang(he-IL), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(he-IL), .wp-caption-text:lang(he-IL), .gallery-caption:lang(he-IL) { + font-family: "Arial Hebrew", Arial, sans-serif; +} + +body:lang(ja), button:lang(ja), +input:lang(ja), +select:lang(ja), +optgroup:lang(ja), +textarea:lang(ja), .author-description .author-link:lang(ja), +.comment-metadata:lang(ja), +.comment-reply-link:lang(ja), +.comments-title:lang(ja), +.comment-author .fn:lang(ja), +.discussion-meta-info:lang(ja), +.entry-meta:lang(ja), +.entry-footer:lang(ja), +.main-navigation:lang(ja), +.no-comments:lang(ja), +.not-found .page-title:lang(ja), +.error-404 .page-title:lang(ja), +.post-navigation .post-title:lang(ja), +.page-links:lang(ja), +.page-description:lang(ja), +.pagination .nav-links:lang(ja), +.sticky-post:lang(ja), +.site-title:lang(ja), +.site-info:lang(ja), +#cancel-comment-reply-link:lang(ja), +h1:lang(ja), +h2:lang(ja), +h3:lang(ja), +h4:lang(ja), +h5:lang(ja), +h6:lang(ja), .page-title:lang(ja), blockquote cite:lang(ja), table:lang(ja), .button:lang(ja), +input:lang(ja)[type="button"], +input:lang(ja)[type="reset"], +input:lang(ja)[type="submit"], .comment-navigation .nav-previous:lang(ja), +.comment-navigation .nav-next:lang(ja), .comment-list .pingback .comment-body:lang(ja), +.comment-list .trackback .comment-body:lang(ja), .comment-list .pingback .comment-body .comment-edit-link:lang(ja), +.comment-list .trackback .comment-body .comment-edit-link:lang(ja), .comment-form .comment-notes:lang(ja), +.comment-form label:lang(ja), .widget_archive ul li:lang(ja), +.widget_categories ul li:lang(ja), +.widget_meta ul li:lang(ja), +.widget_nav_menu ul li:lang(ja), +.widget_pages ul li:lang(ja), +.widget_recent_comments ul li:lang(ja), +.widget_recent_entries ul li:lang(ja), +.widget_rss ul li:lang(ja), .widget_tag_cloud .tagcloud:lang(ja), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ja), .entry .entry-content .wp-block-archives li > a:lang(ja), +.entry .entry-content .wp-block-categories li > a:lang(ja), +.entry .entry-content .wp-block-latest-posts li > a:lang(ja), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ja), .entry .entry-content .wp-block-verse:lang(ja), .entry .entry-content .has-drop-cap:lang(ja):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ja), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ja), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ja), +.entry .entry-content .wp-block-cover-image h2:lang(ja), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ja), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ja), +.entry .entry-content .wp-block-cover h2:lang(ja), .entry .entry-content .wp-block-audio figcaption:lang(ja), +.entry .entry-content .wp-block-video figcaption:lang(ja), +.entry .entry-content .wp-block-image figcaption:lang(ja), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ja), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ja), .entry .entry-content .wp-block-file:lang(ja), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ja), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ja), .wp-caption-text:lang(ja), .gallery-caption:lang(ja) { + font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", Meiryo, "Helvetica Neue", sans-serif; +} + +body:lang(ko-KR), button:lang(ko-KR), +input:lang(ko-KR), +select:lang(ko-KR), +optgroup:lang(ko-KR), +textarea:lang(ko-KR), .author-description .author-link:lang(ko-KR), +.comment-metadata:lang(ko-KR), +.comment-reply-link:lang(ko-KR), +.comments-title:lang(ko-KR), +.comment-author .fn:lang(ko-KR), +.discussion-meta-info:lang(ko-KR), +.entry-meta:lang(ko-KR), +.entry-footer:lang(ko-KR), +.main-navigation:lang(ko-KR), +.no-comments:lang(ko-KR), +.not-found .page-title:lang(ko-KR), +.error-404 .page-title:lang(ko-KR), +.post-navigation .post-title:lang(ko-KR), +.page-links:lang(ko-KR), +.page-description:lang(ko-KR), +.pagination .nav-links:lang(ko-KR), +.sticky-post:lang(ko-KR), +.site-title:lang(ko-KR), +.site-info:lang(ko-KR), +#cancel-comment-reply-link:lang(ko-KR), +h1:lang(ko-KR), +h2:lang(ko-KR), +h3:lang(ko-KR), +h4:lang(ko-KR), +h5:lang(ko-KR), +h6:lang(ko-KR), .page-title:lang(ko-KR), blockquote cite:lang(ko-KR), table:lang(ko-KR), .button:lang(ko-KR), +input:lang(ko-KR)[type="button"], +input:lang(ko-KR)[type="reset"], +input:lang(ko-KR)[type="submit"], .comment-navigation .nav-previous:lang(ko-KR), +.comment-navigation .nav-next:lang(ko-KR), .comment-list .pingback .comment-body:lang(ko-KR), +.comment-list .trackback .comment-body:lang(ko-KR), .comment-list .pingback .comment-body .comment-edit-link:lang(ko-KR), +.comment-list .trackback .comment-body .comment-edit-link:lang(ko-KR), .comment-form .comment-notes:lang(ko-KR), +.comment-form label:lang(ko-KR), .widget_archive ul li:lang(ko-KR), +.widget_categories ul li:lang(ko-KR), +.widget_meta ul li:lang(ko-KR), +.widget_nav_menu ul li:lang(ko-KR), +.widget_pages ul li:lang(ko-KR), +.widget_recent_comments ul li:lang(ko-KR), +.widget_recent_entries ul li:lang(ko-KR), +.widget_rss ul li:lang(ko-KR), .widget_tag_cloud .tagcloud:lang(ko-KR), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ko-KR), .entry .entry-content .wp-block-archives li > a:lang(ko-KR), +.entry .entry-content .wp-block-categories li > a:lang(ko-KR), +.entry .entry-content .wp-block-latest-posts li > a:lang(ko-KR), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ko-KR), .entry .entry-content .wp-block-verse:lang(ko-KR), .entry .entry-content .has-drop-cap:lang(ko-KR):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ko-KR), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ko-KR), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ko-KR), +.entry .entry-content .wp-block-cover-image h2:lang(ko-KR), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ko-KR), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ko-KR), +.entry .entry-content .wp-block-cover h2:lang(ko-KR), .entry .entry-content .wp-block-audio figcaption:lang(ko-KR), +.entry .entry-content .wp-block-video figcaption:lang(ko-KR), +.entry .entry-content .wp-block-image figcaption:lang(ko-KR), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ko-KR), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ko-KR), .entry .entry-content .wp-block-file:lang(ko-KR), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ko-KR), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ko-KR), .wp-caption-text:lang(ko-KR), .gallery-caption:lang(ko-KR) { + font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif; +} + +body:lang(th), button:lang(th), +input:lang(th), +select:lang(th), +optgroup:lang(th), +textarea:lang(th), .author-description .author-link:lang(th), +.comment-metadata:lang(th), +.comment-reply-link:lang(th), +.comments-title:lang(th), +.comment-author .fn:lang(th), +.discussion-meta-info:lang(th), +.entry-meta:lang(th), +.entry-footer:lang(th), +.main-navigation:lang(th), +.no-comments:lang(th), +.not-found .page-title:lang(th), +.error-404 .page-title:lang(th), +.post-navigation .post-title:lang(th), +.page-links:lang(th), +.page-description:lang(th), +.pagination .nav-links:lang(th), +.sticky-post:lang(th), +.site-title:lang(th), +.site-info:lang(th), +#cancel-comment-reply-link:lang(th), +h1:lang(th), +h2:lang(th), +h3:lang(th), +h4:lang(th), +h5:lang(th), +h6:lang(th), .page-title:lang(th), blockquote cite:lang(th), table:lang(th), .button:lang(th), +input:lang(th)[type="button"], +input:lang(th)[type="reset"], +input:lang(th)[type="submit"], .comment-navigation .nav-previous:lang(th), +.comment-navigation .nav-next:lang(th), .comment-list .pingback .comment-body:lang(th), +.comment-list .trackback .comment-body:lang(th), .comment-list .pingback .comment-body .comment-edit-link:lang(th), +.comment-list .trackback .comment-body .comment-edit-link:lang(th), .comment-form .comment-notes:lang(th), +.comment-form label:lang(th), .widget_archive ul li:lang(th), +.widget_categories ul li:lang(th), +.widget_meta ul li:lang(th), +.widget_nav_menu ul li:lang(th), +.widget_pages ul li:lang(th), +.widget_recent_comments ul li:lang(th), +.widget_recent_entries ul li:lang(th), +.widget_rss ul li:lang(th), .widget_tag_cloud .tagcloud:lang(th), .entry .entry-content .wp-block-button .wp-block-button__link:lang(th), .entry .entry-content .wp-block-archives li > a:lang(th), +.entry .entry-content .wp-block-categories li > a:lang(th), +.entry .entry-content .wp-block-latest-posts li > a:lang(th), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(th), .entry .entry-content .wp-block-verse:lang(th), .entry .entry-content .has-drop-cap:lang(th):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(th), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(th), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(th), +.entry .entry-content .wp-block-cover-image h2:lang(th), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(th), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(th), +.entry .entry-content .wp-block-cover h2:lang(th), .entry .entry-content .wp-block-audio figcaption:lang(th), +.entry .entry-content .wp-block-video figcaption:lang(th), +.entry .entry-content .wp-block-image figcaption:lang(th), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(th), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(th), .entry .entry-content .wp-block-file:lang(th), .entry .entry-content .wp-block-file .wp-block-file__button:lang(th), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(th), .wp-caption-text:lang(th), .gallery-caption:lang(th) { + font-family: "Sukhumvit Set", "Helvetica Neue", helvetica, arial, sans-serif; +} + +body:lang(vi), button:lang(vi), +input:lang(vi), +select:lang(vi), +optgroup:lang(vi), +textarea:lang(vi), .author-description .author-link:lang(vi), +.comment-metadata:lang(vi), +.comment-reply-link:lang(vi), +.comments-title:lang(vi), +.comment-author .fn:lang(vi), +.discussion-meta-info:lang(vi), +.entry-meta:lang(vi), +.entry-footer:lang(vi), +.main-navigation:lang(vi), +.no-comments:lang(vi), +.not-found .page-title:lang(vi), +.error-404 .page-title:lang(vi), +.post-navigation .post-title:lang(vi), +.page-links:lang(vi), +.page-description:lang(vi), +.pagination .nav-links:lang(vi), +.sticky-post:lang(vi), +.site-title:lang(vi), +.site-info:lang(vi), +#cancel-comment-reply-link:lang(vi), +h1:lang(vi), +h2:lang(vi), +h3:lang(vi), +h4:lang(vi), +h5:lang(vi), +h6:lang(vi), .page-title:lang(vi), blockquote cite:lang(vi), table:lang(vi), .button:lang(vi), +input:lang(vi)[type="button"], +input:lang(vi)[type="reset"], +input:lang(vi)[type="submit"], .comment-navigation .nav-previous:lang(vi), +.comment-navigation .nav-next:lang(vi), .comment-list .pingback .comment-body:lang(vi), +.comment-list .trackback .comment-body:lang(vi), .comment-list .pingback .comment-body .comment-edit-link:lang(vi), +.comment-list .trackback .comment-body .comment-edit-link:lang(vi), .comment-form .comment-notes:lang(vi), +.comment-form label:lang(vi), .widget_archive ul li:lang(vi), +.widget_categories ul li:lang(vi), +.widget_meta ul li:lang(vi), +.widget_nav_menu ul li:lang(vi), +.widget_pages ul li:lang(vi), +.widget_recent_comments ul li:lang(vi), +.widget_recent_entries ul li:lang(vi), +.widget_rss ul li:lang(vi), .widget_tag_cloud .tagcloud:lang(vi), .entry .entry-content .wp-block-button .wp-block-button__link:lang(vi), .entry .entry-content .wp-block-archives li > a:lang(vi), +.entry .entry-content .wp-block-categories li > a:lang(vi), +.entry .entry-content .wp-block-latest-posts li > a:lang(vi), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(vi), .entry .entry-content .wp-block-verse:lang(vi), .entry .entry-content .has-drop-cap:lang(vi):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(vi), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(vi), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(vi), +.entry .entry-content .wp-block-cover-image h2:lang(vi), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(vi), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(vi), +.entry .entry-content .wp-block-cover h2:lang(vi), .entry .entry-content .wp-block-audio figcaption:lang(vi), +.entry .entry-content .wp-block-video figcaption:lang(vi), +.entry .entry-content .wp-block-image figcaption:lang(vi), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(vi), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(vi), .entry .entry-content .wp-block-file:lang(vi), .entry .entry-content .wp-block-file .wp-block-file__button:lang(vi), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(vi), .wp-caption-text:lang(vi), .gallery-caption:lang(vi) { + font-family: "Libre Franklin", sans-serif; +} + +/* Normalize */ +/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ +/* Document + ========================================================================== */ +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ +html { + line-height: 1.15; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ +} + +/* Sections + ========================================================================== */ +/** + * Remove the margin in all browsers. + */ +body { + margin: 0; +} + +/** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/* Grouping content + ========================================================================== */ +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ +hr { + box-sizing: content-box; + /* 1 */ + height: 0; + /* 1 */ + overflow: visible; + /* 2 */ +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ +pre { + font-family: monospace, monospace; + /* 1 */ + font-size: 1em; + /* 2 */ +} + +/* Text-level semantics + ========================================================================== */ +/** + * Remove the gray background on active links in IE 10. + */ +a { + background-color: transparent; +} + +/** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ +abbr[title] { + border-bottom: none; + /* 1 */ + text-decoration: underline; + /* 2 */ + text-decoration: underline dotted; + /* 2 */ +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ +b, +strong { + font-weight: bolder; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ +code, +kbd, +samp { + font-family: monospace, monospace; + /* 1 */ + font-size: 1em; + /* 2 */ +} + +/** + * Add the correct font size in all browsers. + */ +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ +/** + * Remove the border on images inside links in IE 10. + */ +img { + border-style: none; +} + +/* Forms + ========================================================================== */ +/** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ +button, +input, +optgroup, +select, +textarea { + font-family: inherit; + /* 1 */ + font-size: 100%; + /* 1 */ + line-height: 1.15; + /* 1 */ + margin: 0; + /* 2 */ +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ +button, +input { + /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ +button, +select { + /* 1 */ + text-transform: none; +} + +/** + * Correct the inability to style clickable types in iOS and Safari. + */ +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +/** + * Remove the inner border and padding in Firefox. + */ +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Correct the padding in Firefox. + */ +fieldset { + padding: 0.35em 0.75em 0.625em; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ +legend { + box-sizing: border-box; + /* 1 */ + color: inherit; + /* 2 */ + display: table; + /* 1 */ + max-width: 100%; + /* 1 */ + padding: 0; + /* 3 */ + white-space: normal; + /* 1 */ +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ +progress { + vertical-align: baseline; +} + +/** + * Remove the default vertical scrollbar in IE 10+. + */ +textarea { + overflow: auto; +} + +/** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; + /* 1 */ + padding: 0; + /* 2 */ +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ +[type="search"] { + -webkit-appearance: textfield; + /* 1 */ + outline-offset: -2px; + /* 2 */ +} + +/** + * Remove the inner padding in Chrome and Safari on macOS. + */ +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ +::-webkit-file-upload-button { + -webkit-appearance: button; + /* 1 */ + font: inherit; + /* 2 */ +} + +/* Interactive + ========================================================================== */ +/* + * Add the correct display in Edge, IE 10+, and Firefox. + */ +details { + display: block; +} + +/* + * Add the correct display in all browsers. + */ +summary { + display: list-item; +} + +/* Misc + ========================================================================== */ +/** + * Add the correct display in IE 10+. + */ +template { + display: none; +} + +/** + * Add the correct display in IE 10. + */ +[hidden] { + display: none; +} + +/* Typography */ +html { + font-size: 22px; +} + +body { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + color: #111; + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: 400; + font-size: 1em; + line-height: 1.8; + margin: 0; + text-rendering: optimizeLegibility; +} + +button, +input, +select, +optgroup, +textarea { + color: #111; + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: 400; + line-height: 1.8; + text-rendering: optimizeLegibility; +} + +.author-description .author-link, +.comment-metadata, +.comment-reply-link, +.comments-title, +.comment-author .fn, +.discussion-meta-info, +.entry-meta, +.entry-footer, +.main-navigation, +.no-comments, +.not-found .page-title, +.error-404 .page-title, +.post-navigation .post-title, +.page-links, +.page-description, +.pagination .nav-links, +.sticky-post, +.site-title, +.site-info, +#cancel-comment-reply-link, +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +.main-navigation, +.page-description, +.author-description .author-link, +.not-found .page-title, +.error-404 .page-title, +.post-navigation .post-title, +.pagination .nav-links, +.comments-title, +.comment-author .fn, +.no-comments, +.site-title, +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 700; + letter-spacing: -0.02em; + line-height: 1.2; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.page-title { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; +} + +.site-branding, +.main-navigation ul.main-menu > li, +.social-navigation, +.author-description .author-bio, +.nav-links { + line-height: 1.25; +} + +h1 { + font-size: 2.25em; +} + +@media only screen and (min-width: 768px) { + h1 { + font-size: 2.8125em; + } +} + +.entry-title, +.not-found .page-title, +.error-404 .page-title, +.has-larger-font-size, +h2 { + font-size: 1.6875em; +} + +@media only screen and (min-width: 768px) { + .entry-title, + .not-found .page-title, + .error-404 .page-title, + .has-larger-font-size, + h2 { + font-size: 2.25em; + } +} + +.has-regular-font-size, +.has-large-font-size, +.comments-title, +h3 { + font-size: 1.6875em; +} + +.site-title, +.site-description, +.main-navigation, +.nav-links, +.page-title, +.page-description, +.comment-author .fn, +.no-comments, +h2.author-title, +p.author-bio, +h4 { + font-size: 1.125em; +} + +.pagination .nav-links, +.comment-content, +h5 { + font-size: 0.88889em; +} + +.entry-meta, +.entry-footer, +.discussion-meta-info, +.site-info, +.has-small-font-size, +.comment-reply-link, +.comment-metadata, +.comment-notes, +.sticky-post, +#cancel-comment-reply-link, +img:after, +h6 { + font-size: 0.71111em; +} + +.site-title, +.page-title { + font-weight: normal; +} + +.page-description, +.page-links a { + font-weight: bold; +} + +.site-description { + letter-spacing: -0.01em; +} + +.post-navigation .post-title, +.entry-title, +.not-found .page-title, +.error-404 .page-title, +.comments-title, +blockquote { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + word-break: break-word; + word-wrap: break-word; +} + +/* Do not hyphenate entry title on tablet view and bigger. */ +@media only screen and (min-width: 768px) { + .entry-title { + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; + } +} + +p { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote cite { + font-size: 0.71111em; + font-style: normal; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +pre { + font-size: 0.88889em; + font-family: "Courier 10 Pitch", Courier, monospace; + line-height: 1.8; + overflow: auto; +} + +code, +kbd, +tt, +var { + font-size: 0.88889em; + font-family: Menlo, monaco, Consolas, Lucida Console, monospace; +} + +abbr, acronym { + border-bottom: 1px dotted #666; + cursor: help; +} + +mark, +ins { + background: #fff9c0; + text-decoration: none; +} + +big { + font-size: 125%; +} + +a { + text-decoration: none; +} + +a:hover { + text-decoration: none; +} + +a:focus { + text-decoration: underline; +} + +/* Elements */ +html { + box-sizing: border-box; +} + +::-moz-selection { + background-color: #bfdcea; +} + +::selection { + background-color: #bfdcea; +} + +*, +*:before, +*:after { + box-sizing: inherit; +} + +body { + background-color: #fff; +} + +a { + transition: color 110ms ease-in-out; + color: #0073aa; +} + +a:hover, +a:active { + color: #005177; + outline: 0; + text-decoration: none; +} + +a:focus { + outline: thin; + outline-style: dotted; + text-decoration: underline; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + margin: 1rem 0; +} + +h1:not(.site-title):before, +h2:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +hr { + background-color: #767676; + border: 0; + height: 2px; +} + +ul, +ol { + padding-right: 1rem; +} + +ul { + list-style: disc; +} + +ul ul { + list-style-type: circle; +} + +ol { + list-style: decimal; +} + +li { + line-height: 1.8; +} + +li > ul, +li > ol { + padding-right: 2rem; +} + +dt { + font-weight: bold; +} + +dd { + margin: 0 1rem 1rem; +} + +img { + height: auto; + max-width: 100%; + position: relative; +} + +figure { + margin: 0; +} + +blockquote { + border-right: 2px solid #0073aa; + margin-right: 0; + padding: 0 1rem 0 0; +} + +blockquote > p { + margin: 0 0 1rem; +} + +blockquote cite { + color: #767676; +} + +table { + margin: 0 0 1rem; + border-collapse: collapse; + width: 100%; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +table td, +table th { + padding: 0.5em; + border: 1px solid #767676; + word-break: break-all; +} + +/* Forms */ +.button, +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + transition: background 150ms ease-in-out; + background: #0073aa; + border: none; + border-radius: 5px; + box-sizing: border-box; + color: #fff; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.88889em; + font-weight: 700; + line-height: 1.2; + outline: none; + padding: 0.76rem 1rem; + text-decoration: none; + vertical-align: bottom; +} + +.button:hover, +button:hover, +input[type="button"]:hover, +input[type="reset"]:hover, +input[type="submit"]:hover { + background: #111; + cursor: pointer; +} + +.button:visited, +button:visited, +input[type="button"]:visited, +input[type="reset"]:visited, +input[type="submit"]:visited { + color: #fff; + text-decoration: none; +} + +.button:focus, +button:focus, +input[type="button"]:focus, +input[type="reset"]:focus, +input[type="submit"]:focus { + background: #111; + outline: thin dotted; + outline-offset: -4px; +} + +input[type="text"], +input[type="email"], +input[type="url"], +input[type="password"], +input[type="search"], +input[type="number"], +input[type="tel"], +input[type="range"], +input[type="date"], +input[type="month"], +input[type="week"], +input[type="time"], +input[type="datetime"], +input[type="datetime-local"], +input[type="color"], +textarea { + -webkit-backface-visibility: hidden; + background: #fff; + border: solid 1px #ccc; + box-sizing: border-box; + outline: none; + padding: 0.36rem 0.66rem; + -webkit-appearance: none; + outline-offset: 0; + border-radius: 0; +} + +input[type="text"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="password"]:focus, +input[type="search"]:focus, +input[type="number"]:focus, +input[type="tel"]:focus, +input[type="range"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="week"]:focus, +input[type="time"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="color"]:focus, +textarea:focus { + border-color: #0073aa; + outline: thin solid rgba(0, 115, 170, 0.15); + outline-offset: -4px; +} + +input[type="search"]::-webkit-search-decoration { + display: none; +} + +textarea { + box-sizing: border-box; + display: block; + width: 100%; + max-width: 100%; + resize: vertical; +} + +form p { + margin: 1rem 0; +} + +/* Navigation */ +/*-------------------------------------------------------------- +## Links +--------------------------------------------------------------*/ +a { + transition: color 110ms ease-in-out; + color: #0073aa; +} + +a:visited { + color: #0073aa; +} + +a:hover, +a:active { + color: #005177; + outline: 0; + text-decoration: none; +} + +a:focus { + outline: thin dotted; + text-decoration: underline; +} + +/*-------------------------------------------------------------- +## Menus +--------------------------------------------------------------*/ +/** === Main menu === */ +.main-navigation { + display: block; + margin-top: 0.25rem; + /* Un-style buttons */ + /* + * Sub-menu styles + * + * :focus-within needs its own selector so other similar + * selectors don’t get ignored if a browser doesn’t recognize it + */ + /** + * Fade-in animation for top-level submenus + */ + /** + * Off-canvas touch device styles + */ +} + +body.page .main-navigation { + display: block; +} + +.main-navigation > div { + display: inline; +} + +.main-navigation button { + display: inline-block; + border: none; + padding: 0; + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 700; + line-height: 1.2; + text-decoration: none; + background: transparent; + color: inherit; + cursor: pointer; + transition: background 250ms ease-in-out, transform 150ms ease; + -webkit-appearance: none; + -moz-appearance: none; +} + +.main-navigation button:hover, .main-navigation button:focus { + background: transparent; +} + +.main-navigation button:focus { + outline: 1px solid transparent; + outline-offset: -4px; +} + +.main-navigation button:active { + transform: scale(0.99); +} + +.main-navigation .main-menu { + display: inline-block; + margin: 0; + padding: 0; +} + +.main-navigation .main-menu > li { + color: #0073aa; + display: inline; + position: relative; +} + +.main-navigation .main-menu > li > a { + font-weight: 700; + color: #0073aa; + margin-left: 0.5rem; +} + +.main-navigation .main-menu > li > a + svg { + margin-left: 0.5rem; +} + +.main-navigation .main-menu > li > a:hover, +.main-navigation .main-menu > li > a:hover + svg { + color: #005177; +} + +.main-navigation .main-menu > li.menu-item-has-children { + display: inline-block; + position: inherit; +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu > li.menu-item-has-children { + position: relative; + } +} + +.main-navigation .main-menu > li.menu-item-has-children > a { + margin-left: 0.125rem; +} + +.main-navigation .main-menu > li.menu-item-has-children > a:after, +.main-navigation .main-menu > li.menu-item-has-children .menu-item-has-children > a:after { + content: ""; + display: none; +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand { + display: inline-block; + margin-left: 0.25rem; + /* Priority+ Menu */ +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand.main-menu-more-toggle { + position: relative; + height: 24px; + line-height: 1.2; + width: 24px; + padding: 0; + margin-right: 0.5rem; +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand.main-menu-more-toggle svg { + height: 24px; + width: 24px; + top: -0.125rem; + vertical-align: text-bottom; +} + +.wp-customizer-unloading .main-navigation .main-menu > li.menu-item-has-children .submenu-expand, .main-navigation .main-menu > li.menu-item-has-children .submenu-expand.is-empty { + display: none; +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand svg { + position: relative; + top: 0.2rem; +} + +.main-navigation .main-menu > li:last-child > a, +.main-navigation .main-menu > li:last-child.menu-item-has-children .submenu-expand { + margin-left: 0; +} + +.main-navigation .sub-menu { + background-color: #0073aa; + color: #fff; + list-style: none; + padding-right: 0; + position: absolute; + opacity: 0; + right: -9999px; + z-index: 99999; +} + +@media only screen and (min-width: 768px) { + .main-navigation .sub-menu { + width: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + } +} + +.main-navigation .sub-menu > li { + display: block; + float: none; + position: relative; +} + +.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand { + display: inline-block; + position: absolute; + width: calc( 24px + 1rem); + left: 0; + top: calc( .125 * 1rem); + bottom: 0; + color: white; + line-height: 1; + padding: calc( .5 * 1rem); +} + +.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand svg { + top: 0; +} + +.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand { + margin-left: 0; +} + +@media only screen and (min-width: 768px) { + .main-navigation .sub-menu > li.menu-item-has-children .menu-item-has-children > a:after { + content: "\203a"; + } +} + +.main-navigation .sub-menu > li > a, +.main-navigation .sub-menu > li > .menu-item-link-return { + color: #fff; + display: block; + line-height: 1.2; + text-shadow: none; + padding: calc( .5 * 1rem) 1rem calc( .5 * 1rem) calc( 24px + 1rem); + white-space: nowrap; +} + +.main-navigation .sub-menu > li > a:hover, .main-navigation .sub-menu > li > a:focus, +.main-navigation .sub-menu > li > .menu-item-link-return:hover, +.main-navigation .sub-menu > li > .menu-item-link-return:focus { + background: #005177; +} + +.main-navigation .sub-menu > li > a:hover:after, .main-navigation .sub-menu > li > a:focus:after, +.main-navigation .sub-menu > li > .menu-item-link-return:hover:after, +.main-navigation .sub-menu > li > .menu-item-link-return:focus:after { + background: #005177; +} + +.main-navigation .sub-menu > li > .menu-item-link-return { + width: 100%; + font-size: 22px; + font-weight: normal; + text-align: right; +} + +.main-navigation .sub-menu > li > a:empty { + display: none; +} + +.main-navigation .sub-menu > li.mobile-parent-nav-menu-item { + display: none; + font-size: 0.88889em; + font-weight: normal; +} + +.main-navigation .sub-menu > li.mobile-parent-nav-menu-item svg { + position: relative; + top: 0.2rem; + margin-left: calc( .25 * 1rem); +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu { + display: block; + right: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + /* Non-mobile position */ + /* Nested sub-menu dashes */ +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu { + display: block; + right: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + /* Non-mobile position */ + /* Nested sub-menu dashes */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu { + display: block; + margin-top: 0; + opacity: 1; + position: absolute; + right: 0; + left: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu { + display: block; + margin-top: 0; + opacity: 1; + position: absolute; + right: 0; + left: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu.hidden-links { + right: 0; + width: 100%; + display: table; + position: absolute; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu.hidden-links { + right: 0; + width: 100%; + display: table; + position: absolute; +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu.hidden-links { + left: 0; + right: auto; + display: block; + width: max-content; + } + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu.hidden-links { + left: 0; + right: auto; + display: block; + width: max-content; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .submenu-expand { + display: none; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .submenu-expand { + display: none; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + right: 0; + opacity: 1; + /* Non-mobile position */ +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + right: 0; + opacity: 1; + /* Non-mobile position */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu { + float: none; + max-width: 100%; + } + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu { + float: none; + max-width: 100%; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu { + counter-reset: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu { + counter-reset: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu { + display: block; + right: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + /* Non-mobile position */ + /* Nested sub-menu dashes */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu, + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu, + .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu { + display: block; + float: none; + margin-top: 0; + opacity: 1; + position: absolute; + right: 0; + left: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu.hidden-links, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu.hidden-links, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu.hidden-links { + right: 0; + width: 100%; + display: table; + position: absolute; +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu.hidden-links, + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu.hidden-links, + .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu.hidden-links { + left: 0; + right: auto; + display: table; + width: max-content; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .submenu-expand, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .submenu-expand, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .submenu-expand { + display: none; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + right: 0; + opacity: 1; + /* Non-mobile position */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu, + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu, + .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu { + float: none; + max-width: 100%; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu { + counter-reset: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu > li > a::before, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu > li > a::before, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.main-navigation .main-menu > .menu-item-has-children:not(.off-canvas):hover > .sub-menu { + animation: fade_in 0.1s forwards; +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu .submenu-expand .svg-icon { + transform: rotate(-270deg); +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu .sub-menu { + opacity: 0; + position: absolute; + z-index: 0; + transform: translateX(100%); +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li:hover, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li:focus, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li > a:hover, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li > a:focus { + background-color: transparent; +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu > li > a, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu > li > .menu-item-link-return { + white-space: inherit; +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true { + display: table; + margin-top: 0; + opacity: 1; + padding-right: 0; + /* Mobile position */ + right: 0; + top: 0; + left: 0; + bottom: 0; + position: fixed; + z-index: 100000; + /* Make sure appears above mobile admin bar */ + width: 100vw; + height: 100vh; + max-width: 100vw; + transform: translateX(-100%); + animation: slide_in_right 0.3s forwards; + /* Prevent menu from being blocked by admin bar */ +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true > .mobile-parent-nav-menu-item { + display: block; +} + +.admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true { + top: 46px; + height: calc( 100vh - 46px); + /* WP core breakpoint */ +} + +.admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true .sub-menu.expanded-true { + top: 0; +} + +@media only screen and (min-width: 782px) { + .admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true { + top: 32px; + height: calc( 100vh - 32px); + } + .admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true .sub-menu.expanded-true { + top: 0; + } +} + +.main-navigation .main-menu-more:nth-child(n+3) { + display: none; +} + +/* Menu animation */ +@keyframes slide_in_right { + 100% { + transform: translateX(0%); + } +} + +@keyframes fade_in { + from { + opacity: 0; + } + to { + opacity: 1; + } +} + +/* Social menu */ +.social-navigation { + margin-top: calc(1rem / 2); + text-align: right; +} + +.social-navigation ul.social-links-menu { + content: ""; + display: table; + table-layout: fixed; + display: inline-block; + margin: 0; + padding: 0; +} + +.social-navigation ul.social-links-menu li { + display: inline-block; + vertical-align: bottom; + vertical-align: -webkit-baseline-middle; + list-style: none; +} + +.social-navigation ul.social-links-menu li:nth-child(n+2) { + margin-right: 0.1em; +} + +.social-navigation ul.social-links-menu li a { + border-bottom: 1px solid transparent; + display: block; + color: #111; + margin-bottom: -1px; + transition: opacity 110ms ease-in-out; +} + +.social-navigation ul.social-links-menu li a:hover, .social-navigation ul.social-links-menu li a:active { + color: #111; + opacity: 0.6; +} + +.social-navigation ul.social-links-menu li a:focus { + color: #111; + opacity: 1; + border-bottom: 1px solid #111; +} + +.social-navigation ul.social-links-menu li a svg { + display: block; + width: 32px; + height: 32px; + transform: translateZ(0); +} + +.social-navigation ul.social-links-menu li a svg#ui-icon-link { + transform: rotate(45deg); +} + +@media only screen and (min-width: 768px) { + .site-title + .social-navigation, + .site-description + .social-navigation { + margin-top: calc(1rem / 5); + } +} + +/** === Footer menu === */ +.footer-navigation { + display: inline; +} + +.footer-navigation > div { + display: inline; +} + +.footer-navigation .footer-menu { + display: inline; + padding-right: 0; +} + +.footer-navigation .footer-menu li { + display: inline; + margin-left: 1rem; +} + +/*-------------------------------------------------------------- +## Next / Previous +--------------------------------------------------------------*/ +/* Next/Previous navigation */ +.post-navigation { + margin: calc(3 * 1rem) 0; +} + +@media only screen and (min-width: 768px) { + .post-navigation { + margin: calc(3 * 1rem) calc(10% + 60px); + max-width: calc(6 * (100vw / 12)); + } +} + +@media only screen and (min-width: 1168px) { + .post-navigation { + margin: calc(3 * 1rem) 0; + max-width: 100%; + } +} + +.post-navigation .nav-links { + margin: 0 1rem; + max-width: 100%; + display: flex; + flex-direction: column; +} + +@media only screen and (min-width: 768px) { + .post-navigation .nav-links { + margin: 0; + } +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links { + flex-direction: row; + margin: 0 calc(10% + 60px); + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.post-navigation .nav-links a .meta-nav { + color: #767676; + user-select: none; +} + +.post-navigation .nav-links a .meta-nav:before, .post-navigation .nav-links a .meta-nav:after { + display: none; + content: "—"; + width: 2em; + color: #767676; + height: 1em; +} + +.post-navigation .nav-links a .post-title { + hyphens: auto; +} + +.post-navigation .nav-links a:hover { + color: #005177; +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links .nav-previous, + .post-navigation .nav-links .nav-next { + min-width: calc(50% - 2 * 1rem); + } +} + +.post-navigation .nav-links .nav-previous { + order: 2; +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links .nav-previous { + order: 1; + } +} + +.post-navigation .nav-links .nav-previous + .nav-next { + margin-bottom: 1rem; +} + +.post-navigation .nav-links .nav-previous .meta-nav:before { + display: inline; +} + +.post-navigation .nav-links .nav-next { + order: 1; +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links .nav-next { + order: 2; + padding-right: 1rem; + } +} + +.post-navigation .nav-links .nav-next .meta-nav:after { + display: inline; +} + +.pagination .nav-links { + display: flex; + flex-wrap: wrap; + padding: 0 calc(.5 * 1rem); +} + +.pagination .nav-links > * { + padding: calc(.5 * 1rem); +} + +.pagination .nav-links > *.dots, .pagination .nav-links > *.prev { + padding-right: 0; +} + +.pagination .nav-links > *.dots, .pagination .nav-links > *.next { + padding-left: 0; +} + +.pagination .nav-links a:focus { + text-decoration: underline; + outline-offset: -1px; +} + +.pagination .nav-links a:focus.prev, .pagination .nav-links a:focus.next { + text-decoration: none; +} + +.pagination .nav-links a:focus.prev .nav-prev-text, +.pagination .nav-links a:focus.prev .nav-next-text, .pagination .nav-links a:focus.next .nav-prev-text, +.pagination .nav-links a:focus.next .nav-next-text { + text-decoration: underline; +} + +.pagination .nav-links .nav-next-text, +.pagination .nav-links .nav-prev-text { + display: none; +} + +@media only screen and (min-width: 768px) { + .pagination .nav-links { + margin-right: calc(10% + 60px); + padding: 0; + } + .pagination .nav-links .prev > *, + .pagination .nav-links .next > * { + display: inline-block; + vertical-align: text-bottom; + } + .pagination .nav-links > * { + padding: 1rem; + } +} + +.comment-navigation .nav-links { + display: flex; + flex-direction: row; +} + +.comment-navigation .nav-previous, +.comment-navigation .nav-next { + min-width: 50%; + width: 100%; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: bold; +} + +.comment-navigation .nav-previous .secondary-text, +.comment-navigation .nav-next .secondary-text { + display: none; +} + +@media only screen and (min-width: 768px) { + .comment-navigation .nav-previous .secondary-text, + .comment-navigation .nav-next .secondary-text { + display: inline; + } +} + +.comment-navigation .nav-previous svg, +.comment-navigation .nav-next svg { + vertical-align: middle; + position: relative; + margin: 0 -0.35em; + top: -1px; +} + +.comment-navigation .nav-next { + text-align: left; +} + +/* Accessibility */ +/* Text meant only for screen readers. */ +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute !important; + width: 1px; + word-wrap: normal !important; + /* Many screen reader and browser combinations announce broken words as they would appear visually. */ +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + clip-path: none; + color: #21759b; + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: bold; + height: auto; + right: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; + /* Above WP toolbar. */ +} + +/* Do not show the outline on the skip link target. */ +#content[tabindex="-1"]:focus { + outline: 0; +} + +/* Alignments */ +.alignleft { + float: left; + margin-right: 1rem; +} + +@media only screen and (min-width: 768px) { + .alignleft { + margin-right: calc(2 * 1rem); + } +} + +.alignright { + float: right; + margin-left: 1rem; +} + +@media only screen and (min-width: 768px) { + .alignright { + margin-left: calc(2 * 1rem); + } +} + +.aligncenter { + clear: both; + display: block; + margin-right: auto; + margin-left: auto; +} + +/* Clearings */ +.clear:before, +.clear:after, +.entry-content:before, +.entry-content:after, +.comment-content:before, +.comment-content:after, +.site-header:before, +.site-header:after, +.site-content:before, +.site-content:after, +.site-footer:before, +.site-footer:after { + content: ""; + display: table; + table-layout: fixed; +} + +.clear:after, +.entry-content:after, +.comment-content:after, +.site-header:after, +.site-content:after, +.site-footer:after { + clear: both; +} + +/* Layout */ +/** === Layout === */ +#page { + width: 100%; +} + +.site-content { + overflow: hidden; +} + +/* Content */ +/*-------------------------------------------------------------- +## Header +--------------------------------------------------------------*/ +.site-header { + padding: 1em; +} + +.site-header.featured-image { + display: flex; + flex-direction: column; + justify-content: space-between; + min-height: 90vh; +} + +.site-header.featured-image .site-branding-container { + margin-bottom: auto; +} + +@media only screen and (min-width: 768px) { + .site-header { + margin: 0; + padding: 3rem 0; + } + .site-header.featured-image { + min-height: 100vh; + margin-bottom: 3rem; + } +} + +.site-branding { + color: #767676; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + position: relative; + word-wrap: break-word; +} + +@media only screen and (min-width: 768px) { + .site-branding { + margin: 0 calc(10% + 60px); + } +} + +.site-logo { + position: relative; + z-index: 999; + margin-bottom: calc(.66 * 1rem); +} + +@media only screen and (min-width: 768px) { + .site-logo { + margin-bottom: 0; + position: absolute; + left: calc(100% + (1.25 * 1rem)); + top: 4px; + z-index: 999; + } +} + +.site-logo .custom-logo-link { + border-radius: 100%; + box-sizing: content-box; + box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); + display: block; + width: 50px; + height: 50px; + overflow: hidden; + transition: box-shadow 200ms ease-in-out; +} + +.site-logo .custom-logo-link .custom-logo { + min-height: inherit; +} + +.site-logo .custom-logo-link:hover, .site-logo .custom-logo-link:active, .site-logo .custom-logo-link:focus { + box-shadow: 0 0 0 2px black; +} + +@media only screen and (min-width: 768px) { + .site-logo .custom-logo-link { + width: 64px; + height: 64px; + } +} + +.site-title { + margin: auto; + display: inline; + color: #111; + /* When there is no description set, make sure navigation appears below title. */ +} + +.site-title a { + color: #111; +} + +.site-title a:link, .site-title a:visited { + color: #111; +} + +.site-title a:hover { + color: #4a4a4a; +} + +.featured-image .site-title { + margin: 0; +} + +@media only screen and (min-width: 768px) { + .featured-image .site-title { + display: inline-block; + } +} + +.site-title + .main-navigation { + display: block; +} + +@media only screen and (min-width: 768px) { + .site-title { + display: inline; + } +} + +.site-title:not(:empty) + .site-description:not(:empty):before { + content: "\2014"; + margin: 0 .2em; +} + +.site-description { + display: inline; + color: #767676; + font-weight: normal; + margin: 0; +} + +.site-header.featured-image { + /* Hide overflow for overflowing featured image */ + overflow: hidden; + /* Need relative positioning to properly align layers. */ + position: relative; + /* Add text shadow to text, to increase readability. */ + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35); + /* Set white text color when featured image is set. */ + /* add focus state to social media icons */ + /* Entry header */ + /* Custom Logo Link */ + /* Make sure important elements are above pseudo elements used for effects. */ + /* Set up image filter layer positioning */ + /* Background & Effects */ + /* Shared background settings between pseudo elements. */ + background-position: center; + background-repeat: no-repeat; + background-size: cover; + /* The intensity of each blend mode is controlled via layer opacity. */ + /* Second layer: screen. */ + /* Third layer: multiply. */ + /* When image filters are inactive, a black overlay is added. */ + /* Fourth layer: overlay. */ + /* Fifth layer: readability overlay */ +} + +.site-header.featured-image .site-branding .site-title, +.site-header.featured-image .site-branding .site-description, +.site-header.featured-image .main-navigation a:after, +.site-header.featured-image .main-navigation .main-menu > li.menu-item-has-children:after, +.site-header.featured-image .main-navigation li, +.site-header.featured-image .social-navigation li, +.site-header.featured-image .entry-meta, +.site-header.featured-image .entry-title { + color: #fff; +} + +.site-header.featured-image .main-navigation a, +.site-header.featured-image .main-navigation a + svg, +.site-header.featured-image .social-navigation a, +.site-header.featured-image .site-title a, +.site-header.featured-image .site-featured-image a { + color: #fff; + transition: opacity 110ms ease-in-out; +} + +.site-header.featured-image .main-navigation a:hover, .site-header.featured-image .main-navigation a:active, +.site-header.featured-image .main-navigation a:hover + svg, +.site-header.featured-image .main-navigation a:active + svg, +.site-header.featured-image .main-navigation a + svg:hover, +.site-header.featured-image .main-navigation a + svg:active, +.site-header.featured-image .main-navigation a + svg:hover + svg, +.site-header.featured-image .main-navigation a + svg:active + svg, +.site-header.featured-image .social-navigation a:hover, +.site-header.featured-image .social-navigation a:active, +.site-header.featured-image .social-navigation a:hover + svg, +.site-header.featured-image .social-navigation a:active + svg, +.site-header.featured-image .site-title a:hover, +.site-header.featured-image .site-title a:active, +.site-header.featured-image .site-title a:hover + svg, +.site-header.featured-image .site-title a:active + svg, +.site-header.featured-image .site-featured-image a:hover, +.site-header.featured-image .site-featured-image a:active, +.site-header.featured-image .site-featured-image a:hover + svg, +.site-header.featured-image .site-featured-image a:active + svg { + color: #fff; + opacity: 0.6; +} + +.site-header.featured-image .main-navigation a:focus, +.site-header.featured-image .main-navigation a:focus + svg, +.site-header.featured-image .main-navigation a + svg:focus, +.site-header.featured-image .main-navigation a + svg:focus + svg, +.site-header.featured-image .social-navigation a:focus, +.site-header.featured-image .social-navigation a:focus + svg, +.site-header.featured-image .site-title a:focus, +.site-header.featured-image .site-title a:focus + svg, +.site-header.featured-image .site-featured-image a:focus, +.site-header.featured-image .site-featured-image a:focus + svg { + color: #fff; +} + +.site-header.featured-image .main-navigation .sub-menu a { + opacity: inherit; +} + +.site-header.featured-image .social-navigation a:focus { + color: #fff; + opacity: 1; + border-bottom: 1px solid #fff; +} + +.site-header.featured-image .social-navigation svg, +.site-header.featured-image .site-featured-image svg { + /* Use -webkit- only if supporting: Chrome < 54, iOS < 9.3, Android < 4.4.4 */ + -webkit-filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35)); + filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35)); +} + +.site-header.featured-image .site-featured-image { + /* First layer: grayscale. */ +} + +.site-header.featured-image .site-featured-image .post-thumbnail img { + height: auto; + right: 50%; + max-width: 1000%; + min-height: 100%; + min-width: 100vw; + position: absolute; + top: 50%; + transform: translateX(50%) translateY(-50%); + width: auto; + z-index: 1; + /* When image filters are active, make it grayscale to colorize it blue. */ +} + +@supports (object-fit: cover) { + .site-header.featured-image .site-featured-image .post-thumbnail img { + height: 100%; + right: 0; + object-fit: cover; + top: 0; + transform: none; + width: 100%; + } +} + +.image-filters-enabled .site-header.featured-image .site-featured-image .post-thumbnail img { + filter: grayscale(100%); +} + +.site-header.featured-image .site-featured-image .entry-header { + margin-top: calc( 4 * 1rem); + margin-bottom: 0; + margin-right: 0; + margin-left: 0; + /* Entry meta */ +} + +@media only screen and (min-width: 768px) { + .site-header.featured-image .site-featured-image .entry-header { + margin-right: calc(10% + 60px); + margin-left: calc(10% + 60px); + } +} + +.site-header.featured-image .site-featured-image .entry-header .entry-title:before { + background: #fff; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta { + font-weight: 500; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta > span { + margin-left: 1rem; + display: inline-block; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta > span:last-child { + margin-left: 0; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta a { + transition: color 110ms ease-in-out; + color: currentColor; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta a:hover { + text-decoration: none; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta .svg-icon { + position: relative; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta .discussion-avatar-list { + display: none; +} + +@media only screen and (min-width: 768px) { + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta { + display: flex; + position: relative; + } + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-title { + padding-left: calc(1 * (100vw / 12) + 1rem); + } + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta .comment-count { + position: absolute; + left: 0; + } + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta .discussion-avatar-list { + display: block; + position: absolute; + bottom: 100%; + } +} + +.site-header.featured-image .custom-logo-link { + background: #fff; + box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); +} + +.site-header.featured-image .custom-logo-link:hover, .site-header.featured-image .custom-logo-link:active, .site-header.featured-image .custom-logo-link:focus { + box-shadow: 0 0 0 2px white; +} + +.site-header.featured-image .site-branding { + position: relative; + z-index: 10; +} + +.site-header.featured-image .site-featured-image .entry-header { + position: relative; + z-index: 9; +} + +.site-header.featured-image .site-branding-container:after, +.site-header.featured-image .site-featured-image:before, +.site-header.featured-image .site-featured-image:after, .site-header.featured-image:after { + display: block; + position: absolute; + top: 0; + right: 0; + content: "\020"; + width: 100%; + height: 100%; +} + +.image-filters-enabled .site-header.featured-image .site-featured-image:before { + background: #0073aa; + mix-blend-mode: screen; + opacity: 0.1; +} + +.site-header.featured-image .site-featured-image:after { + background: #000; + mix-blend-mode: multiply; + opacity: .7; + /* When image filters are active, a blue overlay is added. */ +} + +.image-filters-enabled .site-header.featured-image .site-featured-image:after { + background: #0073aa; + opacity: .8; + z-index: 3; + /* Browsers supporting mix-blend-mode don't need opacity < 1 */ +} + +@supports (mix-blend-mode: multiply) { + .image-filters-enabled .site-header.featured-image .site-featured-image:after { + opacity: 1; + } +} + +.image-filters-enabled .site-header.featured-image .site-branding-container:after { + background: rgba(0, 0, 0, 0.35); + mix-blend-mode: overlay; + opacity: 0.5; + z-index: 4; + /* Browsers supporting mix-blend-mode can have a light overlay */ +} + +@supports (mix-blend-mode: overlay) { + .image-filters-enabled .site-header.featured-image .site-branding-container:after { + background: rgba(255, 255, 255, 0.35); + } +} + +.site-header.featured-image:after { + background: #000; + /** + * Add a transition to the readability overlay, to add a subtle + * but smooth effect when resizing the screen. + */ + transition: opacity 1200ms ease-in-out; + opacity: 0.7; + z-index: 5; + /* When image filters are active, a blue overlay is added. */ +} + +.image-filters-enabled .site-header.featured-image:after { + background: #000e14; + opacity: 0.38; +} + +@media only screen and (min-width: 768px) { + .image-filters-enabled .site-header.featured-image:after { + opacity: 0.18; + } +} + +.site-header.featured-image ::-moz-selection { + background: rgba(255, 255, 255, 0.17); +} + +.site-header.featured-image ::selection { + background: rgba(255, 255, 255, 0.17); +} + +/*-------------------------------------------------------------- +## Posts and pages +--------------------------------------------------------------*/ +.sticky { + display: block; +} + +.sticky-post { + background: #0073aa; + color: #fff; + display: inline-block; + font-weight: bold; + line-height: 1; + padding: .25rem; + position: absolute; + text-transform: uppercase; + top: -1rem; + z-index: 1; +} + +.updated:not(.published) { + display: none; +} + +.page-links { + clear: both; + margin: 0 0 calc(1.5 * 1rem); +} + +.entry { + margin-top: calc(6 * 1rem); +} + +.entry:first-of-type { + margin-top: 0; +} + +.entry .entry-header { + margin: calc(3 * 1rem) 1rem 1rem; + position: relative; +} + +@media only screen and (min-width: 768px) { + .entry .entry-header { + margin: calc(3 * 1rem) calc(10% + 60px) 1rem; + } +} + +.entry .entry-title { + margin: 0; +} + +.entry .entry-title:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +.entry .entry-title a { + color: inherit; +} + +.entry .entry-title a:hover { + color: #4a4a4a; +} + +.entry .entry-meta, +.entry .entry-footer { + color: #767676; + font-weight: 500; +} + +.entry .entry-meta > span, +.entry .entry-footer > span { + margin-left: 1rem; + display: inline-block; +} + +.entry .entry-meta > span:last-child, +.entry .entry-footer > span:last-child { + margin-left: 0; +} + +.entry .entry-meta a, +.entry .entry-footer a { + transition: color 110ms ease-in-out; + color: currentColor; +} + +.entry .entry-meta a:hover, +.entry .entry-footer a:hover { + text-decoration: none; + color: #0073aa; +} + +.entry .entry-meta .svg-icon, +.entry .entry-footer .svg-icon { + position: relative; + display: inline-block; + vertical-align: middle; + margin-left: 0.5em; +} + +.entry .entry-meta { + margin: 1rem 0; +} + +.entry .entry-footer { + margin: calc(2 * 1rem) 1rem 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-footer { + margin: 1rem calc(10% + 60px) calc(3 * 1rem); + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-footer { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.entry .post-thumbnail { + margin: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .post-thumbnail { + margin: 1rem calc(10% + 60px); + } +} + +.entry .post-thumbnail:focus { + outline: none; +} + +.entry .post-thumbnail .post-thumbnail-inner { + display: block; +} + +.entry .post-thumbnail .post-thumbnail-inner img { + position: relative; + display: block; + width: 100%; +} + +.image-filters-enabled .entry .post-thumbnail { + position: relative; + display: block; +} + +.image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner { + filter: grayscale(100%); +} + +.image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner:after { + background: rgba(0, 0, 0, 0.35); + content: ""; + display: block; + height: 100%; + opacity: .5; + pointer-events: none; + position: absolute; + top: 0; + width: 100%; + z-index: 4; +} + +@supports (mix-blend-mode: multiply) { + .image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner:after { + display: none; + } +} + +.image-filters-enabled .entry .post-thumbnail:before, .image-filters-enabled .entry .post-thumbnail:after { + position: absolute; + display: block; + width: 100%; + height: 100%; + top: 0; + right: 0; + content: "\020"; + pointer-events: none; +} + +.image-filters-enabled .entry .post-thumbnail:before { + background: #0073aa; + mix-blend-mode: screen; + opacity: 0.1; + z-index: 2; +} + +.image-filters-enabled .entry .post-thumbnail:after { + background: #0073aa; + mix-blend-mode: multiply; + opacity: .8; + z-index: 3; + /* Browsers supporting mix-blend-mode don't need opacity < 1 */ +} + +@supports (mix-blend-mode: multiply) { + .image-filters-enabled .entry .post-thumbnail:after { + opacity: 1; + } +} + +.entry .entry-content, +.entry .entry-summary { + max-width: calc(100% - (2 * 1rem)); + margin: 0 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content, + .entry .entry-summary { + max-width: 80%; + margin: 0 10%; + padding: 0 60px; + } +} + +.entry .entry-content p { + word-wrap: break-word; +} + +.entry .entry-content .more-link { + transition: color 110ms ease-in-out; + display: inline; + color: inherit; +} + +.entry .entry-content .more-link:after { + content: "\02192"; + display: inline-block; + margin-right: 0.5em; +} + +.entry .entry-content .more-link:hover { + color: #0073aa; + text-decoration: none; +} + +.entry .entry-content a { + text-decoration: underline; +} + +.entry .entry-content a.button, .entry .entry-content a:hover { + text-decoration: none; +} + +.entry .entry-content a.button { + display: inline-block; +} + +.entry .entry-content a.button:hover { + background: #111; + color: #fff; + cursor: pointer; +} + +.entry .entry-content > iframe[style] { + margin: 32px 0 !important; + max-width: 100% !important; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > iframe[style] { + max-width: calc(8 * (100vw / 12) - 28px) !important; + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content > iframe[style] { + max-width: calc(6 * (100vw / 12) - 28px) !important; + } +} + +.entry .entry-content .page-links a { + margin: calc(0.5 * 1rem); + text-decoration: none; +} + +.entry .entry-content .wp-audio-shortcode { + max-width: calc(100vw - (2 * 1rem)); +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-audio-shortcode { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-audio-shortcode { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +/* Author description */ +.author-bio { + margin: calc(2 * 1rem) 1rem 1rem; +} + +@media only screen and (min-width: 768px) { + .author-bio { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .author-bio { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .author-bio { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +@media only screen and (min-width: 1168px) { + .author-bio { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +.author-bio .author-title { + display: inline; +} + +.author-bio .author-title:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +.author-bio .author-description { + display: inline; + color: #767676; + font-size: 1.125em; + line-height: 1.2; +} + +.author-bio .author-description .author-link { + display: inline-block; +} + +.author-bio .author-description .author-link:hover { + color: #005177; + text-decoration: none; +} + +/*-------------------------------------------------------------- +## Comments +--------------------------------------------------------------*/ +.comment-content a { + word-wrap: break-word; +} + +.bypostauthor { + display: block; +} + +.comments-area { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + margin: calc(2 * 1rem) 1rem; + word-wrap: break-word; + /* Add extra margin when the comments section is located immediately after the + * post itself (this happens on pages). + */ +} + +@media only screen and (min-width: 768px) { + .comments-area { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .comments-area { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .comments-area { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +.comments-area > * { + margin-top: calc(2 * 1rem); + margin-bottom: calc(2 * 1rem); +} + +@media only screen and (min-width: 768px) { + .comments-area > * { + margin-top: calc(3 * 1rem); + margin-bottom: calc(3 * 1rem); + } +} + +.entry + .comments-area { + margin-top: calc(3 * 1rem); +} + +@media only screen and (min-width: 768px) { + .comments-area .comments-title-wrap { + align-items: baseline; + display: flex; + justify-content: space-between; + } +} + +.comments-area .comments-title-wrap .comments-title { + margin: 0; +} + +.comments-area .comments-title-wrap .comments-title:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +@media only screen and (min-width: 768px) { + .comments-area .comments-title-wrap .comments-title { + flex: 1 0 calc(3 * (100vw / 12)); + } +} + +@media only screen and (min-width: 768px) { + .comments-area .comments-title-wrap .discussion-meta { + flex: 0 0 calc(2 * (100vw / 12)); + margin-right: 1rem; + } +} + +#comment { + max-width: 100%; + box-sizing: border-box; +} + +#respond { + position: relative; +} + +#respond .comment-user-avatar { + margin: 1rem 0 -1rem; +} + +#respond .comment .comment-form { + padding-right: 0; +} + +#respond > small { + display: block; + font-size: 22px; + position: absolute; + right: calc(1rem + 100%); + top: calc(-3.5 * 1rem); + width: calc(100vw / 12); +} + +#comments > .comments-title:last-child { + display: none; +} + +.comment-form-flex { + display: flex; + flex-direction: column; +} + +.comment-form-flex .comments-title { + display: none; + margin: 0; + order: 1; +} + +.comment-form-flex #respond { + order: 2; +} + +.comment-form-flex #respond + .comments-title { + display: block; +} + +.comment-list { + list-style: none; + padding: 0; +} + +.comment-list .children { + margin: 0; + padding: 0 1rem 0 0; +} + +.comment-list > .comment:first-child { + margin-top: 0; +} + +.comment-list .pingback .comment-body, +.comment-list .trackback .comment-body { + color: #767676; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + font-weight: 500; + margin-top: 1rem; + margin-bottom: 1rem; +} + +.comment-list .pingback .comment-body a:not(.comment-edit-link), +.comment-list .trackback .comment-body a:not(.comment-edit-link) { + font-weight: bold; + font-size: 19.55556px; + line-height: 1.5; + padding-left: 0.5rem; + display: block; +} + +.comment-list .pingback .comment-body .comment-edit-link, +.comment-list .trackback .comment-body .comment-edit-link { + color: #767676; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 500; +} + +#respond + .comment-reply { + display: none; +} + +.comment-reply .comment-reply-link { + display: inline-block; +} + +.comment { + list-style: none; + position: relative; +} + +@media only screen and (min-width: 768px) { + .comment { + padding-right: calc(.5 * (1rem + calc(100vw / 12 ))); + } + .comment.depth-1, + .comment .children { + padding-right: 0; + } + .comment.depth-1 { + margin-right: calc(3.25 * 1rem); + } +} + +.comment .comment-body { + margin: calc(2 * 1rem) 0 0; +} + +.comment .comment-meta { + position: relative; +} + +.comment .comment-author .avatar { + float: right; + margin-left: 1rem; + position: relative; +} + +@media only screen and (min-width: 768px) { + .comment .comment-author .avatar { + float: inherit; + margin-left: inherit; + position: absolute; + top: 0; + left: calc(100% + 1rem); + } +} + +.comment .comment-author .fn { + position: relative; + display: block; +} + +.comment .comment-author .fn a { + color: inherit; +} + +.comment .comment-author .fn a:hover { + color: #005177; +} + +.comment .comment-author .post-author-badge { + border-radius: 100%; + display: block; + height: 18px; + position: absolute; + background: #008fd3; + left: calc(100% - 2.5rem); + top: -3px; + width: 18px; +} + +@media only screen and (min-width: 768px) { + .comment .comment-author .post-author-badge { + left: calc(100% + 0.75rem); + } +} + +.comment .comment-author .post-author-badge svg { + width: inherit; + height: inherit; + display: block; + fill: white; + transform: scale(0.875); +} + +.comment .comment-metadata > a, +.comment .comment-metadata .comment-edit-link { + display: inline; + font-weight: 500; + color: #767676; + vertical-align: baseline; +} + +.comment .comment-metadata > a time, +.comment .comment-metadata .comment-edit-link time { + vertical-align: baseline; +} + +.comment .comment-metadata > a:hover, +.comment .comment-metadata .comment-edit-link:hover { + color: #005177; + text-decoration: none; +} + +.comment .comment-metadata > * { + display: inline-block; +} + +.comment .comment-metadata .edit-link-sep { + color: #767676; + margin: 0 0.2em; + vertical-align: baseline; +} + +.comment .comment-metadata .edit-link { + color: #767676; +} + +.comment .comment-metadata .edit-link svg { + transform: scale(0.8); + vertical-align: baseline; + margin-left: 0.1em; +} + +.comment .comment-metadata .comment-edit-link { + position: relative; + padding-right: 1rem; + margin-right: -1rem; + z-index: 1; +} + +.comment .comment-metadata .comment-edit-link:hover { + color: #0073aa; +} + +.comment .comment-content { + margin: 1rem 0; +} + +@media only screen and (min-width: 1168px) { + .comment .comment-content { + padding-left: 1rem; + } +} + +.comment .comment-content > *:first-child { + margin-top: 0; +} + +.comment .comment-content > *:last-child { + margin-bottom: 0; +} + +.comment .comment-content blockquote { + margin-right: 0; +} + +.comment .comment-content a { + text-decoration: underline; +} + +.comment .comment-content a:hover { + text-decoration: none; +} + +.comment-reply-link, +#cancel-comment-reply-link { + font-weight: 500; +} + +.comment-reply-link:hover, +#cancel-comment-reply-link:hover { + color: #005177; +} + +.discussion-avatar-list { + content: ""; + display: table; + table-layout: fixed; + margin: 0; + padding: 0; +} + +.discussion-avatar-list li { + position: relative; + list-style: none; + margin: 0 0 0 -8px; + padding: 0; + float: right; +} + +.discussion-avatar-list .comment-user-avatar img { + height: calc(1.5 * 1rem); + width: calc(1.5 * 1rem); +} + +.discussion-meta .discussion-meta-info { + margin: 0; +} + +.discussion-meta .discussion-meta-info .svg-icon { + vertical-align: middle; + fill: currentColor; + transform: scale(0.6) scaleX(-1) translateY(-0.1em); + margin-right: -0.25rem; +} + +.comment-form .comment-notes, +.comment-form label { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + color: #767676; +} + +@media only screen and (min-width: 768px) { + .comment-form .comment-form-author, + .comment-form .comment-form-email { + width: calc(50% - 0.5rem); + float: right; + } +} + +@media only screen and (min-width: 768px) { + .comment-form .comment-form-email { + margin-right: 1rem; + } +} + +.comment-form input[name="author"], +.comment-form input[name="email"], +.comment-form input[name="url"] { + display: block; + width: 100%; +} + +/*-------------------------------------------------------------- +## Archives +--------------------------------------------------------------*/ +.archive .page-header, +.search .page-header, +.error404 .page-header { + margin: 1rem 1rem calc(3 * 1rem); +} + +@media only screen and (min-width: 768px) { + .archive .page-header, + .search .page-header, + .error404 .page-header { + margin: 0 calc(10% + 60px) calc(3 * 1rem); + } +} + +.archive .page-header .page-title, +.search .page-header .page-title, +.error404 .page-header .page-title { + color: #767676; + display: inline; + letter-spacing: normal; +} + +.archive .page-header .page-title:before, +.search .page-header .page-title:before, +.error404 .page-header .page-title:before { + display: none; +} + +.archive .page-header .search-term, +.archive .page-header .page-description, +.search .page-header .search-term, +.search .page-header .page-description, +.error404 .page-header .search-term, +.error404 .page-header .page-description { + display: inherit; + clear: both; +} + +.archive .page-header .page-description, +.search .page-header .page-description { + display: block; + color: #111; + font-size: 1em; +} + +@media only screen and (min-width: 768px) { + .hfeed .entry .entry-header { + margin: calc(3 * 1rem) calc(10% + 60px) calc(1rem / 2); + } +} + +/* 404 & Not found */ +.error-404.not-found .page-content, +.no-results.not-found .page-content { + margin: calc(3 * 1rem) 1rem; +} + +@media only screen and (min-width: 768px) { + .error-404.not-found .page-content, + .no-results.not-found .page-content { + margin: calc(3 * 1rem) calc(10% + 60px) calc(1rem / 2); + } +} + +.error-404.not-found .search-submit, +.no-results.not-found .search-submit { + vertical-align: middle; + margin: 1rem 0; +} + +.error-404.not-found .search-field, +.no-results.not-found .search-field { + width: 100%; +} + +/*-------------------------------------------------------------- +## Footer +--------------------------------------------------------------*/ +/* Site footer */ +#colophon .widget-area, +#colophon .site-info { + margin: calc(2 * 1rem) 1rem; +} + +@media only screen and (min-width: 768px) { + #colophon .widget-area, + #colophon .site-info { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +#colophon .widget-column { + display: flex; + flex-wrap: wrap; +} + +#colophon .widget-column .widget { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + width: 100%; + word-wrap: break-word; +} + +@media only screen and (min-width: 1168px) { + #colophon .widget-column .widget { + margin-left: calc(3 * 1rem); + width: calc(50% - (3 * 1rem)); + } +} + +#colophon .site-info { + color: #767676; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + word-wrap: break-word; +} + +#colophon .site-info a { + color: inherit; +} + +#colophon .site-info a:hover { + text-decoration: none; + color: #0073aa; +} + +#colophon .site-info .imprint, +#colophon .site-info .privacy-policy-link { + margin-left: 1rem; +} + +/* Widgets */ +.widget { + margin: 0 0 1rem; + /* Make sure select elements fit in widgets. */ +} + +.widget select { + max-width: 100%; +} + +.widget a { + color: #0073aa; +} + +.widget a:hover { + color: #005177; +} + +.widget_archive ul, +.widget_categories ul, +.widget_meta ul, +.widget_nav_menu ul, +.widget_pages ul, +.widget_recent_comments ul, +.widget_recent_entries ul, +.widget_rss ul { + padding: 0; + list-style: none; +} + +.widget_archive ul li, +.widget_categories ul li, +.widget_meta ul li, +.widget_nav_menu ul li, +.widget_pages ul li, +.widget_recent_comments ul li, +.widget_recent_entries ul li, +.widget_rss ul li { + color: #767676; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: calc(22px * 1.125); + font-weight: 700; + line-height: 1.2; + margin-top: 0.5rem; + margin-bottom: 0.5rem; +} + +.widget_archive ul ul, +.widget_categories ul ul, +.widget_meta ul ul, +.widget_nav_menu ul ul, +.widget_pages ul ul, +.widget_recent_comments ul ul, +.widget_recent_entries ul ul, +.widget_rss ul ul { + counter-reset: submenu; +} + +.widget_archive ul ul > li > a::before, +.widget_categories ul ul > li > a::before, +.widget_meta ul ul > li > a::before, +.widget_nav_menu ul ul > li > a::before, +.widget_pages ul ul > li > a::before, +.widget_recent_comments ul ul > li > a::before, +.widget_recent_entries ul ul > li > a::before, +.widget_rss ul ul > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.widget_tag_cloud .tagcloud { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 700; +} + +.widget_search .search-field { + width: 100%; +} + +@media only screen and (min-width: 600px) { + .widget_search .search-field { + width: auto; + } +} + +.widget_search .search-submit { + display: block; + margin-top: 1rem; +} + +.widget_calendar .calendar_wrap { + text-align: center; +} + +.widget_calendar .calendar_wrap table td, +.widget_calendar .calendar_wrap table th { + border: none; +} + +.widget_calendar .calendar_wrap a { + text-decoration: underline; +} + +/* Blocks */ +/* !Block styles */ +.entry .entry-content > *, +.entry .entry-summary > *, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + margin: 32px 0; + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *, + .entry .entry-summary > *, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content > *, + .entry .entry-summary > *, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *, + .entry .entry-summary > *, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + margin: 32px 0; + } +} + +.entry .entry-content > *.alignwide, +.entry .entry-summary > *.alignwide, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignwide, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignwide { + margin-right: auto; + margin-left: auto; + clear: both; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignwide, + .entry .entry-summary > *.alignwide, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignwide, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignwide { + width: 100%; + max-width: 100%; + } +} + +.entry .entry-content > *.alignfull, +.entry .entry-summary > *.alignfull, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignfull, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignfull { + position: relative; + right: -1rem; + width: calc( 100% + (2 * 1rem)); + max-width: calc( 100% + (2 * 1rem)); + clear: both; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignfull, + .entry .entry-summary > *.alignfull, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignfull, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignfull { + margin-top: calc(2 * 1rem); + margin-bottom: calc(2 * 1rem); + right: calc( -12.5% - 75px); + width: calc( 125% + 150px); + max-width: calc( 125% + 150px); + } +} + +.entry .entry-content > *.alignleft, +.entry .entry-summary > *.alignleft, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignleft, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignleft { + float: left; + max-width: calc(5 * (100vw / 12)); + margin-top: 0; + margin-right: 0; + margin-right: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignleft, + .entry .entry-summary > *.alignleft, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignleft, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignleft { + max-width: calc(4 * (100vw / 12)); + margin-right: calc(2 * 1rem); + } +} + +.entry .entry-content > *.alignright, +.entry .entry-summary > *.alignright, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignright, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignright { + float: right; + max-width: calc(5 * (100vw / 12)); + margin-top: 0; + margin-left: 0; + margin-left: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignright, + .entry .entry-summary > *.alignright, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignright, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignright { + max-width: calc(4 * (100vw / 12)); + margin-left: 0; + margin-left: calc(2 * 1rem); + } +} + +.entry .entry-content > *.aligncenter, +.entry .entry-summary > *.aligncenter, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + margin-right: auto; + margin-left: auto; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.aligncenter, + .entry .entry-summary > *.aligncenter, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content > *.aligncenter, + .entry .entry-summary > *.aligncenter, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.aligncenter, + .entry .entry-summary > *.aligncenter, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + margin-right: 0; + margin-left: 0; + } +} + +.entry .entry-content > * > *:first-child, +.entry .entry-summary > * > *:first-child { + margin-top: 0; +} + +.entry .entry-content > * > *:last-child, +.entry .entry-summary > * > *:last-child { + margin-bottom: 0; +} + +/* + * Unset nested content selector styles + * - Prevents layout styles from cascading too deeply + * - helps with plugin compatibility + */ +.entry .entry-content .entry-content, +.entry .entry-content .entry-summary, +.entry .entry-content .entry, +.entry .entry-summary .entry-content, +.entry .entry-summary .entry-summary, +.entry .entry-summary .entry { + margin: inherit; + max-width: inherit; + padding: inherit; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .entry-content, + .entry .entry-content .entry-summary, + .entry .entry-content .entry, + .entry .entry-summary .entry-content, + .entry .entry-summary .entry-summary, + .entry .entry-summary .entry { + margin: inherit; + max-width: inherit; + padding: inherit; + } +} + +.entry .entry-content p.has-background { + padding: 20px 30px; +} + +.entry .entry-content .wp-block-audio { + width: 100%; +} + +.entry .entry-content .wp-block-audio audio { + width: 100%; +} + +.entry .entry-content .wp-block-audio.alignleft audio, +.entry .entry-content .wp-block-audio.alignright audio { + max-width: 198px; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-audio.alignleft audio, + .entry .entry-content .wp-block-audio.alignright audio { + max-width: 384px; + } +} + +@media only screen and (min-width: 1379px) { + .entry .entry-content .wp-block-audio.alignleft audio, + .entry .entry-content .wp-block-audio.alignright audio { + max-width: 385.44px; + } +} + +.entry .entry-content .wp-block-video video { + width: 100%; +} + +.entry .entry-content .wp-block-button .wp-block-button__link { + transition: background 150ms ease-in-out; + border: none; + font-size: 0.88889em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.2; + box-sizing: border-box; + font-weight: bold; + text-decoration: none; + padding: 0.76rem 1rem; + outline: none; + outline: none; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:not(.has-background) { + background-color: #0073aa; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:not(.has-text-color) { + color: white; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:hover { + color: white; + background: #111; + cursor: pointer; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:focus { + color: white; + background: #111; + outline: thin dotted; + outline-offset: -4px; +} + +.entry .entry-content .wp-block-button:not(.is-style-squared) .wp-block-button__link { + border-radius: 5px; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link, +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus, +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active { + transition: all 150ms ease-in-out; + border-width: 2px; + border-style: solid; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus:not(.has-background), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active:not(.has-background) { + background: transparent; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus:not(.has-text-color), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active:not(.has-text-color) { + color: #0073aa; + border-color: currentColor; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover { + color: white; + border-color: #111; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover:not(.has-background) { + color: #111; +} + +.entry .entry-content .wp-block-archives, +.entry .entry-content .wp-block-categories, +.entry .entry-content .wp-block-latest-posts { + padding: 0; + list-style: none; +} + +.entry .entry-content .wp-block-archives li > a, +.entry .entry-content .wp-block-categories li > a, +.entry .entry-content .wp-block-latest-posts li > a { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: calc(22px * 1.125); + font-weight: bold; + line-height: 1.2; + text-decoration: none; +} + +.entry .entry-content .wp-block-archives.aligncenter, +.entry .entry-content .wp-block-categories.aligncenter { + text-align: center; +} + +.entry .entry-content .wp-block-categories ul { + padding-top: 0.75rem; +} + +.entry .entry-content .wp-block-categories li ul { + list-style: none; + padding-right: 0; +} + +.entry .entry-content .wp-block-categories ul { + counter-reset: submenu; +} + +.entry .entry-content .wp-block-categories ul > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + color: #767676; + line-height: 1.2; +} + +.entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-full-content, +.entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-excerpt { + margin-top: 1rem; + margin-bottom: 1rem; +} + +.entry .entry-content .wp-block-latest-posts li { + padding-bottom: 0.5rem; +} + +.entry .entry-content .wp-block-latest-posts li.menu-item-has-children, .entry .entry-content .wp-block-latest-posts li:last-child { + padding-bottom: 0; +} + +.entry .entry-content .wp-block-latest-posts li :not(:last-child) .wp-block-latest-posts__post-excerpt { + padding-bottom: 0.5rem; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li { + border-top: 2px solid #ccc; + padding-top: 1rem; + margin-bottom: 2rem; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li a:after { + content: ''; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li:last-child { + margin-bottom: auto; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li:last-child a:after { + content: ''; +} + +.entry .entry-content .wp-block-preformatted { + font-size: 0.71111em; + line-height: 1.8; + padding: 1rem; +} + +.entry .entry-content .wp-block-verse { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-size: 22px; + line-height: 1.8; +} + +.entry .entry-content .has-drop-cap:not(:focus):first-letter { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 3.375em; + line-height: 1; + font-weight: bold; + margin: 0 0 0 0.25em; +} + +.entry .entry-content .wp-block-pullquote { + border-color: transparent; + border-width: 2px; + padding: 1rem; +} + +.entry .entry-content .wp-block-pullquote blockquote { + color: #111; + border: none; + margin-top: calc(4 * 1rem); + margin-bottom: calc(4.33 * 1rem); + margin-left: 0; + padding-right: 0; +} + +.entry .entry-content .wp-block-pullquote p { + font-size: 1.6875em; + font-style: italic; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +.entry .entry-content .wp-block-pullquote p em { + font-style: normal; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote p { + font-size: 2.25em; + } +} + +.entry .entry-content .wp-block-pullquote cite { + display: inline-block; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + text-transform: none; + color: #767676; + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * 1.125)); +} + +.entry .entry-content .wp-block-pullquote.alignleft, .entry .entry-content .wp-block-pullquote.alignright { + width: 100%; + padding: 0; +} + +.entry .entry-content .wp-block-pullquote.alignleft blockquote, .entry .entry-content .wp-block-pullquote.alignright blockquote { + margin: 1rem 0; + padding: 0; + text-align: right; + max-width: 100%; +} + +.entry .entry-content .wp-block-pullquote.alignleft blockquote p:first-child, .entry .entry-content .wp-block-pullquote.alignright blockquote p:first-child { + margin-top: 0; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color { + background-color: #0073aa; + padding-right: 0; + padding-left: 0; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color { + padding-right: 10%; + padding-left: 10%; + } +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color p { + font-size: 1.6875em; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color p { + font-size: 2.25em; + } +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color a { + color: #fff; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color cite { + color: inherit; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote { + max-width: 100%; + color: #fff; + padding-right: 0; + margin-right: 1rem; + margin-left: 1rem; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-text-color p, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-text-color a, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-white-color { + color: inherit; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote { + margin-right: 0; + margin-left: 0; + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignright, .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignleft { + padding: 1rem calc(2 * 1rem); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignfull { + padding-right: calc(10% + 58px + (2 * 1rem)); + padding-left: calc(10% + 58px + (2 * 1rem)); + } +} + +.entry .entry-content .wp-block-quote:not(.is-large), .entry .entry-content .wp-block-quote:not(.is-style-large) { + border-width: 2px; + border-color: #0073aa; + padding-top: 0; + padding-bottom: 0; +} + +.entry .entry-content .wp-block-quote p { + font-size: 1em; + font-style: normal; + line-height: 1.8; +} + +.entry .entry-content .wp-block-quote cite { + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * 1.125)); +} + +.entry .entry-content .wp-block-quote.is-large, .entry .entry-content .wp-block-quote.is-style-large { + margin: 1rem 0; + padding: 0; + border-right: none; +} + +.entry .entry-content .wp-block-quote.is-large p, .entry .entry-content .wp-block-quote.is-style-large p { + font-size: 1.6875em; + line-height: 1.4; + font-style: italic; +} + +.entry .entry-content .wp-block-quote.is-large cite, +.entry .entry-content .wp-block-quote.is-large footer, .entry .entry-content .wp-block-quote.is-style-large cite, +.entry .entry-content .wp-block-quote.is-style-large footer { + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * 1.125)); +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-quote.is-large, .entry .entry-content .wp-block-quote.is-style-large { + margin: 1rem 0; + padding: 1rem 0; + } + .entry .entry-content .wp-block-quote.is-large p, .entry .entry-content .wp-block-quote.is-style-large p { + font-size: 1.6875em; + } +} + +.entry .entry-content .wp-block-image { + max-width: 100%; +} + +.entry .entry-content .wp-block-image img { + display: block; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image:not(.alignwide):not(.alignfull) > img { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-image:not(.alignwide):not(.alignfull) > img { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image .aligncenter { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-image .aligncenter { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image .aligncenter { + margin: 0; + width: calc(8 * (100vw / 12) - 28px); + } + .entry .entry-content .wp-block-image .aligncenter img { + margin: 0 auto; + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-image .aligncenter { + width: calc(6 * (100vw / 12) - 28px); + } + .entry .entry-content .wp-block-image .aligncenter img { + margin: 0 auto; + } +} + +.entry .entry-content .wp-block-image.alignfull img { + width: 100vw; + max-width: calc( 100% + (2 * 1rem)); +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image.alignfull img { + max-width: calc( 125% + 150px); + margin-right: auto; + margin-left: auto; + } +} + +.entry .entry-content .wp-block-cover-image, +.entry .entry-content .wp-block-cover { + position: relative; + min-height: 430px; + padding: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image, + .entry .entry-content .wp-block-cover { + padding: 1rem 10%; + } +} + +.entry .entry-content .wp-block-cover-image .wp-block-cover-image-text, +.entry .entry-content .wp-block-cover-image .wp-block-cover-text, +.entry .entry-content .wp-block-cover-image h2, +.entry .entry-content .wp-block-cover .wp-block-cover-image-text, +.entry .entry-content .wp-block-cover .wp-block-cover-text, +.entry .entry-content .wp-block-cover h2 { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 1.6875em; + font-weight: bold; + line-height: 1.25; + padding: 0; + color: #fff; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image h2, + .entry .entry-content .wp-block-cover .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover .wp-block-cover-text, + .entry .entry-content .wp-block-cover h2 { + font-size: 2.25em; + max-width: 100%; + } +} + +.entry .entry-content .wp-block-cover-image.alignleft, .entry .entry-content .wp-block-cover-image.alignright, +.entry .entry-content .wp-block-cover.alignleft, +.entry .entry-content .wp-block-cover.alignright { + width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image.alignleft, .entry .entry-content .wp-block-cover-image.alignright, + .entry .entry-content .wp-block-cover.alignleft, + .entry .entry-content .wp-block-cover.alignright { + padding: 1rem calc(2 * 1rem); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image.alignfull h2, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover.alignfull h2 { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image.alignfull h2, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover.alignfull h2 { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image.alignfull, + .entry .entry-content .wp-block-cover.alignfull { + padding-right: calc(10% + 58px + (2 * 1rem)); + padding-left: calc(10% + 58px + (2 * 1rem)); + } + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image.alignfull h2, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover.alignfull h2 { + padding: 0; + } +} + +.entry .entry-content .wp-block-gallery { + list-style-type: none; + padding-right: 0; +} + +.entry .entry-content .wp-block-gallery .blocks-gallery-image:last-child, +.entry .entry-content .wp-block-gallery .blocks-gallery-item:last-child { + margin-bottom: 16px; +} + +.entry .entry-content .wp-block-gallery figcaption a { + color: #fff; +} + +.entry .entry-content .wp-block-audio figcaption, +.entry .entry-content .wp-block-video figcaption, +.entry .entry-content .wp-block-image figcaption, +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption, +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption { + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; + text-align: center; +} + +.entry .entry-content .wp-block-separator, +.entry .entry-content hr { + background-color: #767676; + border: 0; + height: 2px; + margin-bottom: 2rem; + margin-top: 2rem; + max-width: 2.25em; + text-align: right; + /* Remove duplicate rule-line when a separator + * is followed by an H1, or H2 */ +} + +.entry .entry-content .wp-block-separator.is-style-wide, +.entry .entry-content hr.is-style-wide { + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-separator.is-style-wide, + .entry .entry-content hr.is-style-wide { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-separator.is-style-wide, + .entry .entry-content hr.is-style-wide { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.entry .entry-content .wp-block-separator.is-style-dots, +.entry .entry-content hr.is-style-dots { + max-width: 100%; + background-color: inherit; + border: inherit; + height: inherit; + text-align: center; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-separator.is-style-dots, + .entry .entry-content hr.is-style-dots { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-separator.is-style-dots, + .entry .entry-content hr.is-style-dots { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.entry .entry-content .wp-block-separator.is-style-dots:not(.has-text-color):not(.has-background), +.entry .entry-content hr.is-style-dots:not(.has-text-color):not(.has-background) { + color: #767676; +} + +.entry .entry-content .wp-block-separator.is-style-dots:before, +.entry .entry-content hr.is-style-dots:before { + font-size: 1.6875em; + letter-spacing: 0.88889em; + padding-right: 0.88889em; +} + +.entry .entry-content .wp-block-separator + h1:before, +.entry .entry-content .wp-block-separator + h2:before, +.entry .entry-content hr + h1:before, +.entry .entry-content hr + h2:before { + display: none; +} + +.entry .entry-content .wp-block-embed-twitter { + word-break: break-word; +} + +.entry .entry-content .wp-block-table th, +.entry .entry-content .wp-block-table td { + border-color: #767676; +} + +.entry .entry-content .wp-block-file { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +.entry .entry-content .wp-block-file .wp-block-file__button { + display: table; + transition: background 150ms ease-in-out; + border: none; + border-radius: 5px; + background: #0073aa; + font-size: 22px; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.2; + text-decoration: none; + font-weight: bold; + padding: 0.75rem 1rem; + color: #fff; + margin-right: 0; + margin-top: calc(0.75 * 1rem); +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-file .wp-block-file__button { + font-size: 22px; + padding: 0.875rem 1.5rem; + } +} + +.entry .entry-content .wp-block-file .wp-block-file__button:hover { + background: #111; + cursor: pointer; +} + +.entry .entry-content .wp-block-file .wp-block-file__button:focus { + background: #111; + outline: thin dotted; + outline-offset: -4px; +} + +.entry .entry-content .wp-block-code { + border-radius: 0; +} + +.entry .entry-content .wp-block-code code { + font-size: 1.125em; + white-space: pre-wrap; + word-break: break-word; +} + +.entry .entry-content .wp-block-columns .wp-block-column > *:first-child { + margin-top: 0; +} + +.entry .entry-content .wp-block-columns .wp-block-column > *:last-child { + margin-bottom: 0; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-columns .wp-block-image > img:not(.alignwide):not(.alignfull), + .entry .entry-content .wp-block-columns .wp-block-image > figure { + max-width: 100%; + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-columns .wp-block-image > img:not(.alignwide):not(.alignfull), + .entry .entry-content .wp-block-columns .wp-block-image > figure { + max-width: 100%; + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-columns { + flex-wrap: nowrap; + } + .entry .entry-content .wp-block-columns .wp-block-column:not(:first-child) { + margin-right: 32px; + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group:not(.alignfull) > .wp-block-group__inner-container > .alignfull, + .entry .entry-content .wp-block-group:not(.alignfull) > .wp-block-group__inner-container > .wp-block-image > img { + right: 0; + max-width: 100%; + } +} + +.entry .entry-content .wp-block-group.alignfull > .wp-block-group__inner-container { + max-width: calc(100% - (2 * 1rem)); + margin: 0 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group.alignfull > .wp-block-group__inner-container { + max-width: 80%; + margin: 0 10%; + padding: 0 60px; + } +} + +.entry .entry-content .wp-block-group.has-background { + padding: 1rem; + margin-top: 0; + margin-bottom: 0; +} + +.entry .entry-content .wp-block-group.has-background .wp-block-group__inner-container > *:first-child { + margin-top: 0; +} + +.entry .entry-content .wp-block-group.has-background .wp-block-group__inner-container > *:last-child { + margin-bottom: 0; +} + +.entry .entry-content .wp-block-group.has-background.alignfull { + padding-right: 0; + padding-left: 0; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group.has-background.alignfull { + padding-top: 1rem; + padding-bottom: 1rem; + } +} + +.entry .entry-content .wp-block-group.has-background:not(.alignfull) > .wp-block-group__inner-container > .alignfull { + width: 100%; + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group.has-background:not(.alignfull) > .wp-block-group__inner-container > .alignfull { + width: calc( 100% + 2rem); + max-width: calc( 100% + 2rem); + margin-right: -1rem; + } +} + +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: bold; +} + +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta .wp-block-latest-comments__comment-date { + font-weight: normal; +} + +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment, +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-date, +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p { + font-size: inherit; +} + +.entry .entry-content .wp-block-latest-comments.has-dates .wp-block-latest-comments__comment-date { + font-size: 0.71111em; +} + +.entry .entry-content .has-small-font-size { + font-size: 0.88889em; +} + +.entry .entry-content .has-normal-font-size { + font-size: 1.125em; +} + +.entry .entry-content .has-large-font-size { + font-size: 1.6875em; +} + +.entry .entry-content .has-huge-font-size { + font-size: 2.25em; +} + +.entry .entry-content .has-primary-background-color, +.entry .entry-content .has-secondary-background-color, +.entry .entry-content .has-dark-gray-background-color, +.entry .entry-content .has-light-gray-background-color { + color: #fff; +} + +.entry .entry-content .has-primary-background-color > p, +.entry .entry-content .has-primary-background-color > h1, +.entry .entry-content .has-primary-background-color > h2, +.entry .entry-content .has-primary-background-color > h3, +.entry .entry-content .has-primary-background-color > h4, +.entry .entry-content .has-primary-background-color > h5, +.entry .entry-content .has-primary-background-color > h6, +.entry .entry-content .has-primary-background-color > a, +.entry .entry-content .has-secondary-background-color > p, +.entry .entry-content .has-secondary-background-color > h1, +.entry .entry-content .has-secondary-background-color > h2, +.entry .entry-content .has-secondary-background-color > h3, +.entry .entry-content .has-secondary-background-color > h4, +.entry .entry-content .has-secondary-background-color > h5, +.entry .entry-content .has-secondary-background-color > h6, +.entry .entry-content .has-secondary-background-color > a, +.entry .entry-content .has-dark-gray-background-color > p, +.entry .entry-content .has-dark-gray-background-color > h1, +.entry .entry-content .has-dark-gray-background-color > h2, +.entry .entry-content .has-dark-gray-background-color > h3, +.entry .entry-content .has-dark-gray-background-color > h4, +.entry .entry-content .has-dark-gray-background-color > h5, +.entry .entry-content .has-dark-gray-background-color > h6, +.entry .entry-content .has-dark-gray-background-color > a, +.entry .entry-content .has-light-gray-background-color > p, +.entry .entry-content .has-light-gray-background-color > h1, +.entry .entry-content .has-light-gray-background-color > h2, +.entry .entry-content .has-light-gray-background-color > h3, +.entry .entry-content .has-light-gray-background-color > h4, +.entry .entry-content .has-light-gray-background-color > h5, +.entry .entry-content .has-light-gray-background-color > h6, +.entry .entry-content .has-light-gray-background-color > a { + color: #fff; +} + +.entry .entry-content .has-white-background-color { + color: #111; +} + +.entry .entry-content .has-white-background-color > p, +.entry .entry-content .has-white-background-color > h1, +.entry .entry-content .has-white-background-color > h2, +.entry .entry-content .has-white-background-color > h3, +.entry .entry-content .has-white-background-color > h4, +.entry .entry-content .has-white-background-color > h5, +.entry .entry-content .has-white-background-color > h6, +.entry .entry-content .has-white-background-color > a { + color: #111; +} + +.entry .entry-content .has-primary-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-primary-background-color { + background-color: #0073aa; +} + +.entry .entry-content .has-secondary-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-secondary-background-color { + background-color: #005177; +} + +.entry .entry-content .has-dark-gray-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-dark-gray-background-color { + background-color: #111; +} + +.entry .entry-content .has-light-gray-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-light-gray-background-color { + background-color: #767676; +} + +.entry .entry-content .has-white-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-white-background-color { + background-color: #FFF; +} + +.entry .entry-content .has-primary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color > p { + color: #0073aa; +} + +.entry .entry-content .has-secondary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color > p { + color: #005177; +} + +.entry .entry-content .has-dark-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color > p { + color: #111; +} + +.entry .entry-content .has-light-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color > p { + color: #767676; +} + +.entry .entry-content .has-white-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-white-color { + color: #FFF; +} + +/* Media */ +.page-content .wp-smiley, +.entry-content .wp-smiley, +.comment-content .wp-smiley { + border: none; + margin-bottom: 0; + margin-top: 0; + padding: 0; +} + +embed, +iframe, +object { + max-width: 100%; +} + +.custom-logo-link { + display: inline-block; +} + +.avatar { + border-radius: 100%; + display: block; + height: calc(2.25 * 1rem); + min-height: inherit; + width: calc(2.25 * 1rem); +} + +svg { + transition: fill 120ms ease-in-out; + fill: currentColor; +} + +/*-------------------------------------------------------------- +## Captions +--------------------------------------------------------------*/ +.wp-caption { + margin-bottom: calc(1.5 * 1rem); +} + +@media only screen and (min-width: 768px) { + .wp-caption.aligncenter { + position: relative; + right: calc( calc(8 * (100vw / 12) - 28px) / 2); + transform: translateX(50%); + } +} + +@media only screen and (min-width: 1168px) { + .wp-caption.aligncenter { + right: calc( calc(6 * (100vw / 12) - 28px) / 2); + } +} + +.wp-caption img[class*="wp-image-"] { + display: block; + margin-right: auto; + margin-left: auto; +} + +.wp-caption-text { + color: #767676; + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; + text-align: center; +} + +/*-------------------------------------------------------------- +## Galleries +--------------------------------------------------------------*/ +.gallery { + display: flex; + flex-flow: row wrap; + justify-content: center; + margin-bottom: calc(1.5 * 1rem); +} + +.gallery-item { + display: inline-block; + margin-left: 16px; + margin-bottom: 16px; + text-align: center; + vertical-align: top; + width: 100%; +} + +.gallery-columns-2 .gallery-item { + max-width: calc((100% - 16px * 1) / 2); +} + +.gallery-columns-2 .gallery-item:nth-of-type(2n+2) { + margin-left: 0; +} + +.gallery-columns-3 .gallery-item { + max-width: calc((100% - 16px * 2) / 3); +} + +.gallery-columns-3 .gallery-item:nth-of-type(3n+3) { + margin-left: 0; +} + +.gallery-columns-4 .gallery-item { + max-width: calc((100% - 16px * 3) / 4); +} + +.gallery-columns-4 .gallery-item:nth-of-type(4n+4) { + margin-left: 0; +} + +.gallery-columns-5 .gallery-item { + max-width: calc((100% - 16px * 4) / 5); +} + +.gallery-columns-5 .gallery-item:nth-of-type(5n+5) { + margin-left: 0; +} + +.gallery-columns-6 .gallery-item { + max-width: calc((100% - 16px * 5) / 6); +} + +.gallery-columns-6 .gallery-item:nth-of-type(6n+6) { + margin-left: 0; +} + +.gallery-columns-7 .gallery-item { + max-width: calc((100% - 16px * 6) / 7); +} + +.gallery-columns-7 .gallery-item:nth-of-type(7n+7) { + margin-left: 0; +} + +.gallery-columns-8 .gallery-item { + max-width: calc((100% - 16px * 7) / 8); +} + +.gallery-columns-8 .gallery-item:nth-of-type(8n+8) { + margin-left: 0; +} + +.gallery-columns-9 .gallery-item { + max-width: calc((100% - 16px * 8) / 9); +} + +.gallery-columns-9 .gallery-item:nth-of-type(9n+9) { + margin-left: 0; +} + +.gallery-item:last-of-type { + padding-left: 0; +} + +.gallery-caption { + display: block; + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; +} + +.gallery-item > div > a { + display: block; + line-height: 0; + box-shadow: 0 0 0 0 transparent; +} + +.gallery-item > div > a:focus { + box-shadow: 0 0 0 2px #0073aa; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/style.css b/srcs/wordpress/wp-content/themes/twentynineteen/style.css new file mode 100644 index 0000000..c7122e0 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/style.css @@ -0,0 +1,6499 @@ +@charset "UTF-8"; +/* +Theme Name: Twenty Nineteen +Theme URI: https://wordpress.org/themes/twentynineteen/ +Author: the WordPress team +Author URI: https://wordpress.org/ +Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether you’re running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes. +Requires at least: WordPress 4.9.6 +Version: 1.4 +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html +Text Domain: twentynineteen +Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready + +This theme, like WordPress, is licensed under the GPL. +Use it to make something cool, have fun, and share what you've learned with others. + +Twenty Nineteen is based on Underscores https://underscores.me/, (C) 2012-2019 Automattic, Inc. +Underscores is distributed under the terms of the GNU GPL v2 or later. + +Normalizing styles have been helped along thanks to the fine work of +Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/ +*/ +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +# Variables +# Normalize +# Typography + ## Headings + ## Copy +# Elements + ## Lists + ## Tables +# Forms + ## Buttons + ## Fields +# Navigation + ## Links + ## Menus + ## Next & Previous +# Accessibility +# Alignments +# Clearings +# Layout +# Widgets +# Content + ## Archives + ## Posts and pages + ## Comments +# Blocks +# Media + ## Captions + ## Galleries +--------------------------------------------------------------*/ +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the Classic and block + * editors. The following font-face override fixes the issue by manually inserting + * a custom font that includes just a Hoefler Text space replacement for that + * character instead. + */ +@font-face { + font-family: 'NonBreakingSpaceOverride'; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* If we add the border using a regular CSS border, it won't look good on non-retina devices, + * since its edges can look jagged due to lack of antialiasing. In this case, we are several + * layers of box-shadow to add the border visually, which will render the border smoother. */ +/* Calculates maximum width for post content */ +/* Nested sub-menu padding: 10 levels deep */ +/* Ensure all font family declarations come with non-latin fallbacks */ +/* Build our non-latin font styles */ +body:lang(ar), button:lang(ar), +input:lang(ar), +select:lang(ar), +optgroup:lang(ar), +textarea:lang(ar), .author-description .author-link:lang(ar), +.comment-metadata:lang(ar), +.comment-reply-link:lang(ar), +.comments-title:lang(ar), +.comment-author .fn:lang(ar), +.discussion-meta-info:lang(ar), +.entry-meta:lang(ar), +.entry-footer:lang(ar), +.main-navigation:lang(ar), +.no-comments:lang(ar), +.not-found .page-title:lang(ar), +.error-404 .page-title:lang(ar), +.post-navigation .post-title:lang(ar), +.page-links:lang(ar), +.page-description:lang(ar), +.pagination .nav-links:lang(ar), +.sticky-post:lang(ar), +.site-title:lang(ar), +.site-info:lang(ar), +#cancel-comment-reply-link:lang(ar), +h1:lang(ar), +h2:lang(ar), +h3:lang(ar), +h4:lang(ar), +h5:lang(ar), +h6:lang(ar), .page-title:lang(ar), blockquote cite:lang(ar), table:lang(ar), .button:lang(ar), +input:lang(ar)[type="button"], +input:lang(ar)[type="reset"], +input:lang(ar)[type="submit"], .comment-navigation .nav-previous:lang(ar), +.comment-navigation .nav-next:lang(ar), .comment-list .pingback .comment-body:lang(ar), +.comment-list .trackback .comment-body:lang(ar), .comment-list .pingback .comment-body .comment-edit-link:lang(ar), +.comment-list .trackback .comment-body .comment-edit-link:lang(ar), .comment-form .comment-notes:lang(ar), +.comment-form label:lang(ar), .widget_archive ul li:lang(ar), +.widget_categories ul li:lang(ar), +.widget_meta ul li:lang(ar), +.widget_nav_menu ul li:lang(ar), +.widget_pages ul li:lang(ar), +.widget_recent_comments ul li:lang(ar), +.widget_recent_entries ul li:lang(ar), +.widget_rss ul li:lang(ar), .widget_tag_cloud .tagcloud:lang(ar), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ar), .entry .entry-content .wp-block-archives li > a:lang(ar), +.entry .entry-content .wp-block-categories li > a:lang(ar), +.entry .entry-content .wp-block-latest-posts li > a:lang(ar), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ar), .entry .entry-content .wp-block-verse:lang(ar), .entry .entry-content .has-drop-cap:lang(ar):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ar), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ar), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ar), +.entry .entry-content .wp-block-cover-image h2:lang(ar), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ar), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ar), +.entry .entry-content .wp-block-cover h2:lang(ar), .entry .entry-content .wp-block-audio figcaption:lang(ar), +.entry .entry-content .wp-block-video figcaption:lang(ar), +.entry .entry-content .wp-block-image figcaption:lang(ar), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ar), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ar), .entry .entry-content .wp-block-file:lang(ar), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ar), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ar), .wp-caption-text:lang(ar), .gallery-caption:lang(ar) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ary), button:lang(ary), +input:lang(ary), +select:lang(ary), +optgroup:lang(ary), +textarea:lang(ary), .author-description .author-link:lang(ary), +.comment-metadata:lang(ary), +.comment-reply-link:lang(ary), +.comments-title:lang(ary), +.comment-author .fn:lang(ary), +.discussion-meta-info:lang(ary), +.entry-meta:lang(ary), +.entry-footer:lang(ary), +.main-navigation:lang(ary), +.no-comments:lang(ary), +.not-found .page-title:lang(ary), +.error-404 .page-title:lang(ary), +.post-navigation .post-title:lang(ary), +.page-links:lang(ary), +.page-description:lang(ary), +.pagination .nav-links:lang(ary), +.sticky-post:lang(ary), +.site-title:lang(ary), +.site-info:lang(ary), +#cancel-comment-reply-link:lang(ary), +h1:lang(ary), +h2:lang(ary), +h3:lang(ary), +h4:lang(ary), +h5:lang(ary), +h6:lang(ary), .page-title:lang(ary), blockquote cite:lang(ary), table:lang(ary), .button:lang(ary), +input:lang(ary)[type="button"], +input:lang(ary)[type="reset"], +input:lang(ary)[type="submit"], .comment-navigation .nav-previous:lang(ary), +.comment-navigation .nav-next:lang(ary), .comment-list .pingback .comment-body:lang(ary), +.comment-list .trackback .comment-body:lang(ary), .comment-list .pingback .comment-body .comment-edit-link:lang(ary), +.comment-list .trackback .comment-body .comment-edit-link:lang(ary), .comment-form .comment-notes:lang(ary), +.comment-form label:lang(ary), .widget_archive ul li:lang(ary), +.widget_categories ul li:lang(ary), +.widget_meta ul li:lang(ary), +.widget_nav_menu ul li:lang(ary), +.widget_pages ul li:lang(ary), +.widget_recent_comments ul li:lang(ary), +.widget_recent_entries ul li:lang(ary), +.widget_rss ul li:lang(ary), .widget_tag_cloud .tagcloud:lang(ary), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ary), .entry .entry-content .wp-block-archives li > a:lang(ary), +.entry .entry-content .wp-block-categories li > a:lang(ary), +.entry .entry-content .wp-block-latest-posts li > a:lang(ary), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ary), .entry .entry-content .wp-block-verse:lang(ary), .entry .entry-content .has-drop-cap:lang(ary):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ary), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ary), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ary), +.entry .entry-content .wp-block-cover-image h2:lang(ary), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ary), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ary), +.entry .entry-content .wp-block-cover h2:lang(ary), .entry .entry-content .wp-block-audio figcaption:lang(ary), +.entry .entry-content .wp-block-video figcaption:lang(ary), +.entry .entry-content .wp-block-image figcaption:lang(ary), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ary), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ary), .entry .entry-content .wp-block-file:lang(ary), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ary), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ary), .wp-caption-text:lang(ary), .gallery-caption:lang(ary) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(azb), button:lang(azb), +input:lang(azb), +select:lang(azb), +optgroup:lang(azb), +textarea:lang(azb), .author-description .author-link:lang(azb), +.comment-metadata:lang(azb), +.comment-reply-link:lang(azb), +.comments-title:lang(azb), +.comment-author .fn:lang(azb), +.discussion-meta-info:lang(azb), +.entry-meta:lang(azb), +.entry-footer:lang(azb), +.main-navigation:lang(azb), +.no-comments:lang(azb), +.not-found .page-title:lang(azb), +.error-404 .page-title:lang(azb), +.post-navigation .post-title:lang(azb), +.page-links:lang(azb), +.page-description:lang(azb), +.pagination .nav-links:lang(azb), +.sticky-post:lang(azb), +.site-title:lang(azb), +.site-info:lang(azb), +#cancel-comment-reply-link:lang(azb), +h1:lang(azb), +h2:lang(azb), +h3:lang(azb), +h4:lang(azb), +h5:lang(azb), +h6:lang(azb), .page-title:lang(azb), blockquote cite:lang(azb), table:lang(azb), .button:lang(azb), +input:lang(azb)[type="button"], +input:lang(azb)[type="reset"], +input:lang(azb)[type="submit"], .comment-navigation .nav-previous:lang(azb), +.comment-navigation .nav-next:lang(azb), .comment-list .pingback .comment-body:lang(azb), +.comment-list .trackback .comment-body:lang(azb), .comment-list .pingback .comment-body .comment-edit-link:lang(azb), +.comment-list .trackback .comment-body .comment-edit-link:lang(azb), .comment-form .comment-notes:lang(azb), +.comment-form label:lang(azb), .widget_archive ul li:lang(azb), +.widget_categories ul li:lang(azb), +.widget_meta ul li:lang(azb), +.widget_nav_menu ul li:lang(azb), +.widget_pages ul li:lang(azb), +.widget_recent_comments ul li:lang(azb), +.widget_recent_entries ul li:lang(azb), +.widget_rss ul li:lang(azb), .widget_tag_cloud .tagcloud:lang(azb), .entry .entry-content .wp-block-button .wp-block-button__link:lang(azb), .entry .entry-content .wp-block-archives li > a:lang(azb), +.entry .entry-content .wp-block-categories li > a:lang(azb), +.entry .entry-content .wp-block-latest-posts li > a:lang(azb), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(azb), .entry .entry-content .wp-block-verse:lang(azb), .entry .entry-content .has-drop-cap:lang(azb):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(azb), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(azb), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(azb), +.entry .entry-content .wp-block-cover-image h2:lang(azb), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(azb), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(azb), +.entry .entry-content .wp-block-cover h2:lang(azb), .entry .entry-content .wp-block-audio figcaption:lang(azb), +.entry .entry-content .wp-block-video figcaption:lang(azb), +.entry .entry-content .wp-block-image figcaption:lang(azb), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(azb), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(azb), .entry .entry-content .wp-block-file:lang(azb), .entry .entry-content .wp-block-file .wp-block-file__button:lang(azb), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(azb), .wp-caption-text:lang(azb), .gallery-caption:lang(azb) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ckb), button:lang(ckb), +input:lang(ckb), +select:lang(ckb), +optgroup:lang(ckb), +textarea:lang(ckb), .author-description .author-link:lang(ckb), +.comment-metadata:lang(ckb), +.comment-reply-link:lang(ckb), +.comments-title:lang(ckb), +.comment-author .fn:lang(ckb), +.discussion-meta-info:lang(ckb), +.entry-meta:lang(ckb), +.entry-footer:lang(ckb), +.main-navigation:lang(ckb), +.no-comments:lang(ckb), +.not-found .page-title:lang(ckb), +.error-404 .page-title:lang(ckb), +.post-navigation .post-title:lang(ckb), +.page-links:lang(ckb), +.page-description:lang(ckb), +.pagination .nav-links:lang(ckb), +.sticky-post:lang(ckb), +.site-title:lang(ckb), +.site-info:lang(ckb), +#cancel-comment-reply-link:lang(ckb), +h1:lang(ckb), +h2:lang(ckb), +h3:lang(ckb), +h4:lang(ckb), +h5:lang(ckb), +h6:lang(ckb), .page-title:lang(ckb), blockquote cite:lang(ckb), table:lang(ckb), .button:lang(ckb), +input:lang(ckb)[type="button"], +input:lang(ckb)[type="reset"], +input:lang(ckb)[type="submit"], .comment-navigation .nav-previous:lang(ckb), +.comment-navigation .nav-next:lang(ckb), .comment-list .pingback .comment-body:lang(ckb), +.comment-list .trackback .comment-body:lang(ckb), .comment-list .pingback .comment-body .comment-edit-link:lang(ckb), +.comment-list .trackback .comment-body .comment-edit-link:lang(ckb), .comment-form .comment-notes:lang(ckb), +.comment-form label:lang(ckb), .widget_archive ul li:lang(ckb), +.widget_categories ul li:lang(ckb), +.widget_meta ul li:lang(ckb), +.widget_nav_menu ul li:lang(ckb), +.widget_pages ul li:lang(ckb), +.widget_recent_comments ul li:lang(ckb), +.widget_recent_entries ul li:lang(ckb), +.widget_rss ul li:lang(ckb), .widget_tag_cloud .tagcloud:lang(ckb), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ckb), .entry .entry-content .wp-block-archives li > a:lang(ckb), +.entry .entry-content .wp-block-categories li > a:lang(ckb), +.entry .entry-content .wp-block-latest-posts li > a:lang(ckb), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ckb), .entry .entry-content .wp-block-verse:lang(ckb), .entry .entry-content .has-drop-cap:lang(ckb):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ckb), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ckb), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ckb), +.entry .entry-content .wp-block-cover-image h2:lang(ckb), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ckb), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ckb), +.entry .entry-content .wp-block-cover h2:lang(ckb), .entry .entry-content .wp-block-audio figcaption:lang(ckb), +.entry .entry-content .wp-block-video figcaption:lang(ckb), +.entry .entry-content .wp-block-image figcaption:lang(ckb), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ckb), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ckb), .entry .entry-content .wp-block-file:lang(ckb), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ckb), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ckb), .wp-caption-text:lang(ckb), .gallery-caption:lang(ckb) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(fa-IR), button:lang(fa-IR), +input:lang(fa-IR), +select:lang(fa-IR), +optgroup:lang(fa-IR), +textarea:lang(fa-IR), .author-description .author-link:lang(fa-IR), +.comment-metadata:lang(fa-IR), +.comment-reply-link:lang(fa-IR), +.comments-title:lang(fa-IR), +.comment-author .fn:lang(fa-IR), +.discussion-meta-info:lang(fa-IR), +.entry-meta:lang(fa-IR), +.entry-footer:lang(fa-IR), +.main-navigation:lang(fa-IR), +.no-comments:lang(fa-IR), +.not-found .page-title:lang(fa-IR), +.error-404 .page-title:lang(fa-IR), +.post-navigation .post-title:lang(fa-IR), +.page-links:lang(fa-IR), +.page-description:lang(fa-IR), +.pagination .nav-links:lang(fa-IR), +.sticky-post:lang(fa-IR), +.site-title:lang(fa-IR), +.site-info:lang(fa-IR), +#cancel-comment-reply-link:lang(fa-IR), +h1:lang(fa-IR), +h2:lang(fa-IR), +h3:lang(fa-IR), +h4:lang(fa-IR), +h5:lang(fa-IR), +h6:lang(fa-IR), .page-title:lang(fa-IR), blockquote cite:lang(fa-IR), table:lang(fa-IR), .button:lang(fa-IR), +input:lang(fa-IR)[type="button"], +input:lang(fa-IR)[type="reset"], +input:lang(fa-IR)[type="submit"], .comment-navigation .nav-previous:lang(fa-IR), +.comment-navigation .nav-next:lang(fa-IR), .comment-list .pingback .comment-body:lang(fa-IR), +.comment-list .trackback .comment-body:lang(fa-IR), .comment-list .pingback .comment-body .comment-edit-link:lang(fa-IR), +.comment-list .trackback .comment-body .comment-edit-link:lang(fa-IR), .comment-form .comment-notes:lang(fa-IR), +.comment-form label:lang(fa-IR), .widget_archive ul li:lang(fa-IR), +.widget_categories ul li:lang(fa-IR), +.widget_meta ul li:lang(fa-IR), +.widget_nav_menu ul li:lang(fa-IR), +.widget_pages ul li:lang(fa-IR), +.widget_recent_comments ul li:lang(fa-IR), +.widget_recent_entries ul li:lang(fa-IR), +.widget_rss ul li:lang(fa-IR), .widget_tag_cloud .tagcloud:lang(fa-IR), .entry .entry-content .wp-block-button .wp-block-button__link:lang(fa-IR), .entry .entry-content .wp-block-archives li > a:lang(fa-IR), +.entry .entry-content .wp-block-categories li > a:lang(fa-IR), +.entry .entry-content .wp-block-latest-posts li > a:lang(fa-IR), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(fa-IR), .entry .entry-content .wp-block-verse:lang(fa-IR), .entry .entry-content .has-drop-cap:lang(fa-IR):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(fa-IR), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(fa-IR), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(fa-IR), +.entry .entry-content .wp-block-cover-image h2:lang(fa-IR), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(fa-IR), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(fa-IR), +.entry .entry-content .wp-block-cover h2:lang(fa-IR), .entry .entry-content .wp-block-audio figcaption:lang(fa-IR), +.entry .entry-content .wp-block-video figcaption:lang(fa-IR), +.entry .entry-content .wp-block-image figcaption:lang(fa-IR), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(fa-IR), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(fa-IR), .entry .entry-content .wp-block-file:lang(fa-IR), .entry .entry-content .wp-block-file .wp-block-file__button:lang(fa-IR), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(fa-IR), .wp-caption-text:lang(fa-IR), .gallery-caption:lang(fa-IR) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(haz), button:lang(haz), +input:lang(haz), +select:lang(haz), +optgroup:lang(haz), +textarea:lang(haz), .author-description .author-link:lang(haz), +.comment-metadata:lang(haz), +.comment-reply-link:lang(haz), +.comments-title:lang(haz), +.comment-author .fn:lang(haz), +.discussion-meta-info:lang(haz), +.entry-meta:lang(haz), +.entry-footer:lang(haz), +.main-navigation:lang(haz), +.no-comments:lang(haz), +.not-found .page-title:lang(haz), +.error-404 .page-title:lang(haz), +.post-navigation .post-title:lang(haz), +.page-links:lang(haz), +.page-description:lang(haz), +.pagination .nav-links:lang(haz), +.sticky-post:lang(haz), +.site-title:lang(haz), +.site-info:lang(haz), +#cancel-comment-reply-link:lang(haz), +h1:lang(haz), +h2:lang(haz), +h3:lang(haz), +h4:lang(haz), +h5:lang(haz), +h6:lang(haz), .page-title:lang(haz), blockquote cite:lang(haz), table:lang(haz), .button:lang(haz), +input:lang(haz)[type="button"], +input:lang(haz)[type="reset"], +input:lang(haz)[type="submit"], .comment-navigation .nav-previous:lang(haz), +.comment-navigation .nav-next:lang(haz), .comment-list .pingback .comment-body:lang(haz), +.comment-list .trackback .comment-body:lang(haz), .comment-list .pingback .comment-body .comment-edit-link:lang(haz), +.comment-list .trackback .comment-body .comment-edit-link:lang(haz), .comment-form .comment-notes:lang(haz), +.comment-form label:lang(haz), .widget_archive ul li:lang(haz), +.widget_categories ul li:lang(haz), +.widget_meta ul li:lang(haz), +.widget_nav_menu ul li:lang(haz), +.widget_pages ul li:lang(haz), +.widget_recent_comments ul li:lang(haz), +.widget_recent_entries ul li:lang(haz), +.widget_rss ul li:lang(haz), .widget_tag_cloud .tagcloud:lang(haz), .entry .entry-content .wp-block-button .wp-block-button__link:lang(haz), .entry .entry-content .wp-block-archives li > a:lang(haz), +.entry .entry-content .wp-block-categories li > a:lang(haz), +.entry .entry-content .wp-block-latest-posts li > a:lang(haz), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(haz), .entry .entry-content .wp-block-verse:lang(haz), .entry .entry-content .has-drop-cap:lang(haz):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(haz), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(haz), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(haz), +.entry .entry-content .wp-block-cover-image h2:lang(haz), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(haz), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(haz), +.entry .entry-content .wp-block-cover h2:lang(haz), .entry .entry-content .wp-block-audio figcaption:lang(haz), +.entry .entry-content .wp-block-video figcaption:lang(haz), +.entry .entry-content .wp-block-image figcaption:lang(haz), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(haz), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(haz), .entry .entry-content .wp-block-file:lang(haz), .entry .entry-content .wp-block-file .wp-block-file__button:lang(haz), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(haz), .wp-caption-text:lang(haz), .gallery-caption:lang(haz) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(ps), button:lang(ps), +input:lang(ps), +select:lang(ps), +optgroup:lang(ps), +textarea:lang(ps), .author-description .author-link:lang(ps), +.comment-metadata:lang(ps), +.comment-reply-link:lang(ps), +.comments-title:lang(ps), +.comment-author .fn:lang(ps), +.discussion-meta-info:lang(ps), +.entry-meta:lang(ps), +.entry-footer:lang(ps), +.main-navigation:lang(ps), +.no-comments:lang(ps), +.not-found .page-title:lang(ps), +.error-404 .page-title:lang(ps), +.post-navigation .post-title:lang(ps), +.page-links:lang(ps), +.page-description:lang(ps), +.pagination .nav-links:lang(ps), +.sticky-post:lang(ps), +.site-title:lang(ps), +.site-info:lang(ps), +#cancel-comment-reply-link:lang(ps), +h1:lang(ps), +h2:lang(ps), +h3:lang(ps), +h4:lang(ps), +h5:lang(ps), +h6:lang(ps), .page-title:lang(ps), blockquote cite:lang(ps), table:lang(ps), .button:lang(ps), +input:lang(ps)[type="button"], +input:lang(ps)[type="reset"], +input:lang(ps)[type="submit"], .comment-navigation .nav-previous:lang(ps), +.comment-navigation .nav-next:lang(ps), .comment-list .pingback .comment-body:lang(ps), +.comment-list .trackback .comment-body:lang(ps), .comment-list .pingback .comment-body .comment-edit-link:lang(ps), +.comment-list .trackback .comment-body .comment-edit-link:lang(ps), .comment-form .comment-notes:lang(ps), +.comment-form label:lang(ps), .widget_archive ul li:lang(ps), +.widget_categories ul li:lang(ps), +.widget_meta ul li:lang(ps), +.widget_nav_menu ul li:lang(ps), +.widget_pages ul li:lang(ps), +.widget_recent_comments ul li:lang(ps), +.widget_recent_entries ul li:lang(ps), +.widget_rss ul li:lang(ps), .widget_tag_cloud .tagcloud:lang(ps), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ps), .entry .entry-content .wp-block-archives li > a:lang(ps), +.entry .entry-content .wp-block-categories li > a:lang(ps), +.entry .entry-content .wp-block-latest-posts li > a:lang(ps), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ps), .entry .entry-content .wp-block-verse:lang(ps), .entry .entry-content .has-drop-cap:lang(ps):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ps), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ps), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ps), +.entry .entry-content .wp-block-cover-image h2:lang(ps), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ps), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ps), +.entry .entry-content .wp-block-cover h2:lang(ps), .entry .entry-content .wp-block-audio figcaption:lang(ps), +.entry .entry-content .wp-block-video figcaption:lang(ps), +.entry .entry-content .wp-block-image figcaption:lang(ps), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ps), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ps), .entry .entry-content .wp-block-file:lang(ps), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ps), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ps), .wp-caption-text:lang(ps), .gallery-caption:lang(ps) { + font-family: Tahoma, Arial, sans-serif; +} + +body:lang(be), button:lang(be), +input:lang(be), +select:lang(be), +optgroup:lang(be), +textarea:lang(be), .author-description .author-link:lang(be), +.comment-metadata:lang(be), +.comment-reply-link:lang(be), +.comments-title:lang(be), +.comment-author .fn:lang(be), +.discussion-meta-info:lang(be), +.entry-meta:lang(be), +.entry-footer:lang(be), +.main-navigation:lang(be), +.no-comments:lang(be), +.not-found .page-title:lang(be), +.error-404 .page-title:lang(be), +.post-navigation .post-title:lang(be), +.page-links:lang(be), +.page-description:lang(be), +.pagination .nav-links:lang(be), +.sticky-post:lang(be), +.site-title:lang(be), +.site-info:lang(be), +#cancel-comment-reply-link:lang(be), +h1:lang(be), +h2:lang(be), +h3:lang(be), +h4:lang(be), +h5:lang(be), +h6:lang(be), .page-title:lang(be), blockquote cite:lang(be), table:lang(be), .button:lang(be), +input:lang(be)[type="button"], +input:lang(be)[type="reset"], +input:lang(be)[type="submit"], .comment-navigation .nav-previous:lang(be), +.comment-navigation .nav-next:lang(be), .comment-list .pingback .comment-body:lang(be), +.comment-list .trackback .comment-body:lang(be), .comment-list .pingback .comment-body .comment-edit-link:lang(be), +.comment-list .trackback .comment-body .comment-edit-link:lang(be), .comment-form .comment-notes:lang(be), +.comment-form label:lang(be), .widget_archive ul li:lang(be), +.widget_categories ul li:lang(be), +.widget_meta ul li:lang(be), +.widget_nav_menu ul li:lang(be), +.widget_pages ul li:lang(be), +.widget_recent_comments ul li:lang(be), +.widget_recent_entries ul li:lang(be), +.widget_rss ul li:lang(be), .widget_tag_cloud .tagcloud:lang(be), .entry .entry-content .wp-block-button .wp-block-button__link:lang(be), .entry .entry-content .wp-block-archives li > a:lang(be), +.entry .entry-content .wp-block-categories li > a:lang(be), +.entry .entry-content .wp-block-latest-posts li > a:lang(be), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(be), .entry .entry-content .wp-block-verse:lang(be), .entry .entry-content .has-drop-cap:lang(be):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(be), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(be), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(be), +.entry .entry-content .wp-block-cover-image h2:lang(be), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(be), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(be), +.entry .entry-content .wp-block-cover h2:lang(be), .entry .entry-content .wp-block-audio figcaption:lang(be), +.entry .entry-content .wp-block-video figcaption:lang(be), +.entry .entry-content .wp-block-image figcaption:lang(be), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(be), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(be), .entry .entry-content .wp-block-file:lang(be), .entry .entry-content .wp-block-file .wp-block-file__button:lang(be), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(be), .wp-caption-text:lang(be), .gallery-caption:lang(be) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(bg-BG), button:lang(bg-BG), +input:lang(bg-BG), +select:lang(bg-BG), +optgroup:lang(bg-BG), +textarea:lang(bg-BG), .author-description .author-link:lang(bg-BG), +.comment-metadata:lang(bg-BG), +.comment-reply-link:lang(bg-BG), +.comments-title:lang(bg-BG), +.comment-author .fn:lang(bg-BG), +.discussion-meta-info:lang(bg-BG), +.entry-meta:lang(bg-BG), +.entry-footer:lang(bg-BG), +.main-navigation:lang(bg-BG), +.no-comments:lang(bg-BG), +.not-found .page-title:lang(bg-BG), +.error-404 .page-title:lang(bg-BG), +.post-navigation .post-title:lang(bg-BG), +.page-links:lang(bg-BG), +.page-description:lang(bg-BG), +.pagination .nav-links:lang(bg-BG), +.sticky-post:lang(bg-BG), +.site-title:lang(bg-BG), +.site-info:lang(bg-BG), +#cancel-comment-reply-link:lang(bg-BG), +h1:lang(bg-BG), +h2:lang(bg-BG), +h3:lang(bg-BG), +h4:lang(bg-BG), +h5:lang(bg-BG), +h6:lang(bg-BG), .page-title:lang(bg-BG), blockquote cite:lang(bg-BG), table:lang(bg-BG), .button:lang(bg-BG), +input:lang(bg-BG)[type="button"], +input:lang(bg-BG)[type="reset"], +input:lang(bg-BG)[type="submit"], .comment-navigation .nav-previous:lang(bg-BG), +.comment-navigation .nav-next:lang(bg-BG), .comment-list .pingback .comment-body:lang(bg-BG), +.comment-list .trackback .comment-body:lang(bg-BG), .comment-list .pingback .comment-body .comment-edit-link:lang(bg-BG), +.comment-list .trackback .comment-body .comment-edit-link:lang(bg-BG), .comment-form .comment-notes:lang(bg-BG), +.comment-form label:lang(bg-BG), .widget_archive ul li:lang(bg-BG), +.widget_categories ul li:lang(bg-BG), +.widget_meta ul li:lang(bg-BG), +.widget_nav_menu ul li:lang(bg-BG), +.widget_pages ul li:lang(bg-BG), +.widget_recent_comments ul li:lang(bg-BG), +.widget_recent_entries ul li:lang(bg-BG), +.widget_rss ul li:lang(bg-BG), .widget_tag_cloud .tagcloud:lang(bg-BG), .entry .entry-content .wp-block-button .wp-block-button__link:lang(bg-BG), .entry .entry-content .wp-block-archives li > a:lang(bg-BG), +.entry .entry-content .wp-block-categories li > a:lang(bg-BG), +.entry .entry-content .wp-block-latest-posts li > a:lang(bg-BG), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(bg-BG), .entry .entry-content .wp-block-verse:lang(bg-BG), .entry .entry-content .has-drop-cap:lang(bg-BG):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(bg-BG), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(bg-BG), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(bg-BG), +.entry .entry-content .wp-block-cover-image h2:lang(bg-BG), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(bg-BG), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(bg-BG), +.entry .entry-content .wp-block-cover h2:lang(bg-BG), .entry .entry-content .wp-block-audio figcaption:lang(bg-BG), +.entry .entry-content .wp-block-video figcaption:lang(bg-BG), +.entry .entry-content .wp-block-image figcaption:lang(bg-BG), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(bg-BG), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(bg-BG), .entry .entry-content .wp-block-file:lang(bg-BG), .entry .entry-content .wp-block-file .wp-block-file__button:lang(bg-BG), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(bg-BG), .wp-caption-text:lang(bg-BG), .gallery-caption:lang(bg-BG) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(kk), button:lang(kk), +input:lang(kk), +select:lang(kk), +optgroup:lang(kk), +textarea:lang(kk), .author-description .author-link:lang(kk), +.comment-metadata:lang(kk), +.comment-reply-link:lang(kk), +.comments-title:lang(kk), +.comment-author .fn:lang(kk), +.discussion-meta-info:lang(kk), +.entry-meta:lang(kk), +.entry-footer:lang(kk), +.main-navigation:lang(kk), +.no-comments:lang(kk), +.not-found .page-title:lang(kk), +.error-404 .page-title:lang(kk), +.post-navigation .post-title:lang(kk), +.page-links:lang(kk), +.page-description:lang(kk), +.pagination .nav-links:lang(kk), +.sticky-post:lang(kk), +.site-title:lang(kk), +.site-info:lang(kk), +#cancel-comment-reply-link:lang(kk), +h1:lang(kk), +h2:lang(kk), +h3:lang(kk), +h4:lang(kk), +h5:lang(kk), +h6:lang(kk), .page-title:lang(kk), blockquote cite:lang(kk), table:lang(kk), .button:lang(kk), +input:lang(kk)[type="button"], +input:lang(kk)[type="reset"], +input:lang(kk)[type="submit"], .comment-navigation .nav-previous:lang(kk), +.comment-navigation .nav-next:lang(kk), .comment-list .pingback .comment-body:lang(kk), +.comment-list .trackback .comment-body:lang(kk), .comment-list .pingback .comment-body .comment-edit-link:lang(kk), +.comment-list .trackback .comment-body .comment-edit-link:lang(kk), .comment-form .comment-notes:lang(kk), +.comment-form label:lang(kk), .widget_archive ul li:lang(kk), +.widget_categories ul li:lang(kk), +.widget_meta ul li:lang(kk), +.widget_nav_menu ul li:lang(kk), +.widget_pages ul li:lang(kk), +.widget_recent_comments ul li:lang(kk), +.widget_recent_entries ul li:lang(kk), +.widget_rss ul li:lang(kk), .widget_tag_cloud .tagcloud:lang(kk), .entry .entry-content .wp-block-button .wp-block-button__link:lang(kk), .entry .entry-content .wp-block-archives li > a:lang(kk), +.entry .entry-content .wp-block-categories li > a:lang(kk), +.entry .entry-content .wp-block-latest-posts li > a:lang(kk), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(kk), .entry .entry-content .wp-block-verse:lang(kk), .entry .entry-content .has-drop-cap:lang(kk):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(kk), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(kk), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(kk), +.entry .entry-content .wp-block-cover-image h2:lang(kk), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(kk), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(kk), +.entry .entry-content .wp-block-cover h2:lang(kk), .entry .entry-content .wp-block-audio figcaption:lang(kk), +.entry .entry-content .wp-block-video figcaption:lang(kk), +.entry .entry-content .wp-block-image figcaption:lang(kk), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(kk), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(kk), .entry .entry-content .wp-block-file:lang(kk), .entry .entry-content .wp-block-file .wp-block-file__button:lang(kk), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(kk), .wp-caption-text:lang(kk), .gallery-caption:lang(kk) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(mk-MK), button:lang(mk-MK), +input:lang(mk-MK), +select:lang(mk-MK), +optgroup:lang(mk-MK), +textarea:lang(mk-MK), .author-description .author-link:lang(mk-MK), +.comment-metadata:lang(mk-MK), +.comment-reply-link:lang(mk-MK), +.comments-title:lang(mk-MK), +.comment-author .fn:lang(mk-MK), +.discussion-meta-info:lang(mk-MK), +.entry-meta:lang(mk-MK), +.entry-footer:lang(mk-MK), +.main-navigation:lang(mk-MK), +.no-comments:lang(mk-MK), +.not-found .page-title:lang(mk-MK), +.error-404 .page-title:lang(mk-MK), +.post-navigation .post-title:lang(mk-MK), +.page-links:lang(mk-MK), +.page-description:lang(mk-MK), +.pagination .nav-links:lang(mk-MK), +.sticky-post:lang(mk-MK), +.site-title:lang(mk-MK), +.site-info:lang(mk-MK), +#cancel-comment-reply-link:lang(mk-MK), +h1:lang(mk-MK), +h2:lang(mk-MK), +h3:lang(mk-MK), +h4:lang(mk-MK), +h5:lang(mk-MK), +h6:lang(mk-MK), .page-title:lang(mk-MK), blockquote cite:lang(mk-MK), table:lang(mk-MK), .button:lang(mk-MK), +input:lang(mk-MK)[type="button"], +input:lang(mk-MK)[type="reset"], +input:lang(mk-MK)[type="submit"], .comment-navigation .nav-previous:lang(mk-MK), +.comment-navigation .nav-next:lang(mk-MK), .comment-list .pingback .comment-body:lang(mk-MK), +.comment-list .trackback .comment-body:lang(mk-MK), .comment-list .pingback .comment-body .comment-edit-link:lang(mk-MK), +.comment-list .trackback .comment-body .comment-edit-link:lang(mk-MK), .comment-form .comment-notes:lang(mk-MK), +.comment-form label:lang(mk-MK), .widget_archive ul li:lang(mk-MK), +.widget_categories ul li:lang(mk-MK), +.widget_meta ul li:lang(mk-MK), +.widget_nav_menu ul li:lang(mk-MK), +.widget_pages ul li:lang(mk-MK), +.widget_recent_comments ul li:lang(mk-MK), +.widget_recent_entries ul li:lang(mk-MK), +.widget_rss ul li:lang(mk-MK), .widget_tag_cloud .tagcloud:lang(mk-MK), .entry .entry-content .wp-block-button .wp-block-button__link:lang(mk-MK), .entry .entry-content .wp-block-archives li > a:lang(mk-MK), +.entry .entry-content .wp-block-categories li > a:lang(mk-MK), +.entry .entry-content .wp-block-latest-posts li > a:lang(mk-MK), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mk-MK), .entry .entry-content .wp-block-verse:lang(mk-MK), .entry .entry-content .has-drop-cap:lang(mk-MK):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(mk-MK), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(mk-MK), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(mk-MK), +.entry .entry-content .wp-block-cover-image h2:lang(mk-MK), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(mk-MK), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(mk-MK), +.entry .entry-content .wp-block-cover h2:lang(mk-MK), .entry .entry-content .wp-block-audio figcaption:lang(mk-MK), +.entry .entry-content .wp-block-video figcaption:lang(mk-MK), +.entry .entry-content .wp-block-image figcaption:lang(mk-MK), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(mk-MK), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(mk-MK), .entry .entry-content .wp-block-file:lang(mk-MK), .entry .entry-content .wp-block-file .wp-block-file__button:lang(mk-MK), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mk-MK), .wp-caption-text:lang(mk-MK), .gallery-caption:lang(mk-MK) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(mn), button:lang(mn), +input:lang(mn), +select:lang(mn), +optgroup:lang(mn), +textarea:lang(mn), .author-description .author-link:lang(mn), +.comment-metadata:lang(mn), +.comment-reply-link:lang(mn), +.comments-title:lang(mn), +.comment-author .fn:lang(mn), +.discussion-meta-info:lang(mn), +.entry-meta:lang(mn), +.entry-footer:lang(mn), +.main-navigation:lang(mn), +.no-comments:lang(mn), +.not-found .page-title:lang(mn), +.error-404 .page-title:lang(mn), +.post-navigation .post-title:lang(mn), +.page-links:lang(mn), +.page-description:lang(mn), +.pagination .nav-links:lang(mn), +.sticky-post:lang(mn), +.site-title:lang(mn), +.site-info:lang(mn), +#cancel-comment-reply-link:lang(mn), +h1:lang(mn), +h2:lang(mn), +h3:lang(mn), +h4:lang(mn), +h5:lang(mn), +h6:lang(mn), .page-title:lang(mn), blockquote cite:lang(mn), table:lang(mn), .button:lang(mn), +input:lang(mn)[type="button"], +input:lang(mn)[type="reset"], +input:lang(mn)[type="submit"], .comment-navigation .nav-previous:lang(mn), +.comment-navigation .nav-next:lang(mn), .comment-list .pingback .comment-body:lang(mn), +.comment-list .trackback .comment-body:lang(mn), .comment-list .pingback .comment-body .comment-edit-link:lang(mn), +.comment-list .trackback .comment-body .comment-edit-link:lang(mn), .comment-form .comment-notes:lang(mn), +.comment-form label:lang(mn), .widget_archive ul li:lang(mn), +.widget_categories ul li:lang(mn), +.widget_meta ul li:lang(mn), +.widget_nav_menu ul li:lang(mn), +.widget_pages ul li:lang(mn), +.widget_recent_comments ul li:lang(mn), +.widget_recent_entries ul li:lang(mn), +.widget_rss ul li:lang(mn), .widget_tag_cloud .tagcloud:lang(mn), .entry .entry-content .wp-block-button .wp-block-button__link:lang(mn), .entry .entry-content .wp-block-archives li > a:lang(mn), +.entry .entry-content .wp-block-categories li > a:lang(mn), +.entry .entry-content .wp-block-latest-posts li > a:lang(mn), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mn), .entry .entry-content .wp-block-verse:lang(mn), .entry .entry-content .has-drop-cap:lang(mn):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(mn), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(mn), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(mn), +.entry .entry-content .wp-block-cover-image h2:lang(mn), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(mn), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(mn), +.entry .entry-content .wp-block-cover h2:lang(mn), .entry .entry-content .wp-block-audio figcaption:lang(mn), +.entry .entry-content .wp-block-video figcaption:lang(mn), +.entry .entry-content .wp-block-image figcaption:lang(mn), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(mn), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(mn), .entry .entry-content .wp-block-file:lang(mn), .entry .entry-content .wp-block-file .wp-block-file__button:lang(mn), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mn), .wp-caption-text:lang(mn), .gallery-caption:lang(mn) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(ru-RU), button:lang(ru-RU), +input:lang(ru-RU), +select:lang(ru-RU), +optgroup:lang(ru-RU), +textarea:lang(ru-RU), .author-description .author-link:lang(ru-RU), +.comment-metadata:lang(ru-RU), +.comment-reply-link:lang(ru-RU), +.comments-title:lang(ru-RU), +.comment-author .fn:lang(ru-RU), +.discussion-meta-info:lang(ru-RU), +.entry-meta:lang(ru-RU), +.entry-footer:lang(ru-RU), +.main-navigation:lang(ru-RU), +.no-comments:lang(ru-RU), +.not-found .page-title:lang(ru-RU), +.error-404 .page-title:lang(ru-RU), +.post-navigation .post-title:lang(ru-RU), +.page-links:lang(ru-RU), +.page-description:lang(ru-RU), +.pagination .nav-links:lang(ru-RU), +.sticky-post:lang(ru-RU), +.site-title:lang(ru-RU), +.site-info:lang(ru-RU), +#cancel-comment-reply-link:lang(ru-RU), +h1:lang(ru-RU), +h2:lang(ru-RU), +h3:lang(ru-RU), +h4:lang(ru-RU), +h5:lang(ru-RU), +h6:lang(ru-RU), .page-title:lang(ru-RU), blockquote cite:lang(ru-RU), table:lang(ru-RU), .button:lang(ru-RU), +input:lang(ru-RU)[type="button"], +input:lang(ru-RU)[type="reset"], +input:lang(ru-RU)[type="submit"], .comment-navigation .nav-previous:lang(ru-RU), +.comment-navigation .nav-next:lang(ru-RU), .comment-list .pingback .comment-body:lang(ru-RU), +.comment-list .trackback .comment-body:lang(ru-RU), .comment-list .pingback .comment-body .comment-edit-link:lang(ru-RU), +.comment-list .trackback .comment-body .comment-edit-link:lang(ru-RU), .comment-form .comment-notes:lang(ru-RU), +.comment-form label:lang(ru-RU), .widget_archive ul li:lang(ru-RU), +.widget_categories ul li:lang(ru-RU), +.widget_meta ul li:lang(ru-RU), +.widget_nav_menu ul li:lang(ru-RU), +.widget_pages ul li:lang(ru-RU), +.widget_recent_comments ul li:lang(ru-RU), +.widget_recent_entries ul li:lang(ru-RU), +.widget_rss ul li:lang(ru-RU), .widget_tag_cloud .tagcloud:lang(ru-RU), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ru-RU), .entry .entry-content .wp-block-archives li > a:lang(ru-RU), +.entry .entry-content .wp-block-categories li > a:lang(ru-RU), +.entry .entry-content .wp-block-latest-posts li > a:lang(ru-RU), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ru-RU), .entry .entry-content .wp-block-verse:lang(ru-RU), .entry .entry-content .has-drop-cap:lang(ru-RU):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ru-RU), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ru-RU), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ru-RU), +.entry .entry-content .wp-block-cover-image h2:lang(ru-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ru-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ru-RU), +.entry .entry-content .wp-block-cover h2:lang(ru-RU), .entry .entry-content .wp-block-audio figcaption:lang(ru-RU), +.entry .entry-content .wp-block-video figcaption:lang(ru-RU), +.entry .entry-content .wp-block-image figcaption:lang(ru-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ru-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ru-RU), .entry .entry-content .wp-block-file:lang(ru-RU), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ru-RU), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ru-RU), .wp-caption-text:lang(ru-RU), .gallery-caption:lang(ru-RU) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(sah), button:lang(sah), +input:lang(sah), +select:lang(sah), +optgroup:lang(sah), +textarea:lang(sah), .author-description .author-link:lang(sah), +.comment-metadata:lang(sah), +.comment-reply-link:lang(sah), +.comments-title:lang(sah), +.comment-author .fn:lang(sah), +.discussion-meta-info:lang(sah), +.entry-meta:lang(sah), +.entry-footer:lang(sah), +.main-navigation:lang(sah), +.no-comments:lang(sah), +.not-found .page-title:lang(sah), +.error-404 .page-title:lang(sah), +.post-navigation .post-title:lang(sah), +.page-links:lang(sah), +.page-description:lang(sah), +.pagination .nav-links:lang(sah), +.sticky-post:lang(sah), +.site-title:lang(sah), +.site-info:lang(sah), +#cancel-comment-reply-link:lang(sah), +h1:lang(sah), +h2:lang(sah), +h3:lang(sah), +h4:lang(sah), +h5:lang(sah), +h6:lang(sah), .page-title:lang(sah), blockquote cite:lang(sah), table:lang(sah), .button:lang(sah), +input:lang(sah)[type="button"], +input:lang(sah)[type="reset"], +input:lang(sah)[type="submit"], .comment-navigation .nav-previous:lang(sah), +.comment-navigation .nav-next:lang(sah), .comment-list .pingback .comment-body:lang(sah), +.comment-list .trackback .comment-body:lang(sah), .comment-list .pingback .comment-body .comment-edit-link:lang(sah), +.comment-list .trackback .comment-body .comment-edit-link:lang(sah), .comment-form .comment-notes:lang(sah), +.comment-form label:lang(sah), .widget_archive ul li:lang(sah), +.widget_categories ul li:lang(sah), +.widget_meta ul li:lang(sah), +.widget_nav_menu ul li:lang(sah), +.widget_pages ul li:lang(sah), +.widget_recent_comments ul li:lang(sah), +.widget_recent_entries ul li:lang(sah), +.widget_rss ul li:lang(sah), .widget_tag_cloud .tagcloud:lang(sah), .entry .entry-content .wp-block-button .wp-block-button__link:lang(sah), .entry .entry-content .wp-block-archives li > a:lang(sah), +.entry .entry-content .wp-block-categories li > a:lang(sah), +.entry .entry-content .wp-block-latest-posts li > a:lang(sah), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(sah), .entry .entry-content .wp-block-verse:lang(sah), .entry .entry-content .has-drop-cap:lang(sah):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(sah), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(sah), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(sah), +.entry .entry-content .wp-block-cover-image h2:lang(sah), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(sah), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(sah), +.entry .entry-content .wp-block-cover h2:lang(sah), .entry .entry-content .wp-block-audio figcaption:lang(sah), +.entry .entry-content .wp-block-video figcaption:lang(sah), +.entry .entry-content .wp-block-image figcaption:lang(sah), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(sah), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(sah), .entry .entry-content .wp-block-file:lang(sah), .entry .entry-content .wp-block-file .wp-block-file__button:lang(sah), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(sah), .wp-caption-text:lang(sah), .gallery-caption:lang(sah) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(sr-RS), button:lang(sr-RS), +input:lang(sr-RS), +select:lang(sr-RS), +optgroup:lang(sr-RS), +textarea:lang(sr-RS), .author-description .author-link:lang(sr-RS), +.comment-metadata:lang(sr-RS), +.comment-reply-link:lang(sr-RS), +.comments-title:lang(sr-RS), +.comment-author .fn:lang(sr-RS), +.discussion-meta-info:lang(sr-RS), +.entry-meta:lang(sr-RS), +.entry-footer:lang(sr-RS), +.main-navigation:lang(sr-RS), +.no-comments:lang(sr-RS), +.not-found .page-title:lang(sr-RS), +.error-404 .page-title:lang(sr-RS), +.post-navigation .post-title:lang(sr-RS), +.page-links:lang(sr-RS), +.page-description:lang(sr-RS), +.pagination .nav-links:lang(sr-RS), +.sticky-post:lang(sr-RS), +.site-title:lang(sr-RS), +.site-info:lang(sr-RS), +#cancel-comment-reply-link:lang(sr-RS), +h1:lang(sr-RS), +h2:lang(sr-RS), +h3:lang(sr-RS), +h4:lang(sr-RS), +h5:lang(sr-RS), +h6:lang(sr-RS), .page-title:lang(sr-RS), blockquote cite:lang(sr-RS), table:lang(sr-RS), .button:lang(sr-RS), +input:lang(sr-RS)[type="button"], +input:lang(sr-RS)[type="reset"], +input:lang(sr-RS)[type="submit"], .comment-navigation .nav-previous:lang(sr-RS), +.comment-navigation .nav-next:lang(sr-RS), .comment-list .pingback .comment-body:lang(sr-RS), +.comment-list .trackback .comment-body:lang(sr-RS), .comment-list .pingback .comment-body .comment-edit-link:lang(sr-RS), +.comment-list .trackback .comment-body .comment-edit-link:lang(sr-RS), .comment-form .comment-notes:lang(sr-RS), +.comment-form label:lang(sr-RS), .widget_archive ul li:lang(sr-RS), +.widget_categories ul li:lang(sr-RS), +.widget_meta ul li:lang(sr-RS), +.widget_nav_menu ul li:lang(sr-RS), +.widget_pages ul li:lang(sr-RS), +.widget_recent_comments ul li:lang(sr-RS), +.widget_recent_entries ul li:lang(sr-RS), +.widget_rss ul li:lang(sr-RS), .widget_tag_cloud .tagcloud:lang(sr-RS), .entry .entry-content .wp-block-button .wp-block-button__link:lang(sr-RS), .entry .entry-content .wp-block-archives li > a:lang(sr-RS), +.entry .entry-content .wp-block-categories li > a:lang(sr-RS), +.entry .entry-content .wp-block-latest-posts li > a:lang(sr-RS), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(sr-RS), .entry .entry-content .wp-block-verse:lang(sr-RS), .entry .entry-content .has-drop-cap:lang(sr-RS):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(sr-RS), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(sr-RS), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(sr-RS), +.entry .entry-content .wp-block-cover-image h2:lang(sr-RS), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(sr-RS), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(sr-RS), +.entry .entry-content .wp-block-cover h2:lang(sr-RS), .entry .entry-content .wp-block-audio figcaption:lang(sr-RS), +.entry .entry-content .wp-block-video figcaption:lang(sr-RS), +.entry .entry-content .wp-block-image figcaption:lang(sr-RS), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(sr-RS), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(sr-RS), .entry .entry-content .wp-block-file:lang(sr-RS), .entry .entry-content .wp-block-file .wp-block-file__button:lang(sr-RS), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(sr-RS), .wp-caption-text:lang(sr-RS), .gallery-caption:lang(sr-RS) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(tt-RU), button:lang(tt-RU), +input:lang(tt-RU), +select:lang(tt-RU), +optgroup:lang(tt-RU), +textarea:lang(tt-RU), .author-description .author-link:lang(tt-RU), +.comment-metadata:lang(tt-RU), +.comment-reply-link:lang(tt-RU), +.comments-title:lang(tt-RU), +.comment-author .fn:lang(tt-RU), +.discussion-meta-info:lang(tt-RU), +.entry-meta:lang(tt-RU), +.entry-footer:lang(tt-RU), +.main-navigation:lang(tt-RU), +.no-comments:lang(tt-RU), +.not-found .page-title:lang(tt-RU), +.error-404 .page-title:lang(tt-RU), +.post-navigation .post-title:lang(tt-RU), +.page-links:lang(tt-RU), +.page-description:lang(tt-RU), +.pagination .nav-links:lang(tt-RU), +.sticky-post:lang(tt-RU), +.site-title:lang(tt-RU), +.site-info:lang(tt-RU), +#cancel-comment-reply-link:lang(tt-RU), +h1:lang(tt-RU), +h2:lang(tt-RU), +h3:lang(tt-RU), +h4:lang(tt-RU), +h5:lang(tt-RU), +h6:lang(tt-RU), .page-title:lang(tt-RU), blockquote cite:lang(tt-RU), table:lang(tt-RU), .button:lang(tt-RU), +input:lang(tt-RU)[type="button"], +input:lang(tt-RU)[type="reset"], +input:lang(tt-RU)[type="submit"], .comment-navigation .nav-previous:lang(tt-RU), +.comment-navigation .nav-next:lang(tt-RU), .comment-list .pingback .comment-body:lang(tt-RU), +.comment-list .trackback .comment-body:lang(tt-RU), .comment-list .pingback .comment-body .comment-edit-link:lang(tt-RU), +.comment-list .trackback .comment-body .comment-edit-link:lang(tt-RU), .comment-form .comment-notes:lang(tt-RU), +.comment-form label:lang(tt-RU), .widget_archive ul li:lang(tt-RU), +.widget_categories ul li:lang(tt-RU), +.widget_meta ul li:lang(tt-RU), +.widget_nav_menu ul li:lang(tt-RU), +.widget_pages ul li:lang(tt-RU), +.widget_recent_comments ul li:lang(tt-RU), +.widget_recent_entries ul li:lang(tt-RU), +.widget_rss ul li:lang(tt-RU), .widget_tag_cloud .tagcloud:lang(tt-RU), .entry .entry-content .wp-block-button .wp-block-button__link:lang(tt-RU), .entry .entry-content .wp-block-archives li > a:lang(tt-RU), +.entry .entry-content .wp-block-categories li > a:lang(tt-RU), +.entry .entry-content .wp-block-latest-posts li > a:lang(tt-RU), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(tt-RU), .entry .entry-content .wp-block-verse:lang(tt-RU), .entry .entry-content .has-drop-cap:lang(tt-RU):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(tt-RU), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(tt-RU), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(tt-RU), +.entry .entry-content .wp-block-cover-image h2:lang(tt-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(tt-RU), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(tt-RU), +.entry .entry-content .wp-block-cover h2:lang(tt-RU), .entry .entry-content .wp-block-audio figcaption:lang(tt-RU), +.entry .entry-content .wp-block-video figcaption:lang(tt-RU), +.entry .entry-content .wp-block-image figcaption:lang(tt-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(tt-RU), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(tt-RU), .entry .entry-content .wp-block-file:lang(tt-RU), .entry .entry-content .wp-block-file .wp-block-file__button:lang(tt-RU), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(tt-RU), .wp-caption-text:lang(tt-RU), .gallery-caption:lang(tt-RU) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(uk), button:lang(uk), +input:lang(uk), +select:lang(uk), +optgroup:lang(uk), +textarea:lang(uk), .author-description .author-link:lang(uk), +.comment-metadata:lang(uk), +.comment-reply-link:lang(uk), +.comments-title:lang(uk), +.comment-author .fn:lang(uk), +.discussion-meta-info:lang(uk), +.entry-meta:lang(uk), +.entry-footer:lang(uk), +.main-navigation:lang(uk), +.no-comments:lang(uk), +.not-found .page-title:lang(uk), +.error-404 .page-title:lang(uk), +.post-navigation .post-title:lang(uk), +.page-links:lang(uk), +.page-description:lang(uk), +.pagination .nav-links:lang(uk), +.sticky-post:lang(uk), +.site-title:lang(uk), +.site-info:lang(uk), +#cancel-comment-reply-link:lang(uk), +h1:lang(uk), +h2:lang(uk), +h3:lang(uk), +h4:lang(uk), +h5:lang(uk), +h6:lang(uk), .page-title:lang(uk), blockquote cite:lang(uk), table:lang(uk), .button:lang(uk), +input:lang(uk)[type="button"], +input:lang(uk)[type="reset"], +input:lang(uk)[type="submit"], .comment-navigation .nav-previous:lang(uk), +.comment-navigation .nav-next:lang(uk), .comment-list .pingback .comment-body:lang(uk), +.comment-list .trackback .comment-body:lang(uk), .comment-list .pingback .comment-body .comment-edit-link:lang(uk), +.comment-list .trackback .comment-body .comment-edit-link:lang(uk), .comment-form .comment-notes:lang(uk), +.comment-form label:lang(uk), .widget_archive ul li:lang(uk), +.widget_categories ul li:lang(uk), +.widget_meta ul li:lang(uk), +.widget_nav_menu ul li:lang(uk), +.widget_pages ul li:lang(uk), +.widget_recent_comments ul li:lang(uk), +.widget_recent_entries ul li:lang(uk), +.widget_rss ul li:lang(uk), .widget_tag_cloud .tagcloud:lang(uk), .entry .entry-content .wp-block-button .wp-block-button__link:lang(uk), .entry .entry-content .wp-block-archives li > a:lang(uk), +.entry .entry-content .wp-block-categories li > a:lang(uk), +.entry .entry-content .wp-block-latest-posts li > a:lang(uk), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(uk), .entry .entry-content .wp-block-verse:lang(uk), .entry .entry-content .has-drop-cap:lang(uk):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(uk), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(uk), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(uk), +.entry .entry-content .wp-block-cover-image h2:lang(uk), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(uk), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(uk), +.entry .entry-content .wp-block-cover h2:lang(uk), .entry .entry-content .wp-block-audio figcaption:lang(uk), +.entry .entry-content .wp-block-video figcaption:lang(uk), +.entry .entry-content .wp-block-image figcaption:lang(uk), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(uk), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(uk), .entry .entry-content .wp-block-file:lang(uk), .entry .entry-content .wp-block-file .wp-block-file__button:lang(uk), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(uk), .wp-caption-text:lang(uk), .gallery-caption:lang(uk) { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +body:lang(zh-HK), button:lang(zh-HK), +input:lang(zh-HK), +select:lang(zh-HK), +optgroup:lang(zh-HK), +textarea:lang(zh-HK), .author-description .author-link:lang(zh-HK), +.comment-metadata:lang(zh-HK), +.comment-reply-link:lang(zh-HK), +.comments-title:lang(zh-HK), +.comment-author .fn:lang(zh-HK), +.discussion-meta-info:lang(zh-HK), +.entry-meta:lang(zh-HK), +.entry-footer:lang(zh-HK), +.main-navigation:lang(zh-HK), +.no-comments:lang(zh-HK), +.not-found .page-title:lang(zh-HK), +.error-404 .page-title:lang(zh-HK), +.post-navigation .post-title:lang(zh-HK), +.page-links:lang(zh-HK), +.page-description:lang(zh-HK), +.pagination .nav-links:lang(zh-HK), +.sticky-post:lang(zh-HK), +.site-title:lang(zh-HK), +.site-info:lang(zh-HK), +#cancel-comment-reply-link:lang(zh-HK), +h1:lang(zh-HK), +h2:lang(zh-HK), +h3:lang(zh-HK), +h4:lang(zh-HK), +h5:lang(zh-HK), +h6:lang(zh-HK), .page-title:lang(zh-HK), blockquote cite:lang(zh-HK), table:lang(zh-HK), .button:lang(zh-HK), +input:lang(zh-HK)[type="button"], +input:lang(zh-HK)[type="reset"], +input:lang(zh-HK)[type="submit"], .comment-navigation .nav-previous:lang(zh-HK), +.comment-navigation .nav-next:lang(zh-HK), .comment-list .pingback .comment-body:lang(zh-HK), +.comment-list .trackback .comment-body:lang(zh-HK), .comment-list .pingback .comment-body .comment-edit-link:lang(zh-HK), +.comment-list .trackback .comment-body .comment-edit-link:lang(zh-HK), .comment-form .comment-notes:lang(zh-HK), +.comment-form label:lang(zh-HK), .widget_archive ul li:lang(zh-HK), +.widget_categories ul li:lang(zh-HK), +.widget_meta ul li:lang(zh-HK), +.widget_nav_menu ul li:lang(zh-HK), +.widget_pages ul li:lang(zh-HK), +.widget_recent_comments ul li:lang(zh-HK), +.widget_recent_entries ul li:lang(zh-HK), +.widget_rss ul li:lang(zh-HK), .widget_tag_cloud .tagcloud:lang(zh-HK), .entry .entry-content .wp-block-button .wp-block-button__link:lang(zh-HK), .entry .entry-content .wp-block-archives li > a:lang(zh-HK), +.entry .entry-content .wp-block-categories li > a:lang(zh-HK), +.entry .entry-content .wp-block-latest-posts li > a:lang(zh-HK), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-HK), .entry .entry-content .wp-block-verse:lang(zh-HK), .entry .entry-content .has-drop-cap:lang(zh-HK):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(zh-HK), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(zh-HK), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(zh-HK), +.entry .entry-content .wp-block-cover-image h2:lang(zh-HK), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(zh-HK), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(zh-HK), +.entry .entry-content .wp-block-cover h2:lang(zh-HK), .entry .entry-content .wp-block-audio figcaption:lang(zh-HK), +.entry .entry-content .wp-block-video figcaption:lang(zh-HK), +.entry .entry-content .wp-block-image figcaption:lang(zh-HK), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(zh-HK), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(zh-HK), .entry .entry-content .wp-block-file:lang(zh-HK), .entry .entry-content .wp-block-file .wp-block-file__button:lang(zh-HK), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-HK), .wp-caption-text:lang(zh-HK), .gallery-caption:lang(zh-HK) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang HK", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(zh-TW), button:lang(zh-TW), +input:lang(zh-TW), +select:lang(zh-TW), +optgroup:lang(zh-TW), +textarea:lang(zh-TW), .author-description .author-link:lang(zh-TW), +.comment-metadata:lang(zh-TW), +.comment-reply-link:lang(zh-TW), +.comments-title:lang(zh-TW), +.comment-author .fn:lang(zh-TW), +.discussion-meta-info:lang(zh-TW), +.entry-meta:lang(zh-TW), +.entry-footer:lang(zh-TW), +.main-navigation:lang(zh-TW), +.no-comments:lang(zh-TW), +.not-found .page-title:lang(zh-TW), +.error-404 .page-title:lang(zh-TW), +.post-navigation .post-title:lang(zh-TW), +.page-links:lang(zh-TW), +.page-description:lang(zh-TW), +.pagination .nav-links:lang(zh-TW), +.sticky-post:lang(zh-TW), +.site-title:lang(zh-TW), +.site-info:lang(zh-TW), +#cancel-comment-reply-link:lang(zh-TW), +h1:lang(zh-TW), +h2:lang(zh-TW), +h3:lang(zh-TW), +h4:lang(zh-TW), +h5:lang(zh-TW), +h6:lang(zh-TW), .page-title:lang(zh-TW), blockquote cite:lang(zh-TW), table:lang(zh-TW), .button:lang(zh-TW), +input:lang(zh-TW)[type="button"], +input:lang(zh-TW)[type="reset"], +input:lang(zh-TW)[type="submit"], .comment-navigation .nav-previous:lang(zh-TW), +.comment-navigation .nav-next:lang(zh-TW), .comment-list .pingback .comment-body:lang(zh-TW), +.comment-list .trackback .comment-body:lang(zh-TW), .comment-list .pingback .comment-body .comment-edit-link:lang(zh-TW), +.comment-list .trackback .comment-body .comment-edit-link:lang(zh-TW), .comment-form .comment-notes:lang(zh-TW), +.comment-form label:lang(zh-TW), .widget_archive ul li:lang(zh-TW), +.widget_categories ul li:lang(zh-TW), +.widget_meta ul li:lang(zh-TW), +.widget_nav_menu ul li:lang(zh-TW), +.widget_pages ul li:lang(zh-TW), +.widget_recent_comments ul li:lang(zh-TW), +.widget_recent_entries ul li:lang(zh-TW), +.widget_rss ul li:lang(zh-TW), .widget_tag_cloud .tagcloud:lang(zh-TW), .entry .entry-content .wp-block-button .wp-block-button__link:lang(zh-TW), .entry .entry-content .wp-block-archives li > a:lang(zh-TW), +.entry .entry-content .wp-block-categories li > a:lang(zh-TW), +.entry .entry-content .wp-block-latest-posts li > a:lang(zh-TW), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-TW), .entry .entry-content .wp-block-verse:lang(zh-TW), .entry .entry-content .has-drop-cap:lang(zh-TW):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(zh-TW), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(zh-TW), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(zh-TW), +.entry .entry-content .wp-block-cover-image h2:lang(zh-TW), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(zh-TW), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(zh-TW), +.entry .entry-content .wp-block-cover h2:lang(zh-TW), .entry .entry-content .wp-block-audio figcaption:lang(zh-TW), +.entry .entry-content .wp-block-video figcaption:lang(zh-TW), +.entry .entry-content .wp-block-image figcaption:lang(zh-TW), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(zh-TW), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(zh-TW), .entry .entry-content .wp-block-file:lang(zh-TW), .entry .entry-content .wp-block-file .wp-block-file__button:lang(zh-TW), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-TW), .wp-caption-text:lang(zh-TW), .gallery-caption:lang(zh-TW) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang TC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(zh-CN), button:lang(zh-CN), +input:lang(zh-CN), +select:lang(zh-CN), +optgroup:lang(zh-CN), +textarea:lang(zh-CN), .author-description .author-link:lang(zh-CN), +.comment-metadata:lang(zh-CN), +.comment-reply-link:lang(zh-CN), +.comments-title:lang(zh-CN), +.comment-author .fn:lang(zh-CN), +.discussion-meta-info:lang(zh-CN), +.entry-meta:lang(zh-CN), +.entry-footer:lang(zh-CN), +.main-navigation:lang(zh-CN), +.no-comments:lang(zh-CN), +.not-found .page-title:lang(zh-CN), +.error-404 .page-title:lang(zh-CN), +.post-navigation .post-title:lang(zh-CN), +.page-links:lang(zh-CN), +.page-description:lang(zh-CN), +.pagination .nav-links:lang(zh-CN), +.sticky-post:lang(zh-CN), +.site-title:lang(zh-CN), +.site-info:lang(zh-CN), +#cancel-comment-reply-link:lang(zh-CN), +h1:lang(zh-CN), +h2:lang(zh-CN), +h3:lang(zh-CN), +h4:lang(zh-CN), +h5:lang(zh-CN), +h6:lang(zh-CN), .page-title:lang(zh-CN), blockquote cite:lang(zh-CN), table:lang(zh-CN), .button:lang(zh-CN), +input:lang(zh-CN)[type="button"], +input:lang(zh-CN)[type="reset"], +input:lang(zh-CN)[type="submit"], .comment-navigation .nav-previous:lang(zh-CN), +.comment-navigation .nav-next:lang(zh-CN), .comment-list .pingback .comment-body:lang(zh-CN), +.comment-list .trackback .comment-body:lang(zh-CN), .comment-list .pingback .comment-body .comment-edit-link:lang(zh-CN), +.comment-list .trackback .comment-body .comment-edit-link:lang(zh-CN), .comment-form .comment-notes:lang(zh-CN), +.comment-form label:lang(zh-CN), .widget_archive ul li:lang(zh-CN), +.widget_categories ul li:lang(zh-CN), +.widget_meta ul li:lang(zh-CN), +.widget_nav_menu ul li:lang(zh-CN), +.widget_pages ul li:lang(zh-CN), +.widget_recent_comments ul li:lang(zh-CN), +.widget_recent_entries ul li:lang(zh-CN), +.widget_rss ul li:lang(zh-CN), .widget_tag_cloud .tagcloud:lang(zh-CN), .entry .entry-content .wp-block-button .wp-block-button__link:lang(zh-CN), .entry .entry-content .wp-block-archives li > a:lang(zh-CN), +.entry .entry-content .wp-block-categories li > a:lang(zh-CN), +.entry .entry-content .wp-block-latest-posts li > a:lang(zh-CN), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(zh-CN), .entry .entry-content .wp-block-verse:lang(zh-CN), .entry .entry-content .has-drop-cap:lang(zh-CN):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(zh-CN), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(zh-CN), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(zh-CN), +.entry .entry-content .wp-block-cover-image h2:lang(zh-CN), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(zh-CN), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(zh-CN), +.entry .entry-content .wp-block-cover h2:lang(zh-CN), .entry .entry-content .wp-block-audio figcaption:lang(zh-CN), +.entry .entry-content .wp-block-video figcaption:lang(zh-CN), +.entry .entry-content .wp-block-image figcaption:lang(zh-CN), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(zh-CN), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(zh-CN), .entry .entry-content .wp-block-file:lang(zh-CN), .entry .entry-content .wp-block-file .wp-block-file__button:lang(zh-CN), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(zh-CN), .wp-caption-text:lang(zh-CN), .gallery-caption:lang(zh-CN) { + font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei New", STHeiti Light, sans-serif; +} + +body:lang(bn-BD), button:lang(bn-BD), +input:lang(bn-BD), +select:lang(bn-BD), +optgroup:lang(bn-BD), +textarea:lang(bn-BD), .author-description .author-link:lang(bn-BD), +.comment-metadata:lang(bn-BD), +.comment-reply-link:lang(bn-BD), +.comments-title:lang(bn-BD), +.comment-author .fn:lang(bn-BD), +.discussion-meta-info:lang(bn-BD), +.entry-meta:lang(bn-BD), +.entry-footer:lang(bn-BD), +.main-navigation:lang(bn-BD), +.no-comments:lang(bn-BD), +.not-found .page-title:lang(bn-BD), +.error-404 .page-title:lang(bn-BD), +.post-navigation .post-title:lang(bn-BD), +.page-links:lang(bn-BD), +.page-description:lang(bn-BD), +.pagination .nav-links:lang(bn-BD), +.sticky-post:lang(bn-BD), +.site-title:lang(bn-BD), +.site-info:lang(bn-BD), +#cancel-comment-reply-link:lang(bn-BD), +h1:lang(bn-BD), +h2:lang(bn-BD), +h3:lang(bn-BD), +h4:lang(bn-BD), +h5:lang(bn-BD), +h6:lang(bn-BD), .page-title:lang(bn-BD), blockquote cite:lang(bn-BD), table:lang(bn-BD), .button:lang(bn-BD), +input:lang(bn-BD)[type="button"], +input:lang(bn-BD)[type="reset"], +input:lang(bn-BD)[type="submit"], .comment-navigation .nav-previous:lang(bn-BD), +.comment-navigation .nav-next:lang(bn-BD), .comment-list .pingback .comment-body:lang(bn-BD), +.comment-list .trackback .comment-body:lang(bn-BD), .comment-list .pingback .comment-body .comment-edit-link:lang(bn-BD), +.comment-list .trackback .comment-body .comment-edit-link:lang(bn-BD), .comment-form .comment-notes:lang(bn-BD), +.comment-form label:lang(bn-BD), .widget_archive ul li:lang(bn-BD), +.widget_categories ul li:lang(bn-BD), +.widget_meta ul li:lang(bn-BD), +.widget_nav_menu ul li:lang(bn-BD), +.widget_pages ul li:lang(bn-BD), +.widget_recent_comments ul li:lang(bn-BD), +.widget_recent_entries ul li:lang(bn-BD), +.widget_rss ul li:lang(bn-BD), .widget_tag_cloud .tagcloud:lang(bn-BD), .entry .entry-content .wp-block-button .wp-block-button__link:lang(bn-BD), .entry .entry-content .wp-block-archives li > a:lang(bn-BD), +.entry .entry-content .wp-block-categories li > a:lang(bn-BD), +.entry .entry-content .wp-block-latest-posts li > a:lang(bn-BD), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(bn-BD), .entry .entry-content .wp-block-verse:lang(bn-BD), .entry .entry-content .has-drop-cap:lang(bn-BD):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(bn-BD), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(bn-BD), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(bn-BD), +.entry .entry-content .wp-block-cover-image h2:lang(bn-BD), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(bn-BD), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(bn-BD), +.entry .entry-content .wp-block-cover h2:lang(bn-BD), .entry .entry-content .wp-block-audio figcaption:lang(bn-BD), +.entry .entry-content .wp-block-video figcaption:lang(bn-BD), +.entry .entry-content .wp-block-image figcaption:lang(bn-BD), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(bn-BD), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(bn-BD), .entry .entry-content .wp-block-file:lang(bn-BD), .entry .entry-content .wp-block-file .wp-block-file__button:lang(bn-BD), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(bn-BD), .wp-caption-text:lang(bn-BD), .gallery-caption:lang(bn-BD) { + font-family: Arial, sans-serif; +} + +body:lang(hi-IN), button:lang(hi-IN), +input:lang(hi-IN), +select:lang(hi-IN), +optgroup:lang(hi-IN), +textarea:lang(hi-IN), .author-description .author-link:lang(hi-IN), +.comment-metadata:lang(hi-IN), +.comment-reply-link:lang(hi-IN), +.comments-title:lang(hi-IN), +.comment-author .fn:lang(hi-IN), +.discussion-meta-info:lang(hi-IN), +.entry-meta:lang(hi-IN), +.entry-footer:lang(hi-IN), +.main-navigation:lang(hi-IN), +.no-comments:lang(hi-IN), +.not-found .page-title:lang(hi-IN), +.error-404 .page-title:lang(hi-IN), +.post-navigation .post-title:lang(hi-IN), +.page-links:lang(hi-IN), +.page-description:lang(hi-IN), +.pagination .nav-links:lang(hi-IN), +.sticky-post:lang(hi-IN), +.site-title:lang(hi-IN), +.site-info:lang(hi-IN), +#cancel-comment-reply-link:lang(hi-IN), +h1:lang(hi-IN), +h2:lang(hi-IN), +h3:lang(hi-IN), +h4:lang(hi-IN), +h5:lang(hi-IN), +h6:lang(hi-IN), .page-title:lang(hi-IN), blockquote cite:lang(hi-IN), table:lang(hi-IN), .button:lang(hi-IN), +input:lang(hi-IN)[type="button"], +input:lang(hi-IN)[type="reset"], +input:lang(hi-IN)[type="submit"], .comment-navigation .nav-previous:lang(hi-IN), +.comment-navigation .nav-next:lang(hi-IN), .comment-list .pingback .comment-body:lang(hi-IN), +.comment-list .trackback .comment-body:lang(hi-IN), .comment-list .pingback .comment-body .comment-edit-link:lang(hi-IN), +.comment-list .trackback .comment-body .comment-edit-link:lang(hi-IN), .comment-form .comment-notes:lang(hi-IN), +.comment-form label:lang(hi-IN), .widget_archive ul li:lang(hi-IN), +.widget_categories ul li:lang(hi-IN), +.widget_meta ul li:lang(hi-IN), +.widget_nav_menu ul li:lang(hi-IN), +.widget_pages ul li:lang(hi-IN), +.widget_recent_comments ul li:lang(hi-IN), +.widget_recent_entries ul li:lang(hi-IN), +.widget_rss ul li:lang(hi-IN), .widget_tag_cloud .tagcloud:lang(hi-IN), .entry .entry-content .wp-block-button .wp-block-button__link:lang(hi-IN), .entry .entry-content .wp-block-archives li > a:lang(hi-IN), +.entry .entry-content .wp-block-categories li > a:lang(hi-IN), +.entry .entry-content .wp-block-latest-posts li > a:lang(hi-IN), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(hi-IN), .entry .entry-content .wp-block-verse:lang(hi-IN), .entry .entry-content .has-drop-cap:lang(hi-IN):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(hi-IN), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(hi-IN), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(hi-IN), +.entry .entry-content .wp-block-cover-image h2:lang(hi-IN), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(hi-IN), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(hi-IN), +.entry .entry-content .wp-block-cover h2:lang(hi-IN), .entry .entry-content .wp-block-audio figcaption:lang(hi-IN), +.entry .entry-content .wp-block-video figcaption:lang(hi-IN), +.entry .entry-content .wp-block-image figcaption:lang(hi-IN), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(hi-IN), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(hi-IN), .entry .entry-content .wp-block-file:lang(hi-IN), .entry .entry-content .wp-block-file .wp-block-file__button:lang(hi-IN), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(hi-IN), .wp-caption-text:lang(hi-IN), .gallery-caption:lang(hi-IN) { + font-family: Arial, sans-serif; +} + +body:lang(mr), button:lang(mr), +input:lang(mr), +select:lang(mr), +optgroup:lang(mr), +textarea:lang(mr), .author-description .author-link:lang(mr), +.comment-metadata:lang(mr), +.comment-reply-link:lang(mr), +.comments-title:lang(mr), +.comment-author .fn:lang(mr), +.discussion-meta-info:lang(mr), +.entry-meta:lang(mr), +.entry-footer:lang(mr), +.main-navigation:lang(mr), +.no-comments:lang(mr), +.not-found .page-title:lang(mr), +.error-404 .page-title:lang(mr), +.post-navigation .post-title:lang(mr), +.page-links:lang(mr), +.page-description:lang(mr), +.pagination .nav-links:lang(mr), +.sticky-post:lang(mr), +.site-title:lang(mr), +.site-info:lang(mr), +#cancel-comment-reply-link:lang(mr), +h1:lang(mr), +h2:lang(mr), +h3:lang(mr), +h4:lang(mr), +h5:lang(mr), +h6:lang(mr), .page-title:lang(mr), blockquote cite:lang(mr), table:lang(mr), .button:lang(mr), +input:lang(mr)[type="button"], +input:lang(mr)[type="reset"], +input:lang(mr)[type="submit"], .comment-navigation .nav-previous:lang(mr), +.comment-navigation .nav-next:lang(mr), .comment-list .pingback .comment-body:lang(mr), +.comment-list .trackback .comment-body:lang(mr), .comment-list .pingback .comment-body .comment-edit-link:lang(mr), +.comment-list .trackback .comment-body .comment-edit-link:lang(mr), .comment-form .comment-notes:lang(mr), +.comment-form label:lang(mr), .widget_archive ul li:lang(mr), +.widget_categories ul li:lang(mr), +.widget_meta ul li:lang(mr), +.widget_nav_menu ul li:lang(mr), +.widget_pages ul li:lang(mr), +.widget_recent_comments ul li:lang(mr), +.widget_recent_entries ul li:lang(mr), +.widget_rss ul li:lang(mr), .widget_tag_cloud .tagcloud:lang(mr), .entry .entry-content .wp-block-button .wp-block-button__link:lang(mr), .entry .entry-content .wp-block-archives li > a:lang(mr), +.entry .entry-content .wp-block-categories li > a:lang(mr), +.entry .entry-content .wp-block-latest-posts li > a:lang(mr), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(mr), .entry .entry-content .wp-block-verse:lang(mr), .entry .entry-content .has-drop-cap:lang(mr):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(mr), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(mr), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(mr), +.entry .entry-content .wp-block-cover-image h2:lang(mr), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(mr), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(mr), +.entry .entry-content .wp-block-cover h2:lang(mr), .entry .entry-content .wp-block-audio figcaption:lang(mr), +.entry .entry-content .wp-block-video figcaption:lang(mr), +.entry .entry-content .wp-block-image figcaption:lang(mr), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(mr), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(mr), .entry .entry-content .wp-block-file:lang(mr), .entry .entry-content .wp-block-file .wp-block-file__button:lang(mr), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(mr), .wp-caption-text:lang(mr), .gallery-caption:lang(mr) { + font-family: Arial, sans-serif; +} + +body:lang(ne-NP), button:lang(ne-NP), +input:lang(ne-NP), +select:lang(ne-NP), +optgroup:lang(ne-NP), +textarea:lang(ne-NP), .author-description .author-link:lang(ne-NP), +.comment-metadata:lang(ne-NP), +.comment-reply-link:lang(ne-NP), +.comments-title:lang(ne-NP), +.comment-author .fn:lang(ne-NP), +.discussion-meta-info:lang(ne-NP), +.entry-meta:lang(ne-NP), +.entry-footer:lang(ne-NP), +.main-navigation:lang(ne-NP), +.no-comments:lang(ne-NP), +.not-found .page-title:lang(ne-NP), +.error-404 .page-title:lang(ne-NP), +.post-navigation .post-title:lang(ne-NP), +.page-links:lang(ne-NP), +.page-description:lang(ne-NP), +.pagination .nav-links:lang(ne-NP), +.sticky-post:lang(ne-NP), +.site-title:lang(ne-NP), +.site-info:lang(ne-NP), +#cancel-comment-reply-link:lang(ne-NP), +h1:lang(ne-NP), +h2:lang(ne-NP), +h3:lang(ne-NP), +h4:lang(ne-NP), +h5:lang(ne-NP), +h6:lang(ne-NP), .page-title:lang(ne-NP), blockquote cite:lang(ne-NP), table:lang(ne-NP), .button:lang(ne-NP), +input:lang(ne-NP)[type="button"], +input:lang(ne-NP)[type="reset"], +input:lang(ne-NP)[type="submit"], .comment-navigation .nav-previous:lang(ne-NP), +.comment-navigation .nav-next:lang(ne-NP), .comment-list .pingback .comment-body:lang(ne-NP), +.comment-list .trackback .comment-body:lang(ne-NP), .comment-list .pingback .comment-body .comment-edit-link:lang(ne-NP), +.comment-list .trackback .comment-body .comment-edit-link:lang(ne-NP), .comment-form .comment-notes:lang(ne-NP), +.comment-form label:lang(ne-NP), .widget_archive ul li:lang(ne-NP), +.widget_categories ul li:lang(ne-NP), +.widget_meta ul li:lang(ne-NP), +.widget_nav_menu ul li:lang(ne-NP), +.widget_pages ul li:lang(ne-NP), +.widget_recent_comments ul li:lang(ne-NP), +.widget_recent_entries ul li:lang(ne-NP), +.widget_rss ul li:lang(ne-NP), .widget_tag_cloud .tagcloud:lang(ne-NP), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ne-NP), .entry .entry-content .wp-block-archives li > a:lang(ne-NP), +.entry .entry-content .wp-block-categories li > a:lang(ne-NP), +.entry .entry-content .wp-block-latest-posts li > a:lang(ne-NP), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ne-NP), .entry .entry-content .wp-block-verse:lang(ne-NP), .entry .entry-content .has-drop-cap:lang(ne-NP):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ne-NP), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ne-NP), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ne-NP), +.entry .entry-content .wp-block-cover-image h2:lang(ne-NP), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ne-NP), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ne-NP), +.entry .entry-content .wp-block-cover h2:lang(ne-NP), .entry .entry-content .wp-block-audio figcaption:lang(ne-NP), +.entry .entry-content .wp-block-video figcaption:lang(ne-NP), +.entry .entry-content .wp-block-image figcaption:lang(ne-NP), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ne-NP), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ne-NP), .entry .entry-content .wp-block-file:lang(ne-NP), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ne-NP), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ne-NP), .wp-caption-text:lang(ne-NP), .gallery-caption:lang(ne-NP) { + font-family: Arial, sans-serif; +} + +body:lang(el), button:lang(el), +input:lang(el), +select:lang(el), +optgroup:lang(el), +textarea:lang(el), .author-description .author-link:lang(el), +.comment-metadata:lang(el), +.comment-reply-link:lang(el), +.comments-title:lang(el), +.comment-author .fn:lang(el), +.discussion-meta-info:lang(el), +.entry-meta:lang(el), +.entry-footer:lang(el), +.main-navigation:lang(el), +.no-comments:lang(el), +.not-found .page-title:lang(el), +.error-404 .page-title:lang(el), +.post-navigation .post-title:lang(el), +.page-links:lang(el), +.page-description:lang(el), +.pagination .nav-links:lang(el), +.sticky-post:lang(el), +.site-title:lang(el), +.site-info:lang(el), +#cancel-comment-reply-link:lang(el), +h1:lang(el), +h2:lang(el), +h3:lang(el), +h4:lang(el), +h5:lang(el), +h6:lang(el), .page-title:lang(el), blockquote cite:lang(el), table:lang(el), .button:lang(el), +input:lang(el)[type="button"], +input:lang(el)[type="reset"], +input:lang(el)[type="submit"], .comment-navigation .nav-previous:lang(el), +.comment-navigation .nav-next:lang(el), .comment-list .pingback .comment-body:lang(el), +.comment-list .trackback .comment-body:lang(el), .comment-list .pingback .comment-body .comment-edit-link:lang(el), +.comment-list .trackback .comment-body .comment-edit-link:lang(el), .comment-form .comment-notes:lang(el), +.comment-form label:lang(el), .widget_archive ul li:lang(el), +.widget_categories ul li:lang(el), +.widget_meta ul li:lang(el), +.widget_nav_menu ul li:lang(el), +.widget_pages ul li:lang(el), +.widget_recent_comments ul li:lang(el), +.widget_recent_entries ul li:lang(el), +.widget_rss ul li:lang(el), .widget_tag_cloud .tagcloud:lang(el), .entry .entry-content .wp-block-button .wp-block-button__link:lang(el), .entry .entry-content .wp-block-archives li > a:lang(el), +.entry .entry-content .wp-block-categories li > a:lang(el), +.entry .entry-content .wp-block-latest-posts li > a:lang(el), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(el), .entry .entry-content .wp-block-verse:lang(el), .entry .entry-content .has-drop-cap:lang(el):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(el), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(el), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(el), +.entry .entry-content .wp-block-cover-image h2:lang(el), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(el), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(el), +.entry .entry-content .wp-block-cover h2:lang(el), .entry .entry-content .wp-block-audio figcaption:lang(el), +.entry .entry-content .wp-block-video figcaption:lang(el), +.entry .entry-content .wp-block-image figcaption:lang(el), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(el), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(el), .entry .entry-content .wp-block-file:lang(el), .entry .entry-content .wp-block-file .wp-block-file__button:lang(el), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(el), .wp-caption-text:lang(el), .gallery-caption:lang(el) { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +body:lang(gu), button:lang(gu), +input:lang(gu), +select:lang(gu), +optgroup:lang(gu), +textarea:lang(gu), .author-description .author-link:lang(gu), +.comment-metadata:lang(gu), +.comment-reply-link:lang(gu), +.comments-title:lang(gu), +.comment-author .fn:lang(gu), +.discussion-meta-info:lang(gu), +.entry-meta:lang(gu), +.entry-footer:lang(gu), +.main-navigation:lang(gu), +.no-comments:lang(gu), +.not-found .page-title:lang(gu), +.error-404 .page-title:lang(gu), +.post-navigation .post-title:lang(gu), +.page-links:lang(gu), +.page-description:lang(gu), +.pagination .nav-links:lang(gu), +.sticky-post:lang(gu), +.site-title:lang(gu), +.site-info:lang(gu), +#cancel-comment-reply-link:lang(gu), +h1:lang(gu), +h2:lang(gu), +h3:lang(gu), +h4:lang(gu), +h5:lang(gu), +h6:lang(gu), .page-title:lang(gu), blockquote cite:lang(gu), table:lang(gu), .button:lang(gu), +input:lang(gu)[type="button"], +input:lang(gu)[type="reset"], +input:lang(gu)[type="submit"], .comment-navigation .nav-previous:lang(gu), +.comment-navigation .nav-next:lang(gu), .comment-list .pingback .comment-body:lang(gu), +.comment-list .trackback .comment-body:lang(gu), .comment-list .pingback .comment-body .comment-edit-link:lang(gu), +.comment-list .trackback .comment-body .comment-edit-link:lang(gu), .comment-form .comment-notes:lang(gu), +.comment-form label:lang(gu), .widget_archive ul li:lang(gu), +.widget_categories ul li:lang(gu), +.widget_meta ul li:lang(gu), +.widget_nav_menu ul li:lang(gu), +.widget_pages ul li:lang(gu), +.widget_recent_comments ul li:lang(gu), +.widget_recent_entries ul li:lang(gu), +.widget_rss ul li:lang(gu), .widget_tag_cloud .tagcloud:lang(gu), .entry .entry-content .wp-block-button .wp-block-button__link:lang(gu), .entry .entry-content .wp-block-archives li > a:lang(gu), +.entry .entry-content .wp-block-categories li > a:lang(gu), +.entry .entry-content .wp-block-latest-posts li > a:lang(gu), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(gu), .entry .entry-content .wp-block-verse:lang(gu), .entry .entry-content .has-drop-cap:lang(gu):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(gu), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(gu), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(gu), +.entry .entry-content .wp-block-cover-image h2:lang(gu), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(gu), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(gu), +.entry .entry-content .wp-block-cover h2:lang(gu), .entry .entry-content .wp-block-audio figcaption:lang(gu), +.entry .entry-content .wp-block-video figcaption:lang(gu), +.entry .entry-content .wp-block-image figcaption:lang(gu), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(gu), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(gu), .entry .entry-content .wp-block-file:lang(gu), .entry .entry-content .wp-block-file .wp-block-file__button:lang(gu), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(gu), .wp-caption-text:lang(gu), .gallery-caption:lang(gu) { + font-family: Arial, sans-serif; +} + +body:lang(he-IL), button:lang(he-IL), +input:lang(he-IL), +select:lang(he-IL), +optgroup:lang(he-IL), +textarea:lang(he-IL), .author-description .author-link:lang(he-IL), +.comment-metadata:lang(he-IL), +.comment-reply-link:lang(he-IL), +.comments-title:lang(he-IL), +.comment-author .fn:lang(he-IL), +.discussion-meta-info:lang(he-IL), +.entry-meta:lang(he-IL), +.entry-footer:lang(he-IL), +.main-navigation:lang(he-IL), +.no-comments:lang(he-IL), +.not-found .page-title:lang(he-IL), +.error-404 .page-title:lang(he-IL), +.post-navigation .post-title:lang(he-IL), +.page-links:lang(he-IL), +.page-description:lang(he-IL), +.pagination .nav-links:lang(he-IL), +.sticky-post:lang(he-IL), +.site-title:lang(he-IL), +.site-info:lang(he-IL), +#cancel-comment-reply-link:lang(he-IL), +h1:lang(he-IL), +h2:lang(he-IL), +h3:lang(he-IL), +h4:lang(he-IL), +h5:lang(he-IL), +h6:lang(he-IL), .page-title:lang(he-IL), blockquote cite:lang(he-IL), table:lang(he-IL), .button:lang(he-IL), +input:lang(he-IL)[type="button"], +input:lang(he-IL)[type="reset"], +input:lang(he-IL)[type="submit"], .comment-navigation .nav-previous:lang(he-IL), +.comment-navigation .nav-next:lang(he-IL), .comment-list .pingback .comment-body:lang(he-IL), +.comment-list .trackback .comment-body:lang(he-IL), .comment-list .pingback .comment-body .comment-edit-link:lang(he-IL), +.comment-list .trackback .comment-body .comment-edit-link:lang(he-IL), .comment-form .comment-notes:lang(he-IL), +.comment-form label:lang(he-IL), .widget_archive ul li:lang(he-IL), +.widget_categories ul li:lang(he-IL), +.widget_meta ul li:lang(he-IL), +.widget_nav_menu ul li:lang(he-IL), +.widget_pages ul li:lang(he-IL), +.widget_recent_comments ul li:lang(he-IL), +.widget_recent_entries ul li:lang(he-IL), +.widget_rss ul li:lang(he-IL), .widget_tag_cloud .tagcloud:lang(he-IL), .entry .entry-content .wp-block-button .wp-block-button__link:lang(he-IL), .entry .entry-content .wp-block-archives li > a:lang(he-IL), +.entry .entry-content .wp-block-categories li > a:lang(he-IL), +.entry .entry-content .wp-block-latest-posts li > a:lang(he-IL), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(he-IL), .entry .entry-content .wp-block-verse:lang(he-IL), .entry .entry-content .has-drop-cap:lang(he-IL):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(he-IL), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(he-IL), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(he-IL), +.entry .entry-content .wp-block-cover-image h2:lang(he-IL), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(he-IL), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(he-IL), +.entry .entry-content .wp-block-cover h2:lang(he-IL), .entry .entry-content .wp-block-audio figcaption:lang(he-IL), +.entry .entry-content .wp-block-video figcaption:lang(he-IL), +.entry .entry-content .wp-block-image figcaption:lang(he-IL), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(he-IL), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(he-IL), .entry .entry-content .wp-block-file:lang(he-IL), .entry .entry-content .wp-block-file .wp-block-file__button:lang(he-IL), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(he-IL), .wp-caption-text:lang(he-IL), .gallery-caption:lang(he-IL) { + font-family: "Arial Hebrew", Arial, sans-serif; +} + +body:lang(ja), button:lang(ja), +input:lang(ja), +select:lang(ja), +optgroup:lang(ja), +textarea:lang(ja), .author-description .author-link:lang(ja), +.comment-metadata:lang(ja), +.comment-reply-link:lang(ja), +.comments-title:lang(ja), +.comment-author .fn:lang(ja), +.discussion-meta-info:lang(ja), +.entry-meta:lang(ja), +.entry-footer:lang(ja), +.main-navigation:lang(ja), +.no-comments:lang(ja), +.not-found .page-title:lang(ja), +.error-404 .page-title:lang(ja), +.post-navigation .post-title:lang(ja), +.page-links:lang(ja), +.page-description:lang(ja), +.pagination .nav-links:lang(ja), +.sticky-post:lang(ja), +.site-title:lang(ja), +.site-info:lang(ja), +#cancel-comment-reply-link:lang(ja), +h1:lang(ja), +h2:lang(ja), +h3:lang(ja), +h4:lang(ja), +h5:lang(ja), +h6:lang(ja), .page-title:lang(ja), blockquote cite:lang(ja), table:lang(ja), .button:lang(ja), +input:lang(ja)[type="button"], +input:lang(ja)[type="reset"], +input:lang(ja)[type="submit"], .comment-navigation .nav-previous:lang(ja), +.comment-navigation .nav-next:lang(ja), .comment-list .pingback .comment-body:lang(ja), +.comment-list .trackback .comment-body:lang(ja), .comment-list .pingback .comment-body .comment-edit-link:lang(ja), +.comment-list .trackback .comment-body .comment-edit-link:lang(ja), .comment-form .comment-notes:lang(ja), +.comment-form label:lang(ja), .widget_archive ul li:lang(ja), +.widget_categories ul li:lang(ja), +.widget_meta ul li:lang(ja), +.widget_nav_menu ul li:lang(ja), +.widget_pages ul li:lang(ja), +.widget_recent_comments ul li:lang(ja), +.widget_recent_entries ul li:lang(ja), +.widget_rss ul li:lang(ja), .widget_tag_cloud .tagcloud:lang(ja), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ja), .entry .entry-content .wp-block-archives li > a:lang(ja), +.entry .entry-content .wp-block-categories li > a:lang(ja), +.entry .entry-content .wp-block-latest-posts li > a:lang(ja), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ja), .entry .entry-content .wp-block-verse:lang(ja), .entry .entry-content .has-drop-cap:lang(ja):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ja), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ja), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ja), +.entry .entry-content .wp-block-cover-image h2:lang(ja), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ja), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ja), +.entry .entry-content .wp-block-cover h2:lang(ja), .entry .entry-content .wp-block-audio figcaption:lang(ja), +.entry .entry-content .wp-block-video figcaption:lang(ja), +.entry .entry-content .wp-block-image figcaption:lang(ja), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ja), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ja), .entry .entry-content .wp-block-file:lang(ja), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ja), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ja), .wp-caption-text:lang(ja), .gallery-caption:lang(ja) { + font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", Meiryo, "Helvetica Neue", sans-serif; +} + +body:lang(ko-KR), button:lang(ko-KR), +input:lang(ko-KR), +select:lang(ko-KR), +optgroup:lang(ko-KR), +textarea:lang(ko-KR), .author-description .author-link:lang(ko-KR), +.comment-metadata:lang(ko-KR), +.comment-reply-link:lang(ko-KR), +.comments-title:lang(ko-KR), +.comment-author .fn:lang(ko-KR), +.discussion-meta-info:lang(ko-KR), +.entry-meta:lang(ko-KR), +.entry-footer:lang(ko-KR), +.main-navigation:lang(ko-KR), +.no-comments:lang(ko-KR), +.not-found .page-title:lang(ko-KR), +.error-404 .page-title:lang(ko-KR), +.post-navigation .post-title:lang(ko-KR), +.page-links:lang(ko-KR), +.page-description:lang(ko-KR), +.pagination .nav-links:lang(ko-KR), +.sticky-post:lang(ko-KR), +.site-title:lang(ko-KR), +.site-info:lang(ko-KR), +#cancel-comment-reply-link:lang(ko-KR), +h1:lang(ko-KR), +h2:lang(ko-KR), +h3:lang(ko-KR), +h4:lang(ko-KR), +h5:lang(ko-KR), +h6:lang(ko-KR), .page-title:lang(ko-KR), blockquote cite:lang(ko-KR), table:lang(ko-KR), .button:lang(ko-KR), +input:lang(ko-KR)[type="button"], +input:lang(ko-KR)[type="reset"], +input:lang(ko-KR)[type="submit"], .comment-navigation .nav-previous:lang(ko-KR), +.comment-navigation .nav-next:lang(ko-KR), .comment-list .pingback .comment-body:lang(ko-KR), +.comment-list .trackback .comment-body:lang(ko-KR), .comment-list .pingback .comment-body .comment-edit-link:lang(ko-KR), +.comment-list .trackback .comment-body .comment-edit-link:lang(ko-KR), .comment-form .comment-notes:lang(ko-KR), +.comment-form label:lang(ko-KR), .widget_archive ul li:lang(ko-KR), +.widget_categories ul li:lang(ko-KR), +.widget_meta ul li:lang(ko-KR), +.widget_nav_menu ul li:lang(ko-KR), +.widget_pages ul li:lang(ko-KR), +.widget_recent_comments ul li:lang(ko-KR), +.widget_recent_entries ul li:lang(ko-KR), +.widget_rss ul li:lang(ko-KR), .widget_tag_cloud .tagcloud:lang(ko-KR), .entry .entry-content .wp-block-button .wp-block-button__link:lang(ko-KR), .entry .entry-content .wp-block-archives li > a:lang(ko-KR), +.entry .entry-content .wp-block-categories li > a:lang(ko-KR), +.entry .entry-content .wp-block-latest-posts li > a:lang(ko-KR), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(ko-KR), .entry .entry-content .wp-block-verse:lang(ko-KR), .entry .entry-content .has-drop-cap:lang(ko-KR):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(ko-KR), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(ko-KR), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(ko-KR), +.entry .entry-content .wp-block-cover-image h2:lang(ko-KR), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(ko-KR), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(ko-KR), +.entry .entry-content .wp-block-cover h2:lang(ko-KR), .entry .entry-content .wp-block-audio figcaption:lang(ko-KR), +.entry .entry-content .wp-block-video figcaption:lang(ko-KR), +.entry .entry-content .wp-block-image figcaption:lang(ko-KR), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(ko-KR), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(ko-KR), .entry .entry-content .wp-block-file:lang(ko-KR), .entry .entry-content .wp-block-file .wp-block-file__button:lang(ko-KR), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(ko-KR), .wp-caption-text:lang(ko-KR), .gallery-caption:lang(ko-KR) { + font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif; +} + +body:lang(th), button:lang(th), +input:lang(th), +select:lang(th), +optgroup:lang(th), +textarea:lang(th), .author-description .author-link:lang(th), +.comment-metadata:lang(th), +.comment-reply-link:lang(th), +.comments-title:lang(th), +.comment-author .fn:lang(th), +.discussion-meta-info:lang(th), +.entry-meta:lang(th), +.entry-footer:lang(th), +.main-navigation:lang(th), +.no-comments:lang(th), +.not-found .page-title:lang(th), +.error-404 .page-title:lang(th), +.post-navigation .post-title:lang(th), +.page-links:lang(th), +.page-description:lang(th), +.pagination .nav-links:lang(th), +.sticky-post:lang(th), +.site-title:lang(th), +.site-info:lang(th), +#cancel-comment-reply-link:lang(th), +h1:lang(th), +h2:lang(th), +h3:lang(th), +h4:lang(th), +h5:lang(th), +h6:lang(th), .page-title:lang(th), blockquote cite:lang(th), table:lang(th), .button:lang(th), +input:lang(th)[type="button"], +input:lang(th)[type="reset"], +input:lang(th)[type="submit"], .comment-navigation .nav-previous:lang(th), +.comment-navigation .nav-next:lang(th), .comment-list .pingback .comment-body:lang(th), +.comment-list .trackback .comment-body:lang(th), .comment-list .pingback .comment-body .comment-edit-link:lang(th), +.comment-list .trackback .comment-body .comment-edit-link:lang(th), .comment-form .comment-notes:lang(th), +.comment-form label:lang(th), .widget_archive ul li:lang(th), +.widget_categories ul li:lang(th), +.widget_meta ul li:lang(th), +.widget_nav_menu ul li:lang(th), +.widget_pages ul li:lang(th), +.widget_recent_comments ul li:lang(th), +.widget_recent_entries ul li:lang(th), +.widget_rss ul li:lang(th), .widget_tag_cloud .tagcloud:lang(th), .entry .entry-content .wp-block-button .wp-block-button__link:lang(th), .entry .entry-content .wp-block-archives li > a:lang(th), +.entry .entry-content .wp-block-categories li > a:lang(th), +.entry .entry-content .wp-block-latest-posts li > a:lang(th), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(th), .entry .entry-content .wp-block-verse:lang(th), .entry .entry-content .has-drop-cap:lang(th):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(th), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(th), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(th), +.entry .entry-content .wp-block-cover-image h2:lang(th), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(th), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(th), +.entry .entry-content .wp-block-cover h2:lang(th), .entry .entry-content .wp-block-audio figcaption:lang(th), +.entry .entry-content .wp-block-video figcaption:lang(th), +.entry .entry-content .wp-block-image figcaption:lang(th), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(th), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(th), .entry .entry-content .wp-block-file:lang(th), .entry .entry-content .wp-block-file .wp-block-file__button:lang(th), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(th), .wp-caption-text:lang(th), .gallery-caption:lang(th) { + font-family: "Sukhumvit Set", "Helvetica Neue", helvetica, arial, sans-serif; +} + +body:lang(vi), button:lang(vi), +input:lang(vi), +select:lang(vi), +optgroup:lang(vi), +textarea:lang(vi), .author-description .author-link:lang(vi), +.comment-metadata:lang(vi), +.comment-reply-link:lang(vi), +.comments-title:lang(vi), +.comment-author .fn:lang(vi), +.discussion-meta-info:lang(vi), +.entry-meta:lang(vi), +.entry-footer:lang(vi), +.main-navigation:lang(vi), +.no-comments:lang(vi), +.not-found .page-title:lang(vi), +.error-404 .page-title:lang(vi), +.post-navigation .post-title:lang(vi), +.page-links:lang(vi), +.page-description:lang(vi), +.pagination .nav-links:lang(vi), +.sticky-post:lang(vi), +.site-title:lang(vi), +.site-info:lang(vi), +#cancel-comment-reply-link:lang(vi), +h1:lang(vi), +h2:lang(vi), +h3:lang(vi), +h4:lang(vi), +h5:lang(vi), +h6:lang(vi), .page-title:lang(vi), blockquote cite:lang(vi), table:lang(vi), .button:lang(vi), +input:lang(vi)[type="button"], +input:lang(vi)[type="reset"], +input:lang(vi)[type="submit"], .comment-navigation .nav-previous:lang(vi), +.comment-navigation .nav-next:lang(vi), .comment-list .pingback .comment-body:lang(vi), +.comment-list .trackback .comment-body:lang(vi), .comment-list .pingback .comment-body .comment-edit-link:lang(vi), +.comment-list .trackback .comment-body .comment-edit-link:lang(vi), .comment-form .comment-notes:lang(vi), +.comment-form label:lang(vi), .widget_archive ul li:lang(vi), +.widget_categories ul li:lang(vi), +.widget_meta ul li:lang(vi), +.widget_nav_menu ul li:lang(vi), +.widget_pages ul li:lang(vi), +.widget_recent_comments ul li:lang(vi), +.widget_recent_entries ul li:lang(vi), +.widget_rss ul li:lang(vi), .widget_tag_cloud .tagcloud:lang(vi), .entry .entry-content .wp-block-button .wp-block-button__link:lang(vi), .entry .entry-content .wp-block-archives li > a:lang(vi), +.entry .entry-content .wp-block-categories li > a:lang(vi), +.entry .entry-content .wp-block-latest-posts li > a:lang(vi), .entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date:lang(vi), .entry .entry-content .wp-block-verse:lang(vi), .entry .entry-content .has-drop-cap:lang(vi):not(:focus):first-letter, .entry .entry-content .wp-block-pullquote cite:lang(vi), .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text:lang(vi), +.entry .entry-content .wp-block-cover-image .wp-block-cover-text:lang(vi), +.entry .entry-content .wp-block-cover-image h2:lang(vi), +.entry .entry-content .wp-block-cover .wp-block-cover-image-text:lang(vi), +.entry .entry-content .wp-block-cover .wp-block-cover-text:lang(vi), +.entry .entry-content .wp-block-cover h2:lang(vi), .entry .entry-content .wp-block-audio figcaption:lang(vi), +.entry .entry-content .wp-block-video figcaption:lang(vi), +.entry .entry-content .wp-block-image figcaption:lang(vi), +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption:lang(vi), +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption:lang(vi), .entry .entry-content .wp-block-file:lang(vi), .entry .entry-content .wp-block-file .wp-block-file__button:lang(vi), .entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta:lang(vi), .wp-caption-text:lang(vi), .gallery-caption:lang(vi) { + font-family: "Libre Franklin", sans-serif; +} + +/* Normalize */ +/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ +/* Document + ========================================================================== */ +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ +html { + line-height: 1.15; + /* 1 */ + -webkit-text-size-adjust: 100%; + /* 2 */ +} + +/* Sections + ========================================================================== */ +/** + * Remove the margin in all browsers. + */ +body { + margin: 0; +} + +/** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +/* Grouping content + ========================================================================== */ +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ +hr { + box-sizing: content-box; + /* 1 */ + height: 0; + /* 1 */ + overflow: visible; + /* 2 */ +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ +pre { + font-family: monospace, monospace; + /* 1 */ + font-size: 1em; + /* 2 */ +} + +/* Text-level semantics + ========================================================================== */ +/** + * Remove the gray background on active links in IE 10. + */ +a { + background-color: transparent; +} + +/** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ +abbr[title] { + border-bottom: none; + /* 1 */ + text-decoration: underline; + /* 2 */ + text-decoration: underline dotted; + /* 2 */ +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ +b, +strong { + font-weight: bolder; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ +code, +kbd, +samp { + font-family: monospace, monospace; + /* 1 */ + font-size: 1em; + /* 2 */ +} + +/** + * Add the correct font size in all browsers. + */ +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content + ========================================================================== */ +/** + * Remove the border on images inside links in IE 10. + */ +img { + border-style: none; +} + +/* Forms + ========================================================================== */ +/** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ +button, +input, +optgroup, +select, +textarea { + font-family: inherit; + /* 1 */ + font-size: 100%; + /* 1 */ + line-height: 1.15; + /* 1 */ + margin: 0; + /* 2 */ +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ +button, +input { + /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ +button, +select { + /* 1 */ + text-transform: none; +} + +/** + * Correct the inability to style clickable types in iOS and Safari. + */ +button, +[type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +/** + * Remove the inner border and padding in Firefox. + */ +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Correct the padding in Firefox. + */ +fieldset { + padding: 0.35em 0.75em 0.625em; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ +legend { + box-sizing: border-box; + /* 1 */ + color: inherit; + /* 2 */ + display: table; + /* 1 */ + max-width: 100%; + /* 1 */ + padding: 0; + /* 3 */ + white-space: normal; + /* 1 */ +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ +progress { + vertical-align: baseline; +} + +/** + * Remove the default vertical scrollbar in IE 10+. + */ +textarea { + overflow: auto; +} + +/** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ +[type="checkbox"], +[type="radio"] { + box-sizing: border-box; + /* 1 */ + padding: 0; + /* 2 */ +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ +[type="search"] { + -webkit-appearance: textfield; + /* 1 */ + outline-offset: -2px; + /* 2 */ +} + +/** + * Remove the inner padding in Chrome and Safari on macOS. + */ +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ +::-webkit-file-upload-button { + -webkit-appearance: button; + /* 1 */ + font: inherit; + /* 2 */ +} + +/* Interactive + ========================================================================== */ +/* + * Add the correct display in Edge, IE 10+, and Firefox. + */ +details { + display: block; +} + +/* + * Add the correct display in all browsers. + */ +summary { + display: list-item; +} + +/* Misc + ========================================================================== */ +/** + * Add the correct display in IE 10+. + */ +template { + display: none; +} + +/** + * Add the correct display in IE 10. + */ +[hidden] { + display: none; +} + +/* Typography */ +html { + font-size: 22px; +} + +body { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + color: #111; + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: 400; + font-size: 1em; + line-height: 1.8; + margin: 0; + text-rendering: optimizeLegibility; +} + +button, +input, +select, +optgroup, +textarea { + color: #111; + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: 400; + line-height: 1.8; + text-rendering: optimizeLegibility; +} + +.author-description .author-link, +.comment-metadata, +.comment-reply-link, +.comments-title, +.comment-author .fn, +.discussion-meta-info, +.entry-meta, +.entry-footer, +.main-navigation, +.no-comments, +.not-found .page-title, +.error-404 .page-title, +.post-navigation .post-title, +.page-links, +.page-description, +.pagination .nav-links, +.sticky-post, +.site-title, +.site-info, +#cancel-comment-reply-link, +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +.main-navigation, +.page-description, +.author-description .author-link, +.not-found .page-title, +.error-404 .page-title, +.post-navigation .post-title, +.pagination .nav-links, +.comments-title, +.comment-author .fn, +.no-comments, +.site-title, +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 700; + letter-spacing: -0.02em; + line-height: 1.2; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.page-title { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; +} + +.site-branding, +.main-navigation ul.main-menu > li, +.social-navigation, +.author-description .author-bio, +.nav-links { + line-height: 1.25; +} + +h1 { + font-size: 2.25em; +} + +@media only screen and (min-width: 768px) { + h1 { + font-size: 2.8125em; + } +} + +.entry-title, +.not-found .page-title, +.error-404 .page-title, +.has-larger-font-size, +h2 { + font-size: 1.6875em; +} + +@media only screen and (min-width: 768px) { + .entry-title, + .not-found .page-title, + .error-404 .page-title, + .has-larger-font-size, + h2 { + font-size: 2.25em; + } +} + +.has-regular-font-size, +.has-large-font-size, +.comments-title, +h3 { + font-size: 1.6875em; +} + +.site-title, +.site-description, +.main-navigation, +.nav-links, +.page-title, +.page-description, +.comment-author .fn, +.no-comments, +h2.author-title, +p.author-bio, +h4 { + font-size: 1.125em; +} + +.pagination .nav-links, +.comment-content, +h5 { + font-size: 0.88889em; +} + +.entry-meta, +.entry-footer, +.discussion-meta-info, +.site-info, +.has-small-font-size, +.comment-reply-link, +.comment-metadata, +.comment-notes, +.sticky-post, +#cancel-comment-reply-link, +img:after, +h6 { + font-size: 0.71111em; +} + +.site-title, +.page-title { + font-weight: normal; +} + +.page-description, +.page-links a { + font-weight: bold; +} + +.site-description { + letter-spacing: -0.01em; +} + +.post-navigation .post-title, +.entry-title, +.not-found .page-title, +.error-404 .page-title, +.comments-title, +blockquote { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + word-break: break-word; + word-wrap: break-word; +} + +/* Do not hyphenate entry title on tablet view and bigger. */ +@media only screen and (min-width: 768px) { + .entry-title { + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; + } +} + +p { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote cite { + font-size: 0.71111em; + font-style: normal; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +pre { + font-size: 0.88889em; + font-family: "Courier 10 Pitch", Courier, monospace; + line-height: 1.8; + overflow: auto; +} + +code, +kbd, +tt, +var { + font-size: 0.88889em; + font-family: Menlo, monaco, Consolas, Lucida Console, monospace; +} + +abbr, acronym { + border-bottom: 1px dotted #666; + cursor: help; +} + +mark, +ins { + background: #fff9c0; + text-decoration: none; +} + +big { + font-size: 125%; +} + +a { + text-decoration: none; +} + +a:hover { + text-decoration: none; +} + +a:focus { + text-decoration: underline; +} + +/* Elements */ +html { + box-sizing: border-box; +} + +::-moz-selection { + background-color: #bfdcea; +} + +::selection { + background-color: #bfdcea; +} + +*, +*:before, +*:after { + box-sizing: inherit; +} + +body { + background-color: #fff; +} + +a { + transition: color 110ms ease-in-out; + color: #0073aa; +} + +a:hover, +a:active { + color: #005177; + outline: 0; + text-decoration: none; +} + +a:focus { + outline: thin; + outline-style: dotted; + text-decoration: underline; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + margin: 1rem 0; +} + +h1:not(.site-title):before, +h2:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +hr { + background-color: #767676; + border: 0; + height: 2px; +} + +ul, +ol { + padding-left: 1rem; +} + +ul { + list-style: disc; +} + +ul ul { + list-style-type: circle; +} + +ol { + list-style: decimal; +} + +li { + line-height: 1.8; +} + +li > ul, +li > ol { + padding-left: 2rem; +} + +dt { + font-weight: bold; +} + +dd { + margin: 0 1rem 1rem; +} + +img { + height: auto; + max-width: 100%; + position: relative; +} + +figure { + margin: 0; +} + +blockquote { + border-left: 2px solid #0073aa; + margin-left: 0; + padding: 0 0 0 1rem; +} + +blockquote > p { + margin: 0 0 1rem; +} + +blockquote cite { + color: #767676; +} + +table { + margin: 0 0 1rem; + border-collapse: collapse; + width: 100%; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +table td, +table th { + padding: 0.5em; + border: 1px solid #767676; + word-break: break-all; +} + +/* Forms */ +.button, +button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + transition: background 150ms ease-in-out; + background: #0073aa; + border: none; + border-radius: 5px; + box-sizing: border-box; + color: #fff; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.88889em; + font-weight: 700; + line-height: 1.2; + outline: none; + padding: 0.76rem 1rem; + text-decoration: none; + vertical-align: bottom; +} + +.button:hover, +button:hover, +input[type="button"]:hover, +input[type="reset"]:hover, +input[type="submit"]:hover { + background: #111; + cursor: pointer; +} + +.button:visited, +button:visited, +input[type="button"]:visited, +input[type="reset"]:visited, +input[type="submit"]:visited { + color: #fff; + text-decoration: none; +} + +.button:focus, +button:focus, +input[type="button"]:focus, +input[type="reset"]:focus, +input[type="submit"]:focus { + background: #111; + outline: thin dotted; + outline-offset: -4px; +} + +input[type="text"], +input[type="email"], +input[type="url"], +input[type="password"], +input[type="search"], +input[type="number"], +input[type="tel"], +input[type="range"], +input[type="date"], +input[type="month"], +input[type="week"], +input[type="time"], +input[type="datetime"], +input[type="datetime-local"], +input[type="color"], +textarea { + -webkit-backface-visibility: hidden; + background: #fff; + border: solid 1px #ccc; + box-sizing: border-box; + outline: none; + padding: 0.36rem 0.66rem; + -webkit-appearance: none; + outline-offset: 0; + border-radius: 0; +} + +input[type="text"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="password"]:focus, +input[type="search"]:focus, +input[type="number"]:focus, +input[type="tel"]:focus, +input[type="range"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="week"]:focus, +input[type="time"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="color"]:focus, +textarea:focus { + border-color: #0073aa; + outline: thin solid rgba(0, 115, 170, 0.15); + outline-offset: -4px; +} + +input[type="search"]::-webkit-search-decoration { + display: none; +} + +textarea { + box-sizing: border-box; + display: block; + width: 100%; + max-width: 100%; + resize: vertical; +} + +form p { + margin: 1rem 0; +} + +/* Navigation */ +/*-------------------------------------------------------------- +## Links +--------------------------------------------------------------*/ +a { + transition: color 110ms ease-in-out; + color: #0073aa; +} + +a:visited { + color: #0073aa; +} + +a:hover, +a:active { + color: #005177; + outline: 0; + text-decoration: none; +} + +a:focus { + outline: thin dotted; + text-decoration: underline; +} + +/*-------------------------------------------------------------- +## Menus +--------------------------------------------------------------*/ +/** === Main menu === */ +.main-navigation { + display: block; + margin-top: 0.25rem; + /* Un-style buttons */ + /* + * Sub-menu styles + * + * :focus-within needs its own selector so other similar + * selectors don’t get ignored if a browser doesn’t recognize it + */ + /** + * Fade-in animation for top-level submenus + */ + /** + * Off-canvas touch device styles + */ +} + +body.page .main-navigation { + display: block; +} + +.main-navigation > div { + display: inline; +} + +.main-navigation button { + display: inline-block; + border: none; + padding: 0; + margin: 0; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 700; + line-height: 1.2; + text-decoration: none; + background: transparent; + color: inherit; + cursor: pointer; + transition: background 250ms ease-in-out, transform 150ms ease; + -webkit-appearance: none; + -moz-appearance: none; +} + +.main-navigation button:hover, .main-navigation button:focus { + background: transparent; +} + +.main-navigation button:focus { + outline: 1px solid transparent; + outline-offset: -4px; +} + +.main-navigation button:active { + transform: scale(0.99); +} + +.main-navigation .main-menu { + display: inline-block; + margin: 0; + padding: 0; +} + +.main-navigation .main-menu > li { + color: #0073aa; + display: inline; + position: relative; +} + +.main-navigation .main-menu > li > a { + font-weight: 700; + color: #0073aa; + margin-right: 0.5rem; +} + +.main-navigation .main-menu > li > a + svg { + margin-right: 0.5rem; +} + +.main-navigation .main-menu > li > a:hover, +.main-navigation .main-menu > li > a:hover + svg { + color: #005177; +} + +.main-navigation .main-menu > li.menu-item-has-children { + display: inline-block; + position: inherit; +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu > li.menu-item-has-children { + position: relative; + } +} + +.main-navigation .main-menu > li.menu-item-has-children > a { + margin-right: 0.125rem; +} + +.main-navigation .main-menu > li.menu-item-has-children > a:after, +.main-navigation .main-menu > li.menu-item-has-children .menu-item-has-children > a:after { + content: ""; + display: none; +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand { + display: inline-block; + margin-right: 0.25rem; + /* Priority+ Menu */ +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand.main-menu-more-toggle { + position: relative; + height: 24px; + line-height: 1.2; + width: 24px; + padding: 0; + margin-left: 0.5rem; +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand.main-menu-more-toggle svg { + height: 24px; + width: 24px; + top: -0.125rem; + vertical-align: text-bottom; +} + +.wp-customizer-unloading .main-navigation .main-menu > li.menu-item-has-children .submenu-expand, .main-navigation .main-menu > li.menu-item-has-children .submenu-expand.is-empty { + display: none; +} + +.main-navigation .main-menu > li.menu-item-has-children .submenu-expand svg { + position: relative; + top: 0.2rem; +} + +.main-navigation .main-menu > li:last-child > a, +.main-navigation .main-menu > li:last-child.menu-item-has-children .submenu-expand { + margin-right: 0; +} + +.main-navigation .sub-menu { + background-color: #0073aa; + color: #fff; + list-style: none; + padding-left: 0; + position: absolute; + opacity: 0; + left: -9999px; + z-index: 99999; +} + +@media only screen and (min-width: 768px) { + .main-navigation .sub-menu { + width: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + } +} + +.main-navigation .sub-menu > li { + display: block; + float: none; + position: relative; +} + +.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand { + display: inline-block; + position: absolute; + width: calc( 24px + 1rem); + right: 0; + top: calc( .125 * 1rem); + bottom: 0; + color: white; + line-height: 1; + padding: calc( .5 * 1rem); +} + +.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand svg { + top: 0; +} + +.main-navigation .sub-menu > li.menu-item-has-children .submenu-expand { + margin-right: 0; +} + +@media only screen and (min-width: 768px) { + .main-navigation .sub-menu > li.menu-item-has-children .menu-item-has-children > a:after { + content: "\203a"; + } +} + +.main-navigation .sub-menu > li > a, +.main-navigation .sub-menu > li > .menu-item-link-return { + color: #fff; + display: block; + line-height: 1.2; + text-shadow: none; + padding: calc( .5 * 1rem) calc( 24px + 1rem) calc( .5 * 1rem) 1rem; + white-space: nowrap; +} + +.main-navigation .sub-menu > li > a:hover, .main-navigation .sub-menu > li > a:focus, +.main-navigation .sub-menu > li > .menu-item-link-return:hover, +.main-navigation .sub-menu > li > .menu-item-link-return:focus { + background: #005177; +} + +.main-navigation .sub-menu > li > a:hover:after, .main-navigation .sub-menu > li > a:focus:after, +.main-navigation .sub-menu > li > .menu-item-link-return:hover:after, +.main-navigation .sub-menu > li > .menu-item-link-return:focus:after { + background: #005177; +} + +.main-navigation .sub-menu > li > .menu-item-link-return { + width: 100%; + font-size: 22px; + font-weight: normal; + text-align: left; +} + +.main-navigation .sub-menu > li > a:empty { + display: none; +} + +.main-navigation .sub-menu > li.mobile-parent-nav-menu-item { + display: none; + font-size: 0.88889em; + font-weight: normal; +} + +.main-navigation .sub-menu > li.mobile-parent-nav-menu-item svg { + position: relative; + top: 0.2rem; + margin-right: calc( .25 * 1rem); +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu { + display: block; + left: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + /* Non-mobile position */ + /* Nested sub-menu dashes */ +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu { + display: block; + left: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + /* Non-mobile position */ + /* Nested sub-menu dashes */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu { + display: block; + margin-top: 0; + opacity: 1; + position: absolute; + left: 0; + right: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu { + display: block; + margin-top: 0; + opacity: 1; + position: absolute; + left: 0; + right: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu.hidden-links { + left: 0; + width: 100%; + display: table; + position: absolute; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu.hidden-links { + left: 0; + width: 100%; + display: table; + position: absolute; +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu.hidden-links { + right: 0; + left: auto; + display: block; + width: max-content; + } + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu.hidden-links { + right: 0; + left: auto; + display: block; + width: max-content; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .submenu-expand { + display: none; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .submenu-expand { + display: none; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + left: 0; + opacity: 1; + /* Non-mobile position */ +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + left: 0; + opacity: 1; + /* Non-mobile position */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu { + float: none; + max-width: 100%; + } + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu { + float: none; + max-width: 100%; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu { + counter-reset: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu { + counter-reset: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas)[focus-within] > .sub-menu .sub-menu > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus-within > .sub-menu .sub-menu > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu { + display: block; + left: 0; + margin-top: 0; + opacity: 1; + width: auto; + min-width: 100%; + /* Non-mobile position */ + /* Nested sub-menu dashes */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu, + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu, + .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu { + display: block; + float: none; + margin-top: 0; + opacity: 1; + position: absolute; + left: 0; + right: auto; + top: auto; + bottom: auto; + height: auto; + min-width: -moz-max-content; + min-width: -webkit-max-content; + min-width: max-content; + transform: none; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu.hidden-links, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu.hidden-links, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu.hidden-links { + left: 0; + width: 100%; + display: table; + position: absolute; +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu.hidden-links, + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu.hidden-links, + .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu.hidden-links { + right: 0; + left: auto; + display: table; + width: max-content; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .submenu-expand, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .submenu-expand, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .submenu-expand { + display: none; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu { + display: block; + margin-top: inherit; + position: relative; + width: 100%; + left: 0; + opacity: 1; + /* Non-mobile position */ +} + +@media only screen and (min-width: 768px) { + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu, + .main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu, + .main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu { + float: none; + max-width: 100%; + } +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu { + counter-reset: submenu; +} + +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):hover > .sub-menu .sub-menu > li > a::before, +.main-navigation .main-menu .menu-item-has-children:not(.off-canvas):focus > .sub-menu .sub-menu > li > a::before, +.main-navigation .main-menu .menu-item-has-children.is-focused:not(.off-canvas) > .sub-menu .sub-menu > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.main-navigation .main-menu > .menu-item-has-children:not(.off-canvas):hover > .sub-menu { + animation: fade_in 0.1s forwards; +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu .submenu-expand .svg-icon { + transform: rotate(270deg); +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu .sub-menu { + opacity: 0; + position: absolute; + z-index: 0; + transform: translateX(-100%); +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li:hover, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li:focus, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li > a:hover, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu li > a:focus { + background-color: transparent; +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu > li > a, +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu > li > .menu-item-link-return { + white-space: inherit; +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true { + display: table; + margin-top: 0; + opacity: 1; + padding-left: 0; + /* Mobile position */ + left: 0; + top: 0; + right: 0; + bottom: 0; + position: fixed; + z-index: 100000; + /* Make sure appears above mobile admin bar */ + width: 100vw; + height: 100vh; + max-width: 100vw; + transform: translateX(100%); + animation: slide_in_right 0.3s forwards; + /* Prevent menu from being blocked by admin bar */ +} + +.main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true > .mobile-parent-nav-menu-item { + display: block; +} + +.admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true { + top: 46px; + height: calc( 100vh - 46px); + /* WP core breakpoint */ +} + +.admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true .sub-menu.expanded-true { + top: 0; +} + +@media only screen and (min-width: 782px) { + .admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true { + top: 32px; + height: calc( 100vh - 32px); + } + .admin-bar .main-navigation .main-menu .menu-item-has-children.off-canvas .sub-menu.expanded-true .sub-menu.expanded-true { + top: 0; + } +} + +.main-navigation .main-menu-more:nth-child(n+3) { + display: none; +} + +/* Menu animation */ +@keyframes slide_in_right { + 100% { + transform: translateX(0%); + } +} + +@keyframes fade_in { + from { + opacity: 0; + } + to { + opacity: 1; + } +} + +/* Social menu */ +.social-navigation { + margin-top: calc(1rem / 2); + text-align: left; +} + +.social-navigation ul.social-links-menu { + content: ""; + display: table; + table-layout: fixed; + display: inline-block; + margin: 0; + padding: 0; +} + +.social-navigation ul.social-links-menu li { + display: inline-block; + vertical-align: bottom; + vertical-align: -webkit-baseline-middle; + list-style: none; +} + +.social-navigation ul.social-links-menu li:nth-child(n+2) { + margin-left: 0.1em; +} + +.social-navigation ul.social-links-menu li a { + border-bottom: 1px solid transparent; + display: block; + color: #111; + margin-bottom: -1px; + transition: opacity 110ms ease-in-out; +} + +.social-navigation ul.social-links-menu li a:hover, .social-navigation ul.social-links-menu li a:active { + color: #111; + opacity: 0.6; +} + +.social-navigation ul.social-links-menu li a:focus { + color: #111; + opacity: 1; + border-bottom: 1px solid #111; +} + +.social-navigation ul.social-links-menu li a svg { + display: block; + width: 32px; + height: 32px; + transform: translateZ(0); +} + +.social-navigation ul.social-links-menu li a svg#ui-icon-link { + transform: rotate(-45deg); +} + +@media only screen and (min-width: 768px) { + .site-title + .social-navigation, + .site-description + .social-navigation { + margin-top: calc(1rem / 5); + } +} + +/** === Footer menu === */ +.footer-navigation { + display: inline; +} + +.footer-navigation > div { + display: inline; +} + +.footer-navigation .footer-menu { + display: inline; + padding-left: 0; +} + +.footer-navigation .footer-menu li { + display: inline; + margin-right: 1rem; +} + +/*-------------------------------------------------------------- +## Next / Previous +--------------------------------------------------------------*/ +/* Next/Previous navigation */ +.post-navigation { + margin: calc(3 * 1rem) 0; +} + +@media only screen and (min-width: 768px) { + .post-navigation { + margin: calc(3 * 1rem) calc(10% + 60px); + max-width: calc(6 * (100vw / 12)); + } +} + +@media only screen and (min-width: 1168px) { + .post-navigation { + margin: calc(3 * 1rem) 0; + max-width: 100%; + } +} + +.post-navigation .nav-links { + margin: 0 1rem; + max-width: 100%; + display: flex; + flex-direction: column; +} + +@media only screen and (min-width: 768px) { + .post-navigation .nav-links { + margin: 0; + } +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links { + flex-direction: row; + margin: 0 calc(10% + 60px); + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.post-navigation .nav-links a .meta-nav { + color: #767676; + user-select: none; +} + +.post-navigation .nav-links a .meta-nav:before, .post-navigation .nav-links a .meta-nav:after { + display: none; + content: "—"; + width: 2em; + color: #767676; + height: 1em; +} + +.post-navigation .nav-links a .post-title { + hyphens: auto; +} + +.post-navigation .nav-links a:hover { + color: #005177; +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links .nav-previous, + .post-navigation .nav-links .nav-next { + min-width: calc(50% - 2 * 1rem); + } +} + +.post-navigation .nav-links .nav-previous { + order: 2; +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links .nav-previous { + order: 1; + } +} + +.post-navigation .nav-links .nav-previous + .nav-next { + margin-bottom: 1rem; +} + +.post-navigation .nav-links .nav-previous .meta-nav:before { + display: inline; +} + +.post-navigation .nav-links .nav-next { + order: 1; +} + +@media only screen and (min-width: 1168px) { + .post-navigation .nav-links .nav-next { + order: 2; + padding-left: 1rem; + } +} + +.post-navigation .nav-links .nav-next .meta-nav:after { + display: inline; +} + +.pagination .nav-links { + display: flex; + flex-wrap: wrap; + padding: 0 calc(.5 * 1rem); +} + +.pagination .nav-links > * { + padding: calc(.5 * 1rem); +} + +.pagination .nav-links > *.dots, .pagination .nav-links > *.prev { + padding-left: 0; +} + +.pagination .nav-links > *.dots, .pagination .nav-links > *.next { + padding-right: 0; +} + +.pagination .nav-links a:focus { + text-decoration: underline; + outline-offset: -1px; +} + +.pagination .nav-links a:focus.prev, .pagination .nav-links a:focus.next { + text-decoration: none; +} + +.pagination .nav-links a:focus.prev .nav-prev-text, +.pagination .nav-links a:focus.prev .nav-next-text, .pagination .nav-links a:focus.next .nav-prev-text, +.pagination .nav-links a:focus.next .nav-next-text { + text-decoration: underline; +} + +.pagination .nav-links .nav-next-text, +.pagination .nav-links .nav-prev-text { + display: none; +} + +@media only screen and (min-width: 768px) { + .pagination .nav-links { + margin-left: calc(10% + 60px); + padding: 0; + } + .pagination .nav-links .prev > *, + .pagination .nav-links .next > * { + display: inline-block; + vertical-align: text-bottom; + } + .pagination .nav-links > * { + padding: 1rem; + } +} + +.comment-navigation .nav-links { + display: flex; + flex-direction: row; +} + +.comment-navigation .nav-previous, +.comment-navigation .nav-next { + min-width: 50%; + width: 100%; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: bold; +} + +.comment-navigation .nav-previous .secondary-text, +.comment-navigation .nav-next .secondary-text { + display: none; +} + +@media only screen and (min-width: 768px) { + .comment-navigation .nav-previous .secondary-text, + .comment-navigation .nav-next .secondary-text { + display: inline; + } +} + +.comment-navigation .nav-previous svg, +.comment-navigation .nav-next svg { + vertical-align: middle; + position: relative; + margin: 0 -0.35em; + top: -1px; +} + +.comment-navigation .nav-next { + text-align: right; +} + +/* Accessibility */ +/* Text meant only for screen readers. */ +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute !important; + width: 1px; + word-wrap: normal !important; + /* Many screen reader and browser combinations announce broken words as they would appear visually. */ +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + clip-path: none; + color: #21759b; + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: bold; + height: auto; + left: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; + /* Above WP toolbar. */ +} + +/* Do not show the outline on the skip link target. */ +#content[tabindex="-1"]:focus { + outline: 0; +} + +/* Alignments */ +.alignleft { + /*rtl:ignore*/ + float: left; + /*rtl:ignore*/ + margin-right: 1rem; +} + +@media only screen and (min-width: 768px) { + .alignleft { + /*rtl:ignore*/ + margin-right: calc(2 * 1rem); + } +} + +.alignright { + /*rtl:ignore*/ + float: right; + /*rtl:ignore*/ + margin-left: 1rem; +} + +@media only screen and (min-width: 768px) { + .alignright { + /*rtl:ignore*/ + margin-left: calc(2 * 1rem); + } +} + +.aligncenter { + clear: both; + display: block; + margin-left: auto; + margin-right: auto; +} + +/* Clearings */ +.clear:before, +.clear:after, +.entry-content:before, +.entry-content:after, +.comment-content:before, +.comment-content:after, +.site-header:before, +.site-header:after, +.site-content:before, +.site-content:after, +.site-footer:before, +.site-footer:after { + content: ""; + display: table; + table-layout: fixed; +} + +.clear:after, +.entry-content:after, +.comment-content:after, +.site-header:after, +.site-content:after, +.site-footer:after { + clear: both; +} + +/* Layout */ +/** === Layout === */ +#page { + width: 100%; +} + +.site-content { + overflow: hidden; +} + +/* Content */ +/*-------------------------------------------------------------- +## Header +--------------------------------------------------------------*/ +.site-header { + padding: 1em; +} + +.site-header.featured-image { + display: flex; + flex-direction: column; + justify-content: space-between; + min-height: 90vh; +} + +.site-header.featured-image .site-branding-container { + margin-bottom: auto; +} + +@media only screen and (min-width: 768px) { + .site-header { + margin: 0; + padding: 3rem 0; + } + .site-header.featured-image { + min-height: 100vh; + margin-bottom: 3rem; + } +} + +.site-branding { + color: #767676; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + position: relative; + word-wrap: break-word; +} + +@media only screen and (min-width: 768px) { + .site-branding { + margin: 0 calc(10% + 60px); + } +} + +.site-logo { + position: relative; + z-index: 999; + margin-bottom: calc(.66 * 1rem); +} + +@media only screen and (min-width: 768px) { + .site-logo { + margin-bottom: 0; + position: absolute; + right: calc(100% + (1.25 * 1rem)); + top: 4px; + z-index: 999; + } +} + +.site-logo .custom-logo-link { + border-radius: 100%; + box-sizing: content-box; + box-shadow: 0 0 0 0 rgba(0, 0, 0, 0); + display: block; + width: 50px; + height: 50px; + overflow: hidden; + transition: box-shadow 200ms ease-in-out; +} + +.site-logo .custom-logo-link .custom-logo { + min-height: inherit; +} + +.site-logo .custom-logo-link:hover, .site-logo .custom-logo-link:active, .site-logo .custom-logo-link:focus { + box-shadow: 0 0 0 2px black; +} + +@media only screen and (min-width: 768px) { + .site-logo .custom-logo-link { + width: 64px; + height: 64px; + } +} + +.site-title { + margin: auto; + display: inline; + color: #111; + /* When there is no description set, make sure navigation appears below title. */ +} + +.site-title a { + color: #111; +} + +.site-title a:link, .site-title a:visited { + color: #111; +} + +.site-title a:hover { + color: #4a4a4a; +} + +.featured-image .site-title { + margin: 0; +} + +@media only screen and (min-width: 768px) { + .featured-image .site-title { + display: inline-block; + } +} + +.site-title + .main-navigation { + display: block; +} + +@media only screen and (min-width: 768px) { + .site-title { + display: inline; + } +} + +.site-title:not(:empty) + .site-description:not(:empty):before { + content: "\2014"; + margin: 0 .2em; +} + +.site-description { + display: inline; + color: #767676; + font-weight: normal; + margin: 0; +} + +.site-header.featured-image { + /* Hide overflow for overflowing featured image */ + overflow: hidden; + /* Need relative positioning to properly align layers. */ + position: relative; + /* Add text shadow to text, to increase readability. */ + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35); + /* Set white text color when featured image is set. */ + /* add focus state to social media icons */ + /* Entry header */ + /* Custom Logo Link */ + /* Make sure important elements are above pseudo elements used for effects. */ + /* Set up image filter layer positioning */ + /* Background & Effects */ + /* Shared background settings between pseudo elements. */ + background-position: center; + background-repeat: no-repeat; + background-size: cover; + /* The intensity of each blend mode is controlled via layer opacity. */ + /* Second layer: screen. */ + /* Third layer: multiply. */ + /* When image filters are inactive, a black overlay is added. */ + /* Fourth layer: overlay. */ + /* Fifth layer: readability overlay */ +} + +.site-header.featured-image .site-branding .site-title, +.site-header.featured-image .site-branding .site-description, +.site-header.featured-image .main-navigation a:after, +.site-header.featured-image .main-navigation .main-menu > li.menu-item-has-children:after, +.site-header.featured-image .main-navigation li, +.site-header.featured-image .social-navigation li, +.site-header.featured-image .entry-meta, +.site-header.featured-image .entry-title { + color: #fff; +} + +.site-header.featured-image .main-navigation a, +.site-header.featured-image .main-navigation a + svg, +.site-header.featured-image .social-navigation a, +.site-header.featured-image .site-title a, +.site-header.featured-image .site-featured-image a { + color: #fff; + transition: opacity 110ms ease-in-out; +} + +.site-header.featured-image .main-navigation a:hover, .site-header.featured-image .main-navigation a:active, +.site-header.featured-image .main-navigation a:hover + svg, +.site-header.featured-image .main-navigation a:active + svg, +.site-header.featured-image .main-navigation a + svg:hover, +.site-header.featured-image .main-navigation a + svg:active, +.site-header.featured-image .main-navigation a + svg:hover + svg, +.site-header.featured-image .main-navigation a + svg:active + svg, +.site-header.featured-image .social-navigation a:hover, +.site-header.featured-image .social-navigation a:active, +.site-header.featured-image .social-navigation a:hover + svg, +.site-header.featured-image .social-navigation a:active + svg, +.site-header.featured-image .site-title a:hover, +.site-header.featured-image .site-title a:active, +.site-header.featured-image .site-title a:hover + svg, +.site-header.featured-image .site-title a:active + svg, +.site-header.featured-image .site-featured-image a:hover, +.site-header.featured-image .site-featured-image a:active, +.site-header.featured-image .site-featured-image a:hover + svg, +.site-header.featured-image .site-featured-image a:active + svg { + color: #fff; + opacity: 0.6; +} + +.site-header.featured-image .main-navigation a:focus, +.site-header.featured-image .main-navigation a:focus + svg, +.site-header.featured-image .main-navigation a + svg:focus, +.site-header.featured-image .main-navigation a + svg:focus + svg, +.site-header.featured-image .social-navigation a:focus, +.site-header.featured-image .social-navigation a:focus + svg, +.site-header.featured-image .site-title a:focus, +.site-header.featured-image .site-title a:focus + svg, +.site-header.featured-image .site-featured-image a:focus, +.site-header.featured-image .site-featured-image a:focus + svg { + color: #fff; +} + +.site-header.featured-image .main-navigation .sub-menu a { + opacity: inherit; +} + +.site-header.featured-image .social-navigation a:focus { + color: #fff; + opacity: 1; + border-bottom: 1px solid #fff; +} + +.site-header.featured-image .social-navigation svg, +.site-header.featured-image .site-featured-image svg { + /* Use -webkit- only if supporting: Chrome < 54, iOS < 9.3, Android < 4.4.4 */ + -webkit-filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35)); + filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35)); +} + +.site-header.featured-image .site-featured-image { + /* First layer: grayscale. */ +} + +.site-header.featured-image .site-featured-image .post-thumbnail img { + height: auto; + left: 50%; + max-width: 1000%; + min-height: 100%; + min-width: 100vw; + position: absolute; + top: 50%; + transform: translateX(-50%) translateY(-50%); + width: auto; + z-index: 1; + /* When image filters are active, make it grayscale to colorize it blue. */ +} + +@supports (object-fit: cover) { + .site-header.featured-image .site-featured-image .post-thumbnail img { + height: 100%; + left: 0; + object-fit: cover; + top: 0; + transform: none; + width: 100%; + } +} + +.image-filters-enabled .site-header.featured-image .site-featured-image .post-thumbnail img { + filter: grayscale(100%); +} + +.site-header.featured-image .site-featured-image .entry-header { + margin-top: calc( 4 * 1rem); + margin-bottom: 0; + margin-left: 0; + margin-right: 0; + /* Entry meta */ +} + +@media only screen and (min-width: 768px) { + .site-header.featured-image .site-featured-image .entry-header { + margin-left: calc(10% + 60px); + margin-right: calc(10% + 60px); + } +} + +.site-header.featured-image .site-featured-image .entry-header .entry-title:before { + background: #fff; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta { + font-weight: 500; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta > span { + margin-right: 1rem; + display: inline-block; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta > span:last-child { + margin-right: 0; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta a { + transition: color 110ms ease-in-out; + color: currentColor; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta a:hover { + text-decoration: none; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta .svg-icon { + position: relative; + display: inline-block; + vertical-align: middle; + margin-right: 0.5em; +} + +.site-header.featured-image .site-featured-image .entry-header .entry-meta .discussion-avatar-list { + display: none; +} + +@media only screen and (min-width: 768px) { + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta { + display: flex; + position: relative; + } + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-title { + padding-right: calc(1 * (100vw / 12) + 1rem); + } + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta .comment-count { + position: absolute; + right: 0; + } + .site-header.featured-image .site-featured-image .entry-header.has-discussion .entry-meta .discussion-avatar-list { + display: block; + position: absolute; + bottom: 100%; + } +} + +.site-header.featured-image .custom-logo-link { + background: #fff; + box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); +} + +.site-header.featured-image .custom-logo-link:hover, .site-header.featured-image .custom-logo-link:active, .site-header.featured-image .custom-logo-link:focus { + box-shadow: 0 0 0 2px white; +} + +.site-header.featured-image .site-branding { + position: relative; + z-index: 10; +} + +.site-header.featured-image .site-featured-image .entry-header { + position: relative; + z-index: 9; +} + +.site-header.featured-image .site-branding-container:after, +.site-header.featured-image .site-featured-image:before, +.site-header.featured-image .site-featured-image:after, .site-header.featured-image:after { + display: block; + position: absolute; + top: 0; + left: 0; + content: "\020"; + width: 100%; + height: 100%; +} + +.image-filters-enabled .site-header.featured-image .site-featured-image:before { + background: #0073aa; + mix-blend-mode: screen; + opacity: 0.1; +} + +.site-header.featured-image .site-featured-image:after { + background: #000; + mix-blend-mode: multiply; + opacity: .7; + /* When image filters are active, a blue overlay is added. */ +} + +.image-filters-enabled .site-header.featured-image .site-featured-image:after { + background: #0073aa; + opacity: .8; + z-index: 3; + /* Browsers supporting mix-blend-mode don't need opacity < 1 */ +} + +@supports (mix-blend-mode: multiply) { + .image-filters-enabled .site-header.featured-image .site-featured-image:after { + opacity: 1; + } +} + +.image-filters-enabled .site-header.featured-image .site-branding-container:after { + background: rgba(0, 0, 0, 0.35); + mix-blend-mode: overlay; + opacity: 0.5; + z-index: 4; + /* Browsers supporting mix-blend-mode can have a light overlay */ +} + +@supports (mix-blend-mode: overlay) { + .image-filters-enabled .site-header.featured-image .site-branding-container:after { + background: rgba(255, 255, 255, 0.35); + } +} + +.site-header.featured-image:after { + background: #000; + /** + * Add a transition to the readability overlay, to add a subtle + * but smooth effect when resizing the screen. + */ + transition: opacity 1200ms ease-in-out; + opacity: 0.7; + z-index: 5; + /* When image filters are active, a blue overlay is added. */ +} + +.image-filters-enabled .site-header.featured-image:after { + background: #000e14; + opacity: 0.38; +} + +@media only screen and (min-width: 768px) { + .image-filters-enabled .site-header.featured-image:after { + opacity: 0.18; + } +} + +.site-header.featured-image ::-moz-selection { + background: rgba(255, 255, 255, 0.17); +} + +.site-header.featured-image ::selection { + background: rgba(255, 255, 255, 0.17); +} + +/*-------------------------------------------------------------- +## Posts and pages +--------------------------------------------------------------*/ +.sticky { + display: block; +} + +.sticky-post { + background: #0073aa; + color: #fff; + display: inline-block; + font-weight: bold; + line-height: 1; + padding: .25rem; + position: absolute; + text-transform: uppercase; + top: -1rem; + z-index: 1; +} + +.updated:not(.published) { + display: none; +} + +.page-links { + clear: both; + margin: 0 0 calc(1.5 * 1rem); +} + +.entry { + margin-top: calc(6 * 1rem); +} + +.entry:first-of-type { + margin-top: 0; +} + +.entry .entry-header { + margin: calc(3 * 1rem) 1rem 1rem; + position: relative; +} + +@media only screen and (min-width: 768px) { + .entry .entry-header { + margin: calc(3 * 1rem) calc(10% + 60px) 1rem; + } +} + +.entry .entry-title { + margin: 0; +} + +.entry .entry-title:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +.entry .entry-title a { + color: inherit; +} + +.entry .entry-title a:hover { + color: #4a4a4a; +} + +.entry .entry-meta, +.entry .entry-footer { + color: #767676; + font-weight: 500; +} + +.entry .entry-meta > span, +.entry .entry-footer > span { + margin-right: 1rem; + display: inline-block; +} + +.entry .entry-meta > span:last-child, +.entry .entry-footer > span:last-child { + margin-right: 0; +} + +.entry .entry-meta a, +.entry .entry-footer a { + transition: color 110ms ease-in-out; + color: currentColor; +} + +.entry .entry-meta a:hover, +.entry .entry-footer a:hover { + text-decoration: none; + color: #0073aa; +} + +.entry .entry-meta .svg-icon, +.entry .entry-footer .svg-icon { + position: relative; + display: inline-block; + vertical-align: middle; + margin-right: 0.5em; +} + +.entry .entry-meta { + margin: 1rem 0; +} + +.entry .entry-footer { + margin: calc(2 * 1rem) 1rem 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-footer { + margin: 1rem calc(10% + 60px) calc(3 * 1rem); + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-footer { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.entry .post-thumbnail { + margin: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .post-thumbnail { + margin: 1rem calc(10% + 60px); + } +} + +.entry .post-thumbnail:focus { + outline: none; +} + +.entry .post-thumbnail .post-thumbnail-inner { + display: block; +} + +.entry .post-thumbnail .post-thumbnail-inner img { + position: relative; + display: block; + width: 100%; +} + +.image-filters-enabled .entry .post-thumbnail { + position: relative; + display: block; +} + +.image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner { + filter: grayscale(100%); +} + +.image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner:after { + background: rgba(0, 0, 0, 0.35); + content: ""; + display: block; + height: 100%; + opacity: .5; + pointer-events: none; + position: absolute; + top: 0; + width: 100%; + z-index: 4; +} + +@supports (mix-blend-mode: multiply) { + .image-filters-enabled .entry .post-thumbnail .post-thumbnail-inner:after { + display: none; + } +} + +.image-filters-enabled .entry .post-thumbnail:before, .image-filters-enabled .entry .post-thumbnail:after { + position: absolute; + display: block; + width: 100%; + height: 100%; + top: 0; + left: 0; + content: "\020"; + pointer-events: none; +} + +.image-filters-enabled .entry .post-thumbnail:before { + background: #0073aa; + mix-blend-mode: screen; + opacity: 0.1; + z-index: 2; +} + +.image-filters-enabled .entry .post-thumbnail:after { + background: #0073aa; + mix-blend-mode: multiply; + opacity: .8; + z-index: 3; + /* Browsers supporting mix-blend-mode don't need opacity < 1 */ +} + +@supports (mix-blend-mode: multiply) { + .image-filters-enabled .entry .post-thumbnail:after { + opacity: 1; + } +} + +.entry .entry-content, +.entry .entry-summary { + max-width: calc(100% - (2 * 1rem)); + margin: 0 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content, + .entry .entry-summary { + max-width: 80%; + margin: 0 10%; + padding: 0 60px; + } +} + +.entry .entry-content p { + word-wrap: break-word; +} + +.entry .entry-content .more-link { + transition: color 110ms ease-in-out; + display: inline; + color: inherit; +} + +.entry .entry-content .more-link:after { + content: "\02192"; + display: inline-block; + margin-left: 0.5em; +} + +.entry .entry-content .more-link:hover { + color: #0073aa; + text-decoration: none; +} + +.entry .entry-content a { + text-decoration: underline; +} + +.entry .entry-content a.button, .entry .entry-content a:hover { + text-decoration: none; +} + +.entry .entry-content a.button { + display: inline-block; +} + +.entry .entry-content a.button:hover { + background: #111; + color: #fff; + cursor: pointer; +} + +.entry .entry-content > iframe[style] { + margin: 32px 0 !important; + max-width: 100% !important; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > iframe[style] { + max-width: calc(8 * (100vw / 12) - 28px) !important; + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content > iframe[style] { + max-width: calc(6 * (100vw / 12) - 28px) !important; + } +} + +.entry .entry-content .page-links a { + margin: calc(0.5 * 1rem); + text-decoration: none; +} + +.entry .entry-content .wp-audio-shortcode { + max-width: calc(100vw - (2 * 1rem)); +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-audio-shortcode { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-audio-shortcode { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +/* Author description */ +.author-bio { + margin: calc(2 * 1rem) 1rem 1rem; +} + +@media only screen and (min-width: 768px) { + .author-bio { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .author-bio { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .author-bio { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +@media only screen and (min-width: 1168px) { + .author-bio { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +.author-bio .author-title { + display: inline; +} + +.author-bio .author-title:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +.author-bio .author-description { + display: inline; + color: #767676; + font-size: 1.125em; + line-height: 1.2; +} + +.author-bio .author-description .author-link { + display: inline-block; +} + +.author-bio .author-description .author-link:hover { + color: #005177; + text-decoration: none; +} + +/*-------------------------------------------------------------- +## Comments +--------------------------------------------------------------*/ +.comment-content a { + word-wrap: break-word; +} + +.bypostauthor { + display: block; +} + +.comments-area { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + margin: calc(2 * 1rem) 1rem; + word-wrap: break-word; + /* Add extra margin when the comments section is located immediately after the + * post itself (this happens on pages). + */ +} + +@media only screen and (min-width: 768px) { + .comments-area { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .comments-area { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .comments-area { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +.comments-area > * { + margin-top: calc(2 * 1rem); + margin-bottom: calc(2 * 1rem); +} + +@media only screen and (min-width: 768px) { + .comments-area > * { + margin-top: calc(3 * 1rem); + margin-bottom: calc(3 * 1rem); + } +} + +.entry + .comments-area { + margin-top: calc(3 * 1rem); +} + +@media only screen and (min-width: 768px) { + .comments-area .comments-title-wrap { + align-items: baseline; + display: flex; + justify-content: space-between; + } +} + +.comments-area .comments-title-wrap .comments-title { + margin: 0; +} + +.comments-area .comments-title-wrap .comments-title:before { + background: #767676; + content: "\020"; + display: block; + height: 2px; + margin: 1rem 0; + width: 1em; +} + +@media only screen and (min-width: 768px) { + .comments-area .comments-title-wrap .comments-title { + flex: 1 0 calc(3 * (100vw / 12)); + } +} + +@media only screen and (min-width: 768px) { + .comments-area .comments-title-wrap .discussion-meta { + flex: 0 0 calc(2 * (100vw / 12)); + margin-left: 1rem; + } +} + +#comment { + max-width: 100%; + box-sizing: border-box; +} + +#respond { + position: relative; +} + +#respond .comment-user-avatar { + margin: 1rem 0 -1rem; +} + +#respond .comment .comment-form { + padding-left: 0; +} + +#respond > small { + display: block; + font-size: 22px; + position: absolute; + left: calc(1rem + 100%); + top: calc(-3.5 * 1rem); + width: calc(100vw / 12); +} + +#comments > .comments-title:last-child { + display: none; +} + +.comment-form-flex { + display: flex; + flex-direction: column; +} + +.comment-form-flex .comments-title { + display: none; + margin: 0; + order: 1; +} + +.comment-form-flex #respond { + order: 2; +} + +.comment-form-flex #respond + .comments-title { + display: block; +} + +.comment-list { + list-style: none; + padding: 0; +} + +.comment-list .children { + margin: 0; + padding: 0 0 0 1rem; +} + +.comment-list > .comment:first-child { + margin-top: 0; +} + +.comment-list .pingback .comment-body, +.comment-list .trackback .comment-body { + color: #767676; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + font-weight: 500; + margin-top: 1rem; + margin-bottom: 1rem; +} + +.comment-list .pingback .comment-body a:not(.comment-edit-link), +.comment-list .trackback .comment-body a:not(.comment-edit-link) { + font-weight: bold; + font-size: 19.55556px; + line-height: 1.5; + padding-right: 0.5rem; + display: block; +} + +.comment-list .pingback .comment-body .comment-edit-link, +.comment-list .trackback .comment-body .comment-edit-link { + color: #767676; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 500; +} + +#respond + .comment-reply { + display: none; +} + +.comment-reply .comment-reply-link { + display: inline-block; +} + +.comment { + list-style: none; + position: relative; +} + +@media only screen and (min-width: 768px) { + .comment { + padding-left: calc(.5 * (1rem + calc(100vw / 12 ))); + } + .comment.depth-1, + .comment .children { + padding-left: 0; + } + .comment.depth-1 { + margin-left: calc(3.25 * 1rem); + } +} + +.comment .comment-body { + margin: calc(2 * 1rem) 0 0; +} + +.comment .comment-meta { + position: relative; +} + +.comment .comment-author .avatar { + float: left; + margin-right: 1rem; + position: relative; +} + +@media only screen and (min-width: 768px) { + .comment .comment-author .avatar { + float: inherit; + margin-right: inherit; + position: absolute; + top: 0; + right: calc(100% + 1rem); + } +} + +.comment .comment-author .fn { + position: relative; + display: block; +} + +.comment .comment-author .fn a { + color: inherit; +} + +.comment .comment-author .fn a:hover { + color: #005177; +} + +.comment .comment-author .post-author-badge { + border-radius: 100%; + display: block; + height: 18px; + position: absolute; + background: #008fd3; + right: calc(100% - 2.5rem); + top: -3px; + width: 18px; +} + +@media only screen and (min-width: 768px) { + .comment .comment-author .post-author-badge { + right: calc(100% + 0.75rem); + } +} + +.comment .comment-author .post-author-badge svg { + width: inherit; + height: inherit; + display: block; + fill: white; + transform: scale(0.875); +} + +.comment .comment-metadata > a, +.comment .comment-metadata .comment-edit-link { + display: inline; + font-weight: 500; + color: #767676; + vertical-align: baseline; +} + +.comment .comment-metadata > a time, +.comment .comment-metadata .comment-edit-link time { + vertical-align: baseline; +} + +.comment .comment-metadata > a:hover, +.comment .comment-metadata .comment-edit-link:hover { + color: #005177; + text-decoration: none; +} + +.comment .comment-metadata > * { + display: inline-block; +} + +.comment .comment-metadata .edit-link-sep { + color: #767676; + margin: 0 0.2em; + vertical-align: baseline; +} + +.comment .comment-metadata .edit-link { + color: #767676; +} + +.comment .comment-metadata .edit-link svg { + transform: scale(0.8); + vertical-align: baseline; + margin-right: 0.1em; +} + +.comment .comment-metadata .comment-edit-link { + position: relative; + padding-left: 1rem; + margin-left: -1rem; + z-index: 1; +} + +.comment .comment-metadata .comment-edit-link:hover { + color: #0073aa; +} + +.comment .comment-content { + margin: 1rem 0; +} + +@media only screen and (min-width: 1168px) { + .comment .comment-content { + padding-right: 1rem; + } +} + +.comment .comment-content > *:first-child { + margin-top: 0; +} + +.comment .comment-content > *:last-child { + margin-bottom: 0; +} + +.comment .comment-content blockquote { + margin-left: 0; +} + +.comment .comment-content a { + text-decoration: underline; +} + +.comment .comment-content a:hover { + text-decoration: none; +} + +.comment-reply-link, +#cancel-comment-reply-link { + font-weight: 500; +} + +.comment-reply-link:hover, +#cancel-comment-reply-link:hover { + color: #005177; +} + +.discussion-avatar-list { + content: ""; + display: table; + table-layout: fixed; + margin: 0; + padding: 0; +} + +.discussion-avatar-list li { + position: relative; + list-style: none; + margin: 0 -8px 0 0; + padding: 0; + float: left; +} + +.discussion-avatar-list .comment-user-avatar img { + height: calc(1.5 * 1rem); + width: calc(1.5 * 1rem); +} + +.discussion-meta .discussion-meta-info { + margin: 0; +} + +.discussion-meta .discussion-meta-info .svg-icon { + vertical-align: middle; + fill: currentColor; + transform: scale(0.6) scaleX(-1) translateY(-0.1em); + margin-left: -0.25rem; +} + +.comment-form .comment-notes, +.comment-form label { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + color: #767676; +} + +@media only screen and (min-width: 768px) { + .comment-form .comment-form-author, + .comment-form .comment-form-email { + width: calc(50% - 0.5rem); + float: left; + } +} + +@media only screen and (min-width: 768px) { + .comment-form .comment-form-email { + margin-left: 1rem; + } +} + +.comment-form input[name="author"], +.comment-form input[name="email"], +.comment-form input[name="url"] { + display: block; + width: 100%; +} + +/*-------------------------------------------------------------- +## Archives +--------------------------------------------------------------*/ +.archive .page-header, +.search .page-header, +.error404 .page-header { + margin: 1rem 1rem calc(3 * 1rem); +} + +@media only screen and (min-width: 768px) { + .archive .page-header, + .search .page-header, + .error404 .page-header { + margin: 0 calc(10% + 60px) calc(3 * 1rem); + } +} + +.archive .page-header .page-title, +.search .page-header .page-title, +.error404 .page-header .page-title { + color: #767676; + display: inline; + letter-spacing: normal; +} + +.archive .page-header .page-title:before, +.search .page-header .page-title:before, +.error404 .page-header .page-title:before { + display: none; +} + +.archive .page-header .search-term, +.archive .page-header .page-description, +.search .page-header .search-term, +.search .page-header .page-description, +.error404 .page-header .search-term, +.error404 .page-header .page-description { + display: inherit; + clear: both; +} + +.archive .page-header .page-description, +.search .page-header .page-description { + display: block; + color: #111; + font-size: 1em; +} + +@media only screen and (min-width: 768px) { + .hfeed .entry .entry-header { + margin: calc(3 * 1rem) calc(10% + 60px) calc(1rem / 2); + } +} + +/* 404 & Not found */ +.error-404.not-found .page-content, +.no-results.not-found .page-content { + margin: calc(3 * 1rem) 1rem; +} + +@media only screen and (min-width: 768px) { + .error-404.not-found .page-content, + .no-results.not-found .page-content { + margin: calc(3 * 1rem) calc(10% + 60px) calc(1rem / 2); + } +} + +.error-404.not-found .search-submit, +.no-results.not-found .search-submit { + vertical-align: middle; + margin: 1rem 0; +} + +.error-404.not-found .search-field, +.no-results.not-found .search-field { + width: 100%; +} + +/*-------------------------------------------------------------- +## Footer +--------------------------------------------------------------*/ +/* Site footer */ +#colophon .widget-area, +#colophon .site-info { + margin: calc(2 * 1rem) 1rem; +} + +@media only screen and (min-width: 768px) { + #colophon .widget-area, + #colophon .site-info { + margin: calc(3 * 1rem) calc(10% + 60px); + } +} + +#colophon .widget-column { + display: flex; + flex-wrap: wrap; +} + +#colophon .widget-column .widget { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + width: 100%; + word-wrap: break-word; +} + +@media only screen and (min-width: 1168px) { + #colophon .widget-column .widget { + margin-right: calc(3 * 1rem); + width: calc(50% - (3 * 1rem)); + } +} + +#colophon .site-info { + color: #767676; + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; + word-wrap: break-word; +} + +#colophon .site-info a { + color: inherit; +} + +#colophon .site-info a:hover { + text-decoration: none; + color: #0073aa; +} + +#colophon .site-info .imprint, +#colophon .site-info .privacy-policy-link { + margin-right: 1rem; +} + +/* Widgets */ +.widget { + margin: 0 0 1rem; + /* Make sure select elements fit in widgets. */ +} + +.widget select { + max-width: 100%; +} + +.widget a { + color: #0073aa; +} + +.widget a:hover { + color: #005177; +} + +.widget_archive ul, +.widget_categories ul, +.widget_meta ul, +.widget_nav_menu ul, +.widget_pages ul, +.widget_recent_comments ul, +.widget_recent_entries ul, +.widget_rss ul { + padding: 0; + list-style: none; +} + +.widget_archive ul li, +.widget_categories ul li, +.widget_meta ul li, +.widget_nav_menu ul li, +.widget_pages ul li, +.widget_recent_comments ul li, +.widget_recent_entries ul li, +.widget_rss ul li { + color: #767676; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: calc(22px * 1.125); + font-weight: 700; + line-height: 1.2; + margin-top: 0.5rem; + margin-bottom: 0.5rem; +} + +.widget_archive ul ul, +.widget_categories ul ul, +.widget_meta ul ul, +.widget_nav_menu ul ul, +.widget_pages ul ul, +.widget_recent_comments ul ul, +.widget_recent_entries ul ul, +.widget_rss ul ul { + counter-reset: submenu; +} + +.widget_archive ul ul > li > a::before, +.widget_categories ul ul > li > a::before, +.widget_meta ul ul > li > a::before, +.widget_nav_menu ul ul > li > a::before, +.widget_pages ul ul > li > a::before, +.widget_recent_comments ul ul > li > a::before, +.widget_recent_entries ul ul > li > a::before, +.widget_rss ul ul > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.widget_tag_cloud .tagcloud { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: 700; +} + +.widget_search .search-field { + width: 100%; +} + +@media only screen and (min-width: 600px) { + .widget_search .search-field { + width: auto; + } +} + +.widget_search .search-submit { + display: block; + margin-top: 1rem; +} + +.widget_calendar .calendar_wrap { + text-align: center; +} + +.widget_calendar .calendar_wrap table td, +.widget_calendar .calendar_wrap table th { + border: none; +} + +.widget_calendar .calendar_wrap a { + text-decoration: underline; +} + +/* Blocks */ +/* !Block styles */ +.entry .entry-content > *, +.entry .entry-summary > *, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + margin: 32px 0; + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *, + .entry .entry-summary > *, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content > *, + .entry .entry-summary > *, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *, + .entry .entry-summary > *, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > * { + margin: 32px 0; + } +} + +.entry .entry-content > *.alignwide, +.entry .entry-summary > *.alignwide, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignwide, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignwide { + margin-left: auto; + margin-right: auto; + clear: both; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignwide, + .entry .entry-summary > *.alignwide, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignwide, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignwide { + width: 100%; + max-width: 100%; + } +} + +.entry .entry-content > *.alignfull, +.entry .entry-summary > *.alignfull, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignfull, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignfull { + position: relative; + left: -1rem; + width: calc( 100% + (2 * 1rem)); + max-width: calc( 100% + (2 * 1rem)); + clear: both; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignfull, + .entry .entry-summary > *.alignfull, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignfull, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignfull { + margin-top: calc(2 * 1rem); + margin-bottom: calc(2 * 1rem); + left: calc( -12.5% - 75px); + width: calc( 125% + 150px); + max-width: calc( 125% + 150px); + } +} + +.entry .entry-content > *.alignleft, +.entry .entry-summary > *.alignleft, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignleft, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignleft { + /*rtl:ignore*/ + float: left; + max-width: calc(5 * (100vw / 12)); + margin-top: 0; + margin-left: 0; + /*rtl:ignore*/ + margin-right: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignleft, + .entry .entry-summary > *.alignleft, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignleft, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignleft { + max-width: calc(4 * (100vw / 12)); + /*rtl:ignore*/ + margin-right: calc(2 * 1rem); + } +} + +.entry .entry-content > *.alignright, +.entry .entry-summary > *.alignright, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignright, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignright { + /*rtl:ignore*/ + float: right; + max-width: calc(5 * (100vw / 12)); + margin-top: 0; + margin-right: 0; + /*rtl:ignore*/ + margin-left: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.alignright, + .entry .entry-summary > *.alignright, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.alignright, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.alignright { + max-width: calc(4 * (100vw / 12)); + margin-right: 0; + /*rtl:ignore*/ + margin-left: calc(2 * 1rem); + } +} + +.entry .entry-content > *.aligncenter, +.entry .entry-summary > *.aligncenter, +.entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, +.entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + margin-left: auto; + margin-right: auto; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.aligncenter, + .entry .entry-summary > *.aligncenter, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content > *.aligncenter, + .entry .entry-summary > *.aligncenter, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content > *.aligncenter, + .entry .entry-summary > *.aligncenter, + .entry .entry-summary > .wp-block-group > .wp-block-group__inner-container > *.aligncenter, + .entry .entry-content > .wp-block-group > .wp-block-group__inner-container > *.aligncenter { + margin-left: 0; + margin-right: 0; + } +} + +.entry .entry-content > * > *:first-child, +.entry .entry-summary > * > *:first-child { + margin-top: 0; +} + +.entry .entry-content > * > *:last-child, +.entry .entry-summary > * > *:last-child { + margin-bottom: 0; +} + +/* + * Unset nested content selector styles + * - Prevents layout styles from cascading too deeply + * - helps with plugin compatibility + */ +.entry .entry-content .entry-content, +.entry .entry-content .entry-summary, +.entry .entry-content .entry, +.entry .entry-summary .entry-content, +.entry .entry-summary .entry-summary, +.entry .entry-summary .entry { + margin: inherit; + max-width: inherit; + padding: inherit; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .entry-content, + .entry .entry-content .entry-summary, + .entry .entry-content .entry, + .entry .entry-summary .entry-content, + .entry .entry-summary .entry-summary, + .entry .entry-summary .entry { + margin: inherit; + max-width: inherit; + padding: inherit; + } +} + +.entry .entry-content p.has-background { + padding: 20px 30px; +} + +.entry .entry-content .wp-block-audio { + width: 100%; +} + +.entry .entry-content .wp-block-audio audio { + width: 100%; +} + +.entry .entry-content .wp-block-audio.alignleft audio, +.entry .entry-content .wp-block-audio.alignright audio { + max-width: 198px; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-audio.alignleft audio, + .entry .entry-content .wp-block-audio.alignright audio { + max-width: 384px; + } +} + +@media only screen and (min-width: 1379px) { + .entry .entry-content .wp-block-audio.alignleft audio, + .entry .entry-content .wp-block-audio.alignright audio { + max-width: 385.44px; + } +} + +.entry .entry-content .wp-block-video video { + width: 100%; +} + +.entry .entry-content .wp-block-button .wp-block-button__link { + transition: background 150ms ease-in-out; + border: none; + font-size: 0.88889em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.2; + box-sizing: border-box; + font-weight: bold; + text-decoration: none; + padding: 0.76rem 1rem; + outline: none; + outline: none; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:not(.has-background) { + background-color: #0073aa; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:not(.has-text-color) { + color: white; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:hover { + color: white; + background: #111; + cursor: pointer; +} + +.entry .entry-content .wp-block-button .wp-block-button__link:focus { + color: white; + background: #111; + outline: thin dotted; + outline-offset: -4px; +} + +.entry .entry-content .wp-block-button:not(.is-style-squared) .wp-block-button__link { + border-radius: 5px; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link, +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus, +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active { + transition: all 150ms ease-in-out; + border-width: 2px; + border-style: solid; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-background), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus:not(.has-background), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active:not(.has-background) { + background: transparent; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:not(.has-text-color), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:focus:not(.has-text-color), +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:active:not(.has-text-color) { + color: #0073aa; + border-color: currentColor; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover { + color: white; + border-color: #111; +} + +.entry .entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover:not(.has-background) { + color: #111; +} + +.entry .entry-content .wp-block-archives, +.entry .entry-content .wp-block-categories, +.entry .entry-content .wp-block-latest-posts { + padding: 0; + list-style: none; +} + +.entry .entry-content .wp-block-archives li > a, +.entry .entry-content .wp-block-categories li > a, +.entry .entry-content .wp-block-latest-posts li > a { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: calc(22px * 1.125); + font-weight: bold; + line-height: 1.2; + text-decoration: none; +} + +.entry .entry-content .wp-block-archives.aligncenter, +.entry .entry-content .wp-block-categories.aligncenter { + text-align: center; +} + +.entry .entry-content .wp-block-categories ul { + padding-top: 0.75rem; +} + +.entry .entry-content .wp-block-categories li ul { + list-style: none; + padding-left: 0; +} + +.entry .entry-content .wp-block-categories ul { + counter-reset: submenu; +} + +.entry .entry-content .wp-block-categories ul > li > a::before { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-weight: normal; + content: "– " counters(submenu, "– ", none); + counter-increment: submenu; +} + +.entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-date { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 0.71111em; + color: #767676; + line-height: 1.2; +} + +.entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-full-content, +.entry .entry-content .wp-block-latest-posts .wp-block-latest-posts__post-excerpt { + margin-top: 1rem; + margin-bottom: 1rem; +} + +.entry .entry-content .wp-block-latest-posts li { + padding-bottom: 0.5rem; +} + +.entry .entry-content .wp-block-latest-posts li.menu-item-has-children, .entry .entry-content .wp-block-latest-posts li:last-child { + padding-bottom: 0; +} + +.entry .entry-content .wp-block-latest-posts li :not(:last-child) .wp-block-latest-posts__post-excerpt { + padding-bottom: 0.5rem; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li { + border-top: 2px solid #ccc; + padding-top: 1rem; + margin-bottom: 2rem; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li a:after { + content: ''; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li:last-child { + margin-bottom: auto; +} + +.entry .entry-content .wp-block-latest-posts.is-grid li:last-child a:after { + content: ''; +} + +.entry .entry-content .wp-block-preformatted { + font-size: 0.71111em; + line-height: 1.8; + padding: 1rem; +} + +.entry .entry-content .wp-block-verse { + font-family: "NonBreakingSpaceOverride", "Hoefler Text", Garamond, "Times New Roman", serif; + font-size: 22px; + line-height: 1.8; +} + +.entry .entry-content .has-drop-cap:not(:focus):first-letter { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 3.375em; + line-height: 1; + font-weight: bold; + margin: 0 0.25em 0 0; +} + +.entry .entry-content .wp-block-pullquote { + border-color: transparent; + border-width: 2px; + padding: 1rem; +} + +.entry .entry-content .wp-block-pullquote blockquote { + color: #111; + border: none; + margin-top: calc(4 * 1rem); + margin-bottom: calc(4.33 * 1rem); + margin-right: 0; + padding-left: 0; +} + +.entry .entry-content .wp-block-pullquote p { + font-size: 1.6875em; + font-style: italic; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +.entry .entry-content .wp-block-pullquote p em { + font-style: normal; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote p { + font-size: 2.25em; + } +} + +.entry .entry-content .wp-block-pullquote cite { + display: inline-block; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + text-transform: none; + color: #767676; + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * 1.125)); +} + +.entry .entry-content .wp-block-pullquote.alignleft, .entry .entry-content .wp-block-pullquote.alignright { + width: 100%; + padding: 0; +} + +.entry .entry-content .wp-block-pullquote.alignleft blockquote, .entry .entry-content .wp-block-pullquote.alignright blockquote { + margin: 1rem 0; + padding: 0; + text-align: left; + max-width: 100%; +} + +.entry .entry-content .wp-block-pullquote.alignleft blockquote p:first-child, .entry .entry-content .wp-block-pullquote.alignright blockquote p:first-child { + margin-top: 0; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color { + background-color: #0073aa; + padding-left: 0; + padding-right: 0; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color { + padding-left: 10%; + padding-right: 10%; + } +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color p { + font-size: 1.6875em; + line-height: 1.3; + margin-bottom: 0.5em; + margin-top: 0.5em; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color p { + font-size: 2.25em; + } +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color a { + color: #fff; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color cite { + color: inherit; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote { + max-width: 100%; + color: #fff; + padding-left: 0; + margin-left: 1rem; + margin-right: 1rem; +} + +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-text-color p, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-text-color a, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color, .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-white-color { + color: inherit; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote { + margin-left: 0; + margin-right: 0; + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignright, .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignleft { + padding: 1rem calc(2 * 1rem); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-pullquote.is-style-solid-color.alignfull { + padding-left: calc(10% + 58px + (2 * 1rem)); + padding-right: calc(10% + 58px + (2 * 1rem)); + } +} + +.entry .entry-content .wp-block-quote:not(.is-large), .entry .entry-content .wp-block-quote:not(.is-style-large) { + border-width: 2px; + border-color: #0073aa; + padding-top: 0; + padding-bottom: 0; +} + +.entry .entry-content .wp-block-quote p { + font-size: 1em; + font-style: normal; + line-height: 1.8; +} + +.entry .entry-content .wp-block-quote cite { + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * 1.125)); +} + +.entry .entry-content .wp-block-quote.is-large, .entry .entry-content .wp-block-quote.is-style-large { + margin: 1rem 0; + padding: 0; + border-left: none; +} + +.entry .entry-content .wp-block-quote.is-large p, .entry .entry-content .wp-block-quote.is-style-large p { + font-size: 1.6875em; + line-height: 1.4; + font-style: italic; +} + +.entry .entry-content .wp-block-quote.is-large cite, +.entry .entry-content .wp-block-quote.is-large footer, .entry .entry-content .wp-block-quote.is-style-large cite, +.entry .entry-content .wp-block-quote.is-style-large footer { + /* + * This requires a rem-based font size calculation instead of our normal em-based one, + * because the cite tag sometimes gets wrapped in a p tag. This is equivalent to $font-size_xs. + */ + font-size: calc(1rem / (1.25 * 1.125)); +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-quote.is-large, .entry .entry-content .wp-block-quote.is-style-large { + margin: 1rem 0; + padding: 1rem 0; + } + .entry .entry-content .wp-block-quote.is-large p, .entry .entry-content .wp-block-quote.is-style-large p { + font-size: 1.6875em; + } +} + +.entry .entry-content .wp-block-image { + max-width: 100%; +} + +.entry .entry-content .wp-block-image img { + display: block; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image:not(.alignwide):not(.alignfull) > img { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-image:not(.alignwide):not(.alignfull) > img { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image .aligncenter { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-image .aligncenter { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image .aligncenter { + margin: 0; + width: calc(8 * (100vw / 12) - 28px); + } + .entry .entry-content .wp-block-image .aligncenter img { + margin: 0 auto; + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-image .aligncenter { + width: calc(6 * (100vw / 12) - 28px); + } + .entry .entry-content .wp-block-image .aligncenter img { + margin: 0 auto; + } +} + +.entry .entry-content .wp-block-image.alignfull img { + width: 100vw; + max-width: calc( 100% + (2 * 1rem)); +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-image.alignfull img { + max-width: calc( 125% + 150px); + margin-left: auto; + margin-right: auto; + } +} + +.entry .entry-content .wp-block-cover-image, +.entry .entry-content .wp-block-cover { + position: relative; + min-height: 430px; + padding: 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image, + .entry .entry-content .wp-block-cover { + padding: 1rem 10%; + } +} + +.entry .entry-content .wp-block-cover-image .wp-block-cover-image-text, +.entry .entry-content .wp-block-cover-image .wp-block-cover-text, +.entry .entry-content .wp-block-cover-image h2, +.entry .entry-content .wp-block-cover .wp-block-cover-image-text, +.entry .entry-content .wp-block-cover .wp-block-cover-text, +.entry .entry-content .wp-block-cover h2 { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-size: 1.6875em; + font-weight: bold; + line-height: 1.25; + padding: 0; + color: #fff; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image h2, + .entry .entry-content .wp-block-cover .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover .wp-block-cover-text, + .entry .entry-content .wp-block-cover h2 { + font-size: 2.25em; + max-width: 100%; + } +} + +.entry .entry-content .wp-block-cover-image.alignleft, .entry .entry-content .wp-block-cover-image.alignright, +.entry .entry-content .wp-block-cover.alignleft, +.entry .entry-content .wp-block-cover.alignright { + width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image.alignleft, .entry .entry-content .wp-block-cover-image.alignright, + .entry .entry-content .wp-block-cover.alignleft, + .entry .entry-content .wp-block-cover.alignright { + padding: 1rem calc(2 * 1rem); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image.alignfull h2, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover.alignfull h2 { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image.alignfull h2, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover.alignfull h2 { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-cover-image.alignfull, + .entry .entry-content .wp-block-cover.alignfull { + padding-left: calc(10% + 58px + (2 * 1rem)); + padding-right: calc(10% + 58px + (2 * 1rem)); + } + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover-image.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover-image.alignfull h2, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-image-text, + .entry .entry-content .wp-block-cover.alignfull .wp-block-cover-text, + .entry .entry-content .wp-block-cover.alignfull h2 { + padding: 0; + } +} + +.entry .entry-content .wp-block-gallery { + list-style-type: none; + padding-left: 0; +} + +.entry .entry-content .wp-block-gallery .blocks-gallery-image:last-child, +.entry .entry-content .wp-block-gallery .blocks-gallery-item:last-child { + margin-bottom: 16px; +} + +.entry .entry-content .wp-block-gallery figcaption a { + color: #fff; +} + +.entry .entry-content .wp-block-audio figcaption, +.entry .entry-content .wp-block-video figcaption, +.entry .entry-content .wp-block-image figcaption, +.entry .entry-content .wp-block-gallery .blocks-gallery-image figcaption, +.entry .entry-content .wp-block-gallery .blocks-gallery-item figcaption { + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; + text-align: center; +} + +.entry .entry-content .wp-block-separator, +.entry .entry-content hr { + background-color: #767676; + border: 0; + height: 2px; + margin-bottom: 2rem; + margin-top: 2rem; + max-width: 2.25em; + text-align: left; + /* Remove duplicate rule-line when a separator + * is followed by an H1, or H2 */ +} + +.entry .entry-content .wp-block-separator.is-style-wide, +.entry .entry-content hr.is-style-wide { + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-separator.is-style-wide, + .entry .entry-content hr.is-style-wide { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-separator.is-style-wide, + .entry .entry-content hr.is-style-wide { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.entry .entry-content .wp-block-separator.is-style-dots, +.entry .entry-content hr.is-style-dots { + max-width: 100%; + background-color: inherit; + border: inherit; + height: inherit; + text-align: center; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-separator.is-style-dots, + .entry .entry-content hr.is-style-dots { + max-width: calc(8 * (100vw / 12) - 28px); + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-separator.is-style-dots, + .entry .entry-content hr.is-style-dots { + max-width: calc(6 * (100vw / 12) - 28px); + } +} + +.entry .entry-content .wp-block-separator.is-style-dots:not(.has-text-color):not(.has-background), +.entry .entry-content hr.is-style-dots:not(.has-text-color):not(.has-background) { + color: #767676; +} + +.entry .entry-content .wp-block-separator.is-style-dots:before, +.entry .entry-content hr.is-style-dots:before { + font-size: 1.6875em; + letter-spacing: 0.88889em; + padding-left: 0.88889em; +} + +.entry .entry-content .wp-block-separator + h1:before, +.entry .entry-content .wp-block-separator + h2:before, +.entry .entry-content hr + h1:before, +.entry .entry-content hr + h2:before { + display: none; +} + +.entry .entry-content .wp-block-embed-twitter { + word-break: break-word; +} + +.entry .entry-content .wp-block-table th, +.entry .entry-content .wp-block-table td { + border-color: #767676; +} + +.entry .entry-content .wp-block-file { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; +} + +.entry .entry-content .wp-block-file .wp-block-file__button { + display: table; + transition: background 150ms ease-in-out; + border: none; + border-radius: 5px; + background: #0073aa; + font-size: 22px; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.2; + text-decoration: none; + font-weight: bold; + padding: 0.75rem 1rem; + color: #fff; + margin-left: 0; + margin-top: calc(0.75 * 1rem); +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-file .wp-block-file__button { + font-size: 22px; + padding: 0.875rem 1.5rem; + } +} + +.entry .entry-content .wp-block-file .wp-block-file__button:hover { + background: #111; + cursor: pointer; +} + +.entry .entry-content .wp-block-file .wp-block-file__button:focus { + background: #111; + outline: thin dotted; + outline-offset: -4px; +} + +.entry .entry-content .wp-block-code { + border-radius: 0; +} + +.entry .entry-content .wp-block-code code { + font-size: 1.125em; + white-space: pre-wrap; + word-break: break-word; +} + +.entry .entry-content .wp-block-columns .wp-block-column > *:first-child { + margin-top: 0; +} + +.entry .entry-content .wp-block-columns .wp-block-column > *:last-child { + margin-bottom: 0; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-columns .wp-block-image > img:not(.alignwide):not(.alignfull), + .entry .entry-content .wp-block-columns .wp-block-image > figure { + max-width: 100%; + } +} + +@media only screen and (min-width: 1168px) { + .entry .entry-content .wp-block-columns .wp-block-image > img:not(.alignwide):not(.alignfull), + .entry .entry-content .wp-block-columns .wp-block-image > figure { + max-width: 100%; + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-columns { + flex-wrap: nowrap; + } + .entry .entry-content .wp-block-columns .wp-block-column:not(:first-child) { + margin-left: 32px; + } +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group:not(.alignfull) > .wp-block-group__inner-container > .alignfull, + .entry .entry-content .wp-block-group:not(.alignfull) > .wp-block-group__inner-container > .wp-block-image > img { + left: 0; + max-width: 100%; + } +} + +.entry .entry-content .wp-block-group.alignfull > .wp-block-group__inner-container { + max-width: calc(100% - (2 * 1rem)); + margin: 0 1rem; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group.alignfull > .wp-block-group__inner-container { + max-width: 80%; + margin: 0 10%; + padding: 0 60px; + } +} + +.entry .entry-content .wp-block-group.has-background { + padding: 1rem; + margin-top: 0; + margin-bottom: 0; +} + +.entry .entry-content .wp-block-group.has-background .wp-block-group__inner-container > *:first-child { + margin-top: 0; +} + +.entry .entry-content .wp-block-group.has-background .wp-block-group__inner-container > *:last-child { + margin-bottom: 0; +} + +.entry .entry-content .wp-block-group.has-background.alignfull { + padding-left: 0; + padding-right: 0; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group.has-background.alignfull { + padding-top: 1rem; + padding-bottom: 1rem; + } +} + +.entry .entry-content .wp-block-group.has-background:not(.alignfull) > .wp-block-group__inner-container > .alignfull { + width: 100%; + max-width: 100%; +} + +@media only screen and (min-width: 768px) { + .entry .entry-content .wp-block-group.has-background:not(.alignfull) > .wp-block-group__inner-container > .alignfull { + width: calc( 100% + 2rem); + max-width: calc( 100% + 2rem); + margin-left: -1rem; + } +} + +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + font-weight: bold; +} + +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-meta .wp-block-latest-comments__comment-date { + font-weight: normal; +} + +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment, +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-date, +.entry .entry-content .wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p { + font-size: inherit; +} + +.entry .entry-content .wp-block-latest-comments.has-dates .wp-block-latest-comments__comment-date { + font-size: 0.71111em; +} + +.entry .entry-content .has-small-font-size { + font-size: 0.88889em; +} + +.entry .entry-content .has-normal-font-size { + font-size: 1.125em; +} + +.entry .entry-content .has-large-font-size { + font-size: 1.6875em; +} + +.entry .entry-content .has-huge-font-size { + font-size: 2.25em; +} + +.entry .entry-content .has-primary-background-color, +.entry .entry-content .has-secondary-background-color, +.entry .entry-content .has-dark-gray-background-color, +.entry .entry-content .has-light-gray-background-color { + color: #fff; +} + +.entry .entry-content .has-primary-background-color > p, +.entry .entry-content .has-primary-background-color > h1, +.entry .entry-content .has-primary-background-color > h2, +.entry .entry-content .has-primary-background-color > h3, +.entry .entry-content .has-primary-background-color > h4, +.entry .entry-content .has-primary-background-color > h5, +.entry .entry-content .has-primary-background-color > h6, +.entry .entry-content .has-primary-background-color > a, +.entry .entry-content .has-secondary-background-color > p, +.entry .entry-content .has-secondary-background-color > h1, +.entry .entry-content .has-secondary-background-color > h2, +.entry .entry-content .has-secondary-background-color > h3, +.entry .entry-content .has-secondary-background-color > h4, +.entry .entry-content .has-secondary-background-color > h5, +.entry .entry-content .has-secondary-background-color > h6, +.entry .entry-content .has-secondary-background-color > a, +.entry .entry-content .has-dark-gray-background-color > p, +.entry .entry-content .has-dark-gray-background-color > h1, +.entry .entry-content .has-dark-gray-background-color > h2, +.entry .entry-content .has-dark-gray-background-color > h3, +.entry .entry-content .has-dark-gray-background-color > h4, +.entry .entry-content .has-dark-gray-background-color > h5, +.entry .entry-content .has-dark-gray-background-color > h6, +.entry .entry-content .has-dark-gray-background-color > a, +.entry .entry-content .has-light-gray-background-color > p, +.entry .entry-content .has-light-gray-background-color > h1, +.entry .entry-content .has-light-gray-background-color > h2, +.entry .entry-content .has-light-gray-background-color > h3, +.entry .entry-content .has-light-gray-background-color > h4, +.entry .entry-content .has-light-gray-background-color > h5, +.entry .entry-content .has-light-gray-background-color > h6, +.entry .entry-content .has-light-gray-background-color > a { + color: #fff; +} + +.entry .entry-content .has-white-background-color { + color: #111; +} + +.entry .entry-content .has-white-background-color > p, +.entry .entry-content .has-white-background-color > h1, +.entry .entry-content .has-white-background-color > h2, +.entry .entry-content .has-white-background-color > h3, +.entry .entry-content .has-white-background-color > h4, +.entry .entry-content .has-white-background-color > h5, +.entry .entry-content .has-white-background-color > h6, +.entry .entry-content .has-white-background-color > a { + color: #111; +} + +.entry .entry-content .has-primary-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-primary-background-color { + background-color: #0073aa; +} + +.entry .entry-content .has-secondary-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-secondary-background-color { + background-color: #005177; +} + +.entry .entry-content .has-dark-gray-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-dark-gray-background-color { + background-color: #111; +} + +.entry .entry-content .has-light-gray-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-light-gray-background-color { + background-color: #767676; +} + +.entry .entry-content .has-white-background-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color.has-white-background-color { + background-color: #FFF; +} + +.entry .entry-content .has-primary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-primary-color > p { + color: #0073aa; +} + +.entry .entry-content .has-secondary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-secondary-color > p { + color: #005177; +} + +.entry .entry-content .has-dark-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-dark-gray-color > p { + color: #111; +} + +.entry .entry-content .has-light-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-light-gray-color > p { + color: #767676; +} + +.entry .entry-content .has-white-color, +.entry .entry-content .wp-block-pullquote.is-style-solid-color blockquote.has-white-color { + color: #FFF; +} + +/* Media */ +.page-content .wp-smiley, +.entry-content .wp-smiley, +.comment-content .wp-smiley { + border: none; + margin-bottom: 0; + margin-top: 0; + padding: 0; +} + +embed, +iframe, +object { + max-width: 100%; +} + +.custom-logo-link { + display: inline-block; +} + +.avatar { + border-radius: 100%; + display: block; + height: calc(2.25 * 1rem); + min-height: inherit; + width: calc(2.25 * 1rem); +} + +svg { + transition: fill 120ms ease-in-out; + fill: currentColor; +} + +/*-------------------------------------------------------------- +## Captions +--------------------------------------------------------------*/ +.wp-caption { + margin-bottom: calc(1.5 * 1rem); +} + +@media only screen and (min-width: 768px) { + .wp-caption.aligncenter { + position: relative; + left: calc( calc(8 * (100vw / 12) - 28px) / 2); + transform: translateX(-50%); + } +} + +@media only screen and (min-width: 1168px) { + .wp-caption.aligncenter { + left: calc( calc(6 * (100vw / 12) - 28px) / 2); + } +} + +.wp-caption img[class*="wp-image-"] { + display: block; + margin-left: auto; + margin-right: auto; +} + +.wp-caption-text { + color: #767676; + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; + text-align: center; +} + +/*-------------------------------------------------------------- +## Galleries +--------------------------------------------------------------*/ +.gallery { + display: flex; + flex-flow: row wrap; + justify-content: center; + margin-bottom: calc(1.5 * 1rem); +} + +.gallery-item { + display: inline-block; + margin-right: 16px; + margin-bottom: 16px; + text-align: center; + vertical-align: top; + width: 100%; +} + +.gallery-columns-2 .gallery-item { + max-width: calc((100% - 16px * 1) / 2); +} + +.gallery-columns-2 .gallery-item:nth-of-type(2n+2) { + margin-right: 0; +} + +.gallery-columns-3 .gallery-item { + max-width: calc((100% - 16px * 2) / 3); +} + +.gallery-columns-3 .gallery-item:nth-of-type(3n+3) { + margin-right: 0; +} + +.gallery-columns-4 .gallery-item { + max-width: calc((100% - 16px * 3) / 4); +} + +.gallery-columns-4 .gallery-item:nth-of-type(4n+4) { + margin-right: 0; +} + +.gallery-columns-5 .gallery-item { + max-width: calc((100% - 16px * 4) / 5); +} + +.gallery-columns-5 .gallery-item:nth-of-type(5n+5) { + margin-right: 0; +} + +.gallery-columns-6 .gallery-item { + max-width: calc((100% - 16px * 5) / 6); +} + +.gallery-columns-6 .gallery-item:nth-of-type(6n+6) { + margin-right: 0; +} + +.gallery-columns-7 .gallery-item { + max-width: calc((100% - 16px * 6) / 7); +} + +.gallery-columns-7 .gallery-item:nth-of-type(7n+7) { + margin-right: 0; +} + +.gallery-columns-8 .gallery-item { + max-width: calc((100% - 16px * 7) / 8); +} + +.gallery-columns-8 .gallery-item:nth-of-type(8n+8) { + margin-right: 0; +} + +.gallery-columns-9 .gallery-item { + max-width: calc((100% - 16px * 8) / 9); +} + +.gallery-columns-9 .gallery-item:nth-of-type(9n+9) { + margin-right: 0; +} + +.gallery-item:last-of-type { + padding-right: 0; +} + +.gallery-caption { + display: block; + font-size: 0.71111em; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + line-height: 1.6; + margin: 0; + padding: 0.5rem; +} + +.gallery-item > div > a { + display: block; + line-height: 0; + box-shadow: 0 0 0 0 transparent; +} + +.gallery-item > div > a:focus { + box-shadow: 0 0 0 2px #0073aa; +} diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/style.scss b/srcs/wordpress/wp-content/themes/twentynineteen/style.scss new file mode 100644 index 0000000..7807837 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/style.scss @@ -0,0 +1,109 @@ +/* +Theme Name: Twenty Nineteen +Theme URI: https://wordpress.org/themes/twentynineteen/ +Author: the WordPress team +Author URI: https://wordpress.org/ +Description: Our 2019 default theme is designed to show off the power of the block editor. It features custom styles for all the default blocks, and is built so that what you see in the editor looks like what you'll see on your website. Twenty Nineteen is designed to be adaptable to a wide range of websites, whether you’re running a photo blog, launching a new business, or supporting a non-profit. Featuring ample whitespace and modern sans-serif headlines paired with classic serif body text, it's built to be beautiful on all screen sizes. +Requires at least: WordPress 4.9.6 +Version: 1.4 +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html +Text Domain: twentynineteen +Tags: one-column, flexible-header, accessibility-ready, custom-colors, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, rtl-language-support, sticky-post, threaded-comments, translation-ready + +This theme, like WordPress, is licensed under the GPL. +Use it to make something cool, have fun, and share what you've learned with others. + +Twenty Nineteen is based on Underscores https://underscores.me/, (C) 2012-2019 Automattic, Inc. +Underscores is distributed under the terms of the GNU GPL v2 or later. + +Normalizing styles have been helped along thanks to the fine work of +Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/ +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +# Variables +# Normalize +# Typography + ## Headings + ## Copy +# Elements + ## Lists + ## Tables +# Forms + ## Buttons + ## Fields +# Navigation + ## Links + ## Menus + ## Next & Previous +# Accessibility +# Alignments +# Clearings +# Layout +# Widgets +# Content + ## Archives + ## Posts and pages + ## Comments +# Blocks +# Media + ## Captions + ## Galleries +--------------------------------------------------------------*/ +@import "sass/variables-site/variables-site"; +@import "sass/mixins/mixins-master"; + +/* Normalize */ + +@import "sass/normalize"; + +/* Typography */ + +@import "sass/typography/typography"; + +/* Elements */ + +@import "sass/elements/elements"; + +/* Forms */ + +@import "sass/forms/forms"; + +/* Navigation */ + +@import "sass/navigation/navigation"; + +/* Accessibility */ + +@import "sass/modules/accessibility"; + +/* Alignments */ + +@import "sass/modules/alignments"; + +/* Clearings */ + +@import "sass/modules/clearings"; + +/* Layout */ + +@import "sass/layout/layout"; + +/* Content */ + +@import "sass/site/site"; + +/* Widgets */ + +@import "sass/site/secondary/widgets"; + +/* Blocks */ + +@import "sass/blocks/blocks"; + +/* Media */ + +@import "sass/media/media"; diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-excerpt.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-excerpt.php new file mode 100644 index 0000000..a76edb0 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-excerpt.php @@ -0,0 +1,33 @@ + + + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-none.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-none.php new file mode 100644 index 0000000..e0902d3 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-none.php @@ -0,0 +1,53 @@ + + +
+ + +
+ ' . wp_kses( + /* translators: 1: Link to WP admin new post page. */ + __( 'Ready to publish your first post? Get started here.', 'twentynineteen' ), + array( + 'a' => array( + 'href' => array(), + ), + ) + ) . '

', + esc_url( admin_url( 'post-new.php' ) ) + ); + + elseif ( is_search() ) : + ?> + +

+ + +

+ +
+
diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-page.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-page.php new file mode 100644 index 0000000..9068b68 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-page.php @@ -0,0 +1,56 @@ + + +
> + +
+ +
+ + +
+ '', + ) + ); + ?> +
+ + +
+ %s', 'twentynineteen' ), + array( + 'span' => array( + 'class' => array(), + ), + ) + ), + get_the_title() + ), + '' . twentynineteen_get_icon_svg( 'edit', 16 ), + '' + ); + ?> +
+ +
diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-single.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-single.php new file mode 100644 index 0000000..d85aa2f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content-single.php @@ -0,0 +1,55 @@ + + +
> + +
+ +
+ + +
+ "%s"', 'twentynineteen' ), + array( + 'span' => array( + 'class' => array(), + ), + ) + ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + ) + ); + ?> +
+ +
+ +
+ + + + + +
diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content.php new file mode 100644 index 0000000..6f8532d --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/content/content.php @@ -0,0 +1,59 @@ + + +
> +
+ %s', _x( 'Featured', 'post', 'twentynineteen' ) ); + } + if ( is_singular() ) : + the_title( '

', '

' ); + else : + the_title( sprintf( '

', esc_url( get_permalink() ) ), '

' ); + endif; + ?> +
+ + + +
+ "%s"', 'twentynineteen' ), + array( + 'span' => array( + 'class' => array(), + ), + ) + ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + ) + ); + ?> +
+ +
+ +
+
diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/footer/footer-widgets.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/footer/footer-widgets.php new file mode 100644 index 0000000..163cbd8 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/footer/footer-widgets.php @@ -0,0 +1,24 @@ + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/entry-header.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/entry-header.php new file mode 100644 index 0000000..16f84ea --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/entry-header.php @@ -0,0 +1,46 @@ + + +', '' ); ?> + + + + diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/site-branding.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/site-branding.php new file mode 100644 index 0000000..03bc53b --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/header/site-branding.php @@ -0,0 +1,60 @@ + +
+ + + + + + + +

+ +

+ + + + +

+ +

+ + + + + + + +
diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/author-bio.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/author-bio.php new file mode 100644 index 0000000..4ed9bf3 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/author-bio.php @@ -0,0 +1,30 @@ + +
+

+ + + +

+

+ + +

+
+ diff --git a/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/discussion-meta.php b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/discussion-meta.php new file mode 100644 index 0000000..e54b5b7 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentynineteen/template-parts/post/discussion-meta.php @@ -0,0 +1,32 @@ +responses > 0; + +if ( $has_responses ) { + /* translators: %d: Number of comments. */ + $meta_label = sprintf( _n( '%d Comment', '%d Comments', $discussion->responses, 'twentynineteen' ), $discussion->responses ); +} else { + $meta_label = __( 'No comments', 'twentynineteen' ); +} +?> + +
+ authors ); + } + ?> +

+ + +

+
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/404.php b/srcs/wordpress/wp-content/themes/twentyseventeen/404.php new file mode 100644 index 0000000..3eb2a30 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/404.php @@ -0,0 +1,35 @@ + + +
+
+
+ +
+ +
+

+ + + +
+
+
+
+
+ + + +
+ + + + + +
+
+ + + twentyseventeen_get_svg( array( 'icon' => 'arrow-left' ) ) . '' . __( 'Previous page', 'twentyseventeen' ) . '', + 'next_text' => '' . __( 'Next page', 'twentyseventeen' ) . '' . twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ), + 'before_page_number' => '' . __( 'Page', 'twentyseventeen' ) . ' ', + ) + ); + + else : + + get_template_part( 'template-parts/post/content', 'none' ); + + endif; + ?> + +
+
+ +
+ +>> TABLE OF CONTENTS: +---------------------------------------------------------------- +1.0 General Block Styles +2.0 Blocks - Common Blocks +3.0 Blocks - Formatting +4.0 Blocks - Layout Elements +5.0 Blocks - Widgets +6.0 Blocks - Colors +--------------------------------------------------------------*/ + +/*-------------------------------------------------------------- +1.0 General Block Styles +--------------------------------------------------------------*/ + +/* Captions */ + +[class^="wp-block-"]:not(.wp-block-gallery) figcaption { + font-style: italic; + margin-bottom: 1.5em; + text-align: left; +} + +.rtl [class^="wp-block-"]:not(.wp-block-gallery) figcaption { + text-align: right; +} + +/*-------------------------------------------------------------- +2.0 Blocks - Common Blocks +--------------------------------------------------------------*/ + +/* Paragraph */ + +p.has-drop-cap:not(:focus)::first-letter { + font-size: 5em; + margin-top: 0.075em; +} + +/* Image */ + +.wp-block-image { + margin-bottom: 1.5em; +} + +.wp-block-image figure { + margin-bottom: 0; + margin-top: 0; +} + +.wp-block-image figure.alignleft { + margin-right: 1.5em; +} + +.wp-block-image figure.alignright { + margin-left: 1.5em; +} + +/* Gallery */ + +.wp-block-gallery { + margin-bottom: 1.5em; +} + +.wp-block-gallery figcaption { + font-style: italic; +} + +.wp-block-gallery.aligncenter { + display: flex; + margin: 0 -8px; +} + +/* Quote */ + +.wp-block-quote:not(.is-large):not(.is-style-large) { + border: 0; + padding: 0; +} + +.wp-block-quote.alignleft p:last-of-type, +.wp-block-quote.alignright p:last-of-type { + margin-bottom: 0; +} + +.wp-block-quote cite { + color: inherit; + font-size: inherit; +} + +/* Audio */ + +.wp-block-audio audio { + display: block; + width: 100%; +} + +/* Cover */ + +.wp-block-cover-image.alignright, +.wp-block-cover.alignright, +.wp-block-cover-image.alignleft, +.wp-block-cover.alignleft, +.wp-block-cover-image.aligncenter, +.wp-block-cover.aligncenter { + display: flex; +} + +/* File */ + +.wp-block-file .wp-block-file__button { + background-color: #222; + -webkit-border-radius: 2px; + border-radius: 2px; + -webkit-box-shadow: none; + box-shadow: none; + color: #fff; + display: inline-block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + margin-top: 2em; + padding: 0.7em 2em; + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + white-space: nowrap; +} + +.wp-block-file .wp-block-file__button:hover, +.wp-block-file .wp-block-file__button:focus { + background-color: #767676; + -webkit-box-shadow: none; + box-shadow: none; +} + +/*-------------------------------------------------------------- +3.0 Blocks - Formatting +--------------------------------------------------------------*/ + +/* Code */ + +.wp-block-code { + background: transparent; + border: 0; + padding: 0; +} + +/* Pullquote */ + +.wp-block-pullquote { + border: 0; +} + +.wp-block-pullquote__citation, +.wp-block-pullquote cite { + font-size: inherit; + text-transform: none; +} + +/* Table */ + +.wp-block-table thead th { + border-bottom: 2px solid #bbb; + padding-bottom: 0.5em; +} + +.wp-block-table tr { + border-bottom: 1px solid #eee; +} + +.wp-block-table th, +.wp-block-table td { + border: 0; +} + +.rtl .wp-block-table th, +.rtl .wp-block-table td { + text-align: right; +} + +/*-------------------------------------------------------------- +4.0 Blocks - Layout Elements +--------------------------------------------------------------*/ + +/* Buttons */ + +.wp-block-button .wp-block-button__link { + -webkit-box-shadow: none; + box-shadow: none; + display: inline-block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + line-height: 1.66; + margin-top: 2em; + padding: 0.7em 2em; + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + white-space: nowrap; +} + +.entry-content .wp-block-button__link { + background-color: #222; + color: #fff; +} + +.entry-content .is-style-outline .wp-block-button__link:not(.has-background) { + background-color: transparent; +} + +.entry-content .is-style-outline .wp-block-button__link:not(.has-text-color) { + color: #222; +} + +.colors-dark .wp-block-button__link { + background-color: #fff; + color: #000; +} + +.entry-content .wp-block-button__link:hover, +.entry-content .wp-block-button__link:focus, +.entry-content .is-style-outline .wp-block-button__link:not(.has-background):hover, +.entry-content .is-style-outline .wp-block-button__link:not(.has-background):focus { + background-color: #767676; + -webkit-box-shadow: none; + box-shadow: none; + color: #fff; +} + +.colors-dark .entry-content .wp-block-button__link:hover, +.colors-dark .entry-content .wp-block-button__link:focus, +.colors-dark .entry-content .is-style-outline .wp-block-button__link:not(.has-background):hover, +.colors-dark .entry-content .is-style-outline .wp-block-button__link:not(.has-background):focus { + background-color: #bbb; + color: #000; +} + +.colors-dark .entry-content .is-style-outline .wp-block-button__link:not(.has-text-color) { + color: #fff; +} + +.colors-dark .entry-content .is-style-outline .wp-block-button__link:not(.has-text-color):hover, +.colors-dark .entry-content .is-style-outline .wp-block-button__link:not(.has-text-color):focus { + color: #222; +} + +.colors-custom .entry-content .wp-block-button__link, +.colors-custom .entry-content .wp-block-button__link:hover, +.colors-custom .entry-content .wp-block-button__link:focus, +.colors-dark .entry-content .wp-block-button__link, +.colors-dark .entry-content .wp-block-button__link:hover, +.colors-dark .entry-content .wp-block-button__link:focus { + -webkit-box-shadow: none; + box-shadow: none; +} + +.colors-custom .entry-content .wp-block-button__link:hover, +.colors-custom .entry-content .wp-block-button__link:focus { + color: #fff; +} + +/* Separator */ + +.wp-block-separator { + border: 0; +} + +.wp-block-separator:not(.is-style-wide):not(.is-style-dots) { + max-width: 100px; +} + +/* Media & Text */ + +.wp-block-media-text { + margin-bottom: 1.5em; +} + +.wp-block-media-text *:last-child { + margin-bottom: 0; +} + +/*-------------------------------------------------------------- +5.0 Blocks - Widgets +--------------------------------------------------------------*/ + +/* Archives, Categories & Latest Posts */ + +.wp-block-archives.aligncenter, +.wp-block-categories.aligncenter, +.wp-block-latest-posts.aligncenter { + list-style-position: inside; + text-align: center; +} + +/* Comments */ + +.wp-block-latest-comments article { + margin-bottom: 4em; +} + +.blog:not(.has-sidebar) #primary .wp-block-latest-comments article, +.archive:not(.page-one-column):not(.has-sidebar) #primary .wp-block-latest-comments article, +.search:not(.has-sidebar) #primary .wp-block-latest-comments article { + float: none; + width: 100%; +} + +.wp-block-latest-comments .avatar, +.wp-block-latest-comments__comment-avatar { + border-radius: 0; +} + +.wp-block-latest-comments a { + -webkit-box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 1); + box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 1); + +} + +.wp-block-latest-comments__comment-meta { + font-size: 16px; + font-size: 1rem; + margin-bottom: 0.4em; +} + +.wp-block-latest-comments__comment-author, +.wp-block-latest-comments__comment-link { + font-weight: 700; + text-decoration: none; +} + +.wp-block-latest-comments__comment-date { + color: #767676; + font-size: 10px; + font-size: 0.625rem; + font-weight: 800; + letter-spacing: 0.1818em; + margin-top: 0.4em; + text-transform: uppercase; +} + +.editor-block-list__block .wp-block-latest-comments__comment-excerpt p { + font-size: 14px; + font-size: 0.875rem; +} + +/*-------------------------------------------------------------- +6.0 Blocks - Colors +--------------------------------------------------------------*/ + +.entry-content .has-pale-pink-color { + color: #f78da7; +} + +.entry-content .has-pale-pink-background-color, +.wp-block-button.is-style-outline .has-pale-pink-background-color:link { + background-color: #f78da7; +} + +.entry-content .has-vivid-red-color { + color: #cf2e2e; +} + +.entry-content .has-vivid-red-background-color, +.wp-block-button.is-style-outline .has-vivid-red-background-color:link { + background-color: #cf2e2e; +} + +.entry-content .has-luminous-vivid-orange-color { + color: #ff6900; +} + +.entry-content .has-luminous-vivid-orange-background-color, +.wp-block-button.is-style-outline .has-luminous-vivid-orange-background-color:link { + background-color: #ff6900; +} + +.entry-content .has-luminous-vivid-amber-color { + color: #fcb900; +} + +.entry-content .has-luminous-vivid-amber-background-color, +.wp-block-button.is-style-outline .has-luminous-vivid-amber-background-color:link { + background-color: #fcb900; +} + +.entry-content .has-light-green-cyan-color { + color: #7bdcb5; +} + +.entry-content .has-light-green-cyan-background-color, +.wp-block-button.is-style-outline .has-light-green-cyan-background-color:link { + background-color: #7bdcb5; +} + +.entry-content .has-vivid-green-cyan-color { + color: #00d084; +} + +.entry-content .has-vivid-green-cyan-background-color, +.wp-block-button.is-style-outline .has-vivid-green-cyan-background-color:link { + background-color: #00d084; +} + +.entry-content .has-pale-cyan-blue-color { + color: #8ed1fc; +} + +.entry-content .has-pale-cyan-blue-background-color, +.wp-block-button.is-style-outline .has-pale-cyan-blue-background-color:link { + background-color: #8ed1fc; +} + +.entry-content .has-vivid-cyan-blue-color { + color: #0693e3; +} + +.entry-content .has-vivid-cyan-blue-background-color, +.wp-block-button.is-style-outline .has-vivid-cyan-blue-background-color:link { + background-color: #0693e3; +} + +.entry-content .has-very-light-gray-color { + color: #eee; +} + +.entry-content .has-very-light-gray-background-color, +.wp-block-button.is-style-outline .has-very-light-gray-background-color:link { + background-color: #eee; +} + +.entry-content .has-cyan-bluish-gray-color { + color: #abb8c3; +} + +.entry-content .has-cyan-bluish-gray-background-color, +.wp-block-button.is-style-outline .has-cyan-bluish-gray-background-color:link { + background-color: #abb8c3; +} + +.entry-content .has-very-dark-gray-color { + color: #313131; +} + +.entry-content .has-very-dark-gray-background-color, +.wp-block-button.is-style-outline .has-very-dark-gray-background-color:link { + background-color: #313131; +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/colors-dark.css b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/colors-dark.css new file mode 100644 index 0000000..f7b977d --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/colors-dark.css @@ -0,0 +1,566 @@ +/** + * Twenty Seventeen: Dark Color Scheme + * + * See inc/color-patterns.php for dynamic color overrides for the theme. + * + * Colors are ordered from light to dark. + */ + +.colors-dark button, +.colors-dark input[type="button"], +.colors-dark input[type="submit"], +.colors-dark .entry-footer .edit-link a.post-edit-link { + background-color: #fff; +} + +.colors-dark a:hover, +.colors-dark a:active, +.colors-dark .entry-content a:focus, +.colors-dark .entry-content a:hover, +.colors-dark .entry-summary a:focus, +.colors-dark .entry-summary a:hover, +.colors-dark .comment-content a:focus, +.colors-dark .comment-content a:hover, +.colors-dark .widget a:focus, +.colors-dark .widget a:hover, +.colors-dark .site-footer .widget-area a:focus, +.colors-dark .site-footer .widget-area a:hover, +.colors-dark .posts-navigation a:focus, +.colors-dark .posts-navigation a:hover, +.colors-dark .comment-metadata a:focus, +.colors-dark .comment-metadata a:hover, +.colors-dark .comment-metadata a.comment-edit-link:focus, +.colors-dark .comment-metadata a.comment-edit-link:hover, +.colors-dark .comment-reply-link:focus, +.colors-dark .comment-reply-link:hover, +.colors-dark .widget_authors a:focus strong, +.colors-dark .widget_authors a:hover strong, +.colors-dark .entry-title a:focus, +.colors-dark .entry-title a:hover, +.colors-dark .entry-meta a:focus, +.colors-dark .entry-meta a:hover, +.colors-dark.blog .entry-meta a.post-edit-link:focus, +.colors-dark.blog .entry-meta a.post-edit-link:hover, +.colors-dark.archive .entry-meta a.post-edit-link:focus, +.colors-dark.archive .entry-meta a.post-edit-link:hover, +.colors-dark.search .entry-meta a.post-edit-link:focus, +.colors-dark.search .entry-meta a.post-edit-link:hover, +.colors-dark .page-links a:focus .page-number, +.colors-dark .page-links a:hover .page-number, +.colors-dark .entry-footer .cat-links a:focus, +.colors-dark .entry-footer .cat-links a:hover, +.colors-dark .entry-footer .tags-links a:focus, +.colors-dark .entry-footer .tags-links a:hover, +.colors-dark .post-navigation a:focus, +.colors-dark .post-navigation a:hover, +.colors-dark .pagination a:not(.prev):not(.next):focus, +.colors-dark .pagination a:not(.prev):not(.next):hover, +.colors-dark .comments-pagination a:not(.prev):not(.next):focus, +.colors-dark .comments-pagination a:not(.prev):not(.next):hover, +.colors-dark .logged-in-as a:focus, +.colors-dark .logged-in-as a:hover, +.colors-dark a:focus .nav-title, +.colors-dark a:hover .nav-title, +.colors-dark .edit-link a:focus, +.colors-dark .edit-link a:hover, +.colors-dark .site-info a:focus, +.colors-dark .site-info a:hover, +.colors-dark .widget .widget-title a:focus, +.colors-dark .widget .widget-title a:hover, +.colors-dark .widget ul li a:focus, +.colors-dark .widget ul li a:hover { + color: #fff; +} + +.colors-dark .entry-content a:focus, +.colors-dark .entry-content a:hover, +.colors-dark .entry-summary a:focus, +.colors-dark .entry-summary a:hover, +.colors-dark .comment-content a:focus, +.colors-dark .comment-content a:hover, +.colors-dark .widget a:focus, +.colors-dark .widget a:hover, +.colors-dark .site-footer .widget-area a:focus, +.colors-dark .site-footer .widget-area a:hover, +.colors-dark .posts-navigation a:focus, +.colors-dark .posts-navigation a:hover, +.colors-dark .comment-metadata a:focus, +.colors-dark .comment-metadata a:hover, +.colors-dark .comment-metadata a.comment-edit-link:focus, +.colors-dark .comment-metadata a.comment-edit-link:hover, +.colors-dark .comment-reply-link:focus, +.colors-dark .comment-reply-link:hover, +.colors-dark .widget_authors a:focus strong, +.colors-dark .widget_authors a:hover strong, +.colors-dark .entry-title a:focus, +.colors-dark .entry-title a:hover, +.colors-dark .entry-meta a:focus, +.colors-dark .entry-meta a:hover, +.colors-dark.blog .entry-meta a.post-edit-link:focus, +.colors-dark.blog .entry-meta a.post-edit-link:hover, +.colors-dark.archive .entry-meta a.post-edit-link:focus, +.colors-dark.archive .entry-meta a.post-edit-link:hover, +.colors-dark.search .entry-meta a.post-edit-link:focus, +.colors-dark.search .entry-meta a.post-edit-link:hover, +.colors-dark .page-links a:focus .page-number, +.colors-dark .page-links a:hover .page-number, +.colors-dark .entry-footer .cat-links a:focus, +.colors-dark .entry-footer .cat-links a:hover, +.colors-dark .entry-footer .tags-links a:focus, +.colors-dark .entry-footer .tags-links a:hover, +.colors-dark .post-navigation a:focus, +.colors-dark .post-navigation a:hover, +.colors-dark .pagination a:not(.prev):not(.next):focus, +.colors-dark .pagination a:not(.prev):not(.next):hover, +.colors-dark .comments-pagination a:not(.prev):not(.next):focus, +.colors-dark .comments-pagination a:not(.prev):not(.next):hover, +.colors-dark .logged-in-as a:focus, +.colors-dark .logged-in-as a:hover, +.colors-dark a:focus .nav-title, +.colors-dark a:hover .nav-title, +.colors-dark .edit-link a:focus, +.colors-dark .edit-link a:hover, +.colors-dark .site-info a:focus, +.colors-dark .site-info a:hover, +.colors-dark .widget .widget-title a:focus, +.colors-dark .widget .widget-title a:hover, +.colors-dark .widget ul li a:focus, +.colors-dark .widget ul li a:hover { + -webkit-box-shadow: inset 0 0 0 rgba(255, 255, 255, 0), 0 3px 0 rgba(255, 255, 255, 1); /* Equivalant to #fff */ + box-shadow: inset 0 0 0 rgba(255, 255, 255, 0), 0 3px 0 rgba(255, 255, 255, 1); /* Equivalant to #fff */ +} + +.colors-dark .entry-content a, +.colors-dark .entry-summary a, +.colors-dark .comment-content a, +.colors-dark .widget a, +.colors-dark .site-footer .widget-area a, +.colors-dark .posts-navigation a, +.colors-dark .widget_authors a strong { + -webkit-box-shadow: inset 0 -1px 0 rgba(240, 240, 240, 1); /* Equivalant to #f0f0f0 */ + box-shadow: inset 0 -1px 0 rgba(240, 240, 240, 1); /* Equivalant to #f0f0f0 */ +} + +body.colors-dark, +.colors-dark button, +.colors-dark input, +.colors-dark select, +.colors-dark textarea, +.colors-dark h3, +.colors-dark h4, +.colors-dark h6, +.colors-dark label, +.colors-dark .entry-title a, +.colors-dark.twentyseventeen-front-page .panel-content .recent-posts article, +.colors-dark .entry-footer .cat-links a, +.colors-dark .entry-footer .tags-links a, +.colors-dark .format-quote blockquote, +.colors-dark .nav-title, +.colors-dark .comment-body { + color: #eee; +} + +/* Placeholder text color -- selectors need to be separate to work. */ +.colors-dark ::-webkit-input-placeholder { + color: #ddd; +} + +.colors-dark :-moz-placeholder { + color: #ddd; +} + +.colors-dark ::-moz-placeholder { + color: #ddd; +} + +.colors-dark :-ms-input-placeholder { + color: #ddd; +} + +.colors-dark input[type="text"]:focus, +.colors-dark input[type="email"]:focus, +.colors-dark input[type="url"]:focus, +.colors-dark input[type="password"]:focus, +.colors-dark input[type="search"]:focus, +.colors-dark input[type="number"]:focus, +.colors-dark input[type="tel"]:focus, +.colors-dark input[type="range"]:focus, +.colors-dark input[type="date"]:focus, +.colors-dark input[type="month"]:focus, +.colors-dark input[type="week"]:focus, +.colors-dark input[type="time"]:focus, +.colors-dark input[type="datetime"]:focus, +.colors-dark input[type="datetime-local"]:focus, +.colors-dark input[type="color"]:focus, +.colors-dark textarea:focus, +.bypostauthor > .comment-body > .comment-meta > .comment-author .avatar { + border-color: #eee; +} + +.colors-dark input[type="text"]:focus, +.colors-dark input[type="email"]:focus, +.colors-dark input[type="url"]:focus, +.colors-dark input[type="password"]:focus, +.colors-dark input[type="search"]:focus, +.colors-dark input[type="number"]:focus, +.colors-dark input[type="tel"]:focus, +.colors-dark input[type="range"]:focus, +.colors-dark input[type="date"]:focus, +.colors-dark input[type="month"]:focus, +.colors-dark input[type="week"]:focus, +.colors-dark input[type="time"]:focus, +.colors-dark input[type="datetime"]:focus, +.colors-dark input[type="datetime-local"]:focus, +.colors-dark input[type="color"]:focus, +.colors-dark textarea:focus, +.colors-dark button.secondary, +.colors-dark input[type="reset"], +.colors-dark input[type="button"].secondary, +.colors-dark input[type="reset"].secondary, +.colors-dark input[type="submit"].secondary, +.colors-dark a, +.colors-dark .site-title, +.colors-dark .site-title a, +.colors-dark .navigation-top a, +.colors-dark .dropdown-toggle, +.colors-dark .menu-toggle, +.colors-dark .page .panel-content .entry-title, +.colors-dark .page-title, +.colors-dark.page:not(.twentyseventeen-front-page) .entry-title, +.colors-dark .page-links a .page-number, +.colors-dark .comment-metadata a.comment-edit-link, +.colors-dark .comment-reply-link .icon, +.colors-dark h2.widget-title, +.colors-dark mark, +.colors-dark .post-navigation a:focus .icon, +.colors-dark .post-navigation a:hover .icon, +.colors-dark.blog .entry-meta a.post-edit-link, +.colors-dark.archive .entry-meta a.post-edit-link, +.colors-dark.search .entry-meta a.post-edit-link, +.colors-custom .twentyseventeen-panel .recent-posts .entry-header .edit-link { + color: #ddd; +} + +.colors-dark h2, +.colors-dark blockquote, +.colors-dark input[type="text"], +.colors-dark input[type="email"], +.colors-dark input[type="url"], +.colors-dark input[type="password"], +.colors-dark input[type="search"], +.colors-dark input[type="number"], +.colors-dark input[type="tel"], +.colors-dark input[type="range"], +.colors-dark input[type="date"], +.colors-dark input[type="month"], +.colors-dark input[type="week"], +.colors-dark input[type="time"], +.colors-dark input[type="datetime"], +.colors-dark input[type="datetime-local"], +.colors-dark input[type="color"], +.colors-dark textarea, +.colors-dark .navigation-top .current-menu-item > a, +.colors-dark .navigation-top .current_page_item > a, +.colors-dark .entry-content blockquote.alignleft, +.colors-dark .entry-content blockquote.alignright, +.colors-dark .taxonomy-description, +.colors-dark .site-info a, +.colors-dark .wp-caption { + color: #ccc; +} + +.colors-dark abbr, +.colors-dark acronym { + border-bottom-color: #ccc; +} + +.colors-dark h5, +.main-navigation a:hover, +.colors-dark .entry-meta, +.colors-dark .entry-meta a, +.colors-dark .nav-subtitle, +.colors-dark .comment-metadata, +.colors-dark .comment-metadata a, +.colors-dark .no-comments, +.colors-dark .comment-awaiting-moderation, +.colors-dark .page-numbers.current, +.colors-dark .page-links .page-number, +.colors-dark .site-description { + color: #bbb; +} + +.colors-dark :not( .mejs-button ) > button:hover, +.colors-dark :not( .mejs-button ) > button:focus, +.colors-dark input[type="button"]:hover, +.colors-dark input[type="button"]:focus, +.colors-dark input[type="submit"]:hover, +.colors-dark input[type="submit"]:focus, +.colors-dark .prev.page-numbers:focus, +.colors-dark .prev.page-numbers:hover, +.colors-dark .next.page-numbers:focus, +.colors-dark .next.page-numbers:hover, +.colors-dark .entry-footer .edit-link a.post-edit-link:focus, +.colors-dark .entry-footer .edit-link a.post-edit-link:hover { + background: #bbb; +} + +.colors-dark .social-navigation a:hover, +.colors-dark .social-navigation a:focus { + background: #999; + color: #222; +} + +.colors-dark .entry-footer .cat-links .icon, +.colors-dark .entry-footer .tags-links .icon { + color: #666; +} + +.colors-dark button.secondary:hover, +.colors-dark button.secondary:focus, +.colors-dark input[type="reset"]:hover, +.colors-dark input[type="reset"]:focus, +.colors-dark input[type="button"].secondary:hover, +.colors-dark input[type="button"].secondary:focus, +.colors-dark input[type="reset"].secondary:hover, +.colors-dark input[type="reset"].secondary:focus, +.colors-dark input[type="submit"].secondary:hover, +.colors-dark input[type="submit"].secondary:focus, +.colors-dark .social-navigation a, +.colors-dark hr { + background: #555; +} + +.colors-dark input[type="text"], +.colors-dark input[type="email"], +.colors-dark input[type="url"], +.colors-dark input[type="password"], +.colors-dark input[type="search"], +.colors-dark input[type="number"], +.colors-dark input[type="tel"], +.colors-dark input[type="range"], +.colors-dark input[type="date"], +.colors-dark input[type="month"], +.colors-dark input[type="week"], +.colors-dark input[type="time"], +.colors-dark input[type="datetime"], +.colors-dark input[type="datetime-local"], +.colors-dark input[type="color"], +.colors-dark textarea, +.colors-dark select, +.colors-dark fieldset, +.colors-dark .widget .tagcloud a:hover, +.colors-dark .widget .tagcloud a:focus, +.colors-dark .widget.widget_tag_cloud a:hover, +.colors-dark .widget.widget_tag_cloud a:focus, +.colors-dark .wp_widget_tag_cloud a:hover, +.colors-dark .wp_widget_tag_cloud a:focus { + border-color: #555; +} + +.colors-dark button.secondary, +.colors-dark input[type="reset"], +.colors-dark input[type="button"].secondary, +.colors-dark input[type="reset"].secondary, +.colors-dark input[type="submit"].secondary, +.colors-dark .prev.page-numbers, +.colors-dark .next.page-numbers { + background-color: #444; +} + +.colors-dark .widget .tagcloud a, +.colors-dark .widget.widget_tag_cloud a, +.colors-dark .wp_widget_tag_cloud a { + border-color: #444; +} + +.colors-dark.twentyseventeen-front-page article:not(.has-post-thumbnail):not(:first-child), +.colors-dark .widget ul li { + border-top-color: #444; +} + +.colors-dark .widget ul li { + border-bottom-color: #444; +} + +.colors-dark pre, +.colors-dark mark, +.colors-dark ins, +.colors-dark input[type="text"], +.colors-dark input[type="email"], +.colors-dark input[type="url"], +.colors-dark input[type="password"], +.colors-dark input[type="search"], +.colors-dark input[type="number"], +.colors-dark input[type="tel"], +.colors-dark input[type="range"], +.colors-dark input[type="date"], +.colors-dark input[type="month"], +.colors-dark input[type="week"], +.colors-dark input[type="time"], +.colors-dark input[type="datetime"], +.colors-dark input[type="datetime-local"], +.colors-dark input[type="color"], +.colors-dark textarea, +.colors-dark select, +.colors-dark fieldset { + background: #333; +} + +.colors-dark tr, +.colors-dark thead th { + border-color: #333; +} + +.colors-dark .navigation-top, +.colors-dark .main-navigation > div > ul, +.colors-dark .pagination, +.colors-dark .comment-navigation, +.colors-dark .entry-footer, +.colors-dark .site-footer { + border-top-color: #333; +} + +.colors-dark .single-featured-image-header, +.colors-dark .navigation-top, +.colors-dark .main-navigation li, +.colors-dark .entry-footer, +.colors-dark #comments { + border-bottom-color: #333; +} + +.colors-dark .site-header, +.colors-dark .single-featured-image-header { + background-color: #262626; +} + +.colors-dark button, +.colors-dark input[type="button"], +.colors-dark input[type="submit"], +.colors-dark .prev.page-numbers:focus, +.colors-dark .prev.page-numbers:hover, +.colors-dark .next.page-numbers:focus, +.colors-dark .next.page-numbers:hover { + color: #222; +} + +body.colors-dark, +.colors-dark .site-content-contain, +.colors-dark .navigation-top, +.colors-dark .main-navigation ul { + background: #222; +} + +.colors-dark .entry-title a, +.colors-dark .entry-meta a, +.colors-dark.blog .entry-meta a.post-edit-link, +.colors-dark.archive .entry-meta a.post-edit-link, +.colors-dark.search .entry-meta a.post-edit-link, +.colors-dark .page-links a, +.colors-dark .page-links a .page-number, +.colors-dark .entry-footer a, +.colors-dark .entry-footer .cat-links a, +.colors-dark .entry-footer .tags-links a, +.colors-dark .edit-link a, +.colors-dark .post-navigation a, +.colors-dark .logged-in-as a, +.colors-dark .comment-navigation a, +.colors-dark .comment-metadata a, +.colors-dark .comment-metadata a.comment-edit-link, +.colors-dark .comment-reply-link, +.colors-dark a .nav-title, +.colors-dark .pagination a, +.colors-dark .comments-pagination a, +.colors-dark .widget .widget-title a, +.colors-dark .widget ul li a, +.colors-dark .site-footer .widget-area ul li a, +.colors-dark .site-info a { + -webkit-box-shadow: inset 0 -1px 0 rgba(34, 34, 34, 1); /* Equivalant to #222 */ + box-shadow: inset 0 -1px 0 rgba(34, 34, 34, 1); /* Equivalant to #222 */ +} + +/* Fixes linked images */ +.colors-dark .entry-content a img, +.colors-dark .comment-content a img, +.colors-dark .widget a img { + -webkit-box-shadow: 0 0 0 8px #222; + box-shadow: 0 0 0 8px #222; +} + +.colors-dark .entry-footer .edit-link a.post-edit-link { + color: #000; +} + +.colors-dark .menu-toggle, +.colors-dark .menu-toggle:hover, +.colors-dark .menu-toggle:focus, +.colors-dark .dropdown-toggle, +.colors-dark .dropdown-toggle:hover, +.colors-dark .dropdown-toggle:focus, +.colors-dark .menu-scroll-down, +.colors-dark .menu-scroll-down:hover, +.colors-dark .menu-scroll-down:focus { + background-color: transparent; +} + +.colors-dark .gallery-item a, +.colors-dark .gallery-item a:hover, +.colors-dark .gallery-item a:focus, +.colors-dark .widget .tagcloud a, +.colors-dark .widget .tagcloud a:focus, +.colors-dark .widget .tagcloud a:hover, +.colors-dark .widget.widget_tag_cloud a, +.colors-dark .widget.widget_tag_cloud a:focus, +.colors-dark .widget.widget_tag_cloud a:hover, +.colors-dark .wp_widget_tag_cloud a, +.colors-dark .wp_widget_tag_cloud a:focus, +.colors-dark .wp_widget_tag_cloud a:hover, +.colors-dark .entry-footer .edit-link a.post-edit-link:focus, +.colors-dark .entry-footer .edit-link a.post-edit-link:hover { + -webkit-box-shadow: none; + box-shadow: none; +} + +@media screen and (min-width: 48em) { + + .colors-dark .nav-links .nav-previous .nav-title .icon, + .colors-dark .nav-links .nav-next .nav-title .icon { + color: #eee; + } + + .colors-dark .main-navigation li li:hover, + .colors-dark .main-navigation li li.focus { + background: #999; + } + + .colors-dark .menu-scroll-down { + color: #999; + } + + .colors-dark .main-navigation ul ul { + border-color: #333; + background: #222; + } + + .colors-dark .main-navigation ul li.menu-item-has-children:before, + .colors-dark .main-navigation ul li.page_item_has_children:before { + border-bottom-color: #333; + } + + .main-navigation ul li.menu-item-has-children:after, + .main-navigation ul li.page_item_has_children:after { + border-bottom-color: #222; + } + + .colors-dark .main-navigation li li.focus > a, + .colors-dark .main-navigation li li:focus > a, + .colors-dark .main-navigation li li:hover > a, + .colors-dark .main-navigation li li a:hover, + .colors-dark .main-navigation li li a:focus, + .colors-dark .main-navigation li li.current_page_item a:hover, + .colors-dark .main-navigation li li.current-menu-item a:hover, + .colors-dark .main-navigation li li.current_page_item a:focus, + .colors-dark .main-navigation li li.current-menu-item a:focus { + color: #222; + } + +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-blocks.css b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-blocks.css new file mode 100644 index 0000000..361e5b6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-blocks.css @@ -0,0 +1,808 @@ +/* +Theme Name: Twenty Seventeen +Description: Used to style blocks in the editor. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +1.0 General Typography +2.0 General Block Settings +3.0 Blocks - Common Blocks +4.0 Blocks - Formatting +5.0 Blocks - Layout Elements +6.0 Blocks - Widgets + +--------------------------------------------------------------*/ + +/*-------------------------------------------------------------- +1.0 General Typography +--------------------------------------------------------------*/ + +.edit-post-visual-editor .editor-block-list__block, +.editor-default-block-appender textarea.editor-default-block-appender__content { + font-size: 15px; + font-size: 0.9375rem; +} + +.editor-default-block-appender textarea.editor-default-block-appender__content { + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; +} + +.edit-post-visual-editor .editor-block-list__block { + color: #333; +} + +.editor-post-title__block .editor-post-title__input { + color: #333; + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; + font-size: 20px; + font-size: 1.25rem; + font-weight: 300; +} + +@media screen and (min-width: 30em) { + + .edit-post-visual-editor .editor-block-list__block { + font-size: 18px; + font-size: 1.125rem; + } + + .editor-post-title__block .editor-post-title__input { + font-size: 26px; + font-size: 1.625rem; + } + + .edit-post-visual-editor .editor-block-list__block h1 { + font-size: 30px; + font-size: 1.875rem; + } + + .edit-post-visual-editor .editor-block-list__block h2 { + font-size: 26px; + font-size: 1.625rem; + } + + .edit-post-visual-editor .editor-block-list__block h3 { + font-size: 22px; + font-size: 1.375rem; + } + + .edit-post-visual-editor .editor-block-list__block h4 { + font-size: 18px; + font-size: 1.125rem; + } + + .edit-post-visual-editor .editor-block-list__block h5 { + font-size: 13px; + font-size: 0.8125rem; + } + + .edit-post-visual-editor .editor-block-list__block h6 { + font-size: 16px; + font-size: 1rem; + } +} + +@media screen and (min-width: 48em) { + + .edit-post-visual-editor .editor-block-list__block { + font-size: 16px; + font-size: 1rem; + } + + .editor-rich-text__tinymce.mce-content-body { + line-height: 1.5; + } +} + +/* Typography for Arabic Font */ + +html[lang="ar"] .edit-post-visual-editor .editor-block-list__block, +html[lang="ary"] .edit-post-visual-editor .editor-block-list__block, +html[lang="azb"] .edit-post-visual-editor .editor-block-list__block, +html[lang="fa-IR"] .edit-post-visual-editor .editor-block-list__block, +html[lang="haz"] .edit-post-visual-editor .editor-block-list__block, +html[lang="ps"] .edit-post-visual-editor .editor-block-list__block, +html[lang="ur"] .edit-post-visual-editor .editor-block-list__block { + font-family: Tahoma, Arial, sans-serif; +} + +html[lang="ar"] .edit-post-visual-editor h1, +html[lang="ar"] .edit-post-visual-editor h2, +html[lang="ar"] .edit-post-visual-editor h3, +html[lang="ar"] .edit-post-visual-editor h4, +html[lang="ar"] .edit-post-visual-editor h5, +html[lang="ar"] .edit-post-visual-editor h6, +html[lang="ary"] .edit-post-visual-editor h1, +html[lang="ary"] .edit-post-visual-editor h2, +html[lang="ary"] .edit-post-visual-editor h3, +html[lang="ary"] .edit-post-visual-editor h4, +html[lang="ary"] .edit-post-visual-editor h5, +html[lang="ary"] .edit-post-visual-editor h6, +html[lang="azb"] .edit-post-visual-editor h1, +html[lang="azb"] .edit-post-visual-editor h2, +html[lang="azb"] .edit-post-visual-editor h3, +html[lang="azb"] .edit-post-visual-editor h4, +html[lang="azb"] .edit-post-visual-editor h5, +html[lang="azb"] .edit-post-visual-editor h6, +html[lang="fa-IR"] .edit-post-visual-editor h1, +html[lang="fa-IR"] .edit-post-visual-editor h2, +html[lang="fa-IR"] .edit-post-visual-editor h3, +html[lang="fa-IR"] .edit-post-visual-editor h4, +html[lang="fa-IR"] .edit-post-visual-editor h5, +html[lang="fa-IR"] .edit-post-visual-editor h6, +html[lang="haz"] .edit-post-visual-editor h1, +html[lang="haz"] .edit-post-visual-editor h2, +html[lang="haz"] .edit-post-visual-editor h3, +html[lang="haz"] .edit-post-visual-editor h4, +html[lang="haz"] .edit-post-visual-editor h5, +html[lang="haz"] .edit-post-visual-editor h6, +html[lang="ps"] .edit-post-visual-editor h1, +html[lang="ps"] .edit-post-visual-editor h2, +html[lang="ps"] .edit-post-visual-editor h3, +html[lang="ps"] .edit-post-visual-editor h4, +html[lang="ps"] .edit-post-visual-editor h5, +html[lang="ps"] .edit-post-visual-editor h6, +html[lang="ur"] .edit-post-visual-editor h1, +html[lang="ur"] .edit-post-visual-editor h2, +html[lang="ur"] .edit-post-visual-editor h3, +html[lang="ur"] .edit-post-visual-editor h4, +html[lang="ur"] .edit-post-visual-editor h5, +html[lang="ur"] .edit-post-visual-editor h6 { + font-weight: 700; +} + +/* Typography for Chinese Font */ + +html[lang^="zh-"] .edit-post-visual-editor .editor-block-list__block { + font-family: "PingFang TC", "Helvetica Neue", Helvetica, STHeitiTC-Light, Arial, sans-serif; +} + +html[lang="zh-CN"] .edit-post-visual-editor .editor-block-list__block { + font-family: "PingFang SC", "Helvetica Neue", Helvetica, STHeitiSC-Light, Arial, sans-serif; +} + +html[lang^="zh-"] .edit-post-visual-editor h1, +html[lang^="zh-"] .edit-post-visual-editor h2, +html[lang^="zh-"] .edit-post-visual-editor h3, +html[lang^="zh-"] .edit-post-visual-editor h4, +html[lang^="zh-"] .edit-post-visual-editor h5, +html[lang^="zh-"] .edit-post-visual-editor h6 { + font-weight: 700; +} + +/* Typography for Cyrillic Font */ + +html[lang="bg-BG"] .edit-post-visual-editor .editor-block-list__block, +html[lang="ru-RU"] .edit-post-visual-editor .editor-block-list__block, +html[lang="uk"] .edit-post-visual-editor .editor-block-list__block { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +html[lang="bg-BG"] .edit-post-visual-editor h1, +html[lang="bg-BG"] .edit-post-visual-editor h2, +html[lang="bg-BG"] .edit-post-visual-editor h3, +html[lang="bg-BG"] .edit-post-visual-editor h4, +html[lang="bg-BG"] .edit-post-visual-editor h5, +html[lang="bg-BG"] .edit-post-visual-editor h6, +html[lang="ru-RU"] .edit-post-visual-editor h1, +html[lang="ru-RU"] .edit-post-visual-editor h2, +html[lang="ru-RU"] .edit-post-visual-editor h3, +html[lang="ru-RU"] .edit-post-visual-editor h4, +html[lang="ru-RU"] .edit-post-visual-editor h5, +html[lang="ru-RU"] .edit-post-visual-editor h6, +html[lang="uk"] .edit-post-visual-editor h1, +html[lang="uk"] .edit-post-visual-editor h2, +html[lang="uk"] .edit-post-visual-editor h3, +html[lang="uk"] .edit-post-visual-editor h4, +html[lang="uk"] .edit-post-visual-editor h5, +html[lang="uk"] .edit-post-visual-editor h6 { + font-weight: 700; + line-height: 1.2; +} + +/* Typography for Devanagari Font */ + +html[lang="bn-BD"] .edit-post-visual-editor .editor-block-list__block, +html[lang="hi-IN"] .edit-post-visual-editor .editor-block-list__block, +html[lang="mr-IN"] .edit-post-visual-editor .editor-block-list__block { + font-family: Arial, sans-serif; +} + +html[lang="bn-BD"] .edit-post-visual-editor h1, +html[lang="bn-BD"] .edit-post-visual-editor h2, +html[lang="bn-BD"] .edit-post-visual-editor h3, +html[lang="bn-BD"] .edit-post-visual-editor h4, +html[lang="bn-BD"] .edit-post-visual-editor h5, +html[lang="bn-BD"] .edit-post-visual-editor h6, +html[lang="hi-IN"] .edit-post-visual-editor h1, +html[lang="hi-IN"] .edit-post-visual-editor h2, +html[lang="hi-IN"] .edit-post-visual-editor h3, +html[lang="hi-IN"] .edit-post-visual-editor h4, +html[lang="hi-IN"] .edit-post-visual-editor h5, +html[lang="hi-IN"] .edit-post-visual-editor h6, +html[lang="mr-IN"] .edit-post-visual-editor h1, +html[lang="mr-IN"] .edit-post-visual-editor h2, +html[lang="mr-IN"] .edit-post-visual-editor h3, +html[lang="mr-IN"] .edit-post-visual-editor h4, +html[lang="mr-IN"] .edit-post-visual-editor h5, +html[lang="mr-IN"] .edit-post-visual-editor h6 { + font-weight: 700; +} + +/* Typography for Greek Font */ + +html[lang="el"] .edit-post-visual-editor .editor-block-list__block { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +html[lang="el"] .edit-post-visual-editor h1, +html[lang="el"] .edit-post-visual-editor h2, +html[lang="el"] .edit-post-visual-editor h3, +html[lang="el"] .edit-post-visual-editor h4, +html[lang="el"] .edit-post-visual-editor h5, +html[lang="el"] .edit-post-visual-editor h6 { + font-weight: 700; + line-height: 1.3; +} + +/* Typography for Gujarati Font */ + +html[lang="gu-IN"] .edit-post-visual-editor .editor-block-list__block { + font-family: Arial, sans-serif; +} + +html[lang="gu-IN"] .edit-post-visual-editor h1, +html[lang="gu-IN"] .edit-post-visual-editor h2, +html[lang="gu-IN"] .edit-post-visual-editor h3, +html[lang="gu-IN"] .edit-post-visual-editor h4, +html[lang="gu-IN"] .edit-post-visual-editor h5, +html[lang="gu-IN"] .edit-post-visual-editor h6 { + font-weight: 700; +} + +/* Typography for Hebrew Font */ + +html[lang="he-IL"] .edit-post-visual-editor .editor-block-list__block { + font-family: "Arial Hebrew", Arial, sans-serif; +} + +html[lang="he-IL"] .edit-post-visual-editor h1, +html[lang="he-IL"] .edit-post-visual-editor h2, +html[lang="he-IL"] .edit-post-visual-editor h3, +html[lang="he-IL"] .edit-post-visual-editor h4, +html[lang="he-IL"] .edit-post-visual-editor h5, +html[lang="he-IL"] .edit-post-visual-editor h6 { + font-weight: 700; +} + +/* Typography for Japanese Font */ + +html[lang="ja"] .edit-post-visual-editor .editor-block-list__block { + font-family: "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; +} + +html[lang="ja"] .edit-post-visual-editor h1, +html[lang="ja"] .edit-post-visual-editor h2, +html[lang="ja"] .edit-post-visual-editor h3, +html[lang="ja"] .edit-post-visual-editor h4, +html[lang="ja"] .edit-post-visual-editor h5, +html[lang="ja"] .edit-post-visual-editor h6 { + font-weight: 700; +} + +/* Typography for Korean font */ + +html[lang="ko-KR"] .edit-post-visual-editor .editor-block-list__block { + font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif; +} + +html[lang="ko-KR"] .edit-post-visual-editor h1, +html[lang="ko-KR"] .edit-post-visual-editor h2, +html[lang="ko-KR"] .edit-post-visual-editor h3, +html[lang="ko-KR"] .edit-post-visual-editor h4, +html[lang="ko-KR"] .edit-post-visual-editor h5, +html[lang="ko-KR"] .edit-post-visual-editor h6 { + font-weight: 600; +} + +/* Typography for Thai Font */ + +html[lang="th"] .edit-post-visual-editor .editor-block-list__block { + line-height: 1.8; + font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +html[lang="th"] .edit-post-visual-editor h1, +html[lang="th"] .edit-post-visual-editor h2, +html[lang="th"] .edit-post-visual-editor h3, +html[lang="th"] .edit-post-visual-editor h4, +html[lang="th"] .edit-post-visual-editor h5, +html[lang="th"] .edit-post-visual-editor h6 { + line-height: 1.65; + font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +/* Remove letter-spacing for all non-latin alphabets */ + +html[lang="ar"] .edit-post-visual-editor *, +html[lang="ary"] .edit-post-visual-editor *, +html[lang="azb"] .edit-post-visual-editor *, +html[lang="haz"] .edit-post-visual-editor *, +html[lang="ps"] .edit-post-visual-editor *, +html[lang^="zh-"] .edit-post-visual-editor *, +html[lang="bg-BG"] .edit-post-visual-editor *, +html[lang="ru-RU"] .edit-post-visual-editor *, +html[lang="uk"] .edit-post-visual-editor *, +html[lang="bn-BD"] .edit-post-visual-editor *, +html[lang="hi-IN"] .edit-post-visual-editor *, +html[lang="mr-IN"] .edit-post-visual-editor *, +html[lang="el"] .edit-post-visual-editor *, +html[lang="gu-IN"] .edit-post-visual-editor *, +html[lang="he-IL"] .edit-post-visual-editor *, +html[lang="ja"] .edit-post-visual-editor *, +html[lang="ko-KR"] .edit-post-visual-editor *, +html[lang="th"] .edit-post-visual-editor * { + letter-spacing: 0 !important; +} + +/*-------------------------------------------------------------- +2.0 General Block Settings +--------------------------------------------------------------*/ + +/* Main column width */ + +.editor-styles-wrapper { + max-width: 100% !important; /* Override where editor-style.css is affecting this. */ +} + +.wp-block { + max-width: 674px; /* Based on one-column post width; 644px + 30px to account for padding. */ +} + +/* Alignments */ + +.edit-post-visual-editor .alignleft { + margin-right: 1.5em; +} + +.edit-post-visual-editor .alignright { + margin-left: 1.5em; +} + +/* Link styles */ + +.edit-post-visual-editor a, +.editor-block-list__block a, +.wp-block-freeform.block-library-rich-text__tinymce a { + color: #222; +} + +/* List styles */ + +.edit-post-visual-editor ul:not(.wp-block-gallery), +.editor-block-list__block ul:not(.wp-block-gallery), +.block-library-list ul, +.edit-post-visual-editor ol, +.editor-block-list__block ol, +.block-library-list ol, +.block-library-list .editor-rich-text__tinymce { + margin: 0 0 1.5em 1.5em; + padding: 0; +} + +.edit-post-visual-editor ul:not(.wp-block-gallery), +.editor-block-list__block ul:not(.wp-block-gallery), +.block-library-list ul { + list-style: disc; +} + +.edit-post-visual-editor ol, +.editor-block-list__block ol, +.block-library-list ol { + list-style: decimal; +} + +.edit-post-visual-editor li > ul:not(.wp-block-gallery), +.editor-block-list__block li > ul:not(.wp-block-gallery), +.block-library-list li > ul:not(.wp-block-gallery), +.edit-post-visual-editor li > ol, +.editor-block-list__block li > ol, +.block-library-list li > ol { + margin-bottom: 0; + margin-left: 1.5em; +} + +.edit-post-visual-editor li, +.editor-block-list__block li, +.block-library-list li { + margin: 0; +} + +.rtl .edit-post-visual-editor ul:not(.wp-block-gallery), +.rtl .editor-block-list__block ul:not(.wp-block-gallery), +.rtl .block-library-list ul, +.rtl .edit-post-visual-editor ol, +.rtl .editor-block-list__block ol, +.rtl .block-library-list ol, +.rtl .block-library-list .editor-rich-text__tinymce, +.rtl .edit-post-visual-editor li > ul:not(.wp-block-gallery), +.rtl .editor-block-list__block li > ul:not(.wp-block-gallery), +.rtl .block-library-list li > ul:not(.wp-block-gallery), +.rtl .edit-post-visual-editor li > ol, +.rtl .editor-block-list__block li > ol, +.rtl .block-library-list li > ol { + margin-left: 1.5em; + margin-right: 1.5em; +} + +/* Quote styles */ + +.editor-block-list__block blockquote p { + font-size: 18px; + font-size: 1.125rem; +} + +.editor-block-list__block blockquote.alignright p, +.editor-block-list__block blockquote.alignleft p { + font-size: 13px; + font-size: 0.8125rem; +} + +.editor-block-list__block blockquote cite { + display: block; + font-style: normal; + font-weight: 600; + margin-top: 0.5em; +} + +/* Caption styles*/ + +[class^="wp-block-"]:not(.wp-block-gallery) figcaption { + font-style: italic; + margin-bottom: 1.5em; + text-align: left; +} + +.rtl [class^="wp-block-"]:not(.wp-block-gallery) figcaption { + text-align: right; +} + +/* Code styles */ + +.wp-block-freeform.block-library-rich-text__tinymce code { + background: transparent; +} + +/* Table styles */ + +.rtl .editor-block-list__block th { + text-align: right; +} + +/*-------------------------------------------------------------- +3.0 Blocks - Common Blocks +--------------------------------------------------------------*/ + +/* Paragraph */ + +.wp-block-paragraph.has-drop-cap:not(:focus)::first-letter { + font-size: 5em; + margin-top: 0.075em; +} + +.wp-block-paragraph.has-background { + padding: 20px 30px; +} + +/* Gallery */ + +.wp-block-gallery figcaption { + font-style: italic; +} + +/* Quote */ + +.wp-block-quote { + color: #666; + font-size: 18px; + font-size: 1.125rem; + font-style: italic; + line-height: 1.7; +} + +.wp-block-quote:not(.is-large):not(.is-style-large) { + border: 0; + padding: 0; +} + +.editor-block-list__block .wp-block-quote .wp-block-quote__citation { + color: inherit; + display: block; + font-size: inherit; + font-style: normal; + font-weight: 600; + margin-top: 0.5em; +} + +.wp-block-quote.alignleft, +.wp-block-quote.alignright { + color: #666; + width: 48%; +} + +.editor-block-list__block .wp-block-quote.alignleft p, +.editor-block-list__block .wp-block-quote.alignright p, +.editor-block-list__block .wp-block-quote.alignleft .wp-block-quote__citation, +.editor-block-list__block .wp-block-quote.alignright .wp-block-quote__citation { + font-size: 13px; + font-size: 0.8125rem; +} + +.editor-block-list__block .wp-block-quote.alignleft p:last-of-type, +.editor-block-list__block .wp-block-quote.alignright p:last-of-type { + margin-bottom: 0; +} + +.wp-block-quote.is-large .wp-block-quote__citation, +.wp-block-quote.is-style-large .wp-block-quote__citation { + text-align: right; +} + +.rtl .wp-block-quote.is-large .wp-block-quote__citation, +.rtl .wp-block-quote.is-style-large .wp-block-quote__citation { + text-align: left; +} + +@media screen and (min-width: 30em) { + .editor-block-list__block .wp-block-quote.alignleft p, + .editor-block-list__block .wp-block-quote.alignright p, + .editor-block-list__block .wp-block-quote.alignleft .wp-block-quote__citation, + .editor-block-list__block .wp-block-quote.alignright .wp-block-quote__citation, + .editor-block-list__block .wp-block-quote footer { + font-size: 14px; + font-size: 0.875rem; + } +} + +@media screen and (min-width: 48em) { + .editor-block-list__block .wp-block-quote.alignleft p, + .editor-block-list__block .wp-block-quote.alignright p, + .editor-block-list__block .wp-block-quote.alignleft .wp-block-quote__citation, + .editor-block-list__block .wp-block-quote.alignright .wp-block-quote__citation { + font-size: 13px; + font-size: 0.8125rem; + } + + .editor-block-list__block .wp-block-quote.alignleft { + margin-left: -17.5%; + width: 48%; + } + + .editor-block-list__block .wp-block-quote.alignright { + margin-right: -17.5%; + width: 48%; + } +} + +/* File */ + +.wp-block-file .wp-block-file__textlink { + -webkit-box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 1px 0 rgba(0, 0, 0, 1); + box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 1px 0 rgba(0, 0, 0, 1); +} + +.wp-block-file .wp-block-file__button { + background-color: #222; + -webkit-border-radius: 2px; + border-radius: 2px; + -webkit-box-shadow: none; + box-shadow: none; + color: #fff; + display: inline-block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + padding: 0.7em 2em; + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + white-space: nowrap; +} + +/*-------------------------------------------------------------- +4.0 Blocks - Formatting +--------------------------------------------------------------*/ + +/* Code */ + +.wp-block-code { + border: 0; + padding: 0; +} + +/* Classic */ + +.wp-block-freeform.block-library-rich-text__tinymce li, +.wp-block-freeform.block-library-rich-text__tinymce p { + line-height: 1.5; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote { + border: 0; + padding: 0; +} + +/* Pullquote */ + +.wp-block-pullquote { + border: 0; +} + +.wp-block-pullquote.alignleft blockquote > .editor-rich-text p, +.wp-block-pullquote.alignright blockquote > .editor-rich-text p { + font-size: 20px; +} + + +.wp-block-pullquote .wp-block-pullquote__citation { + font-size: inherit; + font-weight: 600; + text-transform: none; +} + +/* Table */ + +table.wp-block-table { + border-collapse: collapse; + margin: 0 0 1.5em; + width: 100%; +} + +table.wp-block-table thead th { + border: 0; + border-bottom: 2px solid #bbb; + padding-bottom: 0.5em; +} + +table.wp-block-table th { + padding: 0.4em; + text-align: left; +} + +table.wp-block-table tr { + border-bottom: 1px solid #eee; +} + +table.wp-block-table th, +table.wp-block-table td { + border: 0; + padding: 0.4em; +} + +table.wp-block-table th:first-child, +table.wp-block-table td:first-child { + padding-left: 0; +} + +table.wp-block-table th:last-child, +table.wp-block-table td:last-child { + padding-right: 0; +} + +.wp-block-table__cell-content { + padding: 0; +} + +.rtl table.wp-block-table th, +.rtl table.wp-block-table td { + text-align: right; +} + +/*-------------------------------------------------------------- +5.0 Blocks - Layout Elements +--------------------------------------------------------------*/ + +/* Separator */ + +.edit-post-visual-editor .wp-block-separator { + border: 0; +} + +/* Buttons */ + +.wp-block-button .wp-block-button__link { + -webkit-box-shadow: none; + box-shadow: none; + display: inline-block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + line-height: 1.66; + margin-top: 2em; + padding: 0.7em 2em; + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + white-space: nowrap; +} + +.wp-block-button .wp-block-button__link[data-is-placeholder-visible="true"] { + height: auto; +} + +.wp-block-button__link { + background-color: #222; + color: #fff; +} + +.is-style-outline .wp-block-button__link { + color: #222; +} + +/* Media & Text */ + +.wp-block-media-text *:last-child { + margin-bottom: 0; +} + +/*-------------------------------------------------------------- +6.0 Blocks - Widgets +--------------------------------------------------------------*/ + +/* Archives, Categories & Latest Posts */ + +[data-align="center"] .wp-block-archives ul, +[data-align="center"] .wp-block-categories ul, +[data-align="center"] .wp-block-latest-posts ul { + list-style-position: inside; +} + +/* Latest Comments */ + +.editor-block-list__block ol.wp-block-latest-comments > li:before { + content: ''; +} + +.wp-block-latest-comments article { + margin-bottom: 4em; +} + +.wp-block-latest-comments .avatar, +.wp-block-latest-comments__comment-avatar { + border-radius: 0; +} + +.wp-block-latest-comments__comment-meta { + font-size: 16px; + font-size: 1rem; + margin-bottom: 0.4em; +} + +.editor-block-list__block .wp-block-latest-comments__comment-meta a { + -webkit-box-shadow: none; + box-shadow: none; + font-weight: 700; +} + +.wp-block-latest-comments__comment-date { + color: #767676; + font-size: 10px; + font-size: 0.625rem; + font-weight: 800; + letter-spacing: 0.1818em; + margin-top: 0.4em; + text-transform: uppercase; +} + +.editor-block-list__block .wp-block-latest-comments__comment-excerpt p { + font-size: 14px; + font-size: 0.875rem; +} + +/* Latest Posts */ + +.edit-post-visual-editor .wp-block-latest-posts.is-grid { + list-style: none; + margin-left: 0; + margin-right: 0; +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-style.css b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-style.css new file mode 100644 index 0000000..82dc706 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/editor-style.css @@ -0,0 +1,582 @@ +/* +Theme Name: Twenty Seventeen +Description: Used to style the TinyMCE editor. +*/ + + +/** + * Table of Contents: + * + * 1.0 - Body + * 2.0 - Typography + * 3.0 - Elements + * 4.0 - Alignment + * 5.0 - Caption + * 6.0 - Galleries + * 7.0 - Media Elements + * 8.0 - RTL + */ + +/** + * 1.0 - Body + */ + +body { + background-color: #fff; + color: #333; + margin: 20px 40px; + max-width: 580px; +} + +/** + * 2.0 - Typography + */ + +body, +button, +input, +select, +textarea { + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; + font-size: 16px; + font-size: 1rem; + font-weight: 400; + line-height: 1.66; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + line-height: 1.4; + margin: 0 0 0.75em; + padding: 1.5em 0 0; +} + +h1:first-child, +h2:first-child, +h3:first-child, +h4:first-child, +h5:first-child, +h6:first-child { + padding-top: 0; +} + +h1 { + font-size: 24px; + font-size: 1.5rem; + font-weight: 300; +} + +h2 { + color: #666; + font-size: 20px; + font-size: 1.25rem; + font-weight: 300; +} + +h3 { + color: #333; + font-size: 18px; + font-size: 1.125rem; + font-weight: 300; +} + +h4 { + color: #333; + font-size: 16px; + font-size: 1rem; + font-weight: 800; +} + +h5 { + color: #767676; + font-size: 13px; + font-size: 0.8125rem; + font-weight: 800; + letter-spacing: 0.15em; + text-transform: uppercase; +} + +h6 { + color: #333; + font-size: 15px; + font-size: 0.9375rem; + font-weight: 800; +} + +p { + margin: 0 0 1.5em; + padding: 0; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote { + color: #666; + font-size: 18px; + font-size: 1.125rem; + font-style: italic; + line-height: 1.7; + margin: 0; + overflow: hidden; + padding: 0; +} + +blockquote.alignleft, +blockquote.alignright { + font-size: 14px; + font-size: 0.875rem; + width: 34%; +} + +address { + margin: 0 0 1.5em; +} + +pre { + background: #eee; + font-family: "Courier 10 Pitch", Courier, monospace; + font-size: 15px; + font-size: 0.9375rem; + line-height: 1.6; + margin-bottom: 1.6em; + max-width: 100%; + overflow: auto; + padding: 1.6em; +} + +code, +kbd, +tt, +var { + font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; + font-size: 15px; + font-size: 0.9375rem; +} + +abbr, +acronym { + border-bottom: 1px dotted #666; + cursor: help; +} + +mark, +ins { + background: #eee; + text-decoration: none; +} + +big { + font-size: 125%; +} + +blockquote, +q { + quotes: "" ""; +} + +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ""; +} + +/* Typography for Thai Font */ + +html[lang="th"] h1, +html[lang="th"] h2, +html[lang="th"] h3, +html[lang="th"] h4, +html[lang="th"] h5, +html[lang="th"] h6 { + letter-spacing: 0; + line-height: 1.65; +} + +html[lang="th"] body, +html[lang="th"] button, +html[lang="th"] input, +html[lang="th"] select, +html[lang="th"] textarea { + line-height: 1.8; +} + +/** + * 3.0 - Elements + */ + +hr { + background-color: #bbb; + border: 0; + height: 1px; + margin-bottom: 1.5em; +} + +ul, +ol { + margin: 0 0 1.5em; + padding: 0; +} + +ul { + list-style: disc; +} + +ol > li { + position: relative; +} + +li > ul, +li > ol { + margin-bottom: 0; + margin-left: 1.5em; +} + +dt { + font-weight: 700; +} + +dd { + margin: 0 1.5em 1.5em; +} + +table { + border-collapse: collapse; + margin: 0 0 1.5em; + width: 100%; +} + +thead th { + border-bottom: 2px solid #bbb; + padding-bottom: 0.5em; +} + +th { + padding: 0.4em; + text-align: left; +} + +tr { + border-bottom: 1px solid #eee; +} + +td { + padding: 0.4em; +} + +th:first-child, +td:first-child { + padding-left: 0; +} + +th:last-child, +td:last-child { + padding-right: 0; +} + +a { + -webkit-box-shadow: inset 0 -1px 0 rgba(15, 15, 15, 1); + box-shadow: inset 0 -1px 0 rgba(15, 15, 15, 1); + color: #222; + text-decoration: none; + -webkit-transition: color 80ms ease-in, -webkit-box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, -webkit-box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, box-shadow 130ms ease-in-out, -webkit-box-shadow 130ms ease-in-out; +} + +a:focus { + outline: thin dotted; +} + +a:hover, +a:focus { + color: #000; + -webkit-box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 3px 0 rgba(0, 0, 0, 1); + box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 3px 0 rgba(0, 0, 0, 1); +} + +/* Fixes linked images */ + +a img { + background: #fff; + -webkit-box-shadow: 0 0 0 6px #fff; + box-shadow: 0 0 0 6px #fff; +} + +/** + * 4.0 - Alignment + */ + +img { + height: auto; /* Make sure images are scaled correctly. */ + max-width: 100%; /* Adhere to container width. */ +} + +embed, +iframe, +object { + margin-bottom: 1.5em; + max-width: 100%; +} + +/** + * 5.0 - Caption + */ + +.wp-caption { + color: #666; + font-size: 13px; + font-size: 0.8125rem; + font-style: italic; + margin-bottom: 1.5em; + max-width: 100%; +} + +.wp-caption img[class*="wp-image-"] { + display: block; + margin-left: auto; + margin-right: auto; +} + +.wp-caption .wp-caption-text { + margin: 0.8075em 0; +} + +/** + * 6.0 - Galleries + */ + +.gallery { + margin-bottom: 1.5em; +} + +.gallery-item { + display: inline-block; + text-align: center; + vertical-align: top; + width: 100%; +} + +.gallery-item a, +.gallery-item a:hover, +.gallery-item a:focus { + -webkit-box-shadow: none; + box-shadow: none; + background: none; + display: inline-block; +} + +.gallery-columns-2 .gallery-item { + max-width: 50%; +} + +.gallery-columns-3 .gallery-item { + max-width: 33.33%; +} + +.gallery-columns-4 .gallery-item { + max-width: 25%; +} + +.gallery-columns-5 .gallery-item { + max-width: 20%; +} + +.gallery-columns-6 .gallery-item { + max-width: 16.66%; +} + +.gallery-columns-7 .gallery-item { + max-width: 14.28%; +} + +.gallery-columns-8 .gallery-item { + max-width: 12.5%; +} + +.gallery-columns-9 .gallery-item { + max-width: 11.11%; +} + +.gallery-caption { + display: block; +} + +/** + * 7.0 - Media Elements + */ + +.mejs-container { + margin-bottom: 1.5em; +} + +/* Audio Player */ + +.mejs-controls a.mejs-horizontal-volume-slider, +.mejs-controls a.mejs-horizontal-volume-slider:focus, +.mejs-controls a.mejs-horizontal-volume-slider:hover { + background: transparent; + border: 0; +} + +/* Playlist Color Overrides: Light */ + +.wp-playlist-light { + border-color: #eee; + color: #222; +} + +.wp-playlist-light .wp-playlist-current-item .wp-playlist-item-album { + color: #333; +} + +.wp-playlist-light .wp-playlist-current-item .wp-playlist-item-artist { + color: #767676; +} + +.wp-playlist-light .wp-playlist-item { + border-bottom: 1px dotted #eee; + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; +} + +.wp-playlist-light .wp-playlist-item:hover, +.wp-playlist-light .wp-playlist-item:focus { + border-bottom-color: rgba(0, 0, 0, 0); + background-color: #767676; + color: #fff; +} + +.wp-playlist-light a.wp-playlist-caption:hover, +.wp-playlist-light .wp-playlist-item:hover a, +.wp-playlist-light .wp-playlist-item:focus a { + color: #fff; +} + +/* Playlist Color Overrides: Dark */ + +.wp-playlist-dark { + background: #222; + border-color: #333; +} + +.wp-playlist-dark .mejs-container .mejs-controls { + background-color: #333; +} + +.wp-playlist-dark .wp-playlist-caption { + color: #fff; +} + +.wp-playlist-dark .wp-playlist-current-item .wp-playlist-item-album { + color: #eee; +} + +.wp-playlist-dark .wp-playlist-current-item .wp-playlist-item-artist { + color: #aaa; +} + +.wp-playlist-dark .wp-playlist-playing { + background-color: #333; +} + +.wp-playlist-dark .wp-playlist-item { + border-bottom: 1px dotted #555; + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; +} + +.wp-playlist-dark .wp-playlist-item:hover, +.wp-playlist-dark .wp-playlist-item:focus { + border-bottom-color: rgba(0, 0, 0, 0); + background-color: #aaa; + color: #222; +} + +.wp-playlist-dark a.wp-playlist-caption:hover, +.wp-playlist-dark .wp-playlist-item:hover a, +.wp-playlist-dark .wp-playlist-item:focus a { + color: #222; +} + +/* Playlist Style Overrides */ + +.wp-playlist { + padding: 0.625em 0.625em 0.3125em; +} + +.wp-playlist-current-item .wp-playlist-item-title { + font-weight: 700; +} + +.wp-playlist-current-item .wp-playlist-item-album { + font-style: normal; +} + +.wp-playlist-current-item .wp-playlist-item-artist { + font-size: 10px; + font-size: 0.625rem; + font-weight: 800; + letter-spacing: 0.1818em; + text-transform: uppercase; +} + +.wp-playlist-item { + padding: 0 0.3125em; + cursor: pointer; +} + +.wp-playlist-item:last-of-type { + border-bottom: none; +} + +.wp-playlist-item a { + padding: 0.3125em 0; + border-bottom: none; +} + +.wp-playlist-item a, +.wp-playlist-item a:focus, +.wp-playlist-item a:hover { + -webkit-box-shadow: none; + box-shadow: none; + background: transparent; +} + +.wp-playlist-item-length { + top: 5px; +} + +/** + * 8.0 - RTL + */ + +.rtl th { + text-align: right; +} + +.rtl ol > li:before { + left: auto; + right: -1.5em; +} + +.rtl li > ul, +.rtl li > ol { + margin-left: 0; + margin-right: 1.5em; +} + +.rtl .mejs-offscreen { + right: -10000px; +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie8.css b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie8.css new file mode 100644 index 0000000..bf45c26 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie8.css @@ -0,0 +1,225 @@ +/* +Theme Name: Twenty Seventeen +Description: IE8 specific style. +*/ + +body { + font-size: 16px; +} + +h1 { + font-size: 30px; + font-size: 1.875rem; +} + +h2, +.page .panel-content .recent-posts .entry-title { + font-size: 26px; + font-size: 1.625rem; +} + +h3 { + font-size: 22px; + font-size: 1.375rem; +} + +h4 { + font-size: 18px; + font-size: 1.125rem; +} + +h5 { + font-size: 13px; + font-size: 0.8125rem; +} + +h6 { + font-size: 16px; + font-size: 1rem; +} + +img { + width: inherit; /* Make images fill their parent's space. */ +} + +/* Fixes linked images */ +.entry-content a img, +.widget a img { + filter: progid:DXImageTransform.Microsoft.DropShadow(OffX=0, OffY=5, Color=#ffffff); +} + +/* Layout */ + +.site-content { + padding: 6.5em 0 0; +} + +/* Site Branding */ + +.custom-header { + overflow: hidden; +} + +.has-header-image.twentyseventeen-front-page .custom-header, +.has-header-image.home.blog .custom-header { + display: block; +} + +.custom-header-media { + background-position: bottom center; +} + +.site-branding { + padding: 45px 0; +} + +.has-header-image.twentyseventeen-front-page .site-branding, +.has-header-image.home.blog .site-branding { + bottom: 0; + display: block; + left: 0; + height: auto; + padding-top: 0; + position: absolute; + width: 100%; +} + +.has-header-image .custom-header-media img { + left: 0; + top: 0; +} + +.site-title { + font-size: 36px; + font-weight: 700; +} + +.site-description { + font-size: 16px; +} + +/* Main Navigation */ + +.navigation-top { + background: #fff; + position: relative; + z-index: 10; +} + +.menu-toggle { + width: 150px; +} + +.main-navigation ul#top-menu { + margin-bottom: -1px; + padding: 0; +} + +.no-svg .dropdown-toggle { + padding: 0.25em 0 0; +} + +.no-svg .dropdown-toggle.toggled-on { + padding: 0.75em 0 0; +} + +.dropdown-toggle .svg-fallback.icon-angle-down { + -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=-1, M12=1.2246467991473532e-16, M21=-1.2246467991473532e-16, M22=-1, SizingMethod='auto expand')"; +} + +.dropdown-toggle.toggled-on .svg-fallback.icon-angle-down { + -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=1, M12=0, M21=0, M22=1, SizingMethod='auto expand')"; +} + +/* Front Page */ + +.twentyseventeen-front-page.has-header-image .custom-header, +.blog.home.has-header-image .custom-header, +.panel-image { + height: 800px; + max-height: 800px; + padding-top: 0; +} + +.twentyseventeen-front-page .custom-header-media, +.blog.home .custom-header-media { + background-position: center center; +} + +.twentyseventeen-front-page.has-header-image .site-branding, +.home.blog.has-header-image .site-branding { + bottom: 20px; + position: absolute; + width: 100%; +} + +.page .panel-content .entry-title, +.page-title, +.page .entry-title { + font-size: 14px; + font-size: 0.875rem; + font-weight: 700; + letter-spacing: 0.14em; + text-transform: uppercase; +} + +/* Posts */ + +.blog .site-main > article, +.archive .site-main > article, +.search .site-main > article { + padding-bottom: 4em; +} + +time.updated { + display: none; +} + +time.published { + display: inline-block; +} + +.blog .entry-title { + padding-top: 0; +} + +.single-post .entry-title, +.page .entry-title, +.entry-meta + .entry-title { + font-size: 26px; + font-weight: 400; + letter-spacing: normal; + padding-top: 0; + text-transform: none; +} + +.entry-footer .cat-links, +.entry-footer .tags-links { + padding-left: 0; +} + +.comment-author .avatar { + z-index: -1; +} + +ol.children .children { + padding-left: 2em; +} + +/* RTL Styles */ + +.rtl .has-header-image.twentyseventeen-front-page .site-branding, +.rtl .has-header-image.home.blog .site-branding { + left: auto; + right: 0; +} + +.rtl .entry-footer .cat-links, +.rtl .entry-footer .tags-links { + padding-right: 0; +} + +.rtl ol.children .children { + padding-left: 0; + padding-right: 2em; +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie9.css b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie9.css new file mode 100644 index 0000000..9f8f766 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/css/ie9.css @@ -0,0 +1,43 @@ +/* +Theme Name: Twenty Seventeen +Description: IE9 specific styles. +*/ + +.has-header-image.twentyseventeen-front-page .custom-header, +.has-header-video.twentyseventeen-front-page .custom-header, +.has-header-image.home.blog .custom-header, +.has-header-video.home.blog .custom-header { + height: 300px; +} + +.has-header-image .custom-header-media img, +.has-header-video .custom-header-media video, +.has-header-video .custom-header-media iframe { + min-width: 100%; +} + +@media screen and (min-width: 30em) { + + .has-header-image.twentyseventeen-front-page .custom-header, + .has-header-video.twentyseventeen-front-page .custom-header, + .has-header-image.home.blog .custom-header, + .has-header-video.home.blog .custom-header, + .twentyseventeen-front-page.has-header-image .custom-header-media, + .home.blog.has-header-image .custom-header-media, + .panel-image { + height: 700px; + } +} + +@media screen and (min-width: 48em) { + + .has-header-image.twentyseventeen-front-page .custom-header, + .has-header-video.twentyseventeen-front-page .custom-header, + .has-header-image.home.blog .custom-header, + .has-header-video.home.blog .custom-header, + .twentyseventeen-front-page.has-header-image .custom-header-media, + .home.blog.has-header-image .custom-header-media, + .panel-image { + height: 1000px; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/coffee.jpg b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/coffee.jpg new file mode 100644 index 0000000..13847cd Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/coffee.jpg differ diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/espresso.jpg b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/espresso.jpg new file mode 100644 index 0000000..7514c96 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/espresso.jpg differ diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/header.jpg b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/header.jpg new file mode 100644 index 0000000..a3fd3e7 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/header.jpg differ diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/sandwich.jpg b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/sandwich.jpg new file mode 100644 index 0000000..6baddbf Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/sandwich.jpg differ diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/svg-icons.svg b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/svg-icons.svg new file mode 100644 index 0000000..d5f9ade --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/images/svg-icons.svg @@ -0,0 +1,155 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-controls.js b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-controls.js new file mode 100644 index 0000000..8477975 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-controls.js @@ -0,0 +1,36 @@ +/** + * Scripts within the customizer controls window. + * + * Contextually shows the color hue control and informs the preview + * when users open or close the front page sections section. + */ + +(function() { + wp.customize.bind( 'ready', function() { + + // Only show the color hue control when there's a custom color scheme. + wp.customize( 'colorscheme', function( setting ) { + wp.customize.control( 'colorscheme_hue', function( control ) { + var visibility = function() { + if ( 'custom' === setting.get() ) { + control.container.slideDown( 180 ); + } else { + control.container.slideUp( 180 ); + } + }; + + visibility(); + setting.bind( visibility ); + }); + }); + + // Detect when the front page sections section is expanded (or closed) so we can adjust the preview accordingly. + wp.customize.section( 'theme_options', function( section ) { + section.expanded.bind( function( isExpanding ) { + + // Value of isExpanding will = true if you're entering the section, false if you're leaving it. + wp.customize.previewer.send( 'section-highlight', { expanded: isExpanding }); + } ); + } ); + }); +})(); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-preview.js b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-preview.js new file mode 100644 index 0000000..dba7b79 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/customize-preview.js @@ -0,0 +1,150 @@ +/** + * File customize-preview.js. + * + * Instantly live-update customizer settings in the preview for improved user experience. + */ + +(function( $ ) { + + // Collect information from customize-controls.js about which panels are opening. + wp.customize.bind( 'preview-ready', function() { + + // Initially hide the theme option placeholders on load + $( '.panel-placeholder' ).hide(); + + wp.customize.preview.bind( 'section-highlight', function( data ) { + + // Only on the front page. + if ( ! $( 'body' ).hasClass( 'twentyseventeen-front-page' ) ) { + return; + } + + // When the section is expanded, show and scroll to the content placeholders, exposing the edit links. + if ( true === data.expanded ) { + $( 'body' ).addClass( 'highlight-front-sections' ); + $( '.panel-placeholder' ).slideDown( 200, function() { + $.scrollTo( $( '#panel1' ), { + duration: 600, + offset: { 'top': -70 } // Account for sticky menu. + }); + }); + + // If we've left the panel, hide the placeholders and scroll back to the top. + } else { + $( 'body' ).removeClass( 'highlight-front-sections' ); + // Don't change scroll when leaving - it's likely to have unintended consequences. + $( '.panel-placeholder' ).slideUp( 200 ); + } + }); + }); + + // Site title and description. + wp.customize( 'blogname', function( value ) { + value.bind( function( to ) { + $( '.site-title a' ).text( to ); + }); + }); + wp.customize( 'blogdescription', function( value ) { + value.bind( function( to ) { + $( '.site-description' ).text( to ); + }); + }); + + // Header text color. + wp.customize( 'header_textcolor', function( value ) { + value.bind( function( to ) { + if ( 'blank' === to ) { + $( '.site-title, .site-description' ).css({ + clip: 'rect(1px, 1px, 1px, 1px)', + position: 'absolute' + }); + // Add class for different logo styles if title and description are hidden. + $( 'body' ).addClass( 'title-tagline-hidden' ); + } else { + + // Check if the text color has been removed and use default colors in theme stylesheet. + if ( ! to.length ) { + $( '#twentyseventeen-custom-header-styles' ).remove(); + } + $( '.site-title, .site-description' ).css({ + clip: 'auto', + position: 'relative' + }); + $( '.site-branding, .site-branding a, .site-description, .site-description a' ).css({ + color: to + }); + // Add class for different logo styles if title and description are visible. + $( 'body' ).removeClass( 'title-tagline-hidden' ); + } + }); + }); + + // Color scheme. + wp.customize( 'colorscheme', function( value ) { + value.bind( function( to ) { + + // Update color body class. + $( 'body' ) + .removeClass( 'colors-light colors-dark colors-custom' ) + .addClass( 'colors-' + to ); + }); + }); + + // Custom color hue. + wp.customize( 'colorscheme_hue', function( value ) { + value.bind( function( to ) { + + // Update custom color CSS. + var style = $( '#custom-theme-colors' ), + hue = style.data( 'hue' ), + css = style.html(); + + // Equivalent to css.replaceAll, with hue followed by comma to prevent values with units from being changed. + css = css.split( hue + ',' ).join( to + ',' ); + style.html( css ).data( 'hue', to ); + }); + }); + + // Page layouts. + wp.customize( 'page_layout', function( value ) { + value.bind( function( to ) { + if ( 'one-column' === to ) { + $( 'body' ).addClass( 'page-one-column' ).removeClass( 'page-two-column' ); + } else { + $( 'body' ).removeClass( 'page-one-column' ).addClass( 'page-two-column' ); + } + } ); + } ); + + // Whether a header image is available. + function hasHeaderImage() { + var image = wp.customize( 'header_image' )(); + return '' !== image && 'remove-header' !== image; + } + + // Whether a header video is available. + function hasHeaderVideo() { + var externalVideo = wp.customize( 'external_header_video' )(), + video = wp.customize( 'header_video' )(); + + return '' !== externalVideo || ( 0 !== video && '' !== video ); + } + + // Toggle a body class if a custom header exists. + $.each( [ 'external_header_video', 'header_image', 'header_video' ], function( index, settingId ) { + wp.customize( settingId, function( setting ) { + setting.bind(function() { + if ( hasHeaderImage() ) { + $( document.body ).addClass( 'has-header-image' ); + } else { + $( document.body ).removeClass( 'has-header-image' ); + } + + if ( ! hasHeaderVideo() ) { + $( document.body ).removeClass( 'has-header-video' ); + } + } ); + } ); + } ); + +} )( jQuery ); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/global.js b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/global.js new file mode 100644 index 0000000..b6322de --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/global.js @@ -0,0 +1,250 @@ +/* global twentyseventeenScreenReaderText */ +(function( $ ) { + + // Variables and DOM Caching. + var $body = $( 'body' ), + $customHeader = $body.find( '.custom-header' ), + $branding = $customHeader.find( '.site-branding' ), + $navigation = $body.find( '.navigation-top' ), + $navWrap = $navigation.find( '.wrap' ), + $navMenuItem = $navigation.find( '.menu-item' ), + $menuToggle = $navigation.find( '.menu-toggle' ), + $menuScrollDown = $body.find( '.menu-scroll-down' ), + $sidebar = $body.find( '#secondary' ), + $entryContent = $body.find( '.entry-content' ), + $formatQuote = $body.find( '.format-quote blockquote' ), + isFrontPage = $body.hasClass( 'twentyseventeen-front-page' ) || $body.hasClass( 'home blog' ), + navigationFixedClass = 'site-navigation-fixed', + navigationHeight, + navigationOuterHeight, + navPadding, + navMenuItemHeight, + idealNavHeight, + navIsNotTooTall, + headerOffset, + menuTop = 0, + resizeTimer; + + // Ensure the sticky navigation doesn't cover current focused links. + $( 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex], [contenteditable]', '.site-content-contain' ).filter( ':visible' ).focus( function() { + if ( $navigation.hasClass( 'site-navigation-fixed' ) ) { + var windowScrollTop = $( window ).scrollTop(), + fixedNavHeight = $navigation.height(), + itemScrollTop = $( this ).offset().top, + offsetDiff = itemScrollTop - windowScrollTop; + + // Account for Admin bar. + if ( $( '#wpadminbar' ).length ) { + offsetDiff -= $( '#wpadminbar' ).height(); + } + + if ( offsetDiff < fixedNavHeight ) { + $( window ).scrollTo( itemScrollTop - ( fixedNavHeight + 50 ), 0 ); + } + } + }); + + // Set properties of navigation. + function setNavProps() { + navigationHeight = $navigation.height(); + navigationOuterHeight = $navigation.outerHeight(); + navPadding = parseFloat( $navWrap.css( 'padding-top' ) ) * 2; + navMenuItemHeight = $navMenuItem.outerHeight() * 2; + idealNavHeight = navPadding + navMenuItemHeight; + navIsNotTooTall = navigationHeight <= idealNavHeight; + } + + // Make navigation 'stick'. + function adjustScrollClass() { + + // Make sure we're not on a mobile screen. + if ( 'none' === $menuToggle.css( 'display' ) ) { + + // Make sure the nav isn't taller than two rows. + if ( navIsNotTooTall ) { + + // When there's a custom header image or video, the header offset includes the height of the navigation. + if ( isFrontPage && ( $body.hasClass( 'has-header-image' ) || $body.hasClass( 'has-header-video' ) ) ) { + headerOffset = $customHeader.innerHeight() - navigationOuterHeight; + } else { + headerOffset = $customHeader.innerHeight(); + } + + // If the scroll is more than the custom header, set the fixed class. + if ( $( window ).scrollTop() >= headerOffset ) { + $navigation.addClass( navigationFixedClass ); + } else { + $navigation.removeClass( navigationFixedClass ); + } + + } else { + + // Remove 'fixed' class if nav is taller than two rows. + $navigation.removeClass( navigationFixedClass ); + } + } + } + + // Set margins of branding in header. + function adjustHeaderHeight() { + if ( 'none' === $menuToggle.css( 'display' ) ) { + + // The margin should be applied to different elements on front-page or home vs interior pages. + if ( isFrontPage ) { + $branding.css( 'margin-bottom', navigationOuterHeight ); + } else { + $customHeader.css( 'margin-bottom', navigationOuterHeight ); + } + + } else { + $customHeader.css( 'margin-bottom', '0' ); + $branding.css( 'margin-bottom', '0' ); + } + } + + // Set icon for quotes. + function setQuotesIcon() { + $( twentyseventeenScreenReaderText.quote ).prependTo( $formatQuote ); + } + + // Add 'below-entry-meta' class to elements. + function belowEntryMetaClass( param ) { + var sidebarPos, sidebarPosBottom; + + if ( ! $body.hasClass( 'has-sidebar' ) || ( + $body.hasClass( 'search' ) || + $body.hasClass( 'single-attachment' ) || + $body.hasClass( 'error404' ) || + $body.hasClass( 'twentyseventeen-front-page' ) + ) ) { + return; + } + + sidebarPos = $sidebar.offset(); + sidebarPosBottom = sidebarPos.top + ( $sidebar.height() + 28 ); + + $entryContent.find( param ).each( function() { + var $element = $( this ), + elementPos = $element.offset(), + elementPosTop = elementPos.top; + + // Add 'below-entry-meta' to elements below the entry meta. + if ( elementPosTop > sidebarPosBottom ) { + $element.addClass( 'below-entry-meta' ); + } else { + $element.removeClass( 'below-entry-meta' ); + } + }); + } + + /* + * Test if inline SVGs are supported. + * @link https://github.com/Modernizr/Modernizr/ + */ + function supportsInlineSVG() { + var div = document.createElement( 'div' ); + div.innerHTML = ''; + return 'http://www.w3.org/2000/svg' === ( 'undefined' !== typeof SVGRect && div.firstChild && div.firstChild.namespaceURI ); + } + + /** + * Test if an iOS device. + */ + function checkiOS() { + return /iPad|iPhone|iPod/.test(navigator.userAgent) && ! window.MSStream; + } + + /* + * Test if background-attachment: fixed is supported. + * @link http://stackoverflow.com/questions/14115080/detect-support-for-background-attachment-fixed + */ + function supportsFixedBackground() { + var el = document.createElement('div'), + isSupported; + + try { + if ( ! ( 'backgroundAttachment' in el.style ) || checkiOS() ) { + return false; + } + el.style.backgroundAttachment = 'fixed'; + isSupported = ( 'fixed' === el.style.backgroundAttachment ); + return isSupported; + } + catch (e) { + return false; + } + } + + // Fire on document ready. + $( document ).ready( function() { + + // If navigation menu is present on page, setNavProps and adjustScrollClass. + if ( $navigation.length ) { + setNavProps(); + adjustScrollClass(); + } + + // If 'Scroll Down' arrow in present on page, calculate scroll offset and bind an event handler to the click event. + if ( $menuScrollDown.length ) { + + if ( $( 'body' ).hasClass( 'admin-bar' ) ) { + menuTop -= 32; + } + if ( $( 'body' ).hasClass( 'blog' ) ) { + menuTop -= 30; // The div for latest posts has no space above content, add some to account for this. + } + if ( ! $navigation.length ) { + navigationOuterHeight = 0; + } + + $menuScrollDown.click( function( e ) { + e.preventDefault(); + $( window ).scrollTo( '#primary', { + duration: 600, + offset: { top: menuTop - navigationOuterHeight } + }); + }); + } + + adjustHeaderHeight(); + setQuotesIcon(); + belowEntryMetaClass( 'blockquote.alignleft, blockquote.alignright' ); + if ( true === supportsInlineSVG() ) { + document.documentElement.className = document.documentElement.className.replace( /(\s*)no-svg(\s*)/, '$1svg$2' ); + } + + if ( true === supportsFixedBackground() ) { + document.documentElement.className += ' background-fixed'; + } + }); + + // If navigation menu is present on page, adjust it on scroll and screen resize. + if ( $navigation.length ) { + + // On scroll, we want to stick/unstick the navigation. + $( window ).on( 'scroll', function() { + adjustScrollClass(); + adjustHeaderHeight(); + }); + + // Also want to make sure the navigation is where it should be on resize. + $( window ).resize( function() { + setNavProps(); + setTimeout( adjustScrollClass, 500 ); + }); + } + + $( window ).resize( function() { + clearTimeout( resizeTimer ); + resizeTimer = setTimeout( function() { + belowEntryMetaClass( 'blockquote.alignleft, blockquote.alignright' ); + }, 300 ); + setTimeout( adjustHeaderHeight, 1000 ); + }); + + // Add header video class after the video is loaded. + $( document ).on( 'wp-custom-header-video-loaded', function() { + $body.addClass( 'has-header-video' ); + }); + +})( jQuery ); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/html5.js b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/html5.js new file mode 100644 index 0000000..9c1f049 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/html5.js @@ -0,0 +1,326 @@ +/** +* @preserve HTML5 Shiv 3.7.3 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed +*/ +;(function(window, document) { +/*jshint evil:true */ + /** version */ + var version = '3.7.3'; + + /** Preset options */ + var options = window.html5 || {}; + + /** Used to skip problem elements */ + var reSkip = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i; + + /** Not all elements can be cloned in IE **/ + var saveClones = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i; + + /** Detect whether the browser supports default html5 styles */ + var supportsHtml5Styles; + + /** Name of the expando, to work with multiple documents or to re-shiv one document */ + var expando = '_html5shiv'; + + /** The id for the the documents expando */ + var expanID = 0; + + /** Cached data for each document */ + var expandoData = {}; + + /** Detect whether the browser supports unknown elements */ + var supportsUnknownElements; + + (function() { + try { + var a = document.createElement('a'); + a.innerHTML = ''; + //if the hidden property is implemented we can assume, that the browser supports basic HTML5 Styles + supportsHtml5Styles = ('hidden' in a); + + supportsUnknownElements = a.childNodes.length == 1 || (function() { + // assign a false positive if unable to shiv + (document.createElement)('a'); + var frag = document.createDocumentFragment(); + return ( + typeof frag.cloneNode == 'undefined' || + typeof frag.createDocumentFragment == 'undefined' || + typeof frag.createElement == 'undefined' + ); + }()); + } catch(e) { + // assign a false positive if detection fails => unable to shiv + supportsHtml5Styles = true; + supportsUnknownElements = true; + } + + }()); + + /*--------------------------------------------------------------------------*/ + + /** + * Creates a style sheet with the given CSS text and adds it to the document. + * @private + * @param {Document} ownerDocument The document. + * @param {String} cssText The CSS text. + * @returns {StyleSheet} The style element. + */ + function addStyleSheet(ownerDocument, cssText) { + var p = ownerDocument.createElement('p'), + parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement; + + p.innerHTML = 'x'; + return parent.insertBefore(p.lastChild, parent.firstChild); + } + + /** + * Returns the value of `html5.elements` as an array. + * @private + * @returns {Array} An array of shived element node names. + */ + function getElements() { + var elements = html5.elements; + return typeof elements == 'string' ? elements.split(' ') : elements; + } + + /** + * Extends the built-in list of html5 elements + * @memberOf html5 + * @param {String|Array} newElements whitespace separated list or array of new element names to shiv + * @param {Document} ownerDocument The context document. + */ + function addElements(newElements, ownerDocument) { + var elements = html5.elements; + if(typeof elements != 'string'){ + elements = elements.join(' '); + } + if(typeof newElements != 'string'){ + newElements = newElements.join(' '); + } + html5.elements = elements +' '+ newElements; + shivDocument(ownerDocument); + } + + /** + * Returns the data associated to the given document + * @private + * @param {Document} ownerDocument The document. + * @returns {Object} An object of data. + */ + function getExpandoData(ownerDocument) { + var data = expandoData[ownerDocument[expando]]; + if (!data) { + data = {}; + expanID++; + ownerDocument[expando] = expanID; + expandoData[expanID] = data; + } + return data; + } + + /** + * returns a shived element for the given nodeName and document + * @memberOf html5 + * @param {String} nodeName name of the element + * @param {Document|DocumentFragment} ownerDocument The context document. + * @returns {Object} The shived element. + */ + function createElement(nodeName, ownerDocument, data){ + if (!ownerDocument) { + ownerDocument = document; + } + if(supportsUnknownElements){ + return ownerDocument.createElement(nodeName); + } + if (!data) { + data = getExpandoData(ownerDocument); + } + var node; + + if (data.cache[nodeName]) { + node = data.cache[nodeName].cloneNode(); + } else if (saveClones.test(nodeName)) { + node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode(); + } else { + node = data.createElem(nodeName); + } + + // Avoid adding some elements to fragments in IE < 9 because + // * Attributes like `name` or `type` cannot be set/changed once an element + // is inserted into a document/fragment + // * Link elements with `src` attributes that are inaccessible, as with + // a 403 response, will cause the tab/window to crash + // * Script elements appended to fragments will execute when their `src` + // or `text` property is set + return node.canHaveChildren && !reSkip.test(nodeName) && !node.tagUrn ? data.frag.appendChild(node) : node; + } + + /** + * returns a shived DocumentFragment for the given document + * @memberOf html5 + * @param {Document} ownerDocument The context document. + * @returns {Object} The shived DocumentFragment. + */ + function createDocumentFragment(ownerDocument, data){ + if (!ownerDocument) { + ownerDocument = document; + } + if(supportsUnknownElements){ + return ownerDocument.createDocumentFragment(); + } + data = data || getExpandoData(ownerDocument); + var clone = data.frag.cloneNode(), + i = 0, + elems = getElements(), + l = elems.length; + for(;igmailcom | http://flesler.blogspot.com + * Licensed under MIT + * http://flesler.blogspot.com/2007/10/jqueryscrollto.html + * @projectDescription Lightweight, cross-browser and highly customizable animated scrolling with jQuery + * @author Ariel Flesler + * @version 2.1.2 + */ +;(function(factory) { + 'use strict'; + if (typeof define === 'function' && define.amd) { + // AMD + define( ['jquery'], factory ); + } else if (typeof module !== 'undefined' && module.exports) { + // CommonJS + module.exports = factory( require( 'jquery' ) ); + } else { + // Global + factory( jQuery ); + } +})(function($) { + 'use strict'; + + var $scrollTo = $.scrollTo = function(target, duration, settings) { + return $( window ).scrollTo( target, duration, settings ); + }; + + $scrollTo.defaults = { + axis:'xy', + duration: 0, + limit:true + }; + + function isWin(elem) { + return ! elem.nodeName || + $.inArray( elem.nodeName.toLowerCase(), ['iframe','#document','html','body'] ) !== -1; + } + + $.fn.scrollTo = function(target, duration, settings) { + if (typeof duration === 'object') { + settings = duration; + duration = 0; + } + if (typeof settings === 'function') { + settings = { onAfter:settings }; + } + if (target === 'max') { + target = 9e9; + } + + settings = $.extend( {}, $scrollTo.defaults, settings ); + // Speed is still recognized for backwards compatibility + duration = duration || settings.duration; + // Make sure the settings are given right + var queue = settings.queue && settings.axis.length > 1; + if (queue) { + // Let's keep the overall duration + duration /= 2; + } + settings.offset = both( settings.offset ); + settings.over = both( settings.over ); + + return this.each(function() { + // Null target yields nothing, just like jQuery does + if (target === null) { return; } + + var win = isWin( this ), + elem = win ? this.contentWindow || window : this, + $elem = $( elem ), + targ = target, + attr = {}, + toff; + + switch (typeof targ) { + // A number will pass the regex + case 'number': + case 'string': + if (/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test( targ )) { + targ = both( targ ); + // We are done + break; + } + // Relative/Absolute selector + targ = win ? $( targ ) : $( targ, elem ); + /* falls through */ + case 'object': + if (targ.length === 0) { return; } + // DOMElement / jQuery + if (targ.is || targ.style) { + // Get the real position of the target + toff = (targ = $( targ )).offset(); + } + } + + var offset = $.isFunction( settings.offset ) && settings.offset( elem, targ ) || settings.offset; + + $.each(settings.axis.split( '' ), function(i, axis) { + var Pos = axis === 'x' ? 'Left' : 'Top', + pos = Pos.toLowerCase(), + key = 'scroll' + Pos, + prev = $elem[key](), + max = $scrollTo.max( elem, axis ); + + if (toff) {// jQuery / DOMElement + attr[key] = toff[pos] + (win ? 0 : prev - $elem.offset()[pos]); + + // If it's a dom element, reduce the margin + if (settings.margin) { + attr[key] -= parseInt( targ.css( 'margin' + Pos ), 10 ) || 0; + attr[key] -= parseInt( targ.css( 'border' + Pos + 'Width' ), 10 ) || 0; + } + + attr[key] += offset[pos] || 0; + + if (settings.over[pos]) { + // Scroll to a fraction of its width/height + attr[key] += targ[axis === 'x'?'width':'height']() * settings.over[pos]; + } + } else { + var val = targ[pos]; + // Handle percentage values + attr[key] = val.slice && val.slice( -1 ) === '%' ? + parseFloat( val ) / 100 * max + : val; + } + + // Number or 'number' + if (settings.limit && /^\d+$/.test( attr[key] )) { + // Check the limits + attr[key] = attr[key] <= 0 ? 0 : Math.min( attr[key], max ); + } + + // Don't waste time animating, if there's no need. + if ( ! i && settings.axis.length > 1) { + if (prev === attr[key]) { + // No animation needed + attr = {}; + } else if (queue) { + // Intermediate animation + animate( settings.onAfterFirst ); + // Don't animate this axis again in the next iteration. + attr = {}; + } + } + }); + + animate( settings.onAfter ); + + function animate(callback) { + var opts = $.extend({}, settings, { + // The queue setting conflicts with animate() + // Force it to always be true + queue: true, + duration: duration, + complete: callback && function() { + callback.call( elem, targ, settings ); + } + }); + $elem.animate( attr, opts ); + } + }); + }; + + // Max scrolling position, works on quirks mode + // It only fails (not too badly) on IE, quirks mode. + $scrollTo.max = function(elem, axis) { + var Dim = axis === 'x' ? 'Width' : 'Height', + scroll = 'scroll' + Dim; + + if ( ! isWin( elem )) { + return elem[scroll] - $( elem )[Dim.toLowerCase()](); } + + var size = 'client' + Dim, + doc = elem.ownerDocument || elem.document, + html = doc.documentElement, + body = doc.body; + + return Math.max( html[scroll], body[scroll] ) - Math.min( html[size], body[size] ); + }; + + function both(val) { + return $.isFunction( val ) || $.isPlainObject( val ) ? val : { top:val, left:val }; + } + + // Add special hooks so that window scroll properties can be animated + $.Tween.propHooks.scrollLeft = $.Tween.propHooks.scrollTop = { + get: function(t) { + return $( t.elem )[t.prop](); + }, + set: function(t) { + var curr = this.get( t ); + // If interrupt is true and user scrolled, stop animating + if (t.options.interrupt && t._last && t._last !== curr) { + return $( t.elem ).stop(); + } + var next = Math.round( t.now ); + // Don't waste CPU + // Browsers don't render floating point scroll + if (curr !== next) { + $( t.elem )[t.prop](next); + t._last = this.get( t ); + } + } + }; + + // AMD requirement + return $scrollTo; +}); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/navigation.js b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/navigation.js new file mode 100644 index 0000000..f0fd652 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/assets/js/navigation.js @@ -0,0 +1,109 @@ +/* global twentyseventeenScreenReaderText */ +/** + * Theme functions file. + * + * Contains handlers for navigation and widget area. + */ + +(function( $ ) { + var masthead, menuToggle, siteNavContain, siteNavigation; + + function initMainNavigation( container ) { + + // Add dropdown toggle that displays child menu items. + var dropdownToggle = $( '
+ +
+
+ + + +
+
+
+ + + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/front-page.php b/srcs/wordpress/wp-content/themes/twentyseventeen/front-page.php new file mode 100644 index 0000000..86078ad --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/front-page.php @@ -0,0 +1,59 @@ + + +
+
+ + + + + +
+
+ + tag in the document head, and expect WordPress to + * provide it for us. + */ + add_theme_support( 'title-tag' ); + + /* + * Enable support for Post Thumbnails on posts and pages. + * + * @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/ + */ + add_theme_support( 'post-thumbnails' ); + + add_image_size( 'twentyseventeen-featured-image', 2000, 1200, true ); + + add_image_size( 'twentyseventeen-thumbnail-avatar', 100, 100, true ); + + // Set the default content width. + $GLOBALS['content_width'] = 525; + + // This theme uses wp_nav_menu() in two locations. + register_nav_menus( + array( + 'top' => __( 'Top Menu', 'twentyseventeen' ), + 'social' => __( 'Social Links Menu', 'twentyseventeen' ), + ) + ); + + /* + * Switch default core markup for search form, comment form, and comments + * to output valid HTML5. + */ + add_theme_support( + 'html5', + array( + 'comment-form', + 'comment-list', + 'gallery', + 'caption', + 'script', + 'style', + ) + ); + + /* + * Enable support for Post Formats. + * + * See: https://wordpress.org/support/article/post-formats/ + */ + add_theme_support( + 'post-formats', + array( + 'aside', + 'image', + 'video', + 'quote', + 'link', + 'gallery', + 'audio', + ) + ); + + // Add theme support for Custom Logo. + add_theme_support( + 'custom-logo', + array( + 'width' => 250, + 'height' => 250, + 'flex-width' => true, + ) + ); + + // Add theme support for selective refresh for widgets. + add_theme_support( 'customize-selective-refresh-widgets' ); + + /* + * This theme styles the visual editor to resemble the theme style, + * specifically font, colors, and column width. + */ + add_editor_style( array( 'assets/css/editor-style.css', twentyseventeen_fonts_url() ) ); + + // Load regular editor styles into the new block-based editor. + add_theme_support( 'editor-styles' ); + + // Load default block styles. + add_theme_support( 'wp-block-styles' ); + + // Add support for responsive embeds. + add_theme_support( 'responsive-embeds' ); + + // Define and register starter content to showcase the theme on new sites. + $starter_content = array( + 'widgets' => array( + // Place three core-defined widgets in the sidebar area. + 'sidebar-1' => array( + 'text_business_info', + 'search', + 'text_about', + ), + + // Add the core-defined business info widget to the footer 1 area. + 'sidebar-2' => array( + 'text_business_info', + ), + + // Put two core-defined widgets in the footer 2 area. + 'sidebar-3' => array( + 'text_about', + 'search', + ), + ), + + // Specify the core-defined pages to create and add custom thumbnails to some of them. + 'posts' => array( + 'home', + 'about' => array( + 'thumbnail' => '{{image-sandwich}}', + ), + 'contact' => array( + 'thumbnail' => '{{image-espresso}}', + ), + 'blog' => array( + 'thumbnail' => '{{image-coffee}}', + ), + 'homepage-section' => array( + 'thumbnail' => '{{image-espresso}}', + ), + ), + + // Create the custom image attachments used as post thumbnails for pages. + 'attachments' => array( + 'image-espresso' => array( + 'post_title' => _x( 'Espresso', 'Theme starter content', 'twentyseventeen' ), + 'file' => 'assets/images/espresso.jpg', // URL relative to the template directory. + ), + 'image-sandwich' => array( + 'post_title' => _x( 'Sandwich', 'Theme starter content', 'twentyseventeen' ), + 'file' => 'assets/images/sandwich.jpg', + ), + 'image-coffee' => array( + 'post_title' => _x( 'Coffee', 'Theme starter content', 'twentyseventeen' ), + 'file' => 'assets/images/coffee.jpg', + ), + ), + + // Default to a static front page and assign the front and posts pages. + 'options' => array( + 'show_on_front' => 'page', + 'page_on_front' => '{{home}}', + 'page_for_posts' => '{{blog}}', + ), + + // Set the front page section theme mods to the IDs of the core-registered pages. + 'theme_mods' => array( + 'panel_1' => '{{homepage-section}}', + 'panel_2' => '{{about}}', + 'panel_3' => '{{blog}}', + 'panel_4' => '{{contact}}', + ), + + // Set up nav menus for each of the two areas registered in the theme. + 'nav_menus' => array( + // Assign a menu to the "top" location. + 'top' => array( + 'name' => __( 'Top Menu', 'twentyseventeen' ), + 'items' => array( + 'link_home', // Note that the core "home" page is actually a link in case a static front page is not used. + 'page_about', + 'page_blog', + 'page_contact', + ), + ), + + // Assign a menu to the "social" location. + 'social' => array( + 'name' => __( 'Social Links Menu', 'twentyseventeen' ), + 'items' => array( + 'link_yelp', + 'link_facebook', + 'link_twitter', + 'link_instagram', + 'link_email', + ), + ), + ), + ); + + /** + * Filters Twenty Seventeen array of starter content. + * + * @since Twenty Seventeen 1.1 + * + * @param array $starter_content Array of starter content. + */ + $starter_content = apply_filters( 'twentyseventeen_starter_content', $starter_content ); + + add_theme_support( 'starter-content', $starter_content ); +} +add_action( 'after_setup_theme', 'twentyseventeen_setup' ); + +/** + * Set the content width in pixels, based on the theme's design and stylesheet. + * + * Priority 0 to make it available to lower priority callbacks. + * + * @global int $content_width + */ +function twentyseventeen_content_width() { + + $content_width = $GLOBALS['content_width']; + + // Get layout. + $page_layout = get_theme_mod( 'page_layout' ); + + // Check if layout is one column. + if ( 'one-column' === $page_layout ) { + if ( twentyseventeen_is_frontpage() ) { + $content_width = 644; + } elseif ( is_page() ) { + $content_width = 740; + } + } + + // Check if is single post and there is no sidebar. + if ( is_single() && ! is_active_sidebar( 'sidebar-1' ) ) { + $content_width = 740; + } + + /** + * Filter Twenty Seventeen content width of the theme. + * + * @since Twenty Seventeen 1.0 + * + * @param int $content_width Content width in pixels. + */ + $GLOBALS['content_width'] = apply_filters( 'twentyseventeen_content_width', $content_width ); +} +add_action( 'template_redirect', 'twentyseventeen_content_width', 0 ); + +/** + * Register custom fonts. + */ +function twentyseventeen_fonts_url() { + $fonts_url = ''; + + /* + * translators: If there are characters in your language that are not supported + * by Libre Franklin, translate this to 'off'. Do not translate into your own language. + */ + $libre_franklin = _x( 'on', 'Libre Franklin font: on or off', 'twentyseventeen' ); + + if ( 'off' !== $libre_franklin ) { + $font_families = array(); + + $font_families[] = 'Libre Franklin:300,300i,400,400i,600,600i,800,800i'; + + $query_args = array( + 'family' => urlencode( implode( '|', $font_families ) ), + 'subset' => urlencode( 'latin,latin-ext' ), + 'display' => urlencode( 'fallback' ), + ); + + $fonts_url = add_query_arg( $query_args, 'https://fonts.googleapis.com/css' ); + } + + return esc_url_raw( $fonts_url ); +} + +/** + * Add preconnect for Google Fonts. + * + * @since Twenty Seventeen 1.0 + * + * @param array $urls URLs to print for resource hints. + * @param string $relation_type The relation type the URLs are printed. + * @return array $urls URLs to print for resource hints. + */ +function twentyseventeen_resource_hints( $urls, $relation_type ) { + if ( wp_style_is( 'twentyseventeen-fonts', 'queue' ) && 'preconnect' === $relation_type ) { + $urls[] = array( + 'href' => 'https://fonts.gstatic.com', + 'crossorigin', + ); + } + + return $urls; +} +add_filter( 'wp_resource_hints', 'twentyseventeen_resource_hints', 10, 2 ); + +/** + * Register widget area. + * + * @link https://developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar + */ +function twentyseventeen_widgets_init() { + register_sidebar( + array( + 'name' => __( 'Blog Sidebar', 'twentyseventeen' ), + 'id' => 'sidebar-1', + 'description' => __( 'Add widgets here to appear in your sidebar on blog posts and archive pages.', 'twentyseventeen' ), + 'before_widget' => '
', + 'after_widget' => '
', + 'before_title' => '

', + 'after_title' => '

', + ) + ); + + register_sidebar( + array( + 'name' => __( 'Footer 1', 'twentyseventeen' ), + 'id' => 'sidebar-2', + 'description' => __( 'Add widgets here to appear in your footer.', 'twentyseventeen' ), + 'before_widget' => '
', + 'after_widget' => '
', + 'before_title' => '

', + 'after_title' => '

', + ) + ); + + register_sidebar( + array( + 'name' => __( 'Footer 2', 'twentyseventeen' ), + 'id' => 'sidebar-3', + 'description' => __( 'Add widgets here to appear in your footer.', 'twentyseventeen' ), + 'before_widget' => '
', + 'after_widget' => '
', + 'before_title' => '

', + 'after_title' => '

', + ) + ); +} +add_action( 'widgets_init', 'twentyseventeen_widgets_init' ); + +/** + * Replaces "[...]" (appended to automatically generated excerpts) with ... and + * a 'Continue reading' link. + * + * @since Twenty Seventeen 1.0 + * + * @param string $link Link to single post/page. + * @return string 'Continue reading' link prepended with an ellipsis. + */ +function twentyseventeen_excerpt_more( $link ) { + if ( is_admin() ) { + return $link; + } + + $link = sprintf( + '', + esc_url( get_permalink( get_the_ID() ) ), + /* translators: %s: Post title. */ + sprintf( __( 'Continue reading "%s"', 'twentyseventeen' ), get_the_title( get_the_ID() ) ) + ); + return ' … ' . $link; +} +add_filter( 'excerpt_more', 'twentyseventeen_excerpt_more' ); + +/** + * Handles JavaScript detection. + * + * Adds a `js` class to the root `` element when JavaScript is detected. + * + * @since Twenty Seventeen 1.0 + */ +function twentyseventeen_javascript_detection() { + echo "\n"; +} +add_action( 'wp_head', 'twentyseventeen_javascript_detection', 0 ); + +/** + * Add a pingback url auto-discovery header for singularly identifiable articles. + */ +function twentyseventeen_pingback_header() { + if ( is_singular() && pings_open() ) { + printf( '' . "\n", esc_url( get_bloginfo( 'pingback_url' ) ) ); + } +} +add_action( 'wp_head', 'twentyseventeen_pingback_header' ); + +/** + * Display custom color CSS. + */ +function twentyseventeen_colors_css_wrap() { + if ( 'custom' !== get_theme_mod( 'colorscheme' ) && ! is_customize_preview() ) { + return; + } + + require_once( get_parent_theme_file_path( '/inc/color-patterns.php' ) ); + $hue = absint( get_theme_mod( 'colorscheme_hue', 250 ) ); + + $customize_preview_data_hue = ''; + if ( is_customize_preview() ) { + $customize_preview_data_hue = 'data-hue="' . $hue . '"'; + } + ?> + + twentyseventeen_get_svg( array( 'icon' => 'quote-right' ) ), + ); + + if ( has_nav_menu( 'top' ) ) { + wp_enqueue_script( 'twentyseventeen-navigation', get_theme_file_uri( '/assets/js/navigation.js' ), array( 'jquery' ), '20161203', true ); + $twentyseventeen_l10n['expand'] = __( 'Expand child menu', 'twentyseventeen' ); + $twentyseventeen_l10n['collapse'] = __( 'Collapse child menu', 'twentyseventeen' ); + $twentyseventeen_l10n['icon'] = twentyseventeen_get_svg( + array( + 'icon' => 'angle-down', + 'fallback' => true, + ) + ); + } + + wp_enqueue_script( 'twentyseventeen-global', get_theme_file_uri( '/assets/js/global.js' ), array( 'jquery' ), '20190121', true ); + + wp_enqueue_script( 'jquery-scrollto', get_theme_file_uri( '/assets/js/jquery.scrollTo.js' ), array( 'jquery' ), '2.1.2', true ); + + wp_localize_script( 'twentyseventeen-skip-link-focus-fix', 'twentyseventeenScreenReaderText', $twentyseventeen_l10n ); + + if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) { + wp_enqueue_script( 'comment-reply' ); + } +} +add_action( 'wp_enqueue_scripts', 'twentyseventeen_scripts' ); + +/** + * Enqueues styles for the block-based editor. + * + * @since Twenty Seventeen 1.8 + */ +function twentyseventeen_block_editor_styles() { + // Block styles. + wp_enqueue_style( 'twentyseventeen-block-editor-style', get_theme_file_uri( '/assets/css/editor-blocks.css' ), array(), '20190328' ); + // Add custom fonts. + wp_enqueue_style( 'twentyseventeen-fonts', twentyseventeen_fonts_url(), array(), null ); +} +add_action( 'enqueue_block_editor_assets', 'twentyseventeen_block_editor_styles' ); + +/** + * Add custom image sizes attribute to enhance responsive image functionality + * for content images. + * + * @since Twenty Seventeen 1.0 + * + * @param string $sizes A source size value for use in a 'sizes' attribute. + * @param array $size Image size. Accepts an array of width and height + * values in pixels (in that order). + * @return string A source size value for use in a content image 'sizes' attribute. + */ +function twentyseventeen_content_image_sizes_attr( $sizes, $size ) { + $width = $size[0]; + + if ( 740 <= $width ) { + $sizes = '(max-width: 706px) 89vw, (max-width: 767px) 82vw, 740px'; + } + + if ( is_active_sidebar( 'sidebar-1' ) || is_archive() || is_search() || is_home() || is_page() ) { + if ( ! ( is_page() && 'one-column' === get_theme_mod( 'page_options' ) ) && 767 <= $width ) { + $sizes = '(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px'; + } + } + + return $sizes; +} +add_filter( 'wp_calculate_image_sizes', 'twentyseventeen_content_image_sizes_attr', 10, 2 ); + +/** + * Filter the `sizes` value in the header image markup. + * + * @since Twenty Seventeen 1.0 + * + * @param string $html The HTML image tag markup being filtered. + * @param object $header The custom header object returned by 'get_custom_header()'. + * @param array $attr Array of the attributes for the image tag. + * @return string The filtered header image HTML. + */ +function twentyseventeen_header_image_tag( $html, $header, $attr ) { + if ( isset( $attr['sizes'] ) ) { + $html = str_replace( $attr['sizes'], '100vw', $html ); + } + return $html; +} +add_filter( 'get_header_image_tag', 'twentyseventeen_header_image_tag', 10, 3 ); + +/** + * Add custom image sizes attribute to enhance responsive image functionality + * for post thumbnails. + * + * @since Twenty Seventeen 1.0 + * + * @param array $attr Attributes for the image markup. + * @param int $attachment Image attachment ID. + * @param array $size Registered image size or flat array of height and width dimensions. + * @return array The filtered attributes for the image markup. + */ +function twentyseventeen_post_thumbnail_sizes_attr( $attr, $attachment, $size ) { + if ( is_archive() || is_search() || is_home() ) { + $attr['sizes'] = '(max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 543px, 580px'; + } else { + $attr['sizes'] = '100vw'; + } + + return $attr; +} +add_filter( 'wp_get_attachment_image_attributes', 'twentyseventeen_post_thumbnail_sizes_attr', 10, 3 ); + +/** + * Use front-page.php when Front page displays is set to a static page. + * + * @since Twenty Seventeen 1.0 + * + * @param string $template front-page.php. + * + * @return string The template to be used: blank if is_home() is true (defaults to index.php), else $template. + */ +function twentyseventeen_front_page_template( $template ) { + return is_home() ? '' : $template; +} +add_filter( 'frontpage_template', 'twentyseventeen_front_page_template' ); + +/** + * Modifies tag cloud widget arguments to display all tags in the same font size + * and use list format for better accessibility. + * + * @since Twenty Seventeen 1.4 + * + * @param array $args Arguments for tag cloud widget. + * @return array The filtered arguments for tag cloud widget. + */ +function twentyseventeen_widget_tag_cloud_args( $args ) { + $args['largest'] = 1; + $args['smallest'] = 1; + $args['unit'] = 'em'; + $args['format'] = 'list'; + + return $args; +} +add_filter( 'widget_tag_cloud_args', 'twentyseventeen_widget_tag_cloud_args' ); + +/** + * Get unique ID. + * + * This is a PHP implementation of Underscore's uniqueId method. A static variable + * contains an integer that is incremented with each call. This number is returned + * with the optional prefix. As such the returned value is not universally unique, + * but it is unique across the life of the PHP process. + * + * @since Twenty Seventeen 2.0 + * @see wp_unique_id() Themes requiring WordPress 5.0.3 and greater should use this instead. + * + * @staticvar int $id_counter + * + * @param string $prefix Prefix for the returned ID. + * @return string Unique ID. + */ +function twentyseventeen_unique_id( $prefix = '' ) { + static $id_counter = 0; + if ( function_exists( 'wp_unique_id' ) ) { + return wp_unique_id( $prefix ); + } + return $prefix . (string) ++$id_counter; +} + +/** + * Implement the Custom Header feature. + */ +require get_parent_theme_file_path( '/inc/custom-header.php' ); + +/** + * Custom template tags for this theme. + */ +require get_parent_theme_file_path( '/inc/template-tags.php' ); + +/** + * Additional features to allow styling of the templates. + */ +require get_parent_theme_file_path( '/inc/template-functions.php' ); + +/** + * Customizer additions. + */ +require get_parent_theme_file_path( '/inc/customizer.php' ); + +/** + * SVG icons functions and filters. + */ +require get_parent_theme_file_path( '/inc/icon-functions.php' ); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/header.php b/srcs/wordpress/wp-content/themes/twentyseventeen/header.php new file mode 100644 index 0000000..0ac11c3 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/header.php @@ -0,0 +1,58 @@ + section and everything up until
+ * + * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials + * + * @package WordPress + * @subpackage Twenty_Seventeen + * @since 1.0 + * @version 1.0 + */ + +?> + class="no-js no-svg"> + + + + + + + + +> + +
+ + + + + '; + echo get_the_post_thumbnail( get_queried_object_id(), 'twentyseventeen-featured-image' ); + echo '
'; + endif; + ?> + +
+
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/inc/back-compat.php b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/back-compat.php new file mode 100644 index 0000000..1b8c873 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/back-compat.php @@ -0,0 +1,76 @@ +

%s

', $message ); +} + +/** + * Prevents the Customizer from being loaded on WordPress versions prior to 4.7. + * + * @since Twenty Seventeen 1.0 + * + * @global string $wp_version WordPress version. + */ +function twentyseventeen_customize() { + wp_die( + /* translators: %s: The current WordPress version. */ + sprintf( __( 'Twenty Seventeen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentyseventeen' ), $GLOBALS['wp_version'] ), + '', + array( + 'back_link' => true, + ) + ); +} +add_action( 'load-customize.php', 'twentyseventeen_customize' ); + +/** + * Prevents the Theme Preview from being loaded on WordPress versions prior to 4.7. + * + * @since Twenty Seventeen 1.0 + * + * @global string $wp_version WordPress version. + */ +function twentyseventeen_preview() { + if ( isset( $_GET['preview'] ) ) { + /* translators: %s: The current WordPress version. */ + wp_die( sprintf( __( 'Twenty Seventeen requires at least WordPress version 4.7. You are running version %s. Please upgrade and try again.', 'twentyseventeen' ), $GLOBALS['wp_version'] ) ); + } +} +add_action( 'template_redirect', 'twentyseventeen_preview' ); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/inc/color-patterns.php b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/color-patterns.php new file mode 100644 index 0000000..38e4257 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/color-patterns.php @@ -0,0 +1,580 @@ + .comment-body > .comment-meta > .comment-author .avatar { + border-color: hsl( ' . $hue . ', ' . $reduced_saturation . ', 20% ); /* base: #333; */ +} + +.colors-custom h2, +.colors-custom blockquote, +.colors-custom input[type="text"], +.colors-custom input[type="email"], +.colors-custom input[type="url"], +.colors-custom input[type="password"], +.colors-custom input[type="search"], +.colors-custom input[type="number"], +.colors-custom input[type="tel"], +.colors-custom input[type="range"], +.colors-custom input[type="date"], +.colors-custom input[type="month"], +.colors-custom input[type="week"], +.colors-custom input[type="time"], +.colors-custom input[type="datetime"], +.colors-custom input[type="datetime-local"], +.colors-custom input[type="color"], +.colors-custom textarea, +.colors-custom .site-description, +.colors-custom .entry-content blockquote.alignleft, +.colors-custom .entry-content blockquote.alignright, +.colors-custom .colors-custom .taxonomy-description, +.colors-custom .site-info a, +.colors-custom .wp-caption, +.colors-custom .gallery-caption { + color: hsl( ' . $hue . ', ' . $saturation . ', 40% ); /* base: #666; */ +} + +.colors-custom abbr, +.colors-custom acronym { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 40% ); /* base: #666; */ +} + +.colors-custom h5, +.colors-custom .entry-meta, +.colors-custom .entry-meta a, +.colors-custom.blog .entry-meta a.post-edit-link, +.colors-custom.archive .entry-meta a.post-edit-link, +.colors-custom.search .entry-meta a.post-edit-link, +.colors-custom .nav-subtitle, +.colors-custom .comment-metadata, +.colors-custom .comment-metadata a, +.colors-custom .no-comments, +.colors-custom .comment-awaiting-moderation, +.colors-custom .page-numbers.current, +.colors-custom .page-links .page-number, +.colors-custom .navigation-top .current-menu-item > a, +.colors-custom .navigation-top .current_page_item > a, +.colors-custom .main-navigation a:hover, +.colors-custom .site-content .wp-playlist-light .wp-playlist-current-item .wp-playlist-item-artist { + color: hsl( ' . $hue . ', ' . $saturation . ', 46% ); /* base: #767676; */ +} + +.colors-custom :not( .mejs-button ) > button:hover, +.colors-custom :not( .mejs-button ) > button:focus, +.colors-custom input[type="button"]:hover, +.colors-custom input[type="button"]:focus, +.colors-custom input[type="submit"]:hover, +.colors-custom input[type="submit"]:focus, +.colors-custom .entry-footer .edit-link a.post-edit-link:hover, +.colors-custom .entry-footer .edit-link a.post-edit-link:focus, +.colors-custom .social-navigation a, +.colors-custom .prev.page-numbers:focus, +.colors-custom .prev.page-numbers:hover, +.colors-custom .next.page-numbers:focus, +.colors-custom .next.page-numbers:hover, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item:hover, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item:focus { + background: hsl( ' . esc_attr( $hue ) . ', ' . esc_attr( $saturation ) . ', 46% ); /* base: #767676; */ +} + +.colors-custom button.secondary:hover, +.colors-custom button.secondary:focus, +.colors-custom input[type="reset"]:hover, +.colors-custom input[type="reset"]:focus, +.colors-custom input[type="button"].secondary:hover, +.colors-custom input[type="button"].secondary:focus, +.colors-custom input[type="reset"].secondary:hover, +.colors-custom input[type="reset"].secondary:focus, +.colors-custom input[type="submit"].secondary:hover, +.colors-custom input[type="submit"].secondary:focus, +.colors-custom hr { + background: hsl( ' . $hue . ', ' . $saturation . ', 73% ); /* base: #bbb; */ +} + +.colors-custom input[type="text"], +.colors-custom input[type="email"], +.colors-custom input[type="url"], +.colors-custom input[type="password"], +.colors-custom input[type="search"], +.colors-custom input[type="number"], +.colors-custom input[type="tel"], +.colors-custom input[type="range"], +.colors-custom input[type="date"], +.colors-custom input[type="month"], +.colors-custom input[type="week"], +.colors-custom input[type="time"], +.colors-custom input[type="datetime"], +.colors-custom input[type="datetime-local"], +.colors-custom input[type="color"], +.colors-custom textarea, +.colors-custom select, +.colors-custom fieldset, +.colors-custom .widget .tagcloud a:hover, +.colors-custom .widget .tagcloud a:focus, +.colors-custom .widget.widget_tag_cloud a:hover, +.colors-custom .widget.widget_tag_cloud a:focus, +.colors-custom .wp_widget_tag_cloud a:hover, +.colors-custom .wp_widget_tag_cloud a:focus { + border-color: hsl( ' . $hue . ', ' . $saturation . ', 73% ); /* base: #bbb; */ +} + +.colors-custom thead th { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 73% ); /* base: #bbb; */ +} + +.colors-custom .entry-footer .cat-links .icon, +.colors-custom .entry-footer .tags-links .icon { + color: hsl( ' . $hue . ', ' . $saturation . ', 73% ); /* base: #bbb; */ +} + +.colors-custom button.secondary, +.colors-custom input[type="reset"], +.colors-custom input[type="button"].secondary, +.colors-custom input[type="reset"].secondary, +.colors-custom input[type="submit"].secondary, +.colors-custom .prev.page-numbers, +.colors-custom .next.page-numbers { + background-color: hsl( ' . $hue . ', ' . $saturation . ', 87% ); /* base: #ddd; */ +} + +.colors-custom .widget .tagcloud a, +.colors-custom .widget.widget_tag_cloud a, +.colors-custom .wp_widget_tag_cloud a { + border-color: hsl( ' . $hue . ', ' . $saturation . ', 87% ); /* base: #ddd; */ +} + +.colors-custom.twentyseventeen-front-page article:not(.has-post-thumbnail):not(:first-child), +.colors-custom .widget ul li { + border-top-color: hsl( ' . $hue . ', ' . $saturation . ', 87% ); /* base: #ddd; */ +} + +.colors-custom .widget ul li { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 87% ); /* base: #ddd; */ +} + +.colors-custom pre, +.colors-custom mark, +.colors-custom ins { + background: hsl( ' . $hue . ', ' . $saturation . ', 93% ); /* base: #eee; */ +} + +.colors-custom .navigation-top, +.colors-custom .main-navigation > div > ul, +.colors-custom .pagination, +.colors-custom .comments-pagination, +.colors-custom .entry-footer, +.colors-custom .site-footer { + border-top-color: hsl( ' . $hue . ', ' . $saturation . ', 93% ); /* base: #eee; */ +} + +.colors-custom .navigation-top, +.colors-custom .main-navigation li, +.colors-custom .entry-footer, +.colors-custom .single-featured-image-header, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item, +.colors-custom tr { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 93% ); /* base: #eee; */ +} + +.colors-custom .site-content .wp-playlist-light { + border-color: hsl( ' . $hue . ', ' . $saturation . ', 93% ); /* base: #eee; */ +} + +.colors-custom .site-header, +.colors-custom .single-featured-image-header { + background-color: hsl( ' . $hue . ', ' . $saturation . ', 98% ); /* base: #fafafa; */ +} + +.colors-custom button, +.colors-custom input[type="button"], +.colors-custom input[type="submit"], +.colors-custom .entry-footer .edit-link a.post-edit-link, +.colors-custom .social-navigation a, +.colors-custom .site-content .wp-playlist-light a.wp-playlist-caption:hover, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item:hover a, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item:focus a, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item:hover, +.colors-custom .site-content .wp-playlist-light .wp-playlist-item:focus, +.colors-custom .prev.page-numbers:focus, +.colors-custom .prev.page-numbers:hover, +.colors-custom .next.page-numbers:focus, +.colors-custom .next.page-numbers:hover, +.colors-custom.has-header-image .site-title, +.colors-custom.has-header-video .site-title, +.colors-custom.has-header-image .site-title a, +.colors-custom.has-header-video .site-title a, +.colors-custom.has-header-image .site-description, +.colors-custom.has-header-video .site-description { + color: hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: #fff; */ +} + +body.colors-custom, +.colors-custom .navigation-top, +.colors-custom .main-navigation ul { + background: hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: #fff; */ +} + +.colors-custom .widget ul li a, +.colors-custom .site-footer .widget-area ul li a { + -webkit-box-shadow: inset 0 -1px 0 hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: rgba(255, 255, 255, 1); */ + box-shadow: inset 0 -1px 0 hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: rgba(255, 255, 255, 1); */ +} + +.colors-custom .menu-toggle, +.colors-custom .menu-toggle:hover, +.colors-custom .menu-toggle:focus, +.colors-custom .menu .dropdown-toggle, +.colors-custom .menu-scroll-down, +.colors-custom .menu-scroll-down:hover, +.colors-custom .menu-scroll-down:focus { + background-color: transparent; +} + +.colors-custom .widget .tagcloud a, +.colors-custom .widget .tagcloud a:focus, +.colors-custom .widget .tagcloud a:hover, +.colors-custom .widget.widget_tag_cloud a, +.colors-custom .widget.widget_tag_cloud a:focus, +.colors-custom .widget.widget_tag_cloud a:hover, +.colors-custom .wp_widget_tag_cloud a, +.colors-custom .wp_widget_tag_cloud a:focus, +.colors-custom .wp_widget_tag_cloud a:hover, +.colors-custom .entry-footer .edit-link a.post-edit-link:focus, +.colors-custom .entry-footer .edit-link a.post-edit-link:hover { + -webkit-box-shadow: none !important; + box-shadow: none !important; +} + +/* Reset non-customizable hover styling for links */ +.colors-custom .entry-content a:hover, +.colors-custom .entry-content a:focus, +.colors-custom .entry-summary a:hover, +.colors-custom .entry-summary a:focus, +.colors-custom .comment-content a:focus, +.colors-custom .comment-content a:hover, +.colors-custom .widget a:hover, +.colors-custom .widget a:focus, +.colors-custom .site-footer .widget-area a:hover, +.colors-custom .site-footer .widget-area a:focus, +.colors-custom .posts-navigation a:hover, +.colors-custom .posts-navigation a:focus, +.colors-custom .widget_authors a:hover strong, +.colors-custom .widget_authors a:focus strong { + -webkit-box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 3px 0 rgba(0, 0, 0, 1); + box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 3px 0 rgba(0, 0, 0, 1); +} + +.colors-custom .gallery-item a, +.colors-custom .gallery-item a:hover, +.colors-custom .gallery-item a:focus { + -webkit-box-shadow: none; + box-shadow: none; +} + +@media screen and (min-width: 48em) { + + .colors-custom .nav-links .nav-previous .nav-title .icon, + .colors-custom .nav-links .nav-next .nav-title .icon { + color: hsl( ' . $hue . ', ' . $saturation . ', 20% ); /* base: #222; */ + } + + .colors-custom .main-navigation li li:hover, + .colors-custom .main-navigation li li.focus { + background: hsl( ' . $hue . ', ' . $saturation . ', 46% ); /* base: #767676; */ + } + + .colors-custom .navigation-top .menu-scroll-down { + color: hsl( ' . $hue . ', ' . $saturation . ', 46% ); /* base: #767676; */; + } + + .colors-custom abbr[title] { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 46% ); /* base: #767676; */; + } + + .colors-custom .main-navigation ul ul { + border-color: hsl( ' . $hue . ', ' . $saturation . ', 73% ); /* base: #bbb; */ + background: hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: #fff; */ + } + + .colors-custom .main-navigation ul li.menu-item-has-children:before, + .colors-custom .main-navigation ul li.page_item_has_children:before { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 73% ); /* base: #bbb; */ + } + + .colors-custom .main-navigation ul li.menu-item-has-children:after, + .colors-custom .main-navigation ul li.page_item_has_children:after { + border-bottom-color: hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: #fff; */ + } + + .colors-custom .main-navigation li li.focus > a, + .colors-custom .main-navigation li li:focus > a, + .colors-custom .main-navigation li li:hover > a, + .colors-custom .main-navigation li li a:hover, + .colors-custom .main-navigation li li a:focus, + .colors-custom .main-navigation li li.current_page_item a:hover, + .colors-custom .main-navigation li li.current-menu-item a:hover, + .colors-custom .main-navigation li li.current_page_item a:focus, + .colors-custom .main-navigation li li.current-menu-item a:focus { + color: hsl( ' . $hue . ', ' . $saturation . ', 100% ); /* base: #fff; */ + } +}'; + + /** + * Filters Twenty Seventeen custom colors CSS. + * + * @since Twenty Seventeen 1.0 + * + * @param string $css Base theme colors CSS. + * @param int $hue The user's selected color hue. + * @param string $saturation Filtered theme color saturation level. + */ + return apply_filters( 'twentyseventeen_custom_colors_css', $css, $hue, $saturation ); +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/inc/custom-header.php b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/custom-header.php new file mode 100644 index 0000000..9e4f5e6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/custom-header.php @@ -0,0 +1,131 @@ + get_parent_theme_file_uri( '/assets/images/header.jpg' ), + 'width' => 2000, + 'height' => 1200, + 'flex-height' => true, + 'video' => true, + 'wp-head-callback' => 'twentyseventeen_header_style', + ) + ) + ); + + register_default_headers( + array( + 'default-image' => array( + 'url' => '%s/assets/images/header.jpg', + 'thumbnail_url' => '%s/assets/images/header.jpg', + 'description' => __( 'Default Header Image', 'twentyseventeen' ), + ), + ) + ); +} +add_action( 'after_setup_theme', 'twentyseventeen_custom_header_setup' ); + +if ( ! function_exists( 'twentyseventeen_header_style' ) ) : + /** + * Styles the header image and text displayed on the blog. + * + * @see twentyseventeen_custom_header_setup(). + */ + function twentyseventeen_header_style() { + $header_text_color = get_header_textcolor(); + + // If no custom options for text are set, let's bail. + // get_header_textcolor() options: add_theme_support( 'custom-header' ) is default, hide text (returns 'blank') or any hex value. + if ( get_theme_support( 'custom-header', 'default-text-color' ) === $header_text_color ) { + return; + } + + // If we get this far, we have custom styles. Let's do this. + ?> + + ' . __( 'Play background video', 'twentyseventeen' ) . '' . twentyseventeen_get_svg( array( 'icon' => 'play' ) ); + $settings['l10n']['pause'] = '' . __( 'Pause background video', 'twentyseventeen' ) . '' . twentyseventeen_get_svg( array( 'icon' => 'pause' ) ); + return $settings; +} +add_filter( 'header_video_settings', 'twentyseventeen_video_controls' ); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/inc/customizer.php b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/customizer.php new file mode 100644 index 0000000..74d1c33 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/customizer.php @@ -0,0 +1,249 @@ +get_setting( 'blogname' )->transport = 'postMessage'; + $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; + $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; + + $wp_customize->selective_refresh->add_partial( + 'blogname', + array( + 'selector' => '.site-title a', + 'render_callback' => 'twentyseventeen_customize_partial_blogname', + ) + ); + $wp_customize->selective_refresh->add_partial( + 'blogdescription', + array( + 'selector' => '.site-description', + 'render_callback' => 'twentyseventeen_customize_partial_blogdescription', + ) + ); + + /** + * Custom colors. + */ + $wp_customize->add_setting( + 'colorscheme', + array( + 'default' => 'light', + 'transport' => 'postMessage', + 'sanitize_callback' => 'twentyseventeen_sanitize_colorscheme', + ) + ); + + $wp_customize->add_setting( + 'colorscheme_hue', + array( + 'default' => 250, + 'transport' => 'postMessage', + 'sanitize_callback' => 'absint', // The hue is stored as a positive integer. + ) + ); + + $wp_customize->add_control( + 'colorscheme', + array( + 'type' => 'radio', + 'label' => __( 'Color Scheme', 'twentyseventeen' ), + 'choices' => array( + 'light' => __( 'Light', 'twentyseventeen' ), + 'dark' => __( 'Dark', 'twentyseventeen' ), + 'custom' => __( 'Custom', 'twentyseventeen' ), + ), + 'section' => 'colors', + 'priority' => 5, + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'colorscheme_hue', + array( + 'mode' => 'hue', + 'section' => 'colors', + 'priority' => 6, + ) + ) + ); + + /** + * Theme options. + */ + $wp_customize->add_section( + 'theme_options', + array( + 'title' => __( 'Theme Options', 'twentyseventeen' ), + 'priority' => 130, // Before Additional CSS. + ) + ); + + $wp_customize->add_setting( + 'page_layout', + array( + 'default' => 'two-column', + 'sanitize_callback' => 'twentyseventeen_sanitize_page_layout', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'page_layout', + array( + 'label' => __( 'Page Layout', 'twentyseventeen' ), + 'section' => 'theme_options', + 'type' => 'radio', + 'description' => __( 'When the two-column layout is assigned, the page title is in one column and content is in the other.', 'twentyseventeen' ), + 'choices' => array( + 'one-column' => __( 'One Column', 'twentyseventeen' ), + 'two-column' => __( 'Two Column', 'twentyseventeen' ), + ), + 'active_callback' => 'twentyseventeen_is_view_with_layout_option', + ) + ); + + /** + * Filter number of front page sections in Twenty Seventeen. + * + * @since Twenty Seventeen 1.0 + * + * @param int $num_sections Number of front page sections. + */ + $num_sections = apply_filters( 'twentyseventeen_front_page_sections', 4 ); + + // Create a setting and control for each of the sections available in the theme. + for ( $i = 1; $i < ( 1 + $num_sections ); $i++ ) { + $wp_customize->add_setting( + 'panel_' . $i, + array( + 'default' => false, + 'sanitize_callback' => 'absint', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'panel_' . $i, + array( + /* translators: %d: The front page section number. */ + 'label' => sprintf( __( 'Front Page Section %d Content', 'twentyseventeen' ), $i ), + 'description' => ( 1 !== $i ? '' : __( 'Select pages to feature in each area from the dropdowns. Add an image to a section by setting a featured image in the page editor. Empty sections will not be displayed.', 'twentyseventeen' ) ), + 'section' => 'theme_options', + 'type' => 'dropdown-pages', + 'allow_addition' => true, + 'active_callback' => 'twentyseventeen_is_static_front_page', + ) + ); + + $wp_customize->selective_refresh->add_partial( + 'panel_' . $i, + array( + 'selector' => '#panel' . $i, + 'render_callback' => 'twentyseventeen_front_page_section', + 'container_inclusive' => true, + ) + ); + } +} +add_action( 'customize_register', 'twentyseventeen_customize_register' ); + +/** + * Sanitize the page layout options. + * + * @param string $input Page layout. + */ +function twentyseventeen_sanitize_page_layout( $input ) { + $valid = array( + 'one-column' => __( 'One Column', 'twentyseventeen' ), + 'two-column' => __( 'Two Column', 'twentyseventeen' ), + ); + + if ( array_key_exists( $input, $valid ) ) { + return $input; + } + + return ''; +} + +/** + * Sanitize the colorscheme. + * + * @param string $input Color scheme. + */ +function twentyseventeen_sanitize_colorscheme( $input ) { + $valid = array( 'light', 'dark', 'custom' ); + + if ( in_array( $input, $valid, true ) ) { + return $input; + } + + return 'light'; +} + +/** + * Render the site title for the selective refresh partial. + * + * @since Twenty Seventeen 1.0 + * @see twentyseventeen_customize_register() + * + * @return void + */ +function twentyseventeen_customize_partial_blogname() { + bloginfo( 'name' ); +} + +/** + * Render the site tagline for the selective refresh partial. + * + * @since Twenty Seventeen 1.0 + * @see twentyseventeen_customize_register() + * + * @return void + */ +function twentyseventeen_customize_partial_blogdescription() { + bloginfo( 'description' ); +} + +/** + * Return whether we're previewing the front page and it's a static page. + */ +function twentyseventeen_is_static_front_page() { + return ( is_front_page() && ! is_home() ); +} + +/** + * Return whether we're on a view that supports a one or two column layout. + */ +function twentyseventeen_is_view_with_layout_option() { + // This option is available on all pages. It's also available on archives when there isn't a sidebar. + return ( is_page() || ( is_archive() && ! is_active_sidebar( 'sidebar-1' ) ) ); +} + +/** + * Bind JS handlers to instantly live-preview changes. + */ +function twentyseventeen_customize_preview_js() { + wp_enqueue_script( 'twentyseventeen-customize-preview', get_theme_file_uri( '/assets/js/customize-preview.js' ), array( 'customize-preview' ), '20161002', true ); +} +add_action( 'customize_preview_init', 'twentyseventeen_customize_preview_js' ); + +/** + * Load dynamic logic for the customizer controls area. + */ +function twentyseventeen_panels_js() { + wp_enqueue_script( 'twentyseventeen-customize-controls', get_theme_file_uri( '/assets/js/customize-controls.js' ), array(), '20161020', true ); +} +add_action( 'customize_controls_enqueue_scripts', 'twentyseventeen_panels_js' ); diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/inc/icon-functions.php b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/icon-functions.php new file mode 100644 index 0000000..2dee5f4 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/icon-functions.php @@ -0,0 +1,220 @@ + '', + 'title' => '', + 'desc' => '', + 'fallback' => false, + ); + + // Parse args. + $args = wp_parse_args( $args, $defaults ); + + // Set aria hidden. + $aria_hidden = ' aria-hidden="true"'; + + // Set ARIA. + $aria_labelledby = ''; + + /* + * Twenty Seventeen doesn't use the SVG title or description attributes; non-decorative icons are described with .screen-reader-text. + * + * However, child themes can use the title and description to add information to non-decorative SVG icons to improve accessibility. + * + * Example 1 with title: 'arrow-right', 'title' => __( 'This is the title', 'textdomain' ) ) ); ?> + * + * Example 2 with title and description: 'arrow-right', 'title' => __( 'This is the title', 'textdomain' ), 'desc' => __( 'This is the description', 'textdomain' ) ) ); ?> + * + * See https://www.paciellogroup.com/blog/2013/12/using-aria-enhance-svg-accessibility/. + */ + if ( $args['title'] ) { + $aria_hidden = ''; + $unique_id = twentyseventeen_unique_id(); + $aria_labelledby = ' aria-labelledby="title-' . $unique_id . '"'; + + if ( $args['desc'] ) { + $aria_labelledby = ' aria-labelledby="title-' . $unique_id . ' desc-' . $unique_id . '"'; + } + } + + // Begin SVG markup. + $svg = ''; + + // Display the title. + if ( $args['title'] ) { + $svg .= '' . esc_html( $args['title'] ) . ''; + + // Display the desc only if the title is already set. + if ( $args['desc'] ) { + $svg .= '' . esc_html( $args['desc'] ) . ''; + } + } + + /* + * Display the icon. + * + * The whitespace around `` is intentional - it is a work around to a keyboard navigation bug in Safari 10. + * + * See https://core.trac.wordpress.org/ticket/38387. + */ + $svg .= ' '; + + // Add some markup to use as a fallback for browsers that do not support SVGs. + if ( $args['fallback'] ) { + $svg .= ''; + } + + $svg .= ''; + + return $svg; +} + +/** + * Display SVG icons in social links menu. + * + * @param string $item_output The menu item output. + * @param WP_Post $item Menu item object. + * @param int $depth Depth of the menu. + * @param array $args wp_nav_menu() arguments. + * @return string $item_output The menu item output with social icon. + */ +function twentyseventeen_nav_menu_social_icons( $item_output, $item, $depth, $args ) { + // Get supported social icons. + $social_icons = twentyseventeen_social_links_icons(); + + // Change SVG icon inside social links menu if there is supported URL. + if ( 'social' === $args->theme_location ) { + foreach ( $social_icons as $attr => $value ) { + if ( false !== strpos( $item_output, $attr ) ) { + $item_output = str_replace( $args->link_after, '' . twentyseventeen_get_svg( array( 'icon' => esc_attr( $value ) ) ), $item_output ); + } + } + } + + return $item_output; +} +add_filter( 'walker_nav_menu_start_el', 'twentyseventeen_nav_menu_social_icons', 10, 4 ); + +/** + * Add dropdown icon if menu item has children. + * + * @param string $title The menu item's title. + * @param WP_Post $item The current menu item. + * @param array $args An array of wp_nav_menu() arguments. + * @param int $depth Depth of menu item. Used for padding. + * @return string $title The menu item's title with dropdown icon. + */ +function twentyseventeen_dropdown_icon_to_menu_link( $title, $item, $args, $depth ) { + if ( 'top' === $args->theme_location ) { + foreach ( $item->classes as $value ) { + if ( 'menu-item-has-children' === $value || 'page_item_has_children' === $value ) { + $title = $title . twentyseventeen_get_svg( array( 'icon' => 'angle-down' ) ); + } + } + } + + return $title; +} +add_filter( 'nav_menu_item_title', 'twentyseventeen_dropdown_icon_to_menu_link', 10, 4 ); + +/** + * Returns an array of supported social links (URL and icon name). + * + * @return array $social_links_icons + */ +function twentyseventeen_social_links_icons() { + // Supported social links icons. + $social_links_icons = array( + 'behance.net' => 'behance', + 'codepen.io' => 'codepen', + 'deviantart.com' => 'deviantart', + 'digg.com' => 'digg', + 'docker.com' => 'dockerhub', + 'dribbble.com' => 'dribbble', + 'dropbox.com' => 'dropbox', + 'facebook.com' => 'facebook', + 'flickr.com' => 'flickr', + 'foursquare.com' => 'foursquare', + 'plus.google.com' => 'google-plus', + 'github.com' => 'github', + 'instagram.com' => 'instagram', + 'linkedin.com' => 'linkedin', + 'mailto:' => 'envelope-o', + 'medium.com' => 'medium', + 'pinterest.com' => 'pinterest-p', + 'pscp.tv' => 'periscope', + 'getpocket.com' => 'get-pocket', + 'reddit.com' => 'reddit-alien', + 'skype.com' => 'skype', + 'skype:' => 'skype', + 'slideshare.net' => 'slideshare', + 'snapchat.com' => 'snapchat-ghost', + 'soundcloud.com' => 'soundcloud', + 'spotify.com' => 'spotify', + 'stumbleupon.com' => 'stumbleupon', + 'tumblr.com' => 'tumblr', + 'twitch.tv' => 'twitch', + 'twitter.com' => 'twitter', + 'vimeo.com' => 'vimeo', + 'vine.co' => 'vine', + 'vk.com' => 'vk', + 'wordpress.org' => 'wordpress', + 'wordpress.com' => 'wordpress', + 'yelp.com' => 'yelp', + 'youtube.com' => 'youtube', + ); + + /** + * Filter Twenty Seventeen social links icons. + * + * @since Twenty Seventeen 1.0 + * + * @param array $social_links_icons Array of social links icons. + */ + return apply_filters( 'twentyseventeen_social_links_icons', $social_links_icons ); +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/inc/template-functions.php b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/template-functions.php new file mode 100644 index 0000000..b9e0d88 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/inc/template-functions.php @@ -0,0 +1,102 @@ +' . get_the_author() . '' + ); + + // Finally, let's write all of this to the page. + echo '' . twentyseventeen_time_link() . ''; + } +endif; + + +if ( ! function_exists( 'twentyseventeen_time_link' ) ) : + /** + * Gets a nicely formatted string for the published date. + */ + function twentyseventeen_time_link() { + $time_string = ''; + if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { + $time_string = ''; + } + + $time_string = sprintf( + $time_string, + get_the_date( DATE_W3C ), + get_the_date(), + get_the_modified_date( DATE_W3C ), + get_the_modified_date() + ); + + // Wrap the time string in a link, and preface it with 'Posted on'. + return sprintf( + /* translators: %s: Post date. */ + __( 'Posted on %s', 'twentyseventeen' ), + '' . $time_string . '' + ); + } +endif; + + +if ( ! function_exists( 'twentyseventeen_entry_footer' ) ) : + /** + * Prints HTML with meta information for the categories, tags and comments. + */ + function twentyseventeen_entry_footer() { + + /* translators: Used between list items, there is a space after the comma. */ + $separate_meta = __( ', ', 'twentyseventeen' ); + + // Get Categories for posts. + $categories_list = get_the_category_list( $separate_meta ); + + // Get Tags for posts. + $tags_list = get_the_tag_list( '', $separate_meta ); + + // We don't want to output .entry-footer if it will be empty, so make sure its not. + if ( ( ( twentyseventeen_categorized_blog() && $categories_list ) || $tags_list ) || get_edit_post_link() ) { + + echo '
'; + + if ( 'post' === get_post_type() ) { + if ( ( $categories_list && twentyseventeen_categorized_blog() ) || $tags_list ) { + echo ''; + + // Make sure there's more than one category before displaying. + if ( $categories_list && twentyseventeen_categorized_blog() ) { + echo '' . twentyseventeen_get_svg( array( 'icon' => 'folder-open' ) ) . '' . __( 'Categories', 'twentyseventeen' ) . '' . $categories_list . ''; + } + + if ( $tags_list && ! is_wp_error( $tags_list ) ) { + echo '' . twentyseventeen_get_svg( array( 'icon' => 'hashtag' ) ) . '' . __( 'Tags', 'twentyseventeen' ) . '' . $tags_list . ''; + } + + echo ''; + } + } + + twentyseventeen_edit_link(); + + echo '
'; + } + } +endif; + + +if ( ! function_exists( 'twentyseventeen_edit_link' ) ) : + /** + * Returns an accessibility-friendly link to edit a post or page. + * + * This also gives us a little context about what exactly we're editing + * (post or page?) so that users understand a bit more where they are in terms + * of the template hierarchy and their content. Helpful when/if the single-page + * layout with multiple posts/pages shown gets confusing. + */ + function twentyseventeen_edit_link() { + edit_post_link( + sprintf( + /* translators: %s: Post title. */ + __( 'Edit "%s"', 'twentyseventeen' ), + get_the_title() + ), + '', + '' + ); + } +endif; + +/** + * Display a front page section. + * + * @param WP_Customize_Partial $partial Partial associated with a selective refresh request. + * @param integer $id Front page section to display. + */ +function twentyseventeen_front_page_section( $partial = null, $id = 0 ) { + if ( is_a( $partial, 'WP_Customize_Partial' ) ) { + // Find out the id and set it up during a selective refresh. + global $twentyseventeencounter; + $id = str_replace( 'panel_', '', $partial->id ); + $twentyseventeencounter = $id; + } + + global $post; // Modify the global post object before setting up post data. + if ( get_theme_mod( 'panel_' . $id ) ) { + $post = get_post( get_theme_mod( 'panel_' . $id ) ); + setup_postdata( $post ); + set_query_var( 'panel', $id ); + + get_template_part( 'template-parts/page/content', 'front-page-panels' ); + + wp_reset_postdata(); + } elseif ( is_customize_preview() ) { + // The output placeholder anchor. + /* translators: %s: The section ID. */ + echo '
' . sprintf( __( 'Front Page Section %s Placeholder', 'twentyseventeen' ), $id ) . '
'; + } +} + +/** + * Returns true if a blog has more than 1 category. + * + * @return bool + */ +function twentyseventeen_categorized_blog() { + $category_count = get_transient( 'twentyseventeen_categories' ); + + if ( false === $category_count ) { + // Create an array of all the categories that are attached to posts. + $categories = get_categories( + array( + 'fields' => 'ids', + 'hide_empty' => 1, + // We only need to know if there is more than one category. + 'number' => 2, + ) + ); + + // Count the number of categories that are attached to the posts. + $category_count = count( $categories ); + + set_transient( 'twentyseventeen_categories', $category_count ); + } + + // Allow viewing case of 0 or 1 categories in post preview. + if ( is_preview() ) { + return true; + } + + return $category_count > 1; +} + + +/** + * Flush out the transients used in twentyseventeen_categorized_blog. + */ +function twentyseventeen_category_transient_flusher() { + if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { + return; + } + // Like, beat it. Dig? + delete_transient( 'twentyseventeen_categories' ); +} +add_action( 'edit_category', 'twentyseventeen_category_transient_flusher' ); +add_action( 'save_post', 'twentyseventeen_category_transient_flusher' ); + +if ( ! function_exists( 'wp_body_open' ) ) : + /** + * Fire the wp_body_open action. + * + * Added for backwards compatibility to support pre 5.2.0 WordPress versions. + * + * @since Twenty Seventeen 2.2 + */ + function wp_body_open() { + /** + * Triggered after the opening tag. + * + * @since Twenty Seventeen 2.2 + */ + do_action( 'wp_body_open' ); + } +endif; diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/index.php b/srcs/wordpress/wp-content/themes/twentyseventeen/index.php new file mode 100644 index 0000000..36788a6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/index.php @@ -0,0 +1,71 @@ + + +
+ + + + + + +
+
+ + twentyseventeen_get_svg( array( 'icon' => 'arrow-left' ) ) . '' . __( 'Previous page', 'twentyseventeen' ) . '', + 'next_text' => '' . __( 'Next page', 'twentyseventeen' ) . '' . twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ), + 'before_page_number' => '' . __( 'Page', 'twentyseventeen' ) . ' ', + ) + ); + + else : + + get_template_part( 'template-parts/post/content', 'none' ); + + endif; + ?> + +
+
+ +
+ + + +
+
+
+ + + +
+
+
+ + Themes and click the 'Add New' button. +2. Type in Twenty Seventeen in the search form and press the 'Enter' key on your keyboard. +3. Click on the 'Activate' button to use your new theme right away. +4. Go to https://wordpress.org/support/article/twenty-seventeen/ for a guide on how to customize this theme. +5. Navigate to Appearance > Customize in your admin panel and customize to taste. + +== Copyright == + +Twenty Seventeen WordPress Theme, Copyright 2016-2019 WordPress.org +Twenty Seventeen is distributed under the terms of the GNU GPL + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +Twenty Seventeen bundles the following third-party resources: + +HTML5 Shiv, Copyright 2014 Alexander Farkas +Licenses: MIT/GPL2 +Source: https://github.com/aFarkas/html5shiv + +jQuery scrollTo, Copyright 2007-2015 Ariel Flesler +License: MIT +Source: https://github.com/flesler/jquery.scrollTo + +normalize.css, Copyright 2012-2016 Nicolas Gallagher and Jonathan Neal +License: MIT +Source: https://necolas.github.io/normalize.css/ + +Font Awesome icons, Copyright Dave Gandy +License: SIL Open Font License, version 1.1. +Source: http://fontawesome.io/ + +Bundled header image, Copyright Alvin Engler +License: CC0 1.0 Universal (CC0 1.0) +Source: https://unsplash.com/@englr?photo=bIhpiQA009k + +== Changelog == + += 2.2 = +* Released: May 7, 2019 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_2.2 + += 2.1 = +* Released: February 21, 2019 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_2.1 + += 2.0 = +* Released: January 9, 2019 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_2.0 + += 1.9 = +* Released: December 19, 2018 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.9 + += 1.8 = +* Released: December 6, 2018 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.8 + += 1.7 = +* Released: August 2, 2018 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.7 + += 1.6 = +* Released: May 17, 2018 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.6 + += 1.5 = +* Released: April 4, 2018 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.5 + += 1.4 = +* Released: November 14, 2017 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.4 + += 1.3 = +* Released: June 8, 2017 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.3 + += 1.2 = +* Released: April 18, 2017 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.2 + += 1.1 = +* Released: January 6, 2017 + +https://codex.wordpress.org/Twenty_Seventeen_Theme_Changelog#Version_1.1 + += 1.0 = +* Released: December 6, 2016 + +Initial release diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/rtl.css b/srcs/wordpress/wp-content/themes/twentyseventeen/rtl.css new file mode 100644 index 0000000..1c5e4c7 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/rtl.css @@ -0,0 +1,556 @@ +/* +Theme Name: Twenty Seventeen + +Adding support for languages written in a Right To Left (RTL) direction is easy, +it's just a matter of overwriting all the horizontal positioning attributes +of your CSS stylesheet in a separate stylesheet file named rtl.css. + +https://codex.wordpress.org/Right-to-Left_Language_Support + +*/ + +/* Reset */ + +body { + direction: rtl; + unicode-bidi: embed; +} + +th { + text-align: right; +} + +/* Accessibility */ + +.screen-reader-text:focus { + left: auto; + right: 5px; +} + +/* Typography */ + +textarea { + padding-right: 3px; +} + +li > ul, +li > ol { + margin-left: 0; + margin-right: 1.5em; +} + +th:first-child, +td:first-child { + padding-left: 0.4em; + padding-right: 0; +} + +th:last-child, +td:last-child { + padding-left: 0; + padding-right: 0.4em; +} + +/* Forms */ + +input[type="radio"], +input[type="checkbox"] { + margin-left: 0.5em; + margin-right: 0; +} + +/* Media */ + +.mejs-offscreen { + right: -10000px; +} + +/* Site Branding */ + +.custom-logo-link { + padding-left: 1em; + padding-right: 0; +} + +/* Main Navigation */ + +.main-navigation ul { + text-align: right; +} + +.main-navigation ul ul { + padding-left: 0; + padding-right: 1.5em; +} + +.menu-toggle .icon { + margin-left: 0.5em; + margin-right: 0; +} + +.dropdown-toggle { + left: -0.5em; + right: auto; +} + +/* Front Page */ + +.wp-custom-header-video-button { + left: 30px; + right: auto; +} + +.twentyseventeen-panel .recent-posts .entry-header .edit-link { + margin-left: 0; + margin-right: 1em; +} + +/* Blog, Archive, Search */ + +.blog .entry-meta a.post-edit-link, +.archive .entry-meta a.post-edit-link, +.search .entry-meta a.post-edit-link { + margin-left: 0; + margin-right: 1em; +} + +.search .page .entry-meta a.post-edit-link { + margin-right: 0; +} + +.sticky .icon-thumb-tack { + left: auto; + right: -1.5em; +} + +.prev.page-numbers .icon, +.next.page-numbers .icon { + display: inline-block; + -ms-transform: rotate(180deg); /* IE 9 */ + -webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */ + transform: rotate(180deg); +} + +.prev.page-numbers { + float: right; +} + +.next.page-numbers { + float: left; +} + +.nav-links .nav-previous .nav-title .nav-title-icon-wrapper { + margin-left: 0.5em; + margin-right: 0; +} + +.nav-links .nav-next .nav-title .nav-title-icon-wrapper { + margin-left: 0; + margin-right: 0.5em; +} + +/* Blog Entries */ + +.entry-footer .cat-links, +.entry-footer .tags-links { + padding-left: 0; + padding-right: 2.5em; +} + +.entry-footer .cat-links .icon, +.entry-footer .tags-links .icon { + left: auto; + margin-left: 0.5em; + margin-right: 0; + right: 0; +} + +/* Comments */ + +.comment-body { + margin-left: 0; + margin-right: 65px; +} + +.comment-reply-link .icon { + left: auto; + right: -2em; + -webkit-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); +} + +.comment-author .avatar { + left: auto; + right: -65px; +} + +.comment-reply-link:before { + left: auto; + right: -2em; +} + +.children .comment-author .avatar { + left: auto; + right: -45px; +} + +.form-submit { + text-align: left; +} + +.comment-form #wp-comment-cookies-consent { + margin: 0 0 0 10px; +} + +/* Post Formats */ + +.format-quote blockquote .icon { + left: auto; + right: -1.25em; + -webkit-transform: none; + -ms-transform: none; + transform: none; +} + +/* Post Navigation */ + +.nav-links .nav-previous .nav-title .nav-title-icon-wrapper, +.nav-links .nav-next .nav-title .nav-title-icon-wrapper { + display: inline-block; + -ms-transform: rotate(180deg); /* IE 9 */ + -webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */ + transform: rotate(180deg); +} + +/* Widgets */ + +.widget ul { + margin: 0; +} + +.search-form .search-submit { + left: 3px; + right: auto; +} + +.tagcloud ul li { + float: right; + margin: 4px 0 0 4px; +} + +.widget ul li li { + padding-left: 0; + padding-right: 1.5rem; +} + +.widget_text ul { + margin: 0 1.5em 1.5em 0; +} + +.widget_text ul li ul { + margin: 0 1.5em 0 0; +} + +/* Footer */ + +.social-navigation a { + margin-left: 1em; + margin-right: 0; +} + +/* Customizer styles */ + +.twentyseventeen-customizer.twentyseventeen-front-page .twentyseventeen-panel .twentyseventeen-panel-title { + left: 3.2em; + right: auto; +} + +/* Gallery Styles */ + +.gallery-item, +.gallery-caption { + text-align: right; +} + +/* SVG Fallback */ + +.no-svg .dropdown-toggle { + left: 0; + right: auto; +} + +/* Media queries */ + +@media screen and (min-width: 48em) { + + body.page-template-full-width-page #primary { + float: none; + } + + .has-sidebar:not(.error404) #primary { + float: right; + } + + .has-sidebar #secondary { + float: left; + } + + .error404 #primary { + float: none; + } + + /* Site Branding */ + + .custom-logo-link { + padding-left: 2em; + padding-right: 0; + } + + /* Navigation */ + + .main-navigation ul ul { + padding-right: 0; + } + + .main-navigation ul ul:before, + .main-navigation ul ul:after { + left: 0.5em; + right: auto; + } + + .main-navigation ul ul, + .main-navigation ul ul ul { + left: auto; + right: -999em; + } + + .main-navigation ul ul li:hover > ul, + .main-navigation ul ul li.focus > ul { + left: auto; + right: 100%; + } + + .main-navigation ul li:hover > ul, + .main-navigation ul li.focus > ul { + left: auto; + right: 0.5em; + } + + .main-navigation ul li.menu-item-has-children:before, + .main-navigation ul li.menu-item-has-children:after, + .main-navigation ul li.page_item_has_children:before, + .main-navigation ul li.page_item_has_children:after { + left: 1em; + right: auto; + } + + .main-navigation .menu-item-has-children > a > .icon, + .main-navigation .page_item_has_children > a > .icon { + left: auto; + right: 5px; + } + + .main-navigation ul ul .menu-item-has-children > a > .icon, + .main-navigation ul ul .page_item_has_children > a > .icon { + left: 1em; + right: auto; + -webkit-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); + } + + /* Scroll down arrow */ + + .navigation-top .menu-scroll-down { + left: 0; + right: auto; + } + + .site-header .menu-scroll-down { + left: 0; + right: auto; + } + + .entry-title a { + margin-left: auto; + margin-right: -2px; + } + + /* Front Page */ + + .page-two-column .panel-content .entry-header { + float: right; + } + + .page-two-column .panel-content .entry-content { + float: left; + } + + /* Front Page - Recent Posts */ + + .page-two-column .panel-content .recent-posts { + clear: left; + float: left; + } + + /* Blog, Archive, Search */ + + .sticky .icon-thumb-tack { + left: auto; + right: -2.5em; + } + + body:not(.has-sidebar):not(.page-one-column) .page-header, + body.has-sidebar.error404 #primary .page-header, + body.page-two-column:not(.archive) #primary .entry-header, + body.page-two-column.archive:not(.has-sidebar) #primary .page-header { + float: right; + } + + .blog:not(.has-sidebar) #primary article, + .archive:not(.has-sidebar):not(.page-one-column) #primary article, + .search:not(.has-sidebar) #primary article, + .has-sidebar.error404 #primary .page-content, + .error404.has-sidebar #primary .page-content, + body.page-two-column:not(.archive) #primary .entry-content, + body.page-two-column #comments { + float: left; + } + + .entry-footer .edit-link a.post-edit-link { + margin-left: 0; + margin-right: 1em; + } + + /* Entry content */ + + /* with sidebar */ + + .has-sidebar .entry-content blockquote.alignleft { + margin-left: 0; + width: 34%; + } + + .has-sidebar #primary .entry-content blockquote.alignright, + .has-sidebar #primary .entry-content blockquote.alignright.below-entry-meta { + margin-right: 0; + width: 34%; + } + + .has-sidebar #primary .entry-content blockquote.alignleft.below-entry-meta { + margin-left: -72.5%; + width: 62%; + } + + /* blog index and archive */ + + .blog:not(.has-sidebar) .entry-content blockquote.alignleft, + .twentyseventeen-front-page.page-two-column .entry-content blockquote.alignleft, + .archive:not(.has-sidebar) .entry-content blockquote.alignleft, + .page-two-column .entry-content blockquote.alignleft { + margin-left: 0; + width: 34%; + } + + .blog:not(.has-sidebar) .entry-content blockquote.alignright, + .twentyseventeen-front-page.page-two-column #primary .entry-content blockquote.alignright, + .archive:not(.has-sidebar) .entry-content blockquote.alignright, + .page-two-column #primary .entry-content blockquote.alignright { + margin-right: -72.5%; + width: 62%; + } + + /* Post formats */ + + .format-quote blockquote .icon { + left: auto; + right: -1.5em; + } + + .navigation.pagination { + float: left; + } + + .has-sidebar .navigation.pagination, + .archive.page-one-column:not(.has-sidebar) .navigation.pagination { + float: none; + } + + .post-navigation .nav-previous { + float: right; + } + + .post-navigation .nav-next { + float: left; + text-align: left; + } + + /* Comments */ + + ol.children .children { + padding-left: 0; + padding-right: 2em; + } + + /* Post Navigation */ + + .nav-links .nav-previous .nav-title .nav-title-icon-wrapper { + left: auto; + right: -2em; + } + + .nav-links .nav-next .nav-title .nav-title-icon-wrapper { + left: -2em; + right: auto; + } + + /* Footer */ + + .site-footer .widget-column.footer-widget-1 { + float: right; + } + + .site-footer .widget-column.footer-widget-2 { + float: left; + } + + .social-navigation { + clear: right; + float: right; + } + + .site-info { + float: right; + } + + .social-navigation + .site-info { + margin-left: 0; + margin-right: 6%; + } +} + +@media screen and (min-width: 67em) { + + /* Sticky posts */ + + .sticky .icon-thumb-tack { + left: auto; + right: -1.25em; + } +} + +@media screen and (min-width: 79em) { + + .has-sidebar #primary .entry-content blockquote.alignright, + .has-sidebar #primary .entry-content blockquote.alignright.below-entry-meta { + margin-right: -20%; + } + + .blog:not(.has-sidebar) .entry-content blockquote.alignleft, + .archive:not(.has-sidebar) .entry-content blockquote.alignleft, + .page-two-column .entry-content blockquote.alignleft, + .twentyseventeen-front-page .entry-content blockquote.alignleft { + margin-left: -20%; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/screenshot.png b/srcs/wordpress/wp-content/themes/twentyseventeen/screenshot.png new file mode 100644 index 0000000..088b741 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentyseventeen/screenshot.png differ diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/search.php b/srcs/wordpress/wp-content/themes/twentyseventeen/search.php new file mode 100644 index 0000000..10a87ef --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/search.php @@ -0,0 +1,72 @@ + + +
+ + + +
+
+ + twentyseventeen_get_svg( array( 'icon' => 'arrow-left' ) ) . '' . __( 'Previous page', 'twentyseventeen' ) . '', + 'next_text' => '' . __( 'Next page', 'twentyseventeen' ) . '' . twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ), + 'before_page_number' => '' . __( 'Page', 'twentyseventeen' ) . ' ', + ) + ); + + else : + ?> + +

+ + +
+
+ +
+ + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/sidebar.php b/srcs/wordpress/wp-content/themes/twentyseventeen/sidebar.php new file mode 100644 index 0000000..1fc3a17 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/sidebar.php @@ -0,0 +1,20 @@ + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/single.php b/srcs/wordpress/wp-content/themes/twentyseventeen/single.php new file mode 100644 index 0000000..b5136a2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/single.php @@ -0,0 +1,47 @@ + + +
+
+
+ + '' . __( 'Previous Post', 'twentyseventeen' ) . ' ' . twentyseventeen_get_svg( array( 'icon' => 'arrow-left' ) ) . '%title', + 'next_text' => '' . __( 'Next Post', 'twentyseventeen' ) . ' %title' . twentyseventeen_get_svg( array( 'icon' => 'arrow-right' ) ) . '', + ) + ); + + endwhile; // End of the loop. + ?> + +
+
+ +
+ +>> TABLE OF CONTENTS: +---------------------------------------------------------------- +1.0 Normalize +2.0 Accessibility +3.0 Alignments +4.0 Clearings +5.0 Typography +6.0 Forms +7.0 Formatting +8.0 Lists +9.0 Tables +10.0 Links +11.0 Featured Image Hover +12.0 Navigation +13.0 Layout + 13.1 Header + 13.2 Front Page + 13.3 Regular Content + 13.4 Posts + 13.5 Pages + 13.6 Footer +14.0 Comments +15.0 Widgets +16.0 Media + 16.1 Galleries +17.0 Customizer +18.0 SVGs Fallbacks +19.0 Media Queries +20.0 Print +--------------------------------------------------------------*/ + +/*-------------------------------------------------------------- +1.0 Normalize +Styles based on Normalize v5.0.0 @link https://github.com/necolas/normalize.css +--------------------------------------------------------------*/ + +html { + font-family: sans-serif; + line-height: 1.15; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} + +body { + margin: 0; +} + +article, +aside, +footer, +header, +nav, +section { + display: block; +} + +h1 { + font-size: 2em; + margin: 0.67em 0; +} + +figcaption, +figure, +main { + display: block; +} + +figure { + margin: 1em 0; +} + +hr { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; + overflow: visible; +} + +pre { + font-family: monospace, monospace; + font-size: 1em; +} + +a { + background-color: transparent; + -webkit-text-decoration-skip: objects; +} + +a:active, +a:hover { + outline-width: 0; +} + +abbr[title] { + border-bottom: 1px #767676 dotted; + text-decoration: none; +} + +b, +strong { + font-weight: inherit; +} + +b, +strong { + font-weight: 700; +} + +code, +kbd, +samp { + font-family: monospace, monospace; + font-size: 1em; +} + +dfn { + font-style: italic; +} + +mark { + background-color: #eee; + color: #222; +} + +small { + font-size: 80%; +} + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +audio, +video { + display: inline-block; +} + +audio:not([controls]) { + display: none; + height: 0; +} + +img { + border-style: none; +} + +svg:not(:root) { + overflow: hidden; +} + +button, +input, +optgroup, +select, +textarea { + font-family: sans-serif; + font-size: 100%; + line-height: 1.15; + margin: 0; +} + +button, +input { + overflow: visible; +} + +button, +select { + text-transform: none; +} + +button, +html [type="button"], +[type="reset"], +[type="submit"] { + -webkit-appearance: button; +} + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +fieldset { + border: 1px solid #bbb; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} + +legend { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + color: inherit; + display: table; + max-width: 100%; + padding: 0; + white-space: normal; +} + +progress { + display: inline-block; + vertical-align: baseline; +} + +textarea { + overflow: auto; +} + +[type="checkbox"], +[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +[type="search"] { + -webkit-appearance: textfield; + outline-offset: -2px; +} + +[type="search"]::-webkit-search-cancel-button, +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-file-upload-button { + -webkit-appearance: button; + font: inherit; +} + +details, +menu { + display: block; +} + +summary { + display: list-item; +} + +canvas { + display: inline-block; +} + +template { + display: none; +} + +[hidden] { + display: none; +} + +/*-------------------------------------------------------------- +2.0 Accessibility +--------------------------------------------------------------*/ + +/* Text meant only for screen readers. */ + +.screen-reader-text { + clip: rect(1px, 1px, 1px, 1px); + height: 1px; + overflow: hidden; + position: absolute !important; + width: 1px; + word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */ +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + -webkit-border-radius: 3px; + border-radius: 3px; + -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + color: #21759b; + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 700; + height: auto; + left: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; /* Above WP toolbar. */ +} + +/*-------------------------------------------------------------- +3.0 Alignments +--------------------------------------------------------------*/ + +.alignleft { + display: inline; + float: left; + margin-right: 1.5em; +} + +.alignright { + display: inline; + float: right; + margin-left: 1.5em; +} + +.aligncenter { + clear: both; + display: block; + margin-left: auto; + margin-right: auto; +} + +/*-------------------------------------------------------------- +4.0 Clearings +--------------------------------------------------------------*/ + +.clear:before, +.clear:after, +.entry-content:before, +.entry-content:after, +.entry-footer:before, +.entry-footer:after, +.comment-content:before, +.comment-content:after, +.site-header:before, +.site-header:after, +.site-content:before, +.site-content:after, +.site-footer:before, +.site-footer:after, +.nav-links:before, +.nav-links:after, +.pagination:before, +.pagination:after, +.comment-author:before, +.comment-author:after, +.widget-area:before, +.widget-area:after, +.widget:before, +.widget:after, +.comment-meta:before, +.comment-meta:after { + content: ""; + display: table; + table-layout: fixed; +} + +.clear:after, +.entry-content:after, +.entry-footer:after, +.comment-content:after, +.site-header:after, +.site-content:after, +.site-footer:after, +.nav-links:after, +.pagination:after, +.comment-author:after, +.widget-area:after, +.widget:after, +.comment-meta:after { + clear: both; +} + +/*-------------------------------------------------------------- +5.0 Typography +--------------------------------------------------------------*/ + +body, +button, +input, +select, +textarea { + color: #333; + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; + font-size: 15px; + font-size: 0.9375rem; + font-weight: 400; + line-height: 1.66; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + line-height: 1.4; + margin: 0 0 0.75em; + padding: 1.5em 0 0; +} + +h1:first-child, +h2:first-child, +h3:first-child, +h4:first-child, +h5:first-child, +h6:first-child { + padding-top: 0; +} + +h1 { + font-size: 24px; + font-size: 1.5rem; + font-weight: 300; +} + +h2, +.home.blog .entry-title { + color: #666; + font-size: 20px; + font-size: 1.25rem; + font-weight: 300; +} + +h3 { + color: #333; + font-size: 18px; + font-size: 1.125rem; + font-weight: 300; +} + +h4 { + color: #333; + font-size: 16px; + font-size: 1rem; + font-weight: 800; +} + +h5 { + color: #767676; + font-size: 13px; + font-size: 0.8125rem; + font-weight: 800; + letter-spacing: 0.15em; + text-transform: uppercase; +} + +h6 { + color: #333; + font-size: 15px; + font-size: 0.9375rem; + font-weight: 800; +} + +p { + margin: 0 0 1.5em; + padding: 0; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote { + color: #666; + font-size: 18px; + font-size: 1.125rem; + font-style: italic; + line-height: 1.7; + margin: 0; + overflow: hidden; + padding: 0; +} + +blockquote cite { + display: block; + font-style: normal; + font-weight: 600; + margin-top: 0.5em; +} + +address { + margin: 0 0 1.5em; +} + +pre { + background: #eee; + font-family: "Courier 10 Pitch", Courier, monospace; + font-size: 15px; + font-size: 0.9375rem; + line-height: 1.6; + margin-bottom: 1.6em; + max-width: 100%; + overflow: auto; + padding: 1.6em; +} + +code, +kbd, +tt, +var { + font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; + font-size: 15px; + font-size: 0.9375rem; +} + +abbr, +acronym { + border-bottom: 1px dotted #666; + cursor: help; +} + +mark, +ins { + background: #eee; + text-decoration: none; +} + +big { + font-size: 125%; +} + +blockquote { + quotes: "" ""; +} + +q { + quotes: "“" "”" "‘" "’"; +} + +blockquote:before, +blockquote:after { + content: ""; +} + +:focus { + outline: none; +} + +/* Typography for Arabic Font */ + +html[lang="ar"] body, +html[lang="ar"] button, +html[lang="ar"] input, +html[lang="ar"] select, +html[lang="ar"] textarea, +html[lang="ary"] body, +html[lang="ary"] button, +html[lang="ary"] input, +html[lang="ary"] select, +html[lang="ary"] textarea, +html[lang="azb"] body, +html[lang="azb"] button, +html[lang="azb"] input, +html[lang="azb"] select, +html[lang="azb"] textarea, +html[lang="fa-IR"] body, +html[lang="fa-IR"] button, +html[lang="fa-IR"] input, +html[lang="fa-IR"] select, +html[lang="fa-IR"] textarea, +html[lang="haz"] body, +html[lang="haz"] button, +html[lang="haz"] input, +html[lang="haz"] select, +html[lang="haz"] textarea, +html[lang="ps"] body, +html[lang="ps"] button, +html[lang="ps"] input, +html[lang="ps"] select, +html[lang="ps"] textarea, +html[lang="ur"] body, +html[lang="ur"] button, +html[lang="ur"] input, +html[lang="ur"] select, +html[lang="ur"] textarea { + font-family: Tahoma, Arial, sans-serif; +} + +html[lang="ar"] h1, +html[lang="ar"] h2, +html[lang="ar"] h3, +html[lang="ar"] h4, +html[lang="ar"] h5, +html[lang="ar"] h6, +html[lang="ary"] h1, +html[lang="ary"] h2, +html[lang="ary"] h3, +html[lang="ary"] h4, +html[lang="ary"] h5, +html[lang="ary"] h6, +html[lang="azb"] h1, +html[lang="azb"] h2, +html[lang="azb"] h3, +html[lang="azb"] h4, +html[lang="azb"] h5, +html[lang="azb"] h6, +html[lang="fa-IR"] h1, +html[lang="fa-IR"] h2, +html[lang="fa-IR"] h3, +html[lang="fa-IR"] h4, +html[lang="fa-IR"] h5, +html[lang="fa-IR"] h6, +html[lang="haz"] h1, +html[lang="haz"] h2, +html[lang="haz"] h3, +html[lang="haz"] h4, +html[lang="haz"] h5, +html[lang="haz"] h6, +html[lang="ps"] h1, +html[lang="ps"] h2, +html[lang="ps"] h3, +html[lang="ps"] h4, +html[lang="ps"] h5, +html[lang="ps"] h6, +html[lang="ur"] h1, +html[lang="ur"] h2, +html[lang="ur"] h3, +html[lang="ur"] h4, +html[lang="ur"] h5, +html[lang="ur"] h6 { + font-weight: 700; +} + +/* Typography for Chinese Font */ + +html[lang^="zh-"] body, +html[lang^="zh-"] button, +html[lang^="zh-"] input, +html[lang^="zh-"] select, +html[lang^="zh-"] textarea { + font-family: "PingFang TC", "Helvetica Neue", Helvetica, STHeitiTC-Light, Arial, sans-serif; +} + +html[lang="zh-CN"] body, +html[lang="zh-CN"] button, +html[lang="zh-CN"] input, +html[lang="zh-CN"] select, +html[lang="zh-CN"] textarea { + font-family: "PingFang SC", "Helvetica Neue", Helvetica, STHeitiSC-Light, Arial, sans-serif; +} + +html[lang^="zh-"] h1, +html[lang^="zh-"] h2, +html[lang^="zh-"] h3, +html[lang^="zh-"] h4, +html[lang^="zh-"] h5, +html[lang^="zh-"] h6 { + font-weight: 700; +} + +/* Typography for Cyrillic Font */ + +html[lang="bg-BG"] body, +html[lang="bg-BG"] button, +html[lang="bg-BG"] input, +html[lang="bg-BG"] select, +html[lang="bg-BG"] textarea, +html[lang="ru-RU"] body, +html[lang="ru-RU"] button, +html[lang="ru-RU"] input, +html[lang="ru-RU"] select, +html[lang="ru-RU"] textarea, +html[lang="uk"] body, +html[lang="uk"] button, +html[lang="uk"] input, +html[lang="uk"] select, +html[lang="uk"] textarea { + font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif; +} + +html[lang="bg-BG"] h1, +html[lang="bg-BG"] h2, +html[lang="bg-BG"] h3, +html[lang="bg-BG"] h4, +html[lang="bg-BG"] h5, +html[lang="bg-BG"] h6, +html[lang="ru-RU"] h1, +html[lang="ru-RU"] h2, +html[lang="ru-RU"] h3, +html[lang="ru-RU"] h4, +html[lang="ru-RU"] h5, +html[lang="ru-RU"] h6, +html[lang="uk"] h1, +html[lang="uk"] h2, +html[lang="uk"] h3, +html[lang="uk"] h4, +html[lang="uk"] h5, +html[lang="uk"] h6 { + font-weight: 700; + line-height: 1.2; +} + +/* Typography for Devanagari Font */ + +html[lang="bn-BD"] body, +html[lang="bn-BD"] button, +html[lang="bn-BD"] input, +html[lang="bn-BD"] select, +html[lang="bn-BD"] textarea, +html[lang="hi-IN"] body, +html[lang="hi-IN"] button, +html[lang="hi-IN"] input, +html[lang="hi-IN"] select, +html[lang="hi-IN"] textarea, +html[lang="mr-IN"] body, +html[lang="mr-IN"] button, +html[lang="mr-IN"] input, +html[lang="mr-IN"] select, +html[lang="mr-IN"] textarea { + font-family: Arial, sans-serif; +} + +html[lang="bn-BD"] h1, +html[lang="bn-BD"] h2, +html[lang="bn-BD"] h3, +html[lang="bn-BD"] h4, +html[lang="bn-BD"] h5, +html[lang="bn-BD"] h6, +html[lang="hi-IN"] h1, +html[lang="hi-IN"] h2, +html[lang="hi-IN"] h3, +html[lang="hi-IN"] h4, +html[lang="hi-IN"] h5, +html[lang="hi-IN"] h6, +html[lang="mr-IN"] h1, +html[lang="mr-IN"] h2, +html[lang="mr-IN"] h3, +html[lang="mr-IN"] h4, +html[lang="mr-IN"] h5, +html[lang="mr-IN"] h6 { + font-weight: 700; +} + +/* Typography for Greek Font */ + +html[lang="el"] body, +html[lang="el"] button, +html[lang="el"] input, +html[lang="el"] select, +html[lang="el"] textarea { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +html[lang="el"] h1, +html[lang="el"] h2, +html[lang="el"] h3, +html[lang="el"] h4, +html[lang="el"] h5, +html[lang="el"] h6 { + font-weight: 700; + line-height: 1.3; +} + +/* Typography for Gujarati Font */ + +html[lang="gu-IN"] body, +html[lang="gu-IN"] button, +html[lang="gu-IN"] input, +html[lang="gu-IN"] select, +html[lang="gu-IN"] textarea { + font-family: Arial, sans-serif; +} + +html[lang="gu-IN"] h1, +html[lang="gu-IN"] h2, +html[lang="gu-IN"] h3, +html[lang="gu-IN"] h4, +html[lang="gu-IN"] h5, +html[lang="gu-IN"] h6 { + font-weight: 700; +} + +/* Typography for Hebrew Font */ + +html[lang="he-IL"] body, +html[lang="he-IL"] button, +html[lang="he-IL"] input, +html[lang="he-IL"] select, +html[lang="he-IL"] textarea { + font-family: "Arial Hebrew", Arial, sans-serif; +} + +html[lang="he-IL"] h1, +html[lang="he-IL"] h2, +html[lang="he-IL"] h3, +html[lang="he-IL"] h4, +html[lang="he-IL"] h5, +html[lang="he-IL"] h6 { + font-weight: 700; +} + +/* Typography for Japanese Font */ + +html[lang="ja"] body, +html[lang="ja"] button, +html[lang="ja"] input, +html[lang="ja"] select, +html[lang="ja"] textarea { + font-family: "Hiragino Kaku Gothic Pro", Meiryo, sans-serif; +} + +html[lang="ja"] h1, +html[lang="ja"] h2, +html[lang="ja"] h3, +html[lang="ja"] h4, +html[lang="ja"] h5, +html[lang="ja"] h6 { + font-weight: 700; +} + +/* Typography for Korean font */ + +html[lang="ko-KR"] body, +html[lang="ko-KR"] button, +html[lang="ko-KR"] input, +html[lang="ko-KR"] select, +html[lang="ko-KR"] textarea { + font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif; +} + +html[lang="ko-KR"] h1, +html[lang="ko-KR"] h2, +html[lang="ko-KR"] h3, +html[lang="ko-KR"] h4, +html[lang="ko-KR"] h5, +html[lang="ko-KR"] h6 { + font-weight: 600; +} + +/* Typography for Thai Font */ + +html[lang="th"] h1, +html[lang="th"] h2, +html[lang="th"] h3, +html[lang="th"] h4, +html[lang="th"] h5, +html[lang="th"] h6 { + line-height: 1.65; + font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +html[lang="th"] body, +html[lang="th"] button, +html[lang="th"] input, +html[lang="th"] select, +html[lang="th"] textarea { + line-height: 1.8; + font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +/* Remove letter-spacing for all non-latin alphabets */ + +html[lang="ar"] *, +html[lang="ary"] *, +html[lang="azb"] *, +html[lang="haz"] *, +html[lang="ps"] *, +html[lang^="zh-"] *, +html[lang="bg-BG"] *, +html[lang="ru-RU"] *, +html[lang="uk"] *, +html[lang="bn-BD"] *, +html[lang="hi-IN"] *, +html[lang="mr-IN"] *, +html[lang="el"] *, +html[lang="gu-IN"] *, +html[lang="he-IL"] *, +html[lang="ja"] *, +html[lang="ko-KR"] *, +html[lang="th"] * { + letter-spacing: 0 !important; +} + +/*-------------------------------------------------------------- +6.0 Forms +--------------------------------------------------------------*/ + +label { + color: #333; + display: block; + font-weight: 800; + margin-bottom: 0.5em; +} + +fieldset { + margin-bottom: 1em; +} + +input[type="text"], +input[type="email"], +input[type="url"], +input[type="password"], +input[type="search"], +input[type="number"], +input[type="tel"], +input[type="range"], +input[type="date"], +input[type="month"], +input[type="week"], +input[type="time"], +input[type="datetime"], +input[type="datetime-local"], +input[type="color"], +textarea { + color: #666; + background: #fff; + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)); + border: 1px solid #bbb; + -webkit-border-radius: 3px; + border-radius: 3px; + display: block; + padding: 0.7em; + width: 100%; +} + +input[type="text"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="password"]:focus, +input[type="search"]:focus, +input[type="number"]:focus, +input[type="tel"]:focus, +input[type="range"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="week"]:focus, +input[type="time"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="color"]:focus, +textarea:focus { + color: #222; + border-color: #333; +} + +select { + border: 1px solid #bbb; + -webkit-border-radius: 3px; + border-radius: 3px; + height: 3em; + max-width: 100%; +} + +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted #333; +} + +input[type="radio"], +input[type="checkbox"] { + margin-right: 0.5em; +} + +input[type="radio"] + label, +input[type="checkbox"] + label { + font-weight: 400; +} + +button, +input[type="button"], +input[type="submit"] { + background-color: #222; + border: 0; + -webkit-border-radius: 2px; + border-radius: 2px; + -webkit-box-shadow: none; + box-shadow: none; + color: #fff; + cursor: pointer; + display: inline-block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + line-height: 1; + padding: 1em 2em; + text-shadow: none; + -webkit-transition: background 0.2s; + transition: background 0.2s; +} + +input + button, +input + input[type="button"], +input + input[type="submit"] { + padding: 0.75em 2em; +} + +button.secondary, +input[type="reset"], +input[type="button"].secondary, +input[type="reset"].secondary, +input[type="submit"].secondary { + background-color: #ddd; + color: #222; +} + +:not( .mejs-button ) > button:hover, +:not( .mejs-button ) > button:focus, +input[type="button"]:hover, +input[type="button"]:focus, +input[type="submit"]:hover, +input[type="submit"]:focus { + background: #767676; +} + +button.secondary:hover, +button.secondary:focus, +input[type="reset"]:hover, +input[type="reset"]:focus, +input[type="button"].secondary:hover, +input[type="button"].secondary:focus, +input[type="reset"].secondary:hover, +input[type="reset"].secondary:focus, +input[type="submit"].secondary:hover, +input[type="submit"].secondary:focus { + background: #bbb; +} + +/* Placeholder text color -- selectors need to be separate to work. */ +::-webkit-input-placeholder { + color: #333; + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; +} + +:-moz-placeholder { + color: #333; + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; +} + +::-moz-placeholder { + color: #333; + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; + opacity: 1; + /* Since FF19 lowers the opacity of the placeholder by default */ +} + +:-ms-input-placeholder { + color: #333; + font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif; +} + +/*-------------------------------------------------------------- +7.0 Formatting +--------------------------------------------------------------*/ + +hr { + background-color: #bbb; + border: 0; + height: 1px; + margin-bottom: 1.5em; +} + +/*-------------------------------------------------------------- +8.0 Lists +--------------------------------------------------------------*/ + +ul, +ol { + margin: 0 0 1.5em; + padding: 0; +} + +ul { + list-style: disc; +} + +ol { + list-style: decimal; +} + +li > ul, +li > ol { + margin-bottom: 0; + margin-left: 1.5em; +} + +dt { + font-weight: 700; +} + +dd { + margin: 0 1.5em 1.5em; +} + +/*-------------------------------------------------------------- +9.0 Tables +--------------------------------------------------------------*/ + +table { + border-collapse: collapse; + margin: 0 0 1.5em; + width: 100%; +} + +thead th { + border-bottom: 2px solid #bbb; + padding-bottom: 0.5em; +} + +th { + padding: 0.4em; + text-align: left; +} + +tr { + border-bottom: 1px solid #eee; +} + +td { + padding: 0.4em; +} + +th:first-child, +td:first-child { + padding-left: 0; +} + +th:last-child, +td:last-child { + padding-right: 0; +} + +/*-------------------------------------------------------------- +10.0 Links +--------------------------------------------------------------*/ + +a { + color: #222; + text-decoration: none; +} + +a:focus { + outline: thin dotted; +} + +a:hover, +a:active { + color: #000; + outline: 0; +} + +/* Hover effects */ + +.entry-content a, +.entry-summary a, +.comment-content a, +.widget a, +.site-footer .widget-area a, +.posts-navigation a, +.widget_authors a strong { + -webkit-box-shadow: inset 0 -1px 0 rgba(15, 15, 15, 1); + box-shadow: inset 0 -1px 0 rgba(15, 15, 15, 1); + -webkit-transition: color 80ms ease-in, -webkit-box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, -webkit-box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, box-shadow 130ms ease-in-out, -webkit-box-shadow 130ms ease-in-out; +} + +.entry-title a, +.entry-meta a, +.page-links a, +.page-links a .page-number, +.entry-footer a, +.entry-footer .cat-links a, +.entry-footer .tags-links a, +.edit-link a, +.post-navigation a, +.logged-in-as a, +.comment-navigation a, +.comment-metadata a, +.comment-metadata a.comment-edit-link, +.comment-reply-link, +a .nav-title, +.pagination a, +.comments-pagination a, +.site-info a, +.widget .widget-title a, +.widget ul li a, +.site-footer .widget-area ul li a, +.site-footer .widget-area ul li a { + -webkit-box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 1); + box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 1); + text-decoration: none; + -webkit-transition: color 80ms ease-in, -webkit-box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, -webkit-box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, box-shadow 130ms ease-in-out; + transition: color 80ms ease-in, box-shadow 130ms ease-in-out, -webkit-box-shadow 130ms ease-in-out; +} + +.entry-content a:focus, +.entry-content a:hover, +.entry-summary a:focus, +.entry-summary a:hover, +.comment-content a:focus, +.comment-content a:hover, +.widget a:focus, +.widget a:hover, +.site-footer .widget-area a:focus, +.site-footer .widget-area a:hover, +.posts-navigation a:focus, +.posts-navigation a:hover, +.comment-metadata a:focus, +.comment-metadata a:hover, +.comment-metadata a.comment-edit-link:focus, +.comment-metadata a.comment-edit-link:hover, +.comment-reply-link:focus, +.comment-reply-link:hover, +.widget_authors a:focus strong, +.widget_authors a:hover strong, +.entry-title a:focus, +.entry-title a:hover, +.entry-meta a:focus, +.entry-meta a:hover, +.page-links a:focus .page-number, +.page-links a:hover .page-number, +.entry-footer a:focus, +.entry-footer a:hover, +.entry-footer .cat-links a:focus, +.entry-footer .cat-links a:hover, +.entry-footer .tags-links a:focus, +.entry-footer .tags-links a:hover, +.post-navigation a:focus, +.post-navigation a:hover, +.pagination a:not(.prev):not(.next):focus, +.pagination a:not(.prev):not(.next):hover, +.comments-pagination a:not(.prev):not(.next):focus, +.comments-pagination a:not(.prev):not(.next):hover, +.logged-in-as a:focus, +.logged-in-as a:hover, +a:focus .nav-title, +a:hover .nav-title, +.edit-link a:focus, +.edit-link a:hover, +.site-info a:focus, +.site-info a:hover, +.widget .widget-title a:focus, +.widget .widget-title a:hover, +.widget ul li a:focus, +.widget ul li a:hover { + color: #000; + -webkit-box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 3px 0 rgba(0, 0, 0, 1); + box-shadow: inset 0 0 0 rgba(0, 0, 0, 0), 0 3px 0 rgba(0, 0, 0, 1); +} + +/* Fixes linked images */ +.entry-content a img, +.comment-content a img, +.widget a img { + -webkit-box-shadow: 0 0 0 8px #fff; + box-shadow: 0 0 0 8px #fff; +} + +.post-navigation a:focus .icon, +.post-navigation a:hover .icon { + color: #222; +} + +/*-------------------------------------------------------------- +11.0 Featured Image Hover +--------------------------------------------------------------*/ + +.post-thumbnail { + margin-bottom: 1em; +} + +.post-thumbnail a img { + -webkit-backface-visibility: hidden; + -webkit-transition: opacity 0.2s; + transition: opacity 0.2s; +} + +.post-thumbnail a:hover img, +.post-thumbnail a:focus img { + opacity: 0.7; +} + +/*-------------------------------------------------------------- +12.0 Navigation +--------------------------------------------------------------*/ + +.navigation-top { + background: #fff; + border-bottom: 1px solid #eee; + border-top: 1px solid #eee; + font-size: 16px; + font-size: 1rem; + position: relative; +} + +.navigation-top .wrap { + max-width: 1000px; + padding: 0; +} + +.navigation-top a { + color: #222; + font-weight: 600; + -webkit-transition: color 0.2s; + transition: color 0.2s; +} + +.navigation-top .current-menu-item > a, +.navigation-top .current_page_item > a { + color: #767676; +} + +.main-navigation { + clear: both; + display: block; +} + +.main-navigation ul { + background: #fff; + list-style: none; + margin: 0; + padding: 0 1.5em; + text-align: left; +} + +/* Hide the menu on small screens when JavaScript is available. + * It only works with JavaScript. + */ + +.js .main-navigation ul, +.main-navigation .menu-item-has-children > a > .icon, +.main-navigation .page_item_has_children > a > .icon, +.main-navigation ul a > .icon { + display: none; +} + +.main-navigation > div > ul { + border-top: 1px solid #eee; + padding: 0.75em 1.695em; +} + +.js .main-navigation.toggled-on > div > ul { + display: block; +} + +.main-navigation ul ul { + padding: 0 0 0 1.5em; +} + +.main-navigation ul ul.toggled-on { + display: block; +} + +.main-navigation ul ul a { + letter-spacing: 0; + padding: 0.4em 0; + position: relative; + text-transform: none; +} + +.main-navigation li { + border-bottom: 1px solid #eee; + position: relative; +} + +.main-navigation li li, +.main-navigation li:last-child { + border: 0; +} + +.main-navigation a { + display: block; + padding: 0.5em 0; + text-decoration: none; +} + +.main-navigation a:hover { + color: #767676; +} + +/* Menu toggle */ + +.menu-toggle { + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + color: #222; + display: none; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + line-height: 1.5; + margin: 1px auto 2px; + padding: 1em; + text-shadow: none; +} + +/* Display the menu toggle when JavaScript is available. */ + +.js .menu-toggle { + display: block; +} + +.main-navigation.toggled-on ul.nav-menu { + display: block; +} + +.menu-toggle:hover, +.menu-toggle:focus { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} + +.menu-toggle:focus { + outline: thin solid; +} + +.menu-toggle .icon { + margin-right: 0.5em; + top: -2px; +} + +.toggled-on .menu-toggle .icon-bars, +.menu-toggle .icon-close { + display: none; +} + +.toggled-on .menu-toggle .icon-close { + display: inline-block; +} + +/* Dropdown Toggle */ + +.dropdown-toggle { + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + color: #222; + display: block; + font-size: 16px; + right: -0.5em; + line-height: 1.5; + margin: 0 auto; + padding: 0.5em; + position: absolute; + text-shadow: none; + top: 0; +} + +.dropdown-toggle:hover, +.dropdown-toggle:focus { + background: transparent; +} + +.dropdown-toggle:focus { + outline: thin dotted; +} + +.dropdown-toggle.toggled-on .icon { + -ms-transform: rotate(-180deg); /* IE 9 */ + -webkit-transform: rotate(-180deg); /* Chrome, Safari, Opera */ + transform: rotate(-180deg); +} + +/* Scroll down arrow */ + +.site-header .menu-scroll-down { + display: none; +} + +/*-------------------------------------------------------------- +13.0 Layout +--------------------------------------------------------------*/ + +html { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +*, +*:before, +*:after { + /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ + -webkit-box-sizing: inherit; + -moz-box-sizing: inherit; + box-sizing: inherit; +} + +body { + background: #fff; + /* Fallback for when there is no custom background color defined. */ +} + +#page { + position: relative; + word-wrap: break-word; +} + +.wrap { + margin-left: auto; + margin-right: auto; + max-width: 700px; + padding-left: 2em; + padding-right: 2em; +} + +.wrap:after { + clear: both; + content: ""; + display: block; +} + +/*-------------------------------------------------------------- +13.1 Header +--------------------------------------------------------------*/ + +#masthead .wrap { + position: relative; +} + +.site-header { + background-color: #fafafa; + position: relative; +} + +/* Site branding */ + +.site-branding { + padding: 1em 0; + position: relative; + -webkit-transition: margin-bottom 0.2s; + transition: margin-bottom 0.2s; + z-index: 3; +} + +.site-branding a { + text-decoration: none; + -webkit-transition: opacity 0.2s; + transition: opacity 0.2s; +} + +.site-branding a:hover, +.site-branding a:focus { + opacity: 0.7; +} + +.site-title { + clear: none; + font-size: 24px; + font-size: 1.5rem; + font-weight: 800; + line-height: 1.25; + letter-spacing: 0.08em; + margin: 0; + padding: 0; + text-transform: uppercase; +} + +.site-title, +.site-title a { + color: #222; + opacity: 1; /* Prevent opacity from changing during selective refreshes in the customize preview */ +} + +body.has-header-image .site-title, +body.has-header-video .site-title, +body.has-header-image .site-title a, +body.has-header-video .site-title a { + color: #fff; +} + +.site-description { + color: #666; + font-size: 13px; + font-size: 0.8125rem; + margin-bottom: 0; +} + +body.has-header-image .site-description, +body.has-header-video .site-description { + color: #fff; + opacity: 0.8; +} + +.custom-logo-link { + display: inline-block; + padding-right: 1em; + vertical-align: middle; + width: auto; +} + +.custom-logo-link img { + display: inline-block; + max-height: 80px; + width: auto; +} + +body.home.title-tagline-hidden.has-header-image .custom-logo-link img, +body.home.title-tagline-hidden.has-header-video .custom-logo-link img { + max-height: 200px; + max-width: 100%; +} + +.custom-logo-link a:hover, +.custom-logo-link a:focus { + opacity: 0.9; +} + +body:not(.title-tagline-hidden) .site-branding-text { + display: inline-block; + max-width: 100%; + vertical-align: middle; +} + +.custom-header { + position: relative; +} + +.has-header-image.twentyseventeen-front-page .custom-header, +.has-header-video.twentyseventeen-front-page .custom-header, +.has-header-image.home.blog .custom-header, +.has-header-video.home.blog .custom-header { + display: table; + height: 300px; + height: 75vh; + width: 100%; +} + +.custom-header-media { + bottom: 0; + left: 0; + overflow: hidden; + position: absolute; + right: 0; + top: 0; + width: 100%; +} + +.custom-header-media:before { + /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.3+75 */ + background: -moz-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 75%, rgba(0, 0, 0, 0.3) 100%); /* FF3.6-15 */ + background: -webkit-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 75%, rgba(0, 0, 0, 0.3) 100%); /* Chrome10-25,Safari5.1-6 */ + background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 75%, rgba(0, 0, 0, 0.3) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000", endColorstr="#4d000000", GradientType=0); /* IE6-9 */ + bottom: 0; + content: ""; + display: block; + height: 100%; + left: 0; + position: absolute; + right: 0; + z-index: 2; +} + +.has-header-image .custom-header-media img, +.has-header-video .custom-header-media video, +.has-header-video .custom-header-media iframe { + position: fixed; + height: auto; + left: 50%; + max-width: 1000%; + min-height: 100%; + min-width: 100%; + min-width: 100vw; /* vw prevents 1px gap on left that 100% has */ + width: auto; + top: 50%; + padding-bottom: 1px; /* Prevent header from extending beyond the footer */ + -ms-transform: translateX(-50%) translateY(-50%); + -moz-transform: translateX(-50%) translateY(-50%); + -webkit-transform: translateX(-50%) translateY(-50%); + transform: translateX(-50%) translateY(-50%); +} + +.wp-custom-header .wp-custom-header-video-button { /* Specificity prevents .color-dark button overrides */ + background-color: rgba(34, 34, 34, 0.5); + border: 1px solid rgba(255, 255, 255, 0.6); + color: rgba(255, 255, 255, 0.6); + height: 45px; + overflow: hidden; + padding: 0; + position: fixed; + right: 30px; + top: 30px; + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + width: 45px; +} + +.wp-custom-header .wp-custom-header-video-button:hover, +.wp-custom-header .wp-custom-header-video-button:focus { /* Specificity prevents .color-dark button overrides */ + border-color: rgba(255, 255, 255, 0.8); + background-color: rgba(34, 34, 34, 0.8); + color: #fff; +} + +.admin-bar .wp-custom-header-video-button { + top: 62px; +} + +.has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media img { + bottom: 0; + position: absolute; + top: auto; + -ms-transform: translateX(-50%) translateY(0); + -moz-transform: translateX(-50%) translateY(0); + -webkit-transform: translateX(-50%) translateY(0); + transform: translateX(-50%) translateY(0); +} + +/* For browsers that support 'object-fit' */ +@supports ( object-fit: cover ) { + .has-header-image .custom-header-media img, + .has-header-video .custom-header-media video, + .has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media img { + height: 100%; + left: 0; + -o-object-fit: cover; + object-fit: cover; + top: 0; + -ms-transform: none; + -moz-transform: none; + -webkit-transform: none; + transform: none; + width: 100%; + } +} + +/* Hides div in Customizer preview when header images or videos change. */ + +body:not(.has-header-image):not(.has-header-video) .custom-header-media { + display: none; +} + +.has-header-image.twentyseventeen-front-page .site-branding, +.has-header-video.twentyseventeen-front-page .site-branding, +.has-header-image.home.blog .site-branding, +.has-header-video.home.blog .site-branding { + display: table-cell; + height: 100%; + vertical-align: bottom; +} + +/*-------------------------------------------------------------- +13.2 Front Page +--------------------------------------------------------------*/ + +.twentyseventeen-front-page .site-content { + padding: 0; +} + +.twentyseventeen-panel { + overflow: hidden; + position: relative; +} + +.panel-image { + background-position: center center; + background-repeat: no-repeat; + -webkit-background-size: cover; + background-size: cover; + position: relative; +} + +.panel-image:before { + /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#000000+0,000000+100&0+0,0.3+100 */ /* FF3.6-15 */ + background: -webkit-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%); /* Chrome10-25,Safari5.1-6 */ + background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.3))); + background: -webkit-linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%); + background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#00000000", endColorstr="#4d000000", GradientType=0); /* IE6-9 */ + bottom: 0; + content: ""; + left: 0; + right: 0; + position: absolute; + top: 100px; +} + +.twentyseventeen-front-page article:not(.has-post-thumbnail):not(:first-child) { + border-top: 1px solid #ddd; +} + +.panel-content { + position: relative; +} + +.panel-content .wrap { + padding-bottom: 0.5em; + padding-top: 1.75em; +} + +/* Panel edit link */ + +.twentyseventeen-panel .edit-link { + display: block; + margin: 0.3em 0 0; +} + +.twentyseventeen-panel .entry-header .edit-link { + font-size: 14px; + font-size: 0.875rem; +} + +/* Front Page - Recent Posts */ + +.twentyseventeen-front-page .panel-content .recent-posts article { + border: 0; + color: #333; + margin-bottom: 3em; +} + +.recent-posts .entry-header { + margin-bottom: 1.2em; +} + +.page .panel-content .recent-posts .entry-title { + font-size: 20px; + font-size: 1.25rem; + font-weight: 300; + letter-spacing: 0; + text-transform: none; +} + +.twentyseventeen-panel .recent-posts .entry-header .edit-link { + color: #222; + display: inline-block; + font-size: 11px; + font-size: 0.6875rem; + margin-left: 1em; +} + +/*-------------------------------------------------------------- +13.3 Regular Content +--------------------------------------------------------------*/ + +.site-content-contain { + background-color: #fff; + position: relative; +} + +.site-content { + padding: 2.5em 0 0; +} + +/*-------------------------------------------------------------- +13.4 Posts +--------------------------------------------------------------*/ + +/* Post Landing Page */ + +.sticky { + position: relative; +} + +.post:not(.sticky) .icon-thumb-tack { + display: none; +} + +.sticky .icon-thumb-tack { + display: block; + height: 18px; + left: -1.5em; + position: absolute; + top: 1.65em; + width: 20px; +} + +.page .panel-content .entry-title, +.page-title, +body.page:not(.twentyseventeen-front-page) .entry-title { + color: #222; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + letter-spacing: 0.14em; + text-transform: uppercase; +} + +.entry-header .entry-title { + margin-bottom: 0.25em; +} + +.entry-title a { + color: #333; + text-decoration: none; + margin-left: -2px; +} + +.entry-title:not(:first-child) { + padding-top: 0; +} + +.entry-meta { + color: #767676; + font-size: 11px; + font-size: 0.6875rem; + font-weight: 800; + letter-spacing: 0.1818em; + padding-bottom: 0.25em; + text-transform: uppercase; +} + +.entry-meta a { + color: #767676; +} + +.byline, +.updated:not(.published) { + display: none; +} + +.single .byline, +.group-blog .byline { + display: inline; +} + +.pagination, +.comments-pagination { + border-top: 1px solid #eee; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + padding: 2em 0 3em; + text-align: center; +} + +.pagination .icon, +.comments-pagination .icon { + width: 0.666666666em; + height: 0.666666666em; +} + +.comments-pagination { + border: 0; +} + +.page-numbers { + display: none; + padding: 0.5em 0.75em; +} + +.page-numbers.current { + color: #767676; + display: inline-block; +} + +.page-numbers.current .screen-reader-text { + clip: auto; + height: auto; + overflow: auto; + position: relative !important; + width: auto; +} + +.prev.page-numbers, +.next.page-numbers { + background-color: #ddd; + -webkit-border-radius: 2px; + border-radius: 2px; + display: inline-block; + font-size: 24px; + font-size: 1.5rem; + line-height: 1; + padding: 0.25em 0.5em 0.4em; +} + +.prev.page-numbers, +.next.page-numbers { + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; +} + +.prev.page-numbers:focus, +.prev.page-numbers:hover, +.next.page-numbers:focus, +.next.page-numbers:hover { + background-color: #767676; + color: #fff; +} + +.prev.page-numbers { + float: left; +} + +.next.page-numbers { + float: right; +} + +/* Aligned blockquotes */ + +.entry-content blockquote.alignleft, +.entry-content blockquote.alignright { + color: #666; + font-size: 13px; + font-size: 0.8125rem; + width: 48%; +} + +/* Blog landing, search, archives */ + +.blog .site-main > article, +.archive .site-main > article, +.search .site-main > article { + padding-bottom: 2em; +} + +body:not(.twentyseventeen-front-page) .entry-header { + padding: 1em 0; +} + +body:not(.twentyseventeen-front-page) .entry-header, +body:not(.twentyseventeen-front-page) .entry-content, +body:not(.twentyseventeen-front-page) #comments { + margin-left: auto; + margin-right: auto; +} + +body:not(.twentyseventeen-front-page) .entry-header { + padding-top: 0; +} + +.blog .entry-meta a.post-edit-link, +.archive .entry-meta a.post-edit-link, +.search .entry-meta a.post-edit-link { + color: #222; + display: inline-block; + margin-left: 1em; + white-space: nowrap; +} + +.search .page .entry-meta a.post-edit-link { + margin-left: 0; + white-space: nowrap; +} + +.taxonomy-description { + color: #666; + font-size: 13px; + font-size: 0.8125rem; +} + +/* More tag */ + +.entry-content .more-link:before { + content: ""; + display: block; + margin-top: 1.5em; +} + +/* Single Post */ + +.single-post:not(.has-sidebar) #primary, +.page.page-one-column:not(.twentyseventeen-front-page) #primary, +.archive.page-one-column:not(.has-sidebar) .page-header, +.archive.page-one-column:not(.has-sidebar) #primary { + margin-left: auto; + margin-right: auto; + max-width: 740px; +} + +.single-featured-image-header { + background-color: #fafafa; + border-bottom: 1px solid #eee; +} + +.single-featured-image-header img { + display: block; + margin: auto; +} + +.page-links { + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + padding: 2em 0 3em; +} + +.page-links .page-number { + color: #767676; + display: inline-block; + padding: 0.5em 1em; +} + +.page-links a { + display: inline-block; +} + +.page-links a .page-number { + color: #222; +} + +/* Entry footer */ + +.entry-footer { + border-bottom: 1px solid #eee; + border-top: 1px solid #eee; + margin-top: 2em; + padding: 2em 0; +} + +.entry-footer .cat-links, +.entry-footer .tags-links { + display: block; + font-size: 11px; + font-size: 0.6875rem; + font-weight: 800; + letter-spacing: 0.1818em; + padding-left: 2.5em; + position: relative; + text-transform: uppercase; +} + +.entry-footer .cat-links + .tags-links { + margin-top: 1em; +} + +.entry-footer .cat-links a, +.entry-footer .tags-links a { + color: #333; +} + +.entry-footer .cat-links .icon, +.entry-footer .tags-links .icon { + color: #767676; + left: 0; + margin-right: 0.5em; + position: absolute; + top: 2px; +} + +.entry-footer .edit-link { + display: inline-block; +} + +.entry-footer .edit-link a.post-edit-link { + background-color: #222; + -webkit-border-radius: 2px; + border-radius: 2px; + -webkit-box-shadow: none; + box-shadow: none; + color: #fff; + display: inline-block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 800; + margin-top: 2em; + padding: 0.7em 2em; + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + white-space: nowrap; +} + +.entry-footer .edit-link a.post-edit-link:hover, +.entry-footer .edit-link a.post-edit-link:focus { + background-color: #767676; +} + +/* Post Formats */ + +.blog .format-status .entry-title, +.archive .format-status .entry-title, +.blog .format-aside .entry-title, +.archive .format-aside .entry-title { + display: none; +} + +.format-quote blockquote { + color: #333; + font-size: 20px; + font-size: 1.25rem; + font-weight: 300; + overflow: visible; + position: relative; +} + +.format-quote blockquote .icon { + display: block; + height: 20px; + left: -1.25em; + position: absolute; + top: 0.4em; + -webkit-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + transform: scale(-1, 1); + width: 20px; +} + +/* Post Navigation */ + +.post-navigation { + font-weight: 800; + margin: 3em 0; +} + +.post-navigation .nav-links { + padding: 1em 0; +} + +.nav-subtitle { + background: transparent; + color: #767676; + display: block; + font-size: 11px; + font-size: 0.6875rem; + letter-spacing: 0.1818em; + margin-bottom: 1em; + text-transform: uppercase; +} + +.nav-title { + color: #333; + font-size: 15px; + font-size: 0.9375rem; +} + +.post-navigation .nav-next { + margin-top: 1.5em; +} + +.nav-links .nav-previous .nav-title .nav-title-icon-wrapper { + margin-right: 0.5em; +} + +.nav-links .nav-next .nav-title .nav-title-icon-wrapper { + margin-left: 0.5em; +} + +/*-------------------------------------------------------------- +13.5 Pages +--------------------------------------------------------------*/ + +.page-header { + padding-bottom: 2em; +} + +.page .entry-header .edit-link { + font-size: 14px; + font-size: 0.875rem; +} + +.search .page .entry-header .edit-link { + font-size: 11px; + font-size: 0.6875rem; +} + +.page-links { + clear: both; + margin: 0 0 1.5em; +} + +.page:not(.home) #content { + padding-bottom: 1.5em; +} + +/* 404 page */ + +.error404 .page-content { + padding-bottom: 4em; +} + +.error404 .page-content .search-form, +.search .page-content .search-form { + margin-bottom: 3em; +} + +/*-------------------------------------------------------------- +13.6 Footer +--------------------------------------------------------------*/ + +.site-footer { + border-top: 1px solid #eee; +} + +.site-footer .wrap { + padding-bottom: 1.5em; + padding-top: 2em; +} + +/* Footer widgets */ + +.site-footer .widget-area { + padding-bottom: 2em; + padding-top: 2em; +} + +/* Social nav */ + +.social-navigation { + font-size: 16px; + font-size: 1rem; + margin-bottom: 1em; +} + +.social-navigation ul { + list-style: none; + margin-bottom: 0; + margin-left: 0; +} + +.social-navigation li { + display: inline; +} + +.social-navigation a { + background-color: #767676; + -webkit-border-radius: 40px; + border-radius: 40px; + color: #fff; + display: inline-block; + height: 40px; + margin: 0 1em 0.5em 0; + text-align: center; + width: 40px; +} + +.social-navigation a:hover, +.social-navigation a:focus { + background-color: #333; +} + +.social-navigation .icon { + height: 16px; + top: 12px; + width: 16px; + vertical-align: top; +} + +/* Site info */ + +.site-info { + font-size: 14px; + font-size: 0.875rem; + margin-bottom: 1em; +} + +.site-info a { + color: #666; +} + +.site-info .sep { + margin: 0; + display: block; + visibility: hidden; + height: 0; + width: 100%; +} + +.site-info span[role=separator] { + padding: 0 0.2em 0 0.4em; +} + +.site-info span[role=separator]::before { + content: '\002f'; +} + +/*-------------------------------------------------------------- +14.0 Comments +--------------------------------------------------------------*/ + +#comments { + clear: both; + padding: 2em 0 0.5em; +} + +.comments-title { + font-size: 20px; + font-size: 1.25rem; + margin-bottom: 1.5em; +} + +.comment-list, +.comment-list .children { + list-style: none; + margin: 0; + padding: 0; +} + +.comment-list li:before { + display: none; +} + +.comment-body { + margin-left: 65px; +} + +.comment-author { + font-size: 16px; + font-size: 1rem; + margin-bottom: 0.4em; + position: relative; + z-index: 2; +} + +.comment-author .avatar { + height: 50px; + left: -65px; + position: absolute; + width: 50px; +} + +.comment-author .says { + display: none; +} + +.comment-meta { + margin-bottom: 1.5em; +} + +.comment-metadata { + color: #767676; + font-size: 10px; + font-size: 0.625rem; + font-weight: 800; + letter-spacing: 0.1818em; + text-transform: uppercase; +} + +.comment-metadata a { + color: #767676; +} + +.comment-metadata a.comment-edit-link { + color: #222; + margin-left: 1em; +} + +.comment-body { + color: #333; + font-size: 14px; + font-size: 0.875rem; + margin-bottom: 4em; +} + +.comment-reply-link { + font-weight: 800; + position: relative; +} + +.comment-reply-link .icon { + color: #222; + left: -2em; + height: 1em; + position: absolute; + top: 0; + width: 1em; +} + +.children .comment-author .avatar { + height: 30px; + left: -45px; + width: 30px; +} + +.bypostauthor > .comment-body > .comment-meta > .comment-author .avatar { + border: 1px solid #333; + padding: 2px; +} + +.no-comments, +.comment-awaiting-moderation { + color: #767676; + font-size: 14px; + font-size: 0.875rem; + font-style: italic; +} + +.comments-pagination { + margin: 2em 0 3em; +} + +.form-submit { + text-align: right; +} + +.comment-form #wp-comment-cookies-consent { + margin: 0 10px 0 0; +} + +.comment-form .comment-form-cookies-consent label { + display: inline; +} + +/*-------------------------------------------------------------- +15.0 Widgets +--------------------------------------------------------------*/ + +#secondary { + padding: 1em 0 2em; +} + +.widget { + padding-bottom: 3em; +} + +h2.widget-title { + color: #222; + font-size: 13px; + font-size: 0.8125rem; + font-weight: 800; + letter-spacing: 0.1818em; + margin-bottom: 1.5em; + text-transform: uppercase; +} + +.widget-title a { + color: inherit; +} + +/* widget forms */ + +.widget select { + width: 100%; +} + + +/* widget lists */ + +.widget ul { + list-style: none; + margin: 0; +} + +.widget ul li, +.widget ol li { + border-bottom: 1px solid #ddd; + border-top: 1px solid #ddd; + padding: 0.5em 0; +} + +.widget:not(.widget_tag_cloud) ul li + li { + margin-top: -1px; +} + +.widget ul li ul { + margin: 0 0 -1px; + padding: 0; + position: relative; +} + +.widget ul li li { + border: 0; + padding-left: 24px; + padding-left: 1.5rem; +} + +/* Widget lists of links */ + +.widget_top-posts ul li ul, +.widget_rss_links ul li ul, +.widget-grofile ul.grofile-links li ul, +.widget_pages ul li ul, +.widget_meta ul li ul { + bottom: 0; +} + +.widget_nav_menu ul li li, +.widget_top-posts ul li, +.widget_top-posts ul li li, +.widget_rss_links ul li, +.widget_rss_links ul li li, +.widget-grofile ul.grofile-links li, +.widget-grofile ul.grofile-links li li { + padding-bottom: 0.25em; + padding-top: 0.25em; +} + +.widget_rss ul li { + padding-bottom: 1em; + padding-top: 1em; +} + +/* Widget markup */ + +.widget .post-date, +.widget .rss-date { + font-size: 0.81em; +} + +/* Text widget */ + +.widget_text { + word-wrap: break-word; +} + +.widget_text ul { + list-style: disc; + margin: 0 0 1.5em 1.5em; +} + +.widget_text ol { + list-style: decimal; +} + +.widget_text ul li, +.widget_text ol li { + border: none; +} + +.widget_text ul li:last-child, +.widget_text ol li:last-child { + padding-bottom: 0; +} + +.widget_text ul li ul { + margin: 0 0 0 1.5em; +} + +.widget_text ul li li { + padding-left: 0; + padding-right: 0; +} + +.widget_text ol li { + list-style-position: inside; +} + +.widget_text ol li + li { + margin-top: -1px; +} + +/* RSS Widget */ + +.widget_rss .widget-title .rsswidget:first-child { + float: right; +} + +.widget_rss .widget-title .rsswidget:first-child:hover { + background-color: transparent; +} + +.widget_rss .widget-title .rsswidget:first-child img { + display: block; +} + +.widget_rss ul li { + padding: 2.125em 0; +} + +.widget_rss ul li:first-child { + border-top: none; + padding-top: 0; +} + +.widget_rss li .rsswidget { + font-size: 22px; + font-size: 1.375rem; + font-weight: 300; + line-height: 1.4; +} + +.widget_rss .rss-date, +.widget_rss li cite { + color: #767676; + display: block; + font-size: 10px; + font-size: 0.625rem; + font-style: normal; + font-weight: 800; + letter-spacing: 0.18em; + line-height: 1.5; + text-transform: uppercase; +} + +.widget_rss .rss-date { + margin: 0.5em 0 1.5em; + padding: 0; +} + +.widget_rss .rssSummary { + margin-bottom: 0.5em; +} + +/* Contact Info Widget */ + +.widget_contact_info .contact-map { + margin-bottom: 0.5em; +} + +/* Gravatar */ + +.widget-grofile h4 { + font-size: 16px; + font-size: 1rem; + margin-bottom: 0; +} + +/* Recent Comments */ + +.widget_recent_comments table, +.widget_recent_comments th, +.widget_recent_comments td { + border: 0; +} + +/* Recent Posts widget */ + +.widget_recent_entries .post-date { + display: block; +} + +/* Search */ + +.search-form { + position: relative; +} + +.search-form .search-submit { + bottom: 3px; + padding: 0.5em 1em; + position: absolute; + right: 3px; + top: 3px; +} + +.search-form .search-submit .icon { + height: 24px; + top: -2px; + width: 24px; +} + +/* Tag cloud widget */ + +.tagcloud ul li { + float: left; + border-top: 0; + border-bottom: 0; + padding: 0; + margin: 4px 4px 0 0; +} + +.tagcloud, +.widget_tag_cloud, +.wp_widget_tag_cloud { + line-height: 1.5; +} + +.widget .tagcloud a, +.widget.widget_tag_cloud a, +.wp_widget_tag_cloud a { + border: 1px solid #ddd; + -webkit-box-shadow: none; + box-shadow: none; + display: block; + padding: 4px 10px 5px; + position: relative; + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + width: auto; + word-wrap: break-word; + z-index: 0; +} + +.widget .tagcloud a:hover, +.widget .tagcloud a:focus, +.widget.widget_tag_cloud a:hover, +.widget.widget_tag_cloud a:focus, +.wp_widget_tag_cloud a:hover, +.wp_widget_tag_cloud a:focus { + border-color: #bbb; + -webkit-box-shadow: none; + box-shadow: none; + text-decoration: none; +} + +/* Calendar widget */ + +.widget_calendar th, +.widget_calendar td { + text-align: center; +} + +.widget_calendar tfoot td { + border: 0; +} + +/* Gallery widget */ + +.gallery-columns-5 .gallery-caption, +.gallery-columns-6 .gallery-caption, +.gallery-columns-7 .gallery-caption, +.gallery-columns-8 .gallery-caption, +.gallery-columns-9 .gallery-caption { + display: none; +} + +/*-------------------------------------------------------------- +16.0 Media +--------------------------------------------------------------*/ + +img, +video { + height: auto; /* Make sure images are scaled correctly. */ + max-width: 100%; /* Adhere to container width. */ +} + +img.alignleft, +img.alignright { + float: none; + margin: 0; +} + +.page-content .wp-smiley, +.entry-content .wp-smiley, +.comment-content .wp-smiley { + border: none; + margin-bottom: 0; + margin-top: 0; + padding: 0; +} + +audio:focus, +video:focus { + outline: thin dotted; +} + +/* Make sure embeds and iframes fit their containers. */ + +embed, +iframe, +object { + margin-bottom: 1.5em; + max-width: 100%; +} + +/* Remove bottom on embeds that wrapped in paragraphs via wpautop. */ + +p > embed:only-child, +p > iframe:only-child, +p > object:only-child { + margin-bottom: 0; +} + +.wp-caption, +.gallery-caption { + color: #666; + font-size: 13px; + font-size: 0.8125rem; + font-style: italic; + margin-bottom: 1.5em; + max-width: 100%; +} + +.wp-caption img[class*="wp-image-"] { + display: block; + margin-left: auto; + margin-right: auto; +} + +.wp-caption .wp-caption-text { + margin: 0.8075em 0; +} + +/* Media Elements */ + +.mejs-container { + margin-bottom: 1.5em; +} + +/* Audio Player */ + +.mejs-controls a.mejs-horizontal-volume-slider, +.mejs-controls a.mejs-horizontal-volume-slider:focus, +.mejs-controls a.mejs-horizontal-volume-slider:hover { + background: transparent; + border: 0; +} + +/* Playlist Color Overrides: Light */ + +.site-content .wp-playlist-light { + border-color: #eee; + color: #222; +} + +.site-content .wp-playlist-light .wp-playlist-current-item .wp-playlist-item-album { + color: #333; +} + +.site-content .wp-playlist-light .wp-playlist-current-item .wp-playlist-item-artist { + color: #767676; +} + +.site-content .wp-playlist-light .wp-playlist-item { + border-bottom: 1px dotted #eee; + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; +} + +.site-content .wp-playlist-light .wp-playlist-item:hover, +.site-content .wp-playlist-light .wp-playlist-item:focus { + border-bottom-color: rgba(0, 0, 0, 0); + background-color: #767676; + color: #fff; +} + +.site-content .wp-playlist-light a.wp-playlist-caption:hover, +.site-content .wp-playlist-light .wp-playlist-item:hover a, +.site-content .wp-playlist-light .wp-playlist-item:focus a { + color: #fff; +} + +/* Playlist Color Overrides: Dark */ + +.site-content .wp-playlist-dark { + background: #222; + border-color: #333; +} + +.site-content .wp-playlist-dark .mejs-container .mejs-controls { + background-color: #333; +} + +.site-content .wp-playlist-dark .wp-playlist-caption { + color: #fff; +} + +.site-content .wp-playlist-dark .wp-playlist-current-item .wp-playlist-item-album { + color: #eee; +} + +.site-content .wp-playlist-dark .wp-playlist-current-item .wp-playlist-item-artist { + color: #aaa; +} + +.site-content .wp-playlist-dark .wp-playlist-playing { + background-color: #333; +} + +.site-content .wp-playlist-dark .wp-playlist-item { + border-bottom: 1px dotted #555; + -webkit-transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; + transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out; +} + +.site-content .wp-playlist-dark .wp-playlist-item:hover, +.site-content .wp-playlist-dark .wp-playlist-item:focus { + border-bottom-color: rgba(0, 0, 0, 0); + background-color: #aaa; + color: #222; +} + +.site-content .wp-playlist-dark a.wp-playlist-caption:hover, +.site-content .wp-playlist-dark .wp-playlist-item:hover a, +.site-content .wp-playlist-dark .wp-playlist-item:focus a { + color: #222; +} + +/* Playlist Style Overrides */ + +.site-content .wp-playlist { + padding: 0.625em 0.625em 0.3125em; +} + +.site-content .wp-playlist-current-item .wp-playlist-item-title { + font-weight: 700; +} + +.site-content .wp-playlist-current-item .wp-playlist-item-album { + font-style: normal; +} + +.site-content .wp-playlist-current-item .wp-playlist-item-artist { + font-size: 10px; + font-size: 0.625rem; + font-weight: 800; + letter-spacing: 0.1818em; + text-transform: uppercase; +} + +.site-content .wp-playlist-item { + padding: 0 0.3125em; + cursor: pointer; +} + +.site-content .wp-playlist-item:last-of-type { + border-bottom: none; +} + +.site-content .wp-playlist-item a { + padding: 0.3125em 0; + border-bottom: none; +} + +.site-content .wp-playlist-item a, +.site-content .wp-playlist-item a:focus, +.site-content .wp-playlist-item a:hover { + -webkit-box-shadow: none; + box-shadow: none; + background: transparent; +} + +.site-content .wp-playlist-item-length { + top: 5px; +} + +/* SVG Icons base styles */ + +.icon { + display: inline-block; + fill: currentColor; + height: 1em; + position: relative; /* Align more nicely with capital letters */ + top: -0.0625em; + vertical-align: middle; + width: 1em; +} + +/*-------------------------------------------------------------- +16.1 Galleries +--------------------------------------------------------------*/ + +.gallery-item { + display: inline-block; + text-align: left; + vertical-align: top; + margin: 0 0 1.5em; + padding: 0 1em 0 0; + width: 50%; +} + +.gallery-columns-1 .gallery-item { + width: 100%; +} + +.gallery-columns-2 .gallery-item { + max-width: 50%; +} + +.gallery-item a, +.gallery-item a:hover, +.gallery-item a:focus, +.widget-area .gallery-item a, +.widget-area .gallery-item a:hover, +.widget-area .gallery-item a:focus { + -webkit-box-shadow: none; + box-shadow: none; + background: none; + display: inline-block; + max-width: 100%; +} + +.gallery-item a img { + display: block; + -webkit-transition: -webkit-filter 0.2s ease-in; + transition: -webkit-filter 0.2s ease-in; + transition: filter 0.2s ease-in; + transition: filter 0.2s ease-in, -webkit-filter 0.2s ease-in; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; +} + +.gallery-item a:hover img, +.gallery-item a:focus img { + -webkit-filter: opacity(60%); + filter: opacity(60%); +} + +.gallery-caption { + display: block; + text-align: left; + padding: 0 10px 0 0; + margin-bottom: 0; +} + +/*-------------------------------------------------------------- +17.0 Customizer +--------------------------------------------------------------*/ + +.highlight-front-sections.twentyseventeen-customizer.twentyseventeen-front-page .twentyseventeen-panel:after { + border: 2px dashed #0085ba; /* Matches visible edit shortcuts. */ + bottom: 1em; + content: ""; + display: block; + left: 1em; + position: absolute; + right: 1em; + top: 1em; + z-index: 1; +} + +.highlight-front-sections.twentyseventeen-customizer.twentyseventeen-front-page .twentyseventeen-panel .panel-content { + z-index: 2; /* Prevent :after from preventing interactions within the section */ +} + +/* Used for placeholder text */ +.twentyseventeen-customizer.twentyseventeen-front-page .twentyseventeen-panel .twentyseventeen-panel-title { + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 700; + letter-spacing: 1px; + padding: 3em; + text-transform: uppercase; + text-align: center; +} + +/* Show borders on the custom page panels only when the front page sections are being edited */ +.highlight-front-sections.twentyseventeen-customizer.twentyseventeen-front-page .twentyseventeen-panel:nth-of-type(1):after { + border: none; +} + +.twentyseventeen-front-page.twentyseventeen-customizer #primary article.panel-placeholder { + border: 0; +} + +/* Add some space around the visual edit shortcut buttons. */ +.twentyseventeen-panel > .customize-partial-edit-shortcut > button { + top: 30px; + left: 30px; +} + +/* Ensure that placeholder icons are visible. */ +.twentyseventeen-panel .customize-partial-edit-shortcut-hidden:before { + visibility: visible; +} + +/*-------------------------------------------------------------- +18.0 SVGs Fallbacks +--------------------------------------------------------------*/ + +.svg-fallback { + display: none; +} + +.no-svg .svg-fallback { + display: inline-block; +} + +.no-svg .dropdown-toggle { + padding: 0.5em 0 0; + right: 0; + text-align: center; + width: 2em; +} + +.no-svg .dropdown-toggle .svg-fallback.icon-angle-down { + font-size: 20px; + font-size: 1.25rem; + font-weight: 400; + line-height: 1; + -webkit-transform: rotate(180deg); /* Chrome, Safari, Opera */ + -ms-transform: rotate(180deg); /* IE 9 */ + transform: rotate(180deg); +} + +.no-svg .dropdown-toggle.toggled-on .svg-fallback.icon-angle-down { + -webkit-transform: rotate(0); /* Chrome, Safari, Opera */ + -ms-transform: rotate(0); /* IE 9 */ + transform: rotate(0); +} + +.no-svg .dropdown-toggle .svg-fallback.icon-angle-down:before { + content: "\005E"; +} + +/* Social Menu fallbacks */ + +.no-svg .social-navigation a { + background: transparent; + color: #222; + height: auto; + width: auto; +} + +/* Show screen reader text in some cases */ + +.no-svg .next.page-numbers .screen-reader-text, +.no-svg .prev.page-numbers .screen-reader-text, +.no-svg .social-navigation li a .screen-reader-text, +.no-svg .search-submit .screen-reader-text { + clip: auto; + font-size: 16px; + font-size: 1rem; + font-weight: 400; + height: auto; + position: relative !important; /* overrides previous !important styles */ + width: auto; +} + +/*-------------------------------------------------------------- +19.0 Media Queries +--------------------------------------------------------------*/ + +/* Adjust positioning of edit shortcuts, override style in customize-preview.css */ +@media screen and (min-width: 20em) { + + body.customize-partial-edit-shortcuts-shown .site-header .site-title { + padding-left: 0; + } +} + +@media screen and (min-width: 30em) { + + /* Typography */ + + body, + button, + input, + select, + textarea { + font-size: 18px; + font-size: 1.125rem; + } + + h1 { + font-size: 30px; + font-size: 1.875rem; + } + + h2, + .home.blog .entry-title, + .page .panel-content .recent-posts .entry-title { + font-size: 26px; + font-size: 1.625rem; + } + + h3 { + font-size: 22px; + font-size: 1.375rem; + } + + h4 { + font-size: 18px; + font-size: 1.125rem; + } + + h5 { + font-size: 13px; + font-size: 0.8125rem; + } + + h6 { + font-size: 16px; + font-size: 1rem; + } + + .entry-content blockquote.alignleft, + .entry-content blockquote.alignright { + font-size: 14px; + font-size: 0.875rem; + } + + /* Fix image alignment */ + img.alignleft { + float: left; + margin-right: 1.5em; + } + + img.alignright { + float: right; + margin-left: 1.5em; + } + + /* Site Branding */ + + .site-branding { + padding: 3em 0; + } + + /* Front Page */ + + .panel-content .wrap { + padding-bottom: 2em; + padding-top: 3.5em; + } + + .page-one-column .panel-content .wrap { + max-width: 740px; + } + + .panel-content .entry-header { + margin-bottom: 4.5em; + } + + .panel-content .recent-posts .entry-header { + margin-bottom: 0; + } + + /* Blog Index, Archive, Search */ + + .taxonomy-description { + font-size: 14px; + font-size: 0.875rem; + } + + .page-numbers.current { + font-size: 16px; + font-size: 1rem; + } + + /* Site Footer */ + + .site-footer { + font-size: 16px; + font-size: 1rem; + } + + /* Gallery Columns */ + + .gallery-item { + max-width: 25%; + } + + .gallery-columns-1 .gallery-item { + max-width: 100%; + } + + .gallery-columns-2 .gallery-item { + max-width: 50%; + } + + .gallery-columns-3 .gallery-item { + max-width: 33.33%; + } + + .gallery-columns-4 .gallery-item { + max-width: 25%; + } +} + +@media screen and (min-width: 48em) { + + /* Typography */ + + body, + button, + input, + select, + textarea { + font-size: 16px; + font-size: 1rem; + line-height: 1.5; + } + + .entry-content blockquote.alignleft, + .entry-content blockquote.alignright { + font-size: 13px; + font-size: 0.8125rem; + } + + /* Layout */ + + .wrap { + max-width: 1000px; + padding-left: 3em; + padding-right: 3em; + } + + .has-sidebar:not(.error404) #primary { + float: left; + width: 58%; + } + + .has-sidebar #secondary { + float: right; + padding-top: 0; + width: 36%; + } + + .error404 #primary { + float: none; + } + + /* Site Branding */ + + .site-branding { + margin-bottom: 0; + } + + .has-header-image.twentyseventeen-front-page .site-branding, + .has-header-video.twentyseventeen-front-page .site-branding, + .has-header-image.home.blog .site-branding, + .has-header-video.home.blog .site-branding { + bottom: 0; + display: block; + left: 0; + height: auto; + padding-top: 0; + position: absolute; + width: 100%; + } + + .has-header-image.twentyseventeen-front-page .custom-header, + .has-header-video.twentyseventeen-front-page .custom-header, + .has-header-image.home.blog .custom-header, + .has-header-video.home.blog .custom-header { + display: block; + height: auto; + } + + .custom-header-media { + height: 165px; + position: relative; + } + + .twentyseventeen-front-page.has-header-image .custom-header-media, + .twentyseventeen-front-page.has-header-video .custom-header-media, + .home.blog.has-header-image .custom-header-media, + .home.blog.has-header-video .custom-header-media { + height: 0; + position: relative; + } + + .has-header-image:not(.twentyseventeen-front-page):not(.home) .custom-header-media, + .has-header-video:not(.twentyseventeen-front-page):not(.home) .custom-header-media { + bottom: 0; + height: auto; + left: 0; + position: absolute; + right: 0; + top: 0; + } + + .custom-logo-link { + padding-right: 2em; + } + + .custom-logo-link img, + body.home.title-tagline-hidden.has-header-image .custom-logo-link img, + body.home.title-tagline-hidden.has-header-video .custom-logo-link img { + max-width: 350px; + } + + .title-tagline-hidden.home.has-header-image .custom-logo-link img, + .title-tagline-hidden.home.has-header-video .custom-logo-link img { + max-height: 200px; + } + + .site-title { + font-size: 36px; + font-size: 2.25rem; + } + + .site-description { + font-size: 16px; + font-size: 1rem; + } + + /* Navigation */ + + .navigation-top { + bottom: 0; + font-size: 14px; + font-size: 0.875rem; + left: 0; + position: absolute; + right: 0; + width: 100%; + z-index: 3; + } + + .navigation-top .wrap { + max-width: 1000px; + /* The font size is 14px here and we need 50px padding in ems */ + padding: 0.75em 3.4166666666667em; + } + + .navigation-top nav { + margin-left: -1.25em; + } + + .site-navigation-fixed.navigation-top { + bottom: auto; + position: fixed; + left: 0; + right: 0; + top: 0; + width: 100%; + z-index: 7; + } + + .admin-bar .site-navigation-fixed.navigation-top { + top: 32px; + } + + /* Main Navigation */ + + .js .menu-toggle, + .js .dropdown-toggle { + display: none; + } + + .main-navigation { + width: auto; + } + + .js .main-navigation ul, + .js .main-navigation ul ul, + .js .main-navigation > div > ul { + display: block; + } + + .main-navigation ul { + background: transparent; + padding: 0; + } + + .main-navigation > div > ul { + border: 0; + margin-bottom: 0; + padding: 0; + } + + .main-navigation li { + border: 0; + display: inline-block; + } + + .main-navigation li li { + display: block; + } + + .main-navigation a { + padding: 1em 1.25em; + } + + .main-navigation ul ul { + background: #fff; + border: 1px solid #bbb; + left: -999em; + padding: 0; + position: absolute; + top: 100%; + z-index: 99999; + } + + .main-navigation ul li.menu-item-has-children:before, + .main-navigation ul li.menu-item-has-children:after, + .main-navigation ul li.page_item_has_children:before, + .main-navigation ul li.page_item_has_children:after { + border-style: solid; + border-width: 0 6px 6px; + content: ""; + display: none; + height: 0; + position: absolute; + right: 1em; + bottom: -1px; + width: 0; + z-index: 100000; + } + + .main-navigation ul li.menu-item-has-children.focus:before, + .main-navigation ul li.menu-item-has-children:hover:before, + .main-navigation ul li.menu-item-has-children.focus:after, + .main-navigation ul li.menu-item-has-children:hover:after, + .main-navigation ul li.page_item_has_children.focus:before, + .main-navigation ul li.page_item_has_children:hover:before, + .main-navigation ul li.page_item_has_children.focus:after, + .main-navigation ul li.page_item_has_children:hover:after { + display: block; + } + + .main-navigation ul li.menu-item-has-children:before, + .main-navigation ul li.page_item_has_children:before { + border-color: transparent transparent #bbb; + bottom: 0; + } + + .main-navigation ul li.menu-item-has-children:after, + .main-navigation ul li.page_item_has_children:after { + border-color: transparent transparent #fff; + } + + .main-navigation ul ul li:hover > ul, + .main-navigation ul ul li.focus > ul { + left: 100%; + right: auto; + } + + .main-navigation ul ul a { + padding: 0.75em 1.25em; + width: 16em; + } + + .main-navigation li li { + -webkit-transition: background-color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out; + } + + .main-navigation li li:hover, + .main-navigation li li.focus { + background: #767676; + } + + .main-navigation li li a { + -webkit-transition: color 0.3s ease-in-out; + transition: color 0.3s ease-in-out; + } + + .main-navigation li li.focus > a, + .main-navigation li li:focus > a, + .main-navigation li li:hover > a, + .main-navigation li li a:hover, + .main-navigation li li a:focus, + .main-navigation li li.current_page_item a:hover, + .main-navigation li li.current-menu-item a:hover, + .main-navigation li li.current_page_item a:focus, + .main-navigation li li.current-menu-item a:focus { + color: #fff; + } + + .main-navigation ul li:hover > ul, + .main-navigation ul li.focus > ul { + left: 0.5em; + right: auto; + } + + .main-navigation .menu-item-has-children > a > .icon, + .main-navigation .page_item_has_children > a > .icon { + display: inline; + left: 5px; + position: relative; + top: -1px; + } + + .main-navigation ul ul .menu-item-has-children > a > .icon, + .main-navigation ul ul .page_item_has_children > a > .icon { + margin-top: -9px; + left: auto; + position: absolute; + right: 1em; + top: 50%; + -webkit-transform: rotate(-90deg); /* Chrome, Safari, Opera */ + -ms-transform: rotate(-90deg); /* IE 9 */ + transform: rotate(-90deg); + } + + .main-navigation ul ul ul { + left: -999em; + margin-top: -1px; + top: 0; + } + + .main-navigation ul ul li.menu-item-has-children.focus:before, + .main-navigation ul ul li.menu-item-has-children:hover:before, + .main-navigation ul ul li.menu-item-has-children.focus:after, + .main-navigation ul ul li.menu-item-has-children:hover:after, + .main-navigation ul ul li.page_item_has_children.focus:before, + .main-navigation ul ul li.page_item_has_children:hover:before, + .main-navigation ul ul li.page_item_has_children.focus:after, + .main-navigation ul ul li.page_item_has_children:hover:after { + display: none; + } + + .site-header .site-navigation-fixed .menu-scroll-down { + display: none; + } + + /* Scroll down arrow */ + + .site-header .menu-scroll-down { + display: block; + padding: 1em; + position: absolute; + right: 0; + } + + .site-header .menu-scroll-down .icon { + -webkit-transform: rotate(90deg); /* Chrome, Safari, Opera */ + -ms-transform: rotate(90deg); /* IE 9 */ + transform: rotate(90deg); + } + + .site-header .menu-scroll-down { + color: #fff; + top: 2em; + } + + .site-header .navigation-top .menu-scroll-down { + color: #767676; + top: 0.7em; + } + + .menu-scroll-down:focus { + outline: thin dotted; + } + + .menu-scroll-down .icon { + height: 18px; + width: 18px; + } + + /* Front Page */ + + .twentyseventeen-front-page.has-header-image .site-branding, + .twentyseventeen-front-page.has-header-video .site-branding, + .home.blog.has-header-image .site-branding, + .home.blog.has-header-video .site-branding { + margin-bottom: 70px; + } + + .twentyseventeen-front-page.has-header-image .custom-header-media, + .twentyseventeen-front-page.has-header-video .custom-header-media, + .home.blog.has-header-image .custom-header-media, + .home.blog.has-header-video .custom-header-media { + height: 1200px; + height: 100vh; + max-height: 100%; + overflow: hidden; + } + + .twentyseventeen-front-page.has-header-image .custom-header-media:before, + .twentyseventeen-front-page.has-header-video .custom-header-media:before, + .home.blog.has-header-image .custom-header-media:before, + .home.blog.has-header-video .custom-header-media:before { + height: 33%; + } + + .admin-bar.twentyseventeen-front-page.has-header-image .custom-header-media, + .admin-bar.twentyseventeen-front-page.has-header-video .custom-header-media, + .admin-bar.home.blog.has-header-image .custom-header-media, + .admin-bar.home.blog.has-header-video .custom-header-media { + height: calc(100vh - 32px); + } + + .panel-content .wrap { + padding-bottom: 4.5em; + padding-top: 6em; + } + + .panel-image { + height: 100vh; + max-height: 1200px; + } + + /* With panel images 100% of the screen height, we're going to fix the background image where supported to create a parallax-like effect. */ + .background-fixed .panel-image { + background-attachment: fixed; + } + + .page-two-column .panel-content .entry-header { + float: left; + width: 36%; + } + + .page-two-column .panel-content .entry-content { + float: right; + width: 58%; + } + + /* Front Page - Recent Posts */ + + .page-two-column .panel-content .recent-posts { + clear: right; + float: right; + width: 58%; + } + + .panel-content .recent-posts article { + margin-bottom: 4em; + } + + .panel-content .recent-posts .entry-header, + .page-two-column #primary .panel-content .recent-posts .entry-header, + .panel-content .recent-posts .entry-content, + .page-two-column #primary .panel-content .recent-posts .entry-content { + float: none; + width: 100%; + } + + .panel-content .recent-posts .entry-header { + margin-bottom: 1.5em; + } + + .page .panel-content .recent-posts .entry-title { + font-size: 26px; + font-size: 1.625rem; + } + + /* Posts */ + + .site-content { + padding: 5.5em 0 0; + } + + .single-post .entry-title, + .page .entry-title { + font-size: 26px; + font-size: 1.625rem; + } + + .comments-pagination, + .post-navigation { + clear: both; + } + + .post-navigation .nav-previous { + float: left; + width: 50%; + } + + .post-navigation .nav-next { + float: right; + text-align: right; + width: 50%; + } + + .nav-next, + .post-navigation .nav-next { + margin-top: 0; + } + + /* Blog, archive, search */ + + .sticky .icon-thumb-tack { + height: 23px; + left: -2.5em; + top: 1.5em; + width: 32px; + } + + body:not(.has-sidebar):not(.page-one-column) .page-header, + body.has-sidebar.error404 #primary .page-header, + body.page-two-column:not(.archive) #primary .entry-header, + body.page-two-column.archive:not(.has-sidebar) #primary .page-header { + float: left; + width: 36%; + } + + .blog:not(.has-sidebar) #primary article, + .archive:not(.page-one-column):not(.has-sidebar) #primary article, + .search:not(.has-sidebar) #primary article, + .error404:not(.has-sidebar) #primary .page-content, + .error404.has-sidebar #primary .page-content, + body.page-two-column:not(.archive) #primary .entry-content, + body.page-two-column #comments { + float: right; + width: 58%; + } + + .blog .site-main > article, + .archive .site-main > article, + .search .site-main > article { + padding-bottom: 4em; + } + + .navigation.pagination { + clear: both; + float: right; + width: 58%; + } + + .has-sidebar .navigation.pagination, + .archive.page-one-column:not(.has-sidebar) .navigation.pagination { + float: none; + width: 100%; + } + + .entry-footer { + display: table; + width: 100%; + } + + .entry-footer .cat-tags-links { + display: table-cell; + vertical-align: middle; + width: 100%; + } + + .entry-footer .edit-link { + display: table-cell; + text-align: right; + vertical-align: middle; + } + + .entry-footer .edit-link a.post-edit-link { + margin-top: 0; + margin-left: 1em; + } + + /* Entry content */ + + /* without sidebar */ + + :not(.has-sidebar) .entry-content blockquote.alignleft { + margin-left: -17.5%; + width: 48%; + } + + :not(.has-sidebar) .entry-content blockquote.alignright { + margin-right: -17.5%; + width: 48%; + } + + /* with sidebar */ + + .has-sidebar .entry-content blockquote.alignleft { + margin-left: 0; + width: 34%; + } + + .has-sidebar .entry-content blockquote.alignright { + margin-right: 0; + width: 34%; + } + + .has-sidebar #primary .entry-content blockquote.alignright.below-entry-meta { + margin-right: -72.5%; + width: 62%; + } + + /* blog and archive */ + + .blog:not(.has-sidebar) .entry-content blockquote.alignleft, + .twentyseventeen-front-page.page-two-column .entry-content blockquote.alignleft, + .archive:not(.has-sidebar) .entry-content blockquote.alignleft, + .page-two-column .entry-content blockquote.alignleft { + margin-left: -72.5%; + width: 62%; + } + + .blog:not(.has-sidebar) .entry-content blockquote.alignright, + .twentyseventeen-front-page.page-two-column .entry-content blockquote.alignright, + .archive:not(.has-sidebar) .entry-content blockquote.alignright, + .page-two-column .entry-content blockquote.alignright { + margin-right: 0; + width: 36%; + } + + /* Post formats */ + + .format-quote blockquote .icon { + left: -1.5em; + } + + /* Pages */ + + .page.page-one-column .entry-header, + .twentyseventeen-front-page.page-one-column .entry-header, + .archive.page-one-column:not(.has-sidebar) .page-header { + margin-bottom: 4em; + } + + .page:not(.home) #content { + padding-bottom: 3.25em; + } + + /* 404 page */ + + .error404 .page-content { + padding-bottom: 9em; + } + + /* Comments */ + + #comments { + padding-top: 5em; + } + + .comments-title { + margin-bottom: 2.5em; + } + + ol.children .children { + padding-left: 2em; + } + + /* Posts pagination */ + + .nav-links .nav-title { + position: relative; + } + + .nav-title-icon-wrapper { + position: absolute; + text-align: center; + width: 2em; + } + + .nav-links .nav-previous .nav-title .nav-title-icon-wrapper { + left: -2em; + } + + .nav-links .nav-next .nav-title .nav-title-icon-wrapper { + right: -2em; + } + + /* Secondary */ + + #secondary { + font-size: 14px; + font-size: 0.875rem; + line-height: 1.6; + } + + /* Widgets */ + + h2.widget-title { + font-size: 11px; + font-size: 0.6875rem; + margin-bottom: 2em; + } + + /* Footer */ + + .site-footer { + font-size: 14px; + font-size: 0.875rem; + line-height: 1.6; + margin-top: 3em; + } + + .site-footer .widget-column.footer-widget-1 { + float: left; + width: 36%; + } + + .site-footer .widget-column.footer-widget-2 { + float: right; + width: 58%; + } + + .social-navigation { + clear: left; + float: left; + margin-bottom: 0; + width: 36%; + } + + .site-info { + float: left; + padding: 0.7em 0 0; + width: 58%; + } + + .social-navigation + .site-info { + margin-left: 6%; + } + + .site-info .sep { + margin: 0 0.5em; + display: inline; + visibility: visible; + height: auto; + width: auto; + } + + /* Gallery Columns */ + + .gallery-columns-5 .gallery-item { + max-width: 20%; + } + + .gallery-columns-6 .gallery-item { + max-width: 16.66%; + } + + .gallery-columns-7 .gallery-item { + max-width: 14.28%; + } + + .gallery-columns-8 .gallery-item { + max-width: 12.5%; + } + + .gallery-columns-9 .gallery-item { + max-width: 11.11%; + } +} + +@media screen and ( min-width: 67em ) { + + /* Layout */ + + /* Navigation */ + .navigation-top .wrap { + padding: 0.75em 2em; + } + + .navigation-top nav { + margin-left: 0; + } + + /* Sticky posts */ + + .sticky .icon-thumb-tack { + font-size: 32px; + font-size: 2rem; + height: 22px; + left: -1.25em; + top: 0.75em; + width: 32px; + } + + /* Pagination */ + + .page-numbers { + display: inline-block; + } + + .page-numbers.current { + font-size: 15px; + font-size: 0.9375rem; + } + + .page-numbers.current .screen-reader-text { + clip: rect(1px, 1px, 1px, 1px); + height: 1px; + overflow: hidden; + position: absolute !important; + width: 1px; + } + + /* Comments */ + + .comment-body { + margin-left: 0; + } +} + +@media screen and ( min-width: 79em ) { + + .has-sidebar .entry-content blockquote.alignleft { + margin-left: -20%; + } + + .blog:not(.has-sidebar) .entry-content blockquote.alignright, + .archive:not(.has-sidebar) .entry-content blockquote.alignright, + .page-two-column .entry-content blockquote.alignright, + .twentyseventeen-front-page .entry-content blockquote.alignright { + margin-right: -20%; + } +} + +@media screen and ( max-width: 48.875em ) and ( min-width: 48em ) { + + .admin-bar .site-navigation-fixed.navigation-top, + .admin-bar .site-navigation-hidden.navigation-top { + top: 46px; + } +} + +/*-------------------------------------------------------------- +20.0 Print +--------------------------------------------------------------*/ + +@media print { + + /* Hide elements */ + + form, + button, + input, + select, + textarea, + .navigation-top, + .social-navigation, + #secondary, + .content-bottom-widgets, + .header-image, + .panel-image-prop, + .icon-thumb-tack, + .page-links, + .edit-link, + .post-navigation, + .pagination.navigation, + .comments-pagination, + .comment-respond, + .comment-edit-link, + .comment-reply-link, + .comment-metadata .edit-link, + .pingback .edit-link, + .site-footer aside.widget-area, + .site-info { + display: none !important; + } + + .entry-footer, + #comments, + .site-footer, + .single-featured-image-header { + border: 0; + } + + /* Font sizes */ + + body { + font-size: 12pt; + } + + h1 { + font-size: 24pt; + } + + h2 { + font-size: 22pt; + } + + h3 { + font-size: 17pt; + } + + h4 { + font-size: 12pt; + } + + h5 { + font-size: 11pt; + } + + h6 { + font-size: 12pt; + } + + .page .panel-content .entry-title, + .page-title, + body.page:not(.twentyseventeen-front-page) .entry-title { + font-size: 10pt; + } + + /* Layout */ + + .wrap { + padding-left: 5% !important; + padding-right: 5% !important; + max-width: none; + } + + /* Site Branding */ + + .site-header { + background: transparent; + padding: 0; + } + + .custom-header-media { + padding: 0; + } + + .twentyseventeen-front-page.has-header-image .site-branding, + .twentyseventeen-front-page.has-header-video .site-branding, + .home.blog.has-header-image .site-branding, + .home.blog.has-header-video .site-branding { + position: relative; + } + + .site-branding { + margin-top: 0; + margin-bottom: 1.75em !important; /* override styles added by JavaScript */ + } + + .site-title { + font-size: 25pt; + } + + .site-description { + font-size: 12pt; + opacity: 1; + } + + /* Posts */ + + .single-featured-image-header { + background: transparent; + } + + .entry-meta { + font-size: 9pt; + } + + /* Colors */ + + body, + .site { + background: none !important; /* Brute force since user agents all print differently. */ + } + + body, + a, + .site-title a, + .twentyseventeen-front-page.has-header-image .site-title, + .twentyseventeen-front-page.has-header-video .site-title, + .twentyseventeen-front-page.has-header-image .site-title a, + .twentyseventeen-front-page.has-header-video .site-title a { + color: #222 !important; /* Make sure color schemes don't affect to print */ + } + + h2, + h5, + blockquote, + .site-description, + .twentyseventeen-front-page.has-header-image .site-description, + .twentyseventeen-front-page.has-header-video .site-description, + .entry-meta, + .entry-meta a { + color: #777 !important; /* Make sure color schemes don't affect to print */ + } + + .entry-content blockquote.alignleft, + .entry-content blockquote.alignright { + font-size: 11pt; + width: 34%; + } + + .site-footer { + padding: 0; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/footer-widgets.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/footer-widgets.php new file mode 100644 index 0000000..ea309d8 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/footer-widgets.php @@ -0,0 +1,35 @@ + + + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/site-info.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/site-info.php new file mode 100644 index 0000000..68883bb --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/footer/site-info.php @@ -0,0 +1,24 @@ + +
+ ' ); + } + ?> + + + +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/header-image.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/header-image.php new file mode 100644 index 0000000..390debc --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/header-image.php @@ -0,0 +1,20 @@ + +
+ +
+ +
+ + + +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/site-branding.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/site-branding.php new file mode 100644 index 0000000..02017d5 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/header/site-branding.php @@ -0,0 +1,38 @@ + +
+
+ + + +
+ +

+ +

+ + + +

+ +
+ + + 'arrow-right' ) ); ?> + + +
+
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/navigation/navigation-top.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/navigation/navigation-top.php new file mode 100644 index 0000000..5cfc998 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/navigation/navigation-top.php @@ -0,0 +1,33 @@ + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page-panels.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page-panels.php new file mode 100644 index 0000000..91da4ca --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page-panels.php @@ -0,0 +1,87 @@ + + +
> + + ID ), 'twentyseventeen-featured-image' ); + + // Calculate aspect ratio: h / w * 100%. + $ratio = $thumbnail[2] / $thumbnail[1] * 100; + ?> + +
+
+
+ + + +
+
+
+ ', '' ); ?> + + + +
+ +
+ "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + ?> +
+ + + + 3, + 'post_status' => 'publish', + 'ignore_sticky_posts' => true, + 'no_found_rows' => true, + ) + ); + ?> + + have_posts() ) : ?> + +
+ + have_posts() ) : + $recent_posts->the_post(); + get_template_part( 'template-parts/post/content', 'excerpt' ); + endwhile; + wp_reset_postdata(); + ?> +
+ + + +
+
+ +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page.php new file mode 100644 index 0000000..143552f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-front-page.php @@ -0,0 +1,52 @@ + +
> + + ID ), 'twentyseventeen-featured-image' ); + + // Calculate aspect ratio: h / w * 100%. + $ratio = $thumbnail[2] / $thumbnail[1] * 100; + ?> + +
+
+
+ + + +
+
+
+ ', '' ); ?> + + + +
+ +
+ "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + ?> +
+ +
+
+ +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-page.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-page.php new file mode 100644 index 0000000..f85ebc8 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/page/content-page.php @@ -0,0 +1,32 @@ + + +
> +
+ ', '' ); ?> + +
+
+ '', + ) + ); + ?> +
+
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-audio.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-audio.php new file mode 100644 index 0000000..0d094ed --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-audio.php @@ -0,0 +1,109 @@ + + +
> + 'thumb-tack' ) ); + } + ?> +
+ '; + if ( is_single() ) { + twentyseventeen_posted_on(); + } else { + echo twentyseventeen_time_link(); + twentyseventeen_edit_link(); + }; + echo '
'; + }; + + if ( is_single() ) { + the_title( '

', '

' ); + } elseif ( is_front_page() && is_home() ) { + the_title( '

', '

' ); + } else { + the_title( '

', '

' ); + } + ?> + + + + + +
+ + + +
+ + +
+ + '; + echo $audio_html; + echo '
'; + } + }; + + }; + + if ( is_single() || empty( $audio ) ) { + + the_content( + sprintf( + /* translators: %s: Post title. */ + __( 'Continue reading "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + 'link_before' => '', + 'link_after' => '', + ) + ); + + }; + ?> + +
+ + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-excerpt.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-excerpt.php new file mode 100644 index 0000000..54a4933 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-excerpt.php @@ -0,0 +1,48 @@ + + + diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-gallery.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-gallery.php new file mode 100644 index 0000000..af1eaf4 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-gallery.php @@ -0,0 +1,96 @@ + + +
> + 'thumb-tack' ) ); + } + ?> +
+ '; + if ( is_single() ) { + twentyseventeen_posted_on(); + } else { + echo twentyseventeen_time_link(); + twentyseventeen_edit_link(); + }; + echo ''; + }; + + if ( is_single() ) { + the_title( '

', '

' ); + } elseif ( is_front_page() && is_home() ) { + the_title( '

', '

' ); + } else { + the_title( '

', '

' ); + } + ?> +
+ + +
+ + + +
+ + +
+ + '; + echo get_post_gallery(); + echo '
'; + }; + + }; + + if ( is_single() || ! get_post_gallery() ) { + + the_content( + sprintf( + /* translators: %s: Post title. */ + __( 'Continue reading "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + 'link_before' => '', + 'link_after' => '', + ) + ); + + }; + ?> + + + + + +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-image.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-image.php new file mode 100644 index 0000000..9062fcd --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-image.php @@ -0,0 +1,86 @@ + + +
> + 'thumb-tack' ) ); + } + ?> +
+ '; + if ( is_single() ) { + twentyseventeen_posted_on(); + } else { + echo twentyseventeen_time_link(); + twentyseventeen_edit_link(); + }; + echo ''; + }; + + if ( is_single() ) { + the_title( '

', '

' ); + } elseif ( is_front_page() && is_home() ) { + the_title( '

', '

' ); + } else { + the_title( '

', '

' ); + } + ?> +
+ + +
+ + + +
+ + +
+ + "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + 'link_before' => '', + 'link_after' => '', + ) + ); + + }; + ?> + +
+ + + +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-none.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-none.php new file mode 100644 index 0000000..50b3fb1 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-none.php @@ -0,0 +1,40 @@ + + +
+ +
+ + +

+ Get started here.', 'twentyseventeen' ), esc_url( admin_url( 'post-new.php' ) ) ); + ?> +

+ + + +

+ +
+
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-video.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-video.php new file mode 100644 index 0000000..c08dda9 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content-video.php @@ -0,0 +1,107 @@ + + +
> + 'thumb-tack' ) ); + } + ?> +
+ '; + if ( is_single() ) { + twentyseventeen_posted_on(); + } else { + echo twentyseventeen_time_link(); + twentyseventeen_edit_link(); + } + echo ''; + }; + + if ( is_single() ) { + the_title( '

', '

' ); + } elseif ( is_front_page() && is_home() ) { + the_title( '

', '

' ); + } else { + the_title( '

', '

' ); + } + ?> +
+ + + + +
+ + + +
+ + +
+ + '; + echo $video_html; + echo '
'; + } + }; + + }; + + if ( is_single() || empty( $video ) ) { + + the_content( + sprintf( + /* translators: %s: Post title. */ + __( 'Continue reading "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + 'link_before' => '', + 'link_after' => '', + ) + ); + }; + ?> + + + + + +
diff --git a/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content.php b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content.php new file mode 100644 index 0000000..7571f05 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentyseventeen/template-parts/post/content.php @@ -0,0 +1,79 @@ + + +
> + 'thumb-tack' ) ); + endif; + ?> +
+ '; + if ( is_single() ) { + twentyseventeen_posted_on(); + } else { + echo twentyseventeen_time_link(); + twentyseventeen_edit_link(); + }; + echo ''; + }; + + if ( is_single() ) { + the_title( '

', '

' ); + } elseif ( is_front_page() && is_home() ) { + the_title( '

', '

' ); + } else { + the_title( '

', '

' ); + } + ?> +
+ + +
+ + + +
+ + +
+ "%s"', 'twentyseventeen' ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + 'link_before' => '', + 'link_after' => '', + ) + ); + ?> +
+ + + +
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/404.php b/srcs/wordpress/wp-content/themes/twentysixteen/404.php new file mode 100644 index 0000000..59907be --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/404.php @@ -0,0 +1,34 @@ + + +
+
+ +
+ + +
+

+ + +
+
+ +
+ + + +
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/archive.php b/srcs/wordpress/wp-content/themes/twentysixteen/archive.php new file mode 100644 index 0000000..079730f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/archive.php @@ -0,0 +1,68 @@ + + +
+
+ + + + + + __( 'Previous page', 'twentysixteen' ), + 'next_text' => __( 'Next page', 'twentysixteen' ), + 'before_page_number' => '' . __( 'Page', 'twentysixteen' ) . ' ', + ) + ); + + // If no content, include the "No posts found" template. + else : + get_template_part( 'template-parts/content', 'none' ); + + endif; + ?> + +
+
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/comments.php b/srcs/wordpress/wp-content/themes/twentysixteen/comments.php new file mode 100644 index 0000000..086ecbe --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/comments.php @@ -0,0 +1,83 @@ + + +
+ + +

+ +

+ + + +
    + 'ol', + 'short_ping' => true, + 'avatar_size' => 42, + ) + ); + ?> +
+ + + + + + +

+ + + '

', + 'title_reply_after' => '

', + ) + ); + ?> + +
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/css/blocks.css b/srcs/wordpress/wp-content/themes/twentysixteen/css/blocks.css new file mode 100644 index 0000000..9ddea80 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/css/blocks.css @@ -0,0 +1,434 @@ +/* +Theme Name: Twenty Sixteen +Description: Used to style blocks. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +1.0 General Block Styles +2.0 Blocks - Common Blocks +3.0 Blocks - Formatting +4.0 Blocks - Layout Elements +5.0 Blocks - Widgets +6.0 Blocks - Colors +--------------------------------------------------------------*/ + +/*-------------------------------------------------------------- +1.0 General Block Styles +--------------------------------------------------------------*/ + +/* Captions */ + +[class^="wp-block-"] figcaption { + color: #686868; + font-style: italic; + line-height: 1.6153846154; + padding-top: 0.5384615385em; + text-align: left; +} + +.rtl [class^="wp-block-"] figcaption { + text-align: right; +} + +/*-------------------------------------------------------------- +2.0 Blocks - Common Blocks +--------------------------------------------------------------*/ + +/* Paragraph */ + +p.has-drop-cap:not(:focus)::first-letter { + font-size: 5em; +} + +/* Image */ + +@media screen and (min-width: 61.5625em) { + body:not(.search-results) article:not(.type-page) .wp-block-image figcaption.below-entry-meta { + clear: both; + display: block; + float: none; + margin-right: 0; + margin-left: -40%; + max-width: 140%; + } + + body.rtl:not(.search-results) article:not(.type-page) .wp-block-image figcaption.below-entry-meta { + margin-left: 0; + margin-right: -40%; + } +} + +/* Gallery */ + +.wp-block-gallery { + margin-bottom: 1.75em; +} + +/* Quote */ + +.wp-block-quote:not(.is-large):not(.is-style-large).alignleft, +.wp-block-quote:not(.is-large):not(.is-style-large).alignright { + border-left: none; + padding-left: 0; +} + +.rtl .wp-block-quote:not(.is-large):not(.is-style-large).alignleft, +.rtl .wp-block-quote:not(.is-large):not(.is-style-large).alignright { + border-right: none; + padding-right: 0; +} + +.wp-block-quote cite { + color: #1a1a1a; + display: block; + font-size: 16px; + font-size: 1rem; + line-height: 1.75; +} + +.wp-block-quote cite:before { + content: "\2014\00a0"; +} + +/* Audio */ + +.wp-block-audio audio { + display: block; + width: 100%; +} + +/* Cover */ + +.wp-block-cover-image.aligncenter, +.wp-block-cover.aligncenter { + display: flex; +} + +/* File */ + +.wp-block-file .wp-block-file__button { + background: #1a1a1a; + border: 0; + border-radius: 2px; + color: #fff; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-weight: 700; + letter-spacing: 0.046875em; + line-height: 1; + padding: 0.84375em 0.875em 0.78125em; + text-transform: uppercase; +} + +.wp-block-file .wp-block-file__button:hover, +.wp-block-file .wp-block-file__button:focus { + background: #007acc; +} + +.wp-block-file .wp-block-file__button:focus { + outline: thin dotted; + outline-offset: -4px; +} + +.rtl .wp-block-file * + .wp-block-file__button { + margin-left: 0.75em; + margin-right: 0; +} + +/*-------------------------------------------------------------- +3.0 Blocks - Formatting Blocks +--------------------------------------------------------------*/ + +/* Code */ + +.wp-block-code { + border: 0; + font-family: Inconsolata, monospace; + font-size: 16px; + font-size: 1rem; + line-height: 1.75; + padding: 0; +} + +/* Pullquote */ + +.wp-block-pullquote { + border-width: 4px; +} + +.wp-block-pullquote blockquote { + border-left: 0; + margin: 0; + padding: 0; +} + +.rtl .wp-block-pullquote blockquote { + border-right: 0; +} + +.wp-block-pullquote p { + color: #686868; + font-size: 19px; + font-size: 1.1875rem; +} + +.wp-block-pullquote cite { + color: #1a1a1a; + display: block; + font-size: 16px; + font-size: 1rem; + font-style: none; + line-height: 1.75; + text-transform: none; +} + +.wp-block-pullquote cite:before { + content: "\2014\00a0"; +} + +/* Table */ + +.wp-block-table, +.wp-block-table th, +.wp-block-table td { + border: 1px solid #d1d1d1; +} + +.wp-block-table { + border-collapse: separate; + border-spacing: 0; + border-width: 1px 0 0 1px; + margin: 0 0 1.75em; + table-layout: fixed; + width: 100%; +} + +.wp-block-table th, +.wp-block-table td { + font-weight: normal; + padding: 0.4375em; + text-align: left; +} + +.wp-block-table th { + border-width: 0 1px 1px 0; + font-weight: 700; +} + +.wp-block-table td { + border-width: 0 1px 1px 0; +} + +.rtl .wp-block-table th, +.rtl .wp-block-table td { + text-align: right; +} + +/*-------------------------------------------------------------- +4.0 Blocks - Layout Elements +--------------------------------------------------------------*/ + +/* Buttons */ + +.wp-block-button .wp-block-button__link { + box-shadow: none; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-weight: 700; + letter-spacing: 0.046875em; + line-height: 1; + padding: 0.84375em 1.3125em 0.78125em; + text-transform: uppercase; +} + +.entry-content .wp-block-button__link { + background: #1a1a1a; + color: #fff; +} + +.entry-content .is-style-outline .wp-block-button__link:not(.has-background) { + background: transparent; +} + +.entry-content .is-style-outline .wp-block-button__link:not(.has-text-color) { + color: #1a1a1a; +} + +.entry-content .wp-block-button__link:hover, +.entry-content .wp-block-button__link:focus, +.entry-content .is-style-outline .wp-block-button__link:not(.has-background):hover, +.entry-content .is-style-outline .wp-block-button__link:not(.has-background):focus, +.entry-content .is-style-outline .wp-block-button__link:not(.has-text-color):hover, +.entry-content .is-style-outline .wp-block-button__link:not(.has-text-color):focus { + background: #007acc; + color: #fff; +} + +.wp-block-button .wp-block-button__link:focus { + outline: thin dotted; + outline-offset: -4px; +} + +/* Seperator */ + +hr.wp-block-separator { + border: 0; +} + +.wp-block-separator { + margin-left: auto; + margin-right: auto; + max-width: 100px; +} + +.wp-block-separator.is-style-wide { + max-width: 100%; +} + +/* Media & Text */ + +.wp-block-media-text { + margin-bottom: 1.75em; +} + +.wp-block-media-text *:last-child { + margin-bottom: 0; +} + +/*-------------------------------------------------------------- +5.0 Blocks - Widget Blocks +--------------------------------------------------------------*/ + +/* Archives, Categories & Latest Posts */ + +.wp-block-archives.aligncenter, +.wp-block-categories.aligncenter, +.wp-block-latest-posts.aligncenter { + list-style-position: inside; + text-align: center; +} + +/* Latest Comments */ + +.wp-block-latest-comments__comment-meta a { + box-shadow: none; + font-weight: 700; +} + +.wp-block-latest-comments__comment-date { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; +} + +.wp-block-latest-comments .wp-block-latest-comments__comment { + border-top: 1px solid #d1d1d1; + margin-bottom: 0; + padding: 1.75em 0; +} + +.wp-block-latest-comments__comment-excerpt p:last-child { + margin-bottom: 0; +} + +/*-------------------------------------------------------------- +6.0 Blocks - Colors +--------------------------------------------------------------*/ + +.entry-content .has-dark-gray-color { + color: #1a1a1a; +} + +.entry-content .has-dark-gray-background-color { + background-color: #1a1a1a; +} + +.entry-content .has-medium-gray-color { + color: #686868; +} + +.entry-content .has-medium-gray-background-color { + background-color: #686868; +} + +.entry-content .has-light-gray-color { + color: #e5e5e5; +} + +.entry-content .has-light-gray-background-color { + background-color: #e5e5e5; +} + +.entry-content .has-white-color { + color: #fff; +} + +.entry-content .has-white-background-color { + background-color: #fff; +} + +.entry-content .has-blue-gray-color { + color: #4d545c; +} + +.entry-content .has-blue-gray-background-color { + background-color: #4d545c; +} + +.entry-content .has-bright-blue-color { + color: #007acc; +} + +.entry-content .has-bright-blue-background-color { + background-color: #007acc; +} + +.entry-content .has-light-blue-color { + color: #9adffd; +} + +.entry-content .has-light-blue-background-color { + background-color: #9adffd; +} + +.entry-content .has-dark-brown-color { + color: #402b30; +} + +.entry-content .has-dark-brown-background-color { + background-color: #402b30; +} + +.entry-content .has-medium-brown-color { + color: #774e24; +} + +.entry-content .has-medium-brown-background-color { + background-color: #774e24; +} + +.entry-content .has-dark-red-color { + color: #640c1f; +} + +.entry-content .has-dark-red-background-color { + background-color: #640c1f; +} + +.entry-content .has-bright-red-color { + color: #ff675f; +} + +.entry-content .has-bright-red-background-color { + background-color: #ff675f; +} + +.entry-content .has-yellow-color { + color: #ffef8e; +} + +.entry-content .has-yellow-background-color { + background-color: #ffef8e; +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/css/editor-blocks.css b/srcs/wordpress/wp-content/themes/twentysixteen/css/editor-blocks.css new file mode 100644 index 0000000..4bf8cbf --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/css/editor-blocks.css @@ -0,0 +1,617 @@ +/* +Theme Name: Twenty Sixteen +Description: Used to style blocks in the editor. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +1.0 General Typography +2.0 General Block Styles +3.0 Blocks - Common Blocks +4.0 Blocks - Formatting +5.0 Blocks - Layout Elements +6.0 Blocks - Widgets +--------------------------------------------------------------*/ + +/*-------------------------------------------------------------- +1.0 General Typography +--------------------------------------------------------------*/ + +.edit-post-visual-editor .editor-block-list__block, +.editor-default-block-appender textarea.editor-default-block-appender__content { + font-family: Merriweather, Georgia, serif; + font-size: 16px; + font-size: 1rem; + line-height: 1.75; +} + +.edit-post-visual-editor .editor-block-list__block { + color: #1a1a1a; +} + +.editor-post-title__block .editor-post-title__input { + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 28px; + font-size: 1.75rem; + font-weight: 700; + line-height: 1.25; + margin-bottom: 1em; +} + +.edit-post-visual-editor h1 { + font-size: 28px; + font-size: 1.75rem; + line-height: 1.25; + margin-top: 2em; + margin-bottom: 1em; +} + +.edit-post-visual-editor h2 { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.2173913043; + margin-top: 2.4347826087em; + margin-bottom: 1.2173913043em; +} + +.edit-post-visual-editor h3 { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.1052631579; + margin-top: 2.9473684211em; + margin-bottom: 1.4736842105em; +} + +.edit-post-visual-editor h4, +.edit-post-visual-editor h5, +.edit-post-visual-editor h6 { + font-size: 16px; + font-size: 1rem; + line-height: 1.3125; + margin-top: 3.5em; + margin-bottom: 1.75em; +} + +.edit-post-visual-editor h4 { + letter-spacing: 0.140625em; + text-transform: uppercase; +} + +.edit-post-visual-editor h6 { + font-style: italic; +} + +.edit-post-visual-editor h1, +.edit-post-visual-editor h2, +.edit-post-visual-editor h3, +.edit-post-visual-editor h4, +.edit-post-visual-editor h5, +.edit-post-visual-editor h6 { + font-weight: 900; +} + +@media screen and (min-width: 61.5625em) { + .edit-post-visual-editor h1 { + font-size: 33px; + font-size: 2.0625rem; + line-height: 1.2727272727; + margin-top: 1.696969697em; + margin-bottom: 0.8484848485em; + } + + .edit-post-visual-editor h2 { + font-size: 28px; + font-size: 1.75rem; + line-height: 1.25; + margin-top: 2em; + margin-bottom: 1em; + } + + .edit-post-visual-editor h3 { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.2173913043; + margin-top: 2.4347826087em; + margin-bottom: 1.2173913043em; + } + + .edit-post-visual-editor h4 { + letter-spacing: 0.131578947em; + } + + .edit-post-visual-editor h4, + .edit-post-visual-editor h5, + .edit-post-visual-editor h6 { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.1052631579; + margin-top: 2.9473684211em; + margin-bottom: 1.473684211em; + } +} + +.edit-post-visual-editor h1:first-child, +.edit-post-visual-editor h2:first-child, +.edit-post-visual-editor h3:first-child, +.edit-post-visual-editor h4:first-child, +.edit-post-visual-editor h5:first-child, +.edit-post-visual-editor h6:first-child { + margin-top: 0; +} + +.edit-post-visual-editor p { + margin: 0 0 1.75em; +} + +.edit-post-visual-editor blockquote p { + margin-bottom: 1.4736842105em; +} + +@media screen and (min-width: 44.375em) { + .editor-post-title__block .editor-post-title__input { + font-size: 33px; + font-size: 2.0625rem; + line-height: 1.2727272727; + margin-bottom: 0.8484848485em; + } +} + +@media screen and (min-width: 61.5625em) { + .editor-post-title__block .editor-post-title__input { + font-size: 40px; + font-size: 2.5rem; + line-height: 1.225; + margin-bottom: 1.05em; + } +} + +/*-------------------------------------------------------------- +2.0 General Block Styles +--------------------------------------------------------------*/ + +/* Main column width */ + +.editor-styles-wrapper { + max-width: 100% !important; /* Override where editor-style.css is affecting this */ +} + +.wp-block { + max-width: 630px; /* 600px + 30px to account for padding. */ +} + +/* Link styles */ + +.edit-post-visual-editor a, +.editor-block-list__block a, +.wp-block-freeform.block-library-rich-text__tinymce a { + color: #007acc; +} + +/* List styles */ + +.edit-post-visual-editor ul:not(.wp-block-gallery), +.editor-block-list__block ul:not(.wp-block-gallery), +.block-library-list ul, +.edit-post-visual-editor ol, +.editor-block-list__block ol, +.block-library-list ol { + margin: 0 0 1.75em 1.25em; + padding: 0; +} + +.edit-post-visual-editor ul:not(.wp-block-gallery), +.editor-block-list__block ul:not(.wp-block-gallery), +.block-library-list ul { + list-style: disc; +} + +.edit-post-visual-editor ol, +.editor-block-list__block ol, +.block-library-list ol { + list-style: decimal; + margin-left: 1.5em; +} + +.edit-post-visual-editor ul:not(.wp-block-gallery) li, +.editor-block-list__block ul:not(.wp-block-gallery) li, +.edit-post-visual-editor ol li, +.editor-block-list__block ol li, +.block-library-list li { + margin-bottom: 0; +} + +.edit-post-visual-editor ul:not(.wp-block-gallery) li > ul, +.editor-block-list__block ul:not(.wp-block-gallery) li > ul, +.block-library-list li > ul, +.edit-post-visual-editor li > ol, +.editor-block-list__block li > ol, +.block-library-list li > ol { + margin-bottom: 0; +} + +.rtl .edit-post-visual-editor ul:not(.wp-block-gallery), +.rtl .editor-block-list__block ul:not(.wp-block-gallery), +.rtl .block-library-list ul, +.rtl .edit-post-visual-editor ol, +.rtl .editor-block-list__block ol, +.rtl .block-library-list ol { + margin-left: 0; + margin-right: 1.25em; + padding: 0; +} + +.rtl .edit-post-visual-editor ol, +.rtl .editor-block-list__block ol, +.rtl .block-library-list ol { + margin-left: 1.5em; + margin-right: 1.5em; +} + +/* Quotes */ + +.rtl .editor-block-list__block blockquote { + border-left: 0; + padding-left: 0; +} + +/* Captions */ + +[class^="wp-block-"] figcaption { + color: #686868; + font-style: italic; + line-height: 1.6153846154; + padding-top: 0.5384615385em; + text-align: left; +} + +.rtl [class^="wp-block-"] figcaption { + text-align: right; +} + +/*-------------------------------------------------------------- +3.0 Blocks - Common Blocks +--------------------------------------------------------------*/ + +/* Paragraph */ + +.wp-block-paragraph.has-drop-cap:not(:focus)::first-letter { + font-size: 5em; + line-height: 0.68; + margin: 0.05em 0.1em 0 0; + text-transform: uppercase; + font-style: normal; +} + +.rtl .wp-block-paragraph.has-drop-cap:not(:focus)::first-letter { + margin: 0.05em 0 0 0.1em; +} + +/* Quote */ + +.wp-block-quote { + border: 0 solid #1a1a1a; + border-left-width: 4px; + color: #686868; + font-style: italic; + line-height: 1.4736842105; + margin: 0 0 1.4736842105em; + overflow: hidden; + padding: 0 0 0 1.263157895em; +} + +.wp-block-quote:not(.is-large):not(.is-style-large).alignleft, +.wp-block-quote:not(.is-large):not(.is-style-large).alignright { + border-left: 0; + padding-left: 0; +} + +.editor-block-list__block .wp-block-quote p { + font-size: 19px; + font-size: 1.1875rem; + margin-bottom: 1.4736842105em; +} + +.wp-block-quote__citation { + color: #1a1a1a; + display: block; + font-size: 16px; + font-size: 1rem; + line-height: 1.75; +} + +.wp-block-quote__citation:before { + content: "\2014\00a0"; +} + +.wp-block-quote em, +.wp-block-quote i, +.wp-block-quote__citation:before { + font-style: normal; +} + +.wp-block-quote strong, +.wp-block-quote b { + font-weight: 400; +} + +.wp-block-quote > :last-child { + margin-bottom: 0; +} + +.wp-block-quote.alignleft { + margin: 0.3157894737em 1.4736842105em 1.473684211em 0; +} + +.wp-block-quote.alignright { + margin: 0.3157894737em 0 1.473684211em 1.4736842105em; +} + +.wp-block-quote.aligncenter { + margin-bottom: 1.473684211em; +} + +.rtl .wp-block-quote:not(.is-large):not(.is-style-large).alignleft, +.rtl .wp-block-quote:not(.is-large):not(.is-style-large).alignright { + border-right: 0; + padding-right: 0; +} + +@media screen and (min-width: 44.375em) { + .wp-block-quote.alignleft, + .wp-block-quote.alignright { + border-width: 4px 0 0 0; + padding: 0.9473684211em 0 0; + width: -webkit-calc(50% - 0.736842105em); + width: calc(50% - 0.736842105em); + } + + .wp-block-quote:not(.alignleft):not(.alignright) { + margin-left: -1.473684211em; + } + + .rtl .wp-block-quote:not(.alignleft):not(.alignright) { + margin-left: 0; + margin-right: -1.473684211em; + } +} + +@media screen and (min-width: 80em) { + .editor-block-list__block .wp-block-quote.alignleft { + margin-left: -40%; + width: -webkit-calc(60% - 1.4736842105em); + width: calc(60% - 1.4736842105em); + } +} + +/* File */ + +.wp-block-file__textlink { + box-shadow: 0 1px 0 0 currentColor; + color: #007acc; +} + +.wp-block-file .wp-block-file__button { + background: #1a1a1a; + border: 0; + border-radius: 2px; + color: #fff; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-weight: 700; + letter-spacing: 0.046875em; + line-height: 1; + padding: 0.84375em 0.875em 0.78125em; + text-transform: uppercase; +} + +/*-------------------------------------------------------------- +4.0 Blocks - Formatting +--------------------------------------------------------------*/ + +/* Code */ + +.wp-block-code { + border: 0; + padding: 0.125em 0.25em; +} + +/* Classic */ + +.wp-block-freeform.block-library-rich-text__tinymce blockquote { + border: 0 solid #1a1a1a; + border-left-width: 4px; + color: #686868; + font-style: italic; + line-height: 1.4736842105; + margin: 0 0 1.4736842105em; + overflow: hidden; + padding: 0 0 0 1.263157895em; +} + +.editor-block-list__block .wp-block-freeform.block-library-rich-text__tinymce blockquote:not(.alignleft):not(.alignright) { + margin-left: 0; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote p { + font-size: 19px; + font-size: 1.1875rem; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote cite { + color: #1a1a1a; + display: block; + font-size: 16px; + font-size: 1rem; + font-style: normal; + line-height: 1.75; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote cite:before { + content: "\2014\00a0"; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote.alignleft { + margin: 0.3157894737em 1.4736842105em 1.473684211em 0; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote.alignright { + margin: 0.3157894737em 0 1.473684211em 1.4736842105em; +} + +.wp-block-freeform.block-library-rich-text__tinymce blockquote.aligncenter { + margin-bottom: 1.473684211em; +} + +@media screen and (min-width: 44.375em) { + .wp-block-freeform.block-library-rich-text__tinymce blockquote.alignleft, + .wp-block-freeform.block-library-rich-text__tinymce blockquote.alignright { + border-width: 4px 0 0 0; + padding: 0.9473684211em 0 0; + width: -webkit-calc(50% - 0.736842105em); + width: calc(50% - 0.736842105em); + } +} + +.rtl .wp-block-freeform.block-library-rich-text__tinymce blockquote { + border-left-width: 0; + border-right-width: 4px; + overflow: hidden; + padding-left: 0; + padding-right: 1.263157895em; +} + +.rtl .wp-block-freeform.block-library-rich-text__tinymce .alignleft { + float: left; +} + +.rtl .wp-block-freeform.block-library-rich-text__tinymce .alignright { + float: right; +} + +.rtl .wp-block-freeform.block-library-rich-text__tinymce blockquote.alignleft { + margin: 0.3157894737em 0 1.473684211em 1.4736842105em; +} + +.rtl .wp-block-freeform.block-library-rich-text__tinymce blockquote.alignright { + margin: 0.3157894737em 1.4736842105em 1.473684211em 0; +} + +/* Pullquote */ + +.editor-block-list__block .wp-block-pullquote blockquote { + border: 0; + margin: 0; + padding: 0; +} + +.wp-block-pullquote blockquote > .editor-rich-text p { + color: #686868; + font-size: 19px; + font-size: 1.1875rem; +} + +.wp-block-pullquote .wp-block-pullquote__citation { + color: #1a1a1a; + display: block; + font-size: 16px; + font-size: 1rem; + font-style: italic; + line-height: 1.75; + text-transform: none; +} + +.wp-block-pullquote .wp-block-pullquote__citation:before { + content: "\2014\00a0"; +} + +/* Table */ + +.editor-block-list__block table.wp-block-table th, +.editor-block-list__block table.wp-block-table td { + padding: 0; +} + +.rtl .wp-block-table th, +.rtl .wp-block-table td { + text-align: right; +} + +/*-------------------------------------------------------------- +5.0 Blocks - Layout Elements +--------------------------------------------------------------*/ + +/* Buttons */ + +.wp-block-button .wp-block-button__link { + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-weight: 700; + letter-spacing: 0.046875em; + line-height: 1; + padding: 0.84375em 1.3125em 0.78125em; + text-transform: uppercase; +} + +.wp-block-button__link { + background: #1a1a1a; + color: #fff; +} + +.is-style-outline .wp-block-button__link { + color: #1a1a1a; +} + +/* Media & Text */ + +.wp-block-media-text *:last-child { + margin-bottom: 0; +} + +/*-------------------------------------------------------------- +6.0 Blocks - Widgets +--------------------------------------------------------------*/ + +/* Archives, Categories & Latest Posts */ + +[data-align="center"] .wp-block-archives ul, +[data-align="center"] .wp-block-categories ul, +[data-align="center"] .wp-block-latest-posts ul { + list-style-position: inside; +} + +/* Latest Comments */ + +.editor-block-list__block .wp-block-latest-comments__comment-meta a { + box-shadow: none; + font-weight: 700; + text-decoration: none; +} + +.wp-block-latest-comments__comment-date { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; +} + +.wp-block-latest-comments .wp-block-latest-comments__comment { + border-top: 1px solid #d1d1d1; + margin-bottom: 0; + padding: 1.75em 0; +} + +.wp-block-latest-comments__comment-excerpt p:last-child { + margin-bottom: 0; +} + +/* Latest Posts */ + +.edit-post-visual-editor .wp-block-latest-posts.is-grid { + list-style: none; + margin-left: 0; + margin-right: 0; +} + +.edit-post-visual-editor .wp-block-latest-posts.is-grid li { + margin-bottom: 16px; +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/css/editor-style.css b/srcs/wordpress/wp-content/themes/twentysixteen/css/editor-style.css new file mode 100644 index 0000000..ed48ce7 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/css/editor-style.css @@ -0,0 +1,547 @@ +/* +Theme Name: Twenty Sixteen +Description: Used to style the TinyMCE editor. +*/ + + +/** + * Table of Contents: + * + * 1.0 - Body + * 2.0 - Typography + * 3.0 - Elements + * 4.0 - Alignment + * 5.0 - Caption + * 6.0 - Galleries + * 7.0 - Audio / Video + * 8.0 - RTL + */ + + +/** + * 1.0 - Body + */ + +body { + color: #1a1a1a; + font-family: Merriweather, Georgia, serif; + font-size: 16px; + font-weight: 400; + line-height: 1.75; + margin: 20px 40px; + max-width: 600px; + vertical-align: baseline; +} + +body.post-type-page { + max-width: 840px; +} + + +/** + * 2.0 - Typography + */ + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + font-weight: 900; + margin: 56px 0 28px; +} + +h1 { + font-size: 33px; + line-height: 1.2727272727; +} + +h2 { + font-size: 28px; + line-height: 1.25; +} + +h3 { + font-size: 23px; + line-height: 1.2173913043; +} + +h4, +h5, +h6 { + font-size: 19px; + line-height: 1.1052631579; +} + +h4 { + letter-spacing: 0.13333em; + text-transform: uppercase; +} + +h6 { + font-style: italic; +} + +h1:first-child, +h2:first-child, +h3:first-child, +h4:first-child, +h5:first-child, +h6:first-child { + margin-top: 0; +} + +p { + margin: 0 0 28px; +} + +b, +strong { + font-weight: 700; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote { + border-left: 4px solid #1a1a1a; + color: #686868; + font-size: 19px; + font-style: italic; + line-height: 1.4736842105; + margin-bottom: 28px; + overflow: hidden; + padding: 0 0 0 24px; +} + +blockquote:not(.alignleft):not(.alignright) { + margin-left: -28px; +} + +blockquote blockquote:not(.alignleft):not(.alignright) { + margin-left: 0; +} + +blockquote:before, +blockquote:after { + content: ""; + display: table; +} + +blockquote:after { + clear: both; +} + +blockquote > :last-child { + margin-bottom: 0; +} + +blockquote cite, +blockquote small { + color: #1a1a1a; + font-size: 16px; + line-height: 1.75; +} + +blockquote em, +blockquote i, +blockquote cite { + font-style: normal; +} + +blockquote strong, +blockquote b { + font-weight: 400; +} + +blockquote.alignleft, +blockquote.alignright { + border: 0 solid #1a1a1a; + border-top-width: 4px; + padding: 18px 0 0; + width: -webkit-calc(50% - 14px); + width: calc(50% - 14px); +} + +address { + font-style: italic; + margin: 0 0 28px; +} + +code, +kbd, +tt, +var, +samp, +pre { + font-family: Inconsolata, monospace; +} + +pre { + border: 1px solid #d1d1d1; + font-size: 16px; + line-height: 1.3125; + margin: 0 0 28px; + max-width: 100%; + overflow: auto; + padding: 14px; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} + +code { + background-color: #d1d1d1; + padding: 2px 4px; +} + +abbr[title] { + border-bottom: 1px dotted #d1d1d1; + cursor: help; +} + +mark, +ins { + background: #007acc; + color: #fff; + padding: 2px 4px; + text-decoration: none; +} + +sup, +sub { + font-size: 75%; + height: 0; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -6px; +} + +sub { + bottom: -3px; +} + +small { + font-size: 80%; +} + +big { + font-size: 125%; +} + + +/** + * 3.0 - Elements + */ + +hr { + background-color: #d1d1d1; + border: 0; + height: 1px; + margin-bottom: 28px; +} + +ul, +ol { + margin: 0 0 28px 0; + padding: 0; +} + +ul { + list-style: disc; +} + +ol { + list-style: decimal; +} + +li > ul, +li > ol { + margin-bottom: 0; +} + +li > ul, +blockquote > ul { + margin-left: 20px; +} + +li > ol, +blockquote > ol { + margin-left: 24px; +} + +dl { + margin: 0 0 28px; +} + +dt { + font-weight: bold; +} + +dd { + margin: 0 0 28px; +} + +table, +th, +td, +.mce-item-table, +.mce-item-table th, +.mce-item-table td { + border: 1px solid #d1d1d1; +} + +table a { + color: #007acc; +} + +table, +.mce-item-table { + border-collapse: separate; + border-spacing: 0; + border-width: 1px 0 0 1px; + margin: 0 0 28px; + width: 100%; +} + +table th, +.mce-item-table th, +table caption { + border-width: 0 1px 1px 0; + font-size: 16px; + font-weight: 700; + padding: 7px; + text-align: left; + vertical-align: baseline; +} + +table td, +.mce-item-table td { + border-width: 0 1px 1px 0; + font-size: 16px; + padding: 7px; + vertical-align: baseline; +} + +img { + border: 0; + height: auto; + max-width: 100%; + vertical-align: middle; +} + +a img { + display: block; +} + +figure { + margin: 0; +} + +del { + opacity: 0.8; +} + +a { + box-shadow: 0 1px 0 0 currentColor; + color: #007acc; + text-decoration: none; +} + +fieldset { + border: 1px solid #d1d1d1; + margin: 0 0 28px; + padding: 14px; +} + + +/** + * 4.0 - Alignment + */ + +.alignleft { + float: left; + margin: 6px 28px 28px 0; +} + +.alignright { + float: right; + margin: 6px 0 28px 28px; +} + +.aligncenter { + clear: both; + display: block; + margin: 0 auto 28px; +} + + +/** + * 5.0 - Caption + */ + +.wp-caption { + background: transparent; + border: none; + margin-bottom: 28px; + max-width: 100%; + padding: 0; + text-align: inherit; +} + +.wp-caption-text, +.wp-caption-dd { + color: #686868; + font-size: 13px; + font-style: italic; + line-height: 1.6153846154; + padding-top: 7px; +} + + +/** + * 6.0 - Galleries + */ + +.mce-content-body .wpview-wrap { + margin-bottom: 28px; +} + +.gallery { + margin: 0 -1.1666667%; + padding: 0; +} + +.gallery .gallery-item { + display: inline-block; + max-width: 33.33%; + padding: 0 1.1400652% 2.2801304%; + text-align: center; + vertical-align: top; + width: 100%; +} + +.gallery-columns-1 .gallery-item { + max-width: 100%; +} + +.gallery-columns-2 .gallery-item { + max-width: 50%; +} + +.gallery-columns-4 .gallery-item { + max-width: 25%; +} + +.gallery-columns-5 .gallery-item { + max-width: 20%; +} + +.gallery-columns-6 .gallery-item { + max-width: 16.66%; +} + +.gallery-columns-7 .gallery-item { + max-width: 14.28%; +} + +.gallery-columns-8 .gallery-item { + max-width: 12.5%; +} + +.gallery-columns-9 .gallery-item { + max-width: 11.11%; +} + +.gallery .gallery-caption { + font-size: 13px; + margin: 0; +} + +.gallery-columns-6 .gallery-caption, +.gallery-columns-7 .gallery-caption, +.gallery-columns-8 .gallery-caption, +.gallery-columns-9 .gallery-caption { + display: none; +} + + +/** + * 7.0 - Audio / Video + */ + +.wp-audio-shortcode a, +.wp-playlist a { + box-shadow: none; +} + +.mce-content-body .wp-audio-playlist { + margin: 0; + padding-bottom: 0; +} + +.mce-content-body .wp-playlist-tracks { + margin-top: 0; +} + +.mce-content-body .wp-playlist-item { + padding: 10px 0; +} + +.mce-content-body .wp-playlist-item-length { + top: 10px; +} + + +/** + * 8.0 - RTL + */ + +.rtl blockquote { + border: 0 solid #1a1a1a; + border-right-width: 4px; +} + +.rtl blockquote.alignleft, +.rtl blockquote.alignright { + border: 0 solid #1a1a1a; + border-top-width: 4px; +} + +.rtl blockquote:not(.alignleft):not(.alignright) { + margin-right: -28px; + padding: 0 24px 0 0; +} + +.rtl blockquote blockquote:not(.alignleft):not(.alignright) { + margin-right: 0; + margin-left: auto; +} + +.rtl li > ul, +.rtl blockquote > ul { + margin-right: 20px; + margin-left: auto; +} + +.rtl li > ol, +.rtl blockquote > ol { + margin-right: 24px; + margin-left: auto; +} + +.rtl table th, +.rtl .mce-item-table th, +.rtl table caption { + text-align: right; +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/css/ie.css b/srcs/wordpress/wp-content/themes/twentysixteen/css/ie.css new file mode 100644 index 0000000..6aa093a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/css/ie.css @@ -0,0 +1,48 @@ +/* +Theme Name: Twenty Sixteen +Description: Global Styles for older IE versions (previous to IE10). +*/ + +.site-header-main:before, +.site-header-main:after, +.site-footer:before, +.site-footer:after { + content: ""; + display: table; +} + +.site-header-main:after, +.site-footer:after { + clear: both; +} + +@media screen and (min-width: 56.875em) { + .site-branding, + .site-info { + float: left; + } + + .site-header-menu, + .site-footer .social-navigation { + float: right; + } + + .site-footer .social-navigation { + margin-left: 7px; + } + + .rtl .site-branding, + .rtl .site-info { + float: right; + } + + .rtl .site-header-menu, + .rtl .site-footer .social-navigation { + float: left; + } + + .rtl .site-footer .social-navigation { + margin-right: 7px; + margin-left: 0; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/css/ie7.css b/srcs/wordpress/wp-content/themes/twentysixteen/css/ie7.css new file mode 100644 index 0000000..6f9ec28 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/css/ie7.css @@ -0,0 +1,176 @@ +/* +Theme Name: Twenty Sixteen +Description: IE7 specific style. +*/ + +.site-inner { + max-width: 656px; +} + +.post-navigation, +.pagination, +.image-navigation, +.entry-header, +.entry-summary, +.entry-content, +.entry-footer, +.page-header, +.page-content, +.post-thumbnail, +.content-bottom-widgets, +.comments-area { + margin-right: 28px; + margin-left: 28px; + max-width: 100%; +} + +.site-header, +.sidebar, +.site-footer, +.widecolumn { + padding-right: 28px; + padding-left: 28px; +} + +.search-submit { + height: auto; + margin-top: 28px; + padding: 15px 0 8px; + position: relative; + width: auto; +} + +.search-submit .screen-reader-text { + height: auto; + position: relative !important; + width: auto; +} + +.image-navigation .nav-previous, +.image-navigation .nav-next, +.comment-navigation .nav-previous, +.comment-navigation .nav-next { + *display: inline; + zoom: 1; +} + +.image-navigation .nav-previous + .nav-next, +.comment-navigation .nav-previous + .nav-next { + margin-left: 14px; +} + +.pagination .nav-links { + padding: 0; +} + +.pagination .page-numbers { + line-height: 1; + margin: -4px 14px 0; + padding: 18px 0; +} + +.pagination .prev, +.pagination .next { + display: inline-block; + font-size: 16px; + font-weight: 700; + height: auto; + left: 0; + line-height: 1; + margin: 0; + padding: 18px 14px; + position: relative; + right: 0; + text-transform: none; + width: auto; +} + +.dropdown-toggle { + display: none; +} + +.main-navigation ul ul { + display: block; +} + +.social-navigation { + margin-top: 1.75em; +} + +.social-navigation a { + height: auto; + padding: 3px 7px; + width: auto; +} + +.social-navigation .screen-reader-text { + height: auto; + position: relative !important; + width: auto; +} + +.site-header-main { + overflow : hidden; + zoom : 1; +} + +.entry-footer > span { + margin-right: 14px; +} + +.site-info .site-title { + font-size: 13px; + margin-right: 14px; +} + +.gallery-item { + max-width: 30%; +} + +.gallery-columns-1 .gallery-item { + max-width: 100%; +} + +.gallery-columns-2 .gallery-item { + max-width: 46%; +} + +.gallery-columns-4 .gallery-item { + max-width: 22%; +} + +.gallery-columns-5 .gallery-item { + max-width: 17%; +} + +.gallery-columns-6 .gallery-item { + max-width: 13.5%; +} + +.gallery-columns-7 .gallery-item { + max-width: 11%; +} + +.gallery-columns-8 .gallery-item { + max-width: 9.5%; +} + +.gallery-columns-9 .gallery-item { + max-width: 8%; +} + +.rtl .image-navigation .nav-previous + .nav-next, +.rtl .comment-navigation .nav-previous + .nav-next { + margin-right: 14px; + margin-left: 0; +} + +.rtl .entry-footer > span { + margin-right: 14px; + margin-left: 0; +} + +.rtl .site-info .site-title { + margin-right: 0; + margin-left: 14px; +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/css/ie8.css b/srcs/wordpress/wp-content/themes/twentysixteen/css/ie8.css new file mode 100644 index 0000000..1b07fe8 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/css/ie8.css @@ -0,0 +1,222 @@ +/* +Theme Name: Twenty Sixteen +Description: IE8 specific style. +*/ + +code { + background-color: transparent; + padding: 0; +} + +.entry-content a, +.entry-summary a, +.taxonomy-description a, +.logged-in-as a, +.comment-content a, +.pingback .comment-body > a, +.textwidget a, +.entry-footer a:hover, +.site-info a:hover { + text-decoration: underline; +} + +.entry-content a:hover, +.entry-content a:focus, +.entry-summary a:hover, +.entry-summary a:focus, +.taxonomy-description a:hover, +.taxonomy-description a:focus, +.logged-in-as a:hover, +.logged-in-as a:focus, +.comment-content a:hover, +.comment-content a:focus, +.pingback .comment-body > a:hover, +.pingback .comment-body > a:focus, +.textwidget a:hover, +.textwidget a:focus, +.entry-content .wp-audio-shortcode a, +.entry-content .wp-playlist a, +.page-links a { + text-decoration: none; +} + +.site { + margin: 21px; +} + +.site-inner { + max-width: 710px; +} + +.site-header { + padding-top: 3.9375em; + padding-bottom: 3.9375em; +} + +.site-branding { + float: left; + margin-top: 1.3125em; + margin-bottom: 1.3125em; +} + +.site-title { + font-size: 28px; + line-height: 1.25; +} + +.site-description { + display: block; +} + +.menu-toggle { + float: right; + font-size: 16px; + margin: 1.3125em 0; + padding: 0.8125em 0.875em 0.6875em; +} + +.site-header-menu { + clear: both; + margin: 0; + padding: 1.3125em 0; +} + +.site-header .main-navigation + .social-navigation { + margin-top: 2.625em; +} + +.header-image { + margin: 1.3125em 0; +} + +.site-main { + margin-bottom: 5.25em; +} + +.post-navigation { + margin-bottom: 5.25em; +} + +.post-navigation .post-title { + font-size: 28px; + line-height: 1.25; +} + +.pagination { + margin: 0 7.6923% 4.421052632em; +} + +.pagination .nav-links:before, +.pagination .nav-links:after { + display: none; +} + +/* restore screen-reader-text */ +.pagination .current .screen-reader-text { + position: absolute !important; +} + +.pagination .page-numbers { + display: inline-block; + font-weight: 400; +} + +.image-navigation .nav-previous, +.image-navigation .nav-next, +.comment-navigation .nav-previous, +.comment-navigation .nav-next { + display: inline-block; +} + +.image-navigation .nav-previous + .nav-next:before, +.comment-navigation .nav-previous + .nav-next:before { + content: "\002f"; + display: inline-block; + filter: alpha(opacity=70); + padding: 0 0.538461538em; +} + +.site-main > article { + margin-bottom: 5.25em; +} + +.entry-title { + font-size: 33px; + line-height: 1.2727272727; + margin-bottom: 0.8484848485em; +} + +.entry-content blockquote.alignleft, +.entry-content blockquote.alignright { + border-width: 4px 0 0 0; + padding: 0.9473684211em 0 0; + width: 50%; +} + +.entry-footer > span:after { + content: "\002f"; + display: inline-block; + filter: alpha(opacity=70); + padding: 0 0.538461538em; +} + +.updated { + display: none; +} + +.updated.published { + display: inline; +} + +.comment-author { + margin-bottom: 0; +} + +.comment-author .avatar { + height: 42px; + position: relative; + top: 0.25em; + width: 42px; +} + +.comment-list .children > li { + padding-left: 1.75em; +} + +.comment-list + .comment-respond, +.comment-navigation + .comment-respond { + padding-top: 3.5em; +} + +.comment-reply-link { + margin-top: 0; +} + +.comments-area, +.widget, +.content-bottom-widgets .widget-area { + margin-bottom: 5.25em; +} + +.sidebar, +.widecolumn { + margin-bottom: 5.25em; +} + +.site-footer .main-navigation, +.site-footer .social-navigation { + display: none; +} + +.rtl .site-branding { + float: right; +} + +.rtl .menu-toggle { + float: left; +} + +.rtl .comment-list .children > li { + padding-right: 1.75em; + padding-left: 0; +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/footer.php b/srcs/wordpress/wp-content/themes/twentysixteen/footer.php new file mode 100644 index 0000000..9f1621f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/footer.php @@ -0,0 +1,73 @@ + + + + +
+ + + + + + + + +
+ + + ' ); + } + ?> + + + +
+
+ + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/functions.php b/srcs/wordpress/wp-content/themes/twentysixteen/functions.php new file mode 100644 index 0000000..c180b82 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/functions.php @@ -0,0 +1,587 @@ + tag in the document head, and expect WordPress to + * provide it for us. + */ + add_theme_support( 'title-tag' ); + + /* + * Enable support for custom logo. + * + * @since Twenty Sixteen 1.2 + */ + add_theme_support( + 'custom-logo', + array( + 'height' => 240, + 'width' => 240, + 'flex-height' => true, + ) + ); + + /* + * Enable support for Post Thumbnails on posts and pages. + * + * @link https://developer.wordpress.org/reference/functions/add_theme_support/#post-thumbnails + */ + add_theme_support( 'post-thumbnails' ); + set_post_thumbnail_size( 1200, 9999 ); + + // This theme uses wp_nav_menu() in two locations. + register_nav_menus( + array( + 'primary' => __( 'Primary Menu', 'twentysixteen' ), + 'social' => __( 'Social Links Menu', 'twentysixteen' ), + ) + ); + + /* + * Switch default core markup for search form, comment form, and comments + * to output valid HTML5. + */ + add_theme_support( + 'html5', + array( + 'search-form', + 'comment-form', + 'comment-list', + 'gallery', + 'caption', + 'script', + 'style', + ) + ); + + /* + * Enable support for Post Formats. + * + * See: https://wordpress.org/support/article/post-formats/ + */ + add_theme_support( + 'post-formats', + array( + 'aside', + 'image', + 'video', + 'quote', + 'link', + 'gallery', + 'status', + 'audio', + 'chat', + ) + ); + + /* + * This theme styles the visual editor to resemble the theme style, + * specifically font, colors, icons, and column width. + */ + add_editor_style( array( 'css/editor-style.css', twentysixteen_fonts_url() ) ); + + // Load regular editor styles into the new block-based editor. + add_theme_support( 'editor-styles' ); + + // Load default block styles. + add_theme_support( 'wp-block-styles' ); + + // Add support for responsive embeds. + add_theme_support( 'responsive-embeds' ); + + // Add support for custom color scheme. + add_theme_support( + 'editor-color-palette', + array( + array( + 'name' => __( 'Dark Gray', 'twentysixteen' ), + 'slug' => 'dark-gray', + 'color' => '#1a1a1a', + ), + array( + 'name' => __( 'Medium Gray', 'twentysixteen' ), + 'slug' => 'medium-gray', + 'color' => '#686868', + ), + array( + 'name' => __( 'Light Gray', 'twentysixteen' ), + 'slug' => 'light-gray', + 'color' => '#e5e5e5', + ), + array( + 'name' => __( 'White', 'twentysixteen' ), + 'slug' => 'white', + 'color' => '#fff', + ), + array( + 'name' => __( 'Blue Gray', 'twentysixteen' ), + 'slug' => 'blue-gray', + 'color' => '#4d545c', + ), + array( + 'name' => __( 'Bright Blue', 'twentysixteen' ), + 'slug' => 'bright-blue', + 'color' => '#007acc', + ), + array( + 'name' => __( 'Light Blue', 'twentysixteen' ), + 'slug' => 'light-blue', + 'color' => '#9adffd', + ), + array( + 'name' => __( 'Dark Brown', 'twentysixteen' ), + 'slug' => 'dark-brown', + 'color' => '#402b30', + ), + array( + 'name' => __( 'Medium Brown', 'twentysixteen' ), + 'slug' => 'medium-brown', + 'color' => '#774e24', + ), + array( + 'name' => __( 'Dark Red', 'twentysixteen' ), + 'slug' => 'dark-red', + 'color' => '#640c1f', + ), + array( + 'name' => __( 'Bright Red', 'twentysixteen' ), + 'slug' => 'bright-red', + 'color' => '#ff675f', + ), + array( + 'name' => __( 'Yellow', 'twentysixteen' ), + 'slug' => 'yellow', + 'color' => '#ffef8e', + ), + ) + ); + + // Indicate widget sidebars can use selective refresh in the Customizer. + add_theme_support( 'customize-selective-refresh-widgets' ); + } +endif; // twentysixteen_setup +add_action( 'after_setup_theme', 'twentysixteen_setup' ); + +/** + * Sets the content width in pixels, based on the theme's design and stylesheet. + * + * Priority 0 to make it available to lower priority callbacks. + * + * @global int $content_width + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_content_width() { + $GLOBALS['content_width'] = apply_filters( 'twentysixteen_content_width', 840 ); +} +add_action( 'after_setup_theme', 'twentysixteen_content_width', 0 ); + +/** + * Add preconnect for Google Fonts. + * + * @since Twenty Sixteen 1.6 + * + * @param array $urls URLs to print for resource hints. + * @param string $relation_type The relation type the URLs are printed. + * @return array $urls URLs to print for resource hints. + */ +function twentysixteen_resource_hints( $urls, $relation_type ) { + if ( wp_style_is( 'twentysixteen-fonts', 'queue' ) && 'preconnect' === $relation_type ) { + $urls[] = array( + 'href' => 'https://fonts.gstatic.com', + 'crossorigin', + ); + } + + return $urls; +} +add_filter( 'wp_resource_hints', 'twentysixteen_resource_hints', 10, 2 ); + +/** + * Registers a widget area. + * + * @link https://developer.wordpress.org/reference/functions/register_sidebar/ + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_widgets_init() { + register_sidebar( + array( + 'name' => __( 'Sidebar', 'twentysixteen' ), + 'id' => 'sidebar-1', + 'description' => __( 'Add widgets here to appear in your sidebar.', 'twentysixteen' ), + 'before_widget' => '
', + 'after_widget' => '
', + 'before_title' => '

', + 'after_title' => '

', + ) + ); + + register_sidebar( + array( + 'name' => __( 'Content Bottom 1', 'twentysixteen' ), + 'id' => 'sidebar-2', + 'description' => __( 'Appears at the bottom of the content on posts and pages.', 'twentysixteen' ), + 'before_widget' => '
', + 'after_widget' => '
', + 'before_title' => '

', + 'after_title' => '

', + ) + ); + + register_sidebar( + array( + 'name' => __( 'Content Bottom 2', 'twentysixteen' ), + 'id' => 'sidebar-3', + 'description' => __( 'Appears at the bottom of the content on posts and pages.', 'twentysixteen' ), + 'before_widget' => '
', + 'after_widget' => '
', + 'before_title' => '

', + 'after_title' => '

', + ) + ); +} +add_action( 'widgets_init', 'twentysixteen_widgets_init' ); + +if ( ! function_exists( 'twentysixteen_fonts_url' ) ) : + /** + * Register Google fonts for Twenty Sixteen. + * + * Create your own twentysixteen_fonts_url() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + * + * @return string Google fonts URL for the theme. + */ + function twentysixteen_fonts_url() { + $fonts_url = ''; + $fonts = array(); + $subsets = 'latin,latin-ext'; + + /* + * translators: If there are characters in your language that are not supported + * by Merriweather, translate this to 'off'. Do not translate into your own language. + */ + if ( 'off' !== _x( 'on', 'Merriweather font: on or off', 'twentysixteen' ) ) { + $fonts[] = 'Merriweather:400,700,900,400italic,700italic,900italic'; + } + + /* + * translators: If there are characters in your language that are not supported + * by Montserrat, translate this to 'off'. Do not translate into your own language. + */ + if ( 'off' !== _x( 'on', 'Montserrat font: on or off', 'twentysixteen' ) ) { + $fonts[] = 'Montserrat:400,700'; + } + + /* + * translators: If there are characters in your language that are not supported + * by Inconsolata, translate this to 'off'. Do not translate into your own language. + */ + if ( 'off' !== _x( 'on', 'Inconsolata font: on or off', 'twentysixteen' ) ) { + $fonts[] = 'Inconsolata:400'; + } + + if ( $fonts ) { + $fonts_url = add_query_arg( + array( + 'family' => urlencode( implode( '|', $fonts ) ), + 'subset' => urlencode( $subsets ), + 'display' => urlencode( 'fallback' ), + ), + 'https://fonts.googleapis.com/css' + ); + } + + return $fonts_url; + } +endif; + +/** + * Handles JavaScript detection. + * + * Adds a `js` class to the root `` element when JavaScript is detected. + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_javascript_detection() { + echo "\n"; +} +add_action( 'wp_head', 'twentysixteen_javascript_detection', 0 ); + +/** + * Enqueues scripts and styles. + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_scripts() { + // Add custom fonts, used in the main stylesheet. + wp_enqueue_style( 'twentysixteen-fonts', twentysixteen_fonts_url(), array(), null ); + + // Add Genericons, used in the main stylesheet. + wp_enqueue_style( 'genericons', get_template_directory_uri() . '/genericons/genericons.css', array(), '3.4.1' ); + + // Theme stylesheet. + wp_enqueue_style( 'twentysixteen-style', get_stylesheet_uri(), array(), '20190507' ); + + // Theme block stylesheet. + wp_enqueue_style( 'twentysixteen-block-style', get_template_directory_uri() . '/css/blocks.css', array( 'twentysixteen-style' ), '20190102' ); + + // Load the Internet Explorer specific stylesheet. + wp_enqueue_style( 'twentysixteen-ie', get_template_directory_uri() . '/css/ie.css', array( 'twentysixteen-style' ), '20170530' ); + wp_style_add_data( 'twentysixteen-ie', 'conditional', 'lt IE 10' ); + + // Load the Internet Explorer 8 specific stylesheet. + wp_enqueue_style( 'twentysixteen-ie8', get_template_directory_uri() . '/css/ie8.css', array( 'twentysixteen-style' ), '20170530' ); + wp_style_add_data( 'twentysixteen-ie8', 'conditional', 'lt IE 9' ); + + // Load the Internet Explorer 7 specific stylesheet. + wp_enqueue_style( 'twentysixteen-ie7', get_template_directory_uri() . '/css/ie7.css', array( 'twentysixteen-style' ), '20170530' ); + wp_style_add_data( 'twentysixteen-ie7', 'conditional', 'lt IE 8' ); + + // Load the html5 shiv. + wp_enqueue_script( 'twentysixteen-html5', get_template_directory_uri() . '/js/html5.js', array(), '3.7.3' ); + wp_script_add_data( 'twentysixteen-html5', 'conditional', 'lt IE 9' ); + + wp_enqueue_script( 'twentysixteen-skip-link-focus-fix', get_template_directory_uri() . '/js/skip-link-focus-fix.js', array(), '20170530', true ); + + if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) { + wp_enqueue_script( 'comment-reply' ); + } + + if ( is_singular() && wp_attachment_is_image() ) { + wp_enqueue_script( 'twentysixteen-keyboard-image-navigation', get_template_directory_uri() . '/js/keyboard-image-navigation.js', array( 'jquery' ), '20170530' ); + } + + wp_enqueue_script( 'twentysixteen-script', get_template_directory_uri() . '/js/functions.js', array( 'jquery' ), '20181217', true ); + + wp_localize_script( + 'twentysixteen-script', + 'screenReaderText', + array( + 'expand' => __( 'expand child menu', 'twentysixteen' ), + 'collapse' => __( 'collapse child menu', 'twentysixteen' ), + ) + ); +} +add_action( 'wp_enqueue_scripts', 'twentysixteen_scripts' ); + +/** + * Enqueue styles for the block-based editor. + * + * @since Twenty Sixteen 1.6 + */ +function twentysixteen_block_editor_styles() { + // Block styles. + wp_enqueue_style( 'twentysixteen-block-editor-style', get_template_directory_uri() . '/css/editor-blocks.css', array(), '20190102' ); + // Add custom fonts. + wp_enqueue_style( 'twentysixteen-fonts', twentysixteen_fonts_url(), array(), null ); +} +add_action( 'enqueue_block_editor_assets', 'twentysixteen_block_editor_styles' ); + +/** + * Adds custom classes to the array of body classes. + * + * @since Twenty Sixteen 1.0 + * + * @param array $classes Classes for the body element. + * @return array (Maybe) filtered body classes. + */ +function twentysixteen_body_classes( $classes ) { + // Adds a class of custom-background-image to sites with a custom background image. + if ( get_background_image() ) { + $classes[] = 'custom-background-image'; + } + + // Adds a class of group-blog to sites with more than 1 published author. + if ( is_multi_author() ) { + $classes[] = 'group-blog'; + } + + // Adds a class of no-sidebar to sites without active sidebar. + if ( ! is_active_sidebar( 'sidebar-1' ) ) { + $classes[] = 'no-sidebar'; + } + + // Adds a class of hfeed to non-singular pages. + if ( ! is_singular() ) { + $classes[] = 'hfeed'; + } + + return $classes; +} +add_filter( 'body_class', 'twentysixteen_body_classes' ); + +/** + * Converts a HEX value to RGB. + * + * @since Twenty Sixteen 1.0 + * + * @param string $color The original color, in 3- or 6-digit hexadecimal form. + * @return array Array containing RGB (red, green, and blue) values for the given + * HEX code, empty array otherwise. + */ +function twentysixteen_hex2rgb( $color ) { + $color = trim( $color, '#' ); + + if ( strlen( $color ) === 3 ) { + $r = hexdec( substr( $color, 0, 1 ) . substr( $color, 0, 1 ) ); + $g = hexdec( substr( $color, 1, 1 ) . substr( $color, 1, 1 ) ); + $b = hexdec( substr( $color, 2, 1 ) . substr( $color, 2, 1 ) ); + } elseif ( strlen( $color ) === 6 ) { + $r = hexdec( substr( $color, 0, 2 ) ); + $g = hexdec( substr( $color, 2, 2 ) ); + $b = hexdec( substr( $color, 4, 2 ) ); + } else { + return array(); + } + + return array( + 'red' => $r, + 'green' => $g, + 'blue' => $b, + ); +} + +/** + * Custom template tags for this theme. + */ +require get_template_directory() . '/inc/template-tags.php'; + +/** + * Customizer additions. + */ +require get_template_directory() . '/inc/customizer.php'; + +/** + * Add custom image sizes attribute to enhance responsive image functionality + * for content images + * + * @since Twenty Sixteen 1.0 + * + * @param string $sizes A source size value for use in a 'sizes' attribute. + * @param array $size Image size. Accepts an array of width and height + * values in pixels (in that order). + * @return string A source size value for use in a content image 'sizes' attribute. + */ +function twentysixteen_content_image_sizes_attr( $sizes, $size ) { + $width = $size[0]; + + if ( 840 <= $width ) { + $sizes = '(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px'; + } + + if ( 'page' === get_post_type() ) { + if ( 840 > $width ) { + $sizes = '(max-width: ' . $width . 'px) 85vw, ' . $width . 'px'; + } + } else { + if ( 840 > $width && 600 <= $width ) { + $sizes = '(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 61vw, (max-width: 1362px) 45vw, 600px'; + } elseif ( 600 > $width ) { + $sizes = '(max-width: ' . $width . 'px) 85vw, ' . $width . 'px'; + } + } + + return $sizes; +} +add_filter( 'wp_calculate_image_sizes', 'twentysixteen_content_image_sizes_attr', 10, 2 ); + +/** + * Add custom image sizes attribute to enhance responsive image functionality + * for post thumbnails + * + * @since Twenty Sixteen 1.0 + * + * @param array $attr Attributes for the image markup. + * @param int $attachment Image attachment ID. + * @param array $size Registered image size or flat array of height and width dimensions. + * @return array The filtered attributes for the image markup. + */ +function twentysixteen_post_thumbnail_sizes_attr( $attr, $attachment, $size ) { + if ( 'post-thumbnail' === $size ) { + if ( is_active_sidebar( 'sidebar-1' ) ) { + $attr['sizes'] = '(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 984px) 60vw, (max-width: 1362px) 62vw, 840px'; + } else { + $attr['sizes'] = '(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 88vw, 1200px'; + } + } + return $attr; +} +add_filter( 'wp_get_attachment_image_attributes', 'twentysixteen_post_thumbnail_sizes_attr', 10, 3 ); + +/** + * Modifies tag cloud widget arguments to display all tags in the same font size + * and use list format for better accessibility. + * + * @since Twenty Sixteen 1.1 + * + * @param array $args Arguments for tag cloud widget. + * @return array The filtered arguments for tag cloud widget. + */ +function twentysixteen_widget_tag_cloud_args( $args ) { + $args['largest'] = 1; + $args['smallest'] = 1; + $args['unit'] = 'em'; + $args['format'] = 'list'; + + return $args; +} +add_filter( 'widget_tag_cloud_args', 'twentysixteen_widget_tag_cloud_args' ); diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/COPYING.txt b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/COPYING.txt new file mode 100644 index 0000000..aece214 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/COPYING.txt @@ -0,0 +1,9 @@ +Genericons is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. + +The fonts are distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +As a special exception, if you create a document which uses this font, and embed this font or unaltered portions of this font into the document, this font does not by itself cause the resulting document to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the document might be covered by the GNU General Public License. If you modify this font, you may extend this exception to your version of the font, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. + +This license does not convey any intellectual property rights to third party trademarks that may be included in the icon font; such marks remain subject to all rights and guidelines of use of their owner. \ No newline at end of file diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.eot b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.eot new file mode 100644 index 0000000..7322565 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.eot differ diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.svg b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.svg new file mode 100644 index 0000000..4740685 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.svg @@ -0,0 +1,537 @@ + + + + + +Created by FontForge 20150618 at Fri Sep 18 10:24:13 2015 + By Joen Asmussen +Copyright (c) 2015, Joen Asmussen + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.ttf b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.ttf new file mode 100644 index 0000000..0174438 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.ttf differ diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.woff b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.woff new file mode 100644 index 0000000..0e7212a Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/Genericons.woff differ diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/LICENSE.txt b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/LICENSE.txt new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/LICENSE.txt @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/README.md b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/README.md new file mode 100644 index 0000000..4aa8cc0 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/README.md @@ -0,0 +1,218 @@ +# Genericons + +Genericons are vector icons embedded in a webfont designed to be clean and simple keeping with a generic aesthetic. + +Use genericons for instant HiDPI, to change icon colors on the fly, or even with CSS effects such as drop-shadows or gradients! + + +## Usage + +To use it, place the `genericons` folder in your stylesheet directory and enqueue the genericons.css file. Now you can create an icon like this: + +``` +.my-icon:before { + content: '\f101'; + font: normal 16px/1 'Genericons'; + display: inline-block; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +``` + +This will output a comment icon before every element with the class "my-icon". The `content: '\f101';` part of this CSS is easily copied from the helper tool at http://genericons.com/, or `example.html` in the `font` directory. + +You can also use the bundled example.css if you'd rather insert the icons using HTML tags. + + +## Building your own Genericons + +In the `source` directory, you'll find all Genericons source icons in SVG format. This will allow you to bake your own flavor of Genericons using a tool such as FontCustom (http://fontcustom.com) or Fontello (http://fontello.com). Perhaps you need more logos than are available in the base Genericons package? Just add those logos and bake your own expanded set. Maybe you need just a few of the icons Genericons provides, but would like to trim the fat? Remove the ones you won't need! + + +### FontCustom instructions + +FontCustom is a powerful commandline tool which which bakes icon fonts from the SVG source files. It's the tool Genericons is built on, and it provides highly accurate and perfectly crisp icons, *provided all SVGs have the same pixel height*. + +It's not that hard to use, and once it's installed you'll never think of icon-fonts the same way again. Seriously, you should try it. Icon fonts for everyone! + +1. Install FontCustom. Follow the instructions on the website: http://fontcustom.com/ +2. In the `source` directory from the Genericons download, open the file called `fontcustom.yml` in a text editor. Customize the `font_name` and `css_selector`. +3. Open a terminal. Browse to the `source` directory. Type `fontcustom compile`. + +You'll now receive a brand new subdirectory called `fontcustom-webfont`. Inside here you'll find your very own flavor of Genericons, with only the icons you want, including a handy example page that'll help you copy/paste the necessary glyphs or CSS values. + +*Please note*: In the source directory, there's a hidden file called `.fontcustom-manifest.json`. This file is auto-generated by the FontCustom tool, and holds codepoints (unicode addresses) for every glyph, so its address doesn't change when you add or remove icons. If you feel the need to "start fresh" with the unicode addresses, you should delete this file. + + +### Fontello instructions + +Fontello is very easy to use. Just drop the SVG files of the icons you want onto their website and download the font. The downside is that Fontello seems to ignore the 16px pixelgrid, so you'll end up with fuzzy icons. Buyer beware. + + +## Notes + +**Photoshop mockups** + +The `Genericons.ttf` file can be placed in your system fonts folder and used Photoshop or other graphics apps if you like. + +If you're using Genericons in your Photoshop mockups, please remember to delete the old version of the font from Font Book, and grab the new one from the zip file. This also affects using it in your webdesigns: if you have an old version of the font installed locally, that's the font that'll be used in your website as well, so if you're missing icons, check for old versions of the font on your system. + +**Pixel grid** + +Genericons has been designed for a 16x16px grid. That means it'll look sharp at font-size: 16px exactly. It'll also be crisp at multiples thereof, such as 32px or 64px. It'll look reasonably crisp at in-between font sizes such as 24px or 48px, but not quite as crisp as 16 or 32. Please don't set the font-size to 17px, though, that'll just look terrible blurry. + +**Antialiasing** + +If you keep intact the `-webkit-font-smoothing: antialiased;` and `-moz-osx-font-smoothing: grayscale;` CSS properties. That'll make the icons look their best possible, in Firefox and WebKit based browsers. + +**optimizeLegibility** + +Note: On Android browsers with version 4.2, 4.3, and probably later, Genericons will simply not show up if you're using the CSS property "text-rendering" set to "optimizeLegibility. + +**Updates** + +We don't often update icons, but do very carefully when we get good feedback suggesting improvements. Please be mindful if you upgrade, and check that the updated icons behave as you intended. + +**Base64 encoding** + +By default, Genericons ships with a stylesheet that includes a base64 encoded version of the font. This is to sidestep issues with cross-origin requests for fonts, that happen when a stylesheet loads a font that's stored on a different domain or subdomain. This is very common when using caching plugins. + +Base64 encoding comes with a 25% filesize overhead compared to just loading the WOFF file directly. If you know that you won't be loading fonts across domains, or have the ability to edit your server config files to allow it, you can get slightly faster performance by loading Genericons without the base64 encoding. Simply edit `genericons.css` and edit the `@font-face` declaration to match this: + +``` +@font-face { + font-family: 'Genericons'; + src: url('Genericons.woff') format('woff'), + url('Genericons.ttf') format('truetype'), + url('Genericons.svg#genericonsregular') format('svg'); + font-weight: normal; + font-style: normal; +} +``` + + + +## Changelog + +**3.4.1** + +* IE8 support restored. + +**3.4** + +* Updated: Update Google Plus icon to new geometric version. This also *retires* the "alt" version, so *please be mindful if you choose to update, make sure you use the `f206` glyph, not the `f218` glyph, as it no longer exists! +* New: Added helper rotation classes to the base CSS, thanks to geminorum. Apply `genericon-rotate-90` to rotate 90 degrees, -180, -270. Or `genericon-flip-horizontal` or -vertical. + +*Again, it is important if you choose to update to this version, make sure you're not using `genericon-googleplus-alt` or unicode character `f218`, as that has been retired! Use `genericon-googleplus` and glyph `f206` instead!* + +**3.3.1** + +Security Hardening: Remove Genericons example.html file. Please visit genericons.com instead. + +**3.3** + +The Open Source release. + +You can now build your own flavors of Genericons with all the SVGs provided. + + +**3.2** + +A number of new icons and a couple of quick updates. + +* New: Activity +* New: HTML anchor +* New: Bug +* New: Download +* New: Handset +* New: Microphone +* New: Minus +* New: Plus +* New: Move +* New: Rating stars, empty, half, full +* New: Shuffle +* New: video camera +* New: Spotify +* New: Twitch +* Update: Fixed geometry in Edit icon +* Update: Updated Foursquare icon +* IE8 bugfix, slipstreamed into this. + +Twitch and Spotify mark the last social icons that will be added to Genericons. +Future social icons will have to happen in a separate font. + +**3.1** + +Genericons is now generated using a commandline tool called FontCustom. This makes it far easier to add new icons to the font, but the switch means the download zip now has a different layout, fonts have different filenames, there's now no .otf font included (but the .ttf should suffice), and the font now has slightly different metrics. I've taken great care to ensure this new version should work as a drop-in replacement, but please be mindful and test carefully if you choose to upgrade. + +* Per feedback, the baked-in 16px width and height has been removed from the helper CSS. It wasn't really necessary (the glyph itself has these dimensions naturally), and it caused some headaches. +* Base64 encoding is now included by default in the helper CSS. This makes it drop-in easy to get Genericons working in Firefox even when using a CDN. +* Title attribute on website tool. +* New: Website. +* New: Ellipsis. +* New: Foursquare. +* New: X-post. +* New: Sitemap. +* New: Hierarchy. +* New: Paintbrush. +* Updated: Show and Hide icons were updated for clarity. + +**3.0.3** + +Bunch of updates mostly. + +* Two new icons, Dropbox and Fullscreen. +* Updates to all icons containing an exclamation mark. +* Updates to Image and Quote. +* Nicer "Share" icon. +* Bigger default Linkedin icon. + +**3.0.2** + +A slew of new stuff and updates. + +* Social icons: Skype, Digg, Reddit, Stumbleupon, Pocket. +* New generic icons: heart, lock and print. +* New editing icons: code, bold, italic, image +* New interaction icons: subscribe, unsubscribe, subscribed, reply all, reply, flag. +* The hyperlink icon has been updated to be clearer, chunkier. +* The "home" icon has been updated for style, size and clarity. +* The email icon has been updated for style and clarity, and to fit with the new subscribe icons. +* The document icon has been updated for style. +* The "pin" icon has been updated for style and clarity. +* The Twitter icon has been scaled down to fit with the other social icons. + +**3.0.1** + +Mostly maintenance. + +* Fixed an issue with the example page that showed an old "top" icon instead of the actual NEW "refresh" icon. +* Added inverse Google+ and Path. +* Replaced tabs with spaces in the helper CSS. +* Changed the Genericons.com copy/paste tool to serve span's instead of div's for casual icon insertion. It's being converted to "inline-block" anyway. + +**3.0** + +Mainly maintenance and a few new icons. + +* Fast forward, rewind, PollDaddy, Notice, Info, Help, Portfolio +* Updated the feed icon. It's a bit smaller now for consistency, the previous one was rather big. +* So, the previous version numbering, 2.09, wasn't very PHP version compare friendly. So from now on it'll be 3.0, 3.1 etc. Props Ipstenu. +* Genericons.com now has a mini release blog. +* The CSS has prettier formatting, props Konstantin Obenland. + +**2.09** + +Updated Facebook icon to new version. Updated Instagram logo to use new one-color version. Updated Google+ icon to use same radius as Instagram and Facebook. Added a bunch of new icons, cog, unapprove, cart, media player buttons, tablet, send to tablet. + +**2.06** + +Included Base64 encoded version. This is necessary for Genericons to work with CDNs in Firefox. Firefox blocks fonts linked from a different domain. A CDN (typically s.example.com) usually puts the font on a subdomain, and is hence blocked in Firefox. + +**2.05** + +Added a bunch of new icons, including upload to cloud, download to cloud, many more. + +**2.0** + +Initial public release diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/genericons/genericons.css b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/genericons.css new file mode 100644 index 0000000..87cf754 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/genericons/genericons.css @@ -0,0 +1,263 @@ +/** + + Genericons + +*/ + + +/* IE8 and below use EOT and allow cross-site embedding. + IE9 uses WOFF which is base64 encoded to allow cross-site embedding. + So unfortunately, IE9 will throw a console error, but it'll still work. + When the font is base64 encoded, cross-site embedding works in Firefox */ +@font-face { + font-family: "Genericons"; + src: url("./Genericons.eot"); + src: url("./Genericons.eot?") format("embedded-opentype"); + font-weight: normal; + font-style: normal; +} + +@font-face { + font-family: "Genericons"; + src: url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAADakAA0AAAAAVqwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAA2iAAAABoAAAAcdeu6KE9TLzIAAAGgAAAARQAAAGBkLHXFY21hcAAAAogAAACWAAABsqlys6FjdnQgAAADIAAAAAQAAAAEAEQFEWdhc3AAADaAAAAACAAAAAj//wADZ2x5ZgAABFQAAC7AAABIkKrsSc5oZWFkAAABMAAAAC8AAAA2C2BCV2hoZWEAAAFgAAAAHQAAACQQuAgGaG10eAAAAegAAACfAAABOFjwU3Jsb2NhAAADJAAAATAAAAEwy4vdrm1heHAAAAGAAAAAIAAAACAA6QEZbmFtZQAAMxQAAAE5AAACN1KGf59wb3N0AAA0UAAAAjAAAAXo9iKXv3jaY2BkYGAAYqUtWvLx/DZfGbg5GEDgkmLVWhj9/ycDAwcbWJyDgQlEAQABJgkgAHjaY2BkYOBgAIIdHAz/fwLZbAyMDKiAFQBE7gLWAAAAAAEAAACXAOgAEAAAAAAAAgAAAAEAAQAAAEAALgAAAAB42mNgYf/MOIGBlYGB1Zh1JgMDoxyEZr7OkMYkxMDAxMDKzAADjAIMCBCQ5prC0MCg8FWcA8TdwQFVg6REgYERAPvTCMQAAAB42i1PsRXCUAg8SAprl7FN4QZqb2WZGRjAIVLrHj4be4ews7OJHAd54cMBd+Af7JHmt3RPYAOHAYFweFhmYE4jlj+uVb8nshCzd/qVeNUCLysG8lgwrojfSW/pcTK6o7rWX82En6HJwIEv+wbi28IwpndxRu/JaJGStHRDq5EB+OKCNumZLlSVl2TnOFVtl9nR5t7woR0QzVT+D7cKLeIAeNpjYGBgZoBgGQZGBhBYA+QxgvksDBOAtAIQsoDoj5yfOD9JflL7zPGF84vkF80vll88v0R+yfxS9lX8/3+wCoZPDJ8EPil8ZvjC8EXgi8IXgy8OXwK+JHwp+Mrw////x/wsfHx8HHxMvJo8Rjw6PGo8CjxSPCI8fDwc3PVQ2/ECRjYGuDJGJiDBhK4A4pXhDABtHClYAAAARAURAAAALAAsACwALABaAIQAzADyAQABHAFGAZQBzgIIArIDTAOkA+AEEgTCBRYFYgW+BjAGwgbkByQHSAeCB+AI2Ao4CowLGgvQDBwM6g08DX4Nug4kDkYOYg6ADsoO7A8yD4gP8hAwEGYQpBDuEUgRshHUEfYSQBJeEnoSlhLEEtwTIBNYE6oT6hQaFC4UShSQFJ4UtBTyFSAVjBW4FegV+hYUFiwWQBZWFmQWchaIFuYXFhdUF4gXyhgEGCwYThh8GNYZEhlCGVgZZhl8GZIZoBnQGhIaShp8GtIa6Br+GzAbVBt+G8Ib/Bw6HGgciBy8HOwdHh1WHXAdmB3eHvYfIB8uHzofSB9WH6of4CA4IMghACFCIcQh4CIGIjoiSCJ8IpYiyCLmIxAjWiPwJCQkSHja1Xx5YFTVvf/53nUm++zJJJnMkpkJJJkss5GFMIQ9w04IS0BZRSJLMIIo1l4XFETQFkVFBKwVrbuWpRaXPOtalZaCPKu1D2yf28NX21qfQubk9z3nzoSAS//+Mbn3nnvuuWc/n+/n+z3fCxHIaEKEJfJMIhKVhJ4GUtP8jCqRz+ufVuQ/NT8jChgkT4ssWmbRz6gK9DU/Ayw+bPKY/B6TZ7TgpuVwN71Unnnm0dHS24QQRSACUYis8XyzST6xEAch4LF5ZJsnKkc9NsDDj2ETXgUikT4iaClNJEBSGoZIP74qa+l//YRfKB5EAEyj4g/ztWBZbslcIEjucqHATOpjkYBXsYo18DNYeOQI3UMvonuOHIHXj+/YcXyHSs7FLGQp+o7sYA8IFq+BpmqKhtk6SDEZinWVWfMsHlLfIkRCgjdPsLpAtMlRUu8CmzVP8HlDEInJmkC+wcbihT54cN/6cePW79Mv/f1E+MUT2zvCM68cOWt7Rwc2pk8TNQ3IWW0gEbuI3yxI7KW9HdtnjbxyZrhj+xPbWX0EYhjcf9h3Jg9gldjBfhLm1af1ERF7BTAEmoxngQDeU35mB/YPsDiFtU0gxChgX2tn8S6FP3zG38O+zMWEVkU1yaYQRCMxt13WblvTT9bcdgpaTsnahlcqUp9owt0Vr2zYc+oUHwN8S2FjwMYV62PNA5+pPhaFc0EP4JhuPr2la4eQCVCsNRvnLac3A9nRNShIBFZPXpciEmHjareZsEbRWNTEBhVvHDasmyniwP7HJ+4AhlsgbmOP7PUsWVA8DFmHuzoSa3avSXR09XZ0HaZfHa7raOARKjm8kWoLdwfuamwHbcqaNVOo1t54V2D3QtA2nsQL1TYePrwRtMTaWUWYhvI0gGlYz5FeldWtgPiwvfW8bpVgAk/cwxqtR/hwhHxeVq9YWNG6duzo0miCHtBgy55TlN/jbYIHFGwyi6IJ6NVO7RG0c7c7ugBDRITMuMlYqovNAFYeuNg4BWPRSBCDBRhsEaKRQJCl5mOvSfmxpqbY3GQSCmYvXjy7s6bVP2WcjI/P4iEUxG7ddWt0brKrC5/P+Yz2fTans2bNjWMvPTwOi8B2Vhtw5pEr+cpyCWabVVAkVQngpGDFtChYcIsQCIYgT1ADQUUNifmQB7g4HIrN6pIdiponhCAYkoJDMd7ucEkOlxK32q02qxIMlAewtuYWQVwLdsg6+fyNbcufpfRunw+CruicxZMm1JYsV4zGfIuUV9+8OH7VzTdfFV80IpSVVZBvMErLS2rHT140JxrJtYfGjRjrFIyl3liplFNkNDlFY6nTmwuKwx0fu6gZfL67aOrZ5W03Pn/SQNiZfrXlIfr62RfrVXeh9JvpoxY4FUt5/eRFm2bsvTy/YvzFdSDK5jq/F8DrrzMpglAxtSFekt2zZ/rmRZPr/WYl1JmVJxdEq6VcX3GhoGY7zaAUuoZ5pNwhrqF5WabyKXVZhW4l/MJZaHhoC28cdiIDKkJ4nxqIiZQittSTBJlKiL8+LogKUe3+mDleLrvAjLhidsRIPBDMAda9LsERkxwCsETlccHiVXx2S4sUD1SBWyIIewRxjzDgk8iBw54n/0w3db0rjt/1ViE9TY/nNXaeue+KFT+Cxz4uSNCP6Bp5+biD/9dsLw0qj8DEq51nG1+if695Cb68Zevjbs19yW+VvZO2LB9yLT1Er4JdsAEsP/85/ZxupEvw+PznPweLNhWq4MY2evS13r0roL03FCq+m/5W2Jx4iP5u/dsQm1SrddTDuw0Xd7lKw+05HqUYSuGfM+nhE/bxIXBCrGAf3Sc0ultay6/9qXZB5lggL5R1FyAeVyEef0Aa8EZR7Qi4kuRz++3helzyOL0wgJfhOL8YXsXtkgNnaIsQrrc7YvE8UGOqllwpVM/Vnvo9pdvoEdpfVTXzgZ+MuPJ5n99dV/vjhyfPTs6uvwVu+TCrcfGm5OQt4R+tsLY3rFJquycX25Yff/vwfT0jH5QDY+vEbavV3KI3b5QrxfqfXbS445E3s4dUtm1a3Dg8XpRILPfm6vUlKD9UjQQH0MGHKG3xDEcZEXbEAz4UIKUIiyg0zwMI+hHk5dCPKlv3yZOWX/TT2VWUpqrYAxUR4SxB6HwNpN6c5jj8Iyt28drRp2lfqmFHl4xPOLZjufLHWK6b4YPIBAMrI9IiYU+Ugejl5YrSbpiQT1+lvX/+s6N6/EXXtsW7nE51/pKKiNMofU2P9h0SJ0ANCJEFs8bHShVRpB+Z/NVeUTASRJ9M2yyIzB6yhKzi2GA3s0HxeXFFF5hjgDMXFKjHuZsNdgtYYvEWMRphQGBA6AjXOwLlPq+kqPXh+tgIiNkVVVHBIiKOxBz2c3F+HGpVjJmjEbENVsDEL7aN7Nn38idXH6T7v9i27Qv6pzNv0x+PFQO3XC8JX/+j+y/gmypIBXkW1VFoBYdslvMkVZjcCMZV9NN7b6H9R8YXF/lX+Lw2S561qhb8T13bbs23WjdOCVzm82GkrVLwycO/OvSeqmHu+w9e/cnL+3pGbvsCJvLSU3mn6YYlUul9fTUhWREeSo30SHv7dkOOklNXNzZcGJoT9Qp+gzu7JL/Qlt3QAUu6Ox9YJQsilHlFWei7SzDBbFXwuiErE6lWVN68M9XQBT3vH2FzXSC3wj9Rlm4ldWQ4G0W73q8hITOh1ZARh5FBLM5+Me7xh20+my/qi4ajYeE9IZAbGLPkmh3T1723++JF9797+do3WncKVqO9oMjucpWblz66ZMmjS0d2j48VSXS/uE9nVJIWDE/fcc2SMYGLd7+3bu37uy+ePPEeyFVzDdmqURIXP/rbRxeXx8Y0Fb3Nk2M9RZ13Kc8jJzFjXTkjCTJxx4YX4R/FPkZF2FQHFYWyxxz02FoUfCbYhPn0ILQ9KExbumxGvL0KqjrkAnpoWkfluKG52fSQJMGEbJvbUxNuLZ++eVkDEPG/bl40oW1h9aS62kmhszsF8/Ir/WF3cSz1n+L187eaSnzFxZbs+GWPr2ZcKT0/Gct0k+ZBKzC91Bg/saCYDoEPiYTVjhG8moIa9dgLbCrWOs672mbSVyVbeCiGHfSbG0ZPg6mto6ZPGyk1PbSpftowbwH9GgAMhixvg3fMyMwy1ZfkGSIW9X0sbpzS2DxpclPjlL4N8NqTB4sqg4XdHtpz4CAcrrQ5h5Re3E5nY2c+isJhGsqFqazGLkkf9kBQwJURDMQtbALEWKWsrD/ZGsFVEULemYdJkQSpeewvyOeJLNWt++MT2xZEqmdctePgksVPeicUeOffqZb+TMqzb71kxuxAc57j6iVrn1005obXfzT/0ZtXTQjOMKuqaBVUn33munj5xBV3/fIvBhJftGnvgfkbPnxx18rm+Qn6wbAN22MPXy08ZfQsj9x6+LLp4e3/0bD49l9B3cFLn76uLTSt+6a7p965yOYszJmSVWgy+u54rnvS7nu3rp9Vr+N4RvYtzvCJAiFPwGYGY3ELn8/AGiXqjbI77AgbEI8Fgmk0x6nD2CRS7TinOWxuYboywE5yBMiFXCIt5+/YliwZX7J12lW/u31a0+W73u5Zd3T3tVOGdC0zl8iCSZDlvNHjtN41Sx/oGjZ1x0XRdn9Odp1r3KjY3GiBwbjG4pAP0NO7BjMH+hn9iuU/dP1icEaTlx0G8c7Ox+9YnYhfdM3td7bdcmyoIc9iSGRZbaYpVy185uZpzctvm7n96zujndGaXVcObZ01+upk5TSLhfpnLNo8BRyw7sgAQRDIXmGBukDei4srn/PeAuS2BeXpq2yF2V9+SR/+MnVFOiDvZecv03d41eUlUW9Xc4gXbyQR+bkP0TuIkwWpYhx/FrPDjCITQxhlVjaAtSAHlaGfpu5bsco7bZ71qvaN1z0152hdxNo8YdiabkPBpsSYG1VioA/SFB1Oh0AZ3HYtlLWvuKLnboOV/p7+agr9+1NPzbu7FB5nbcjoT/mIDd9af0ZBIag27OnjZ+CanoKsl/J7Ac99nL0SgHeJplTgWvbqWgUqEw47kw9xEwoHnDaMeEZNvihvVFwaBb+gs0wF1c0TN93cM3/+ig0XXzSqNfJqVzIZqjapGm2iH9PIrqoqZ/ls+lHMbi8ra2i8boOwNuVLJObO2cKm52D8cJBqjsEX1J+4lQK7O1aANeKr0c05B9bNHkb2b8J5WQlepRSs9iaojw2GELGMvnSKqVBIzf/XvPk0/ez0ZjP932RUJtFkMqqlT+ejCCWn9Lf6TolkbCMqSKg7NY1JsVekA5l3knxp9QOooPSTbeSnZAe5h9xH7icPkoeZNodNsNUq7M+q1KHOoNQpqpWdFBsDFOxOJR9A8QahtgYCwdpANKB3byAYCfIVGIhiZAS7IFobi8bqIqzPo/VxftV/I6A2DrF6B9Ta62rtYbtj4GdjRy37szqsdXYwyXEjOPyyLQ4mv+qPB1UjBGV/VFVx1Pk/Af+E9BkvqVZThSnVCiLgdBZZrADn/RNgIDGKVuEFTC68AAIM5JHOCDArcH2cujJ19mNwpV59EO6kH34sjPv000+hUpA/ph8KjQ9K/5AlWi2oAkjsHVaowIpM54D5A63OzoFjLPt0TUX+HC+AL+GLEhyTZAFkEPCWHew1ngE7H8vOptXpFop6jqwMlgzfgCn07Rd3wmz68M4X9/5pVeoFiLx47+Rdu3ZhaPbOF+//06rz56oF5dwL5GM2V5GJFaCO5uaqVQsSYVTXBJQPDrsUV9I8AjEVgXUEMEzFFKiHWTgDUxiRRmStjdQhVQuUsyj+aoyBcAgUPUI4B8whIRjggocnY1Qcc2MP2T0TSiIqi0GO1w6XiLfsjfStAPXlOINQiAVZlojhEpYZDJjjMYyPK5KCcG+2SxI5yJgfI2T0Dkb8OAc8tpueWLlyidW075r14N4wIbn6rTtmlSdC2KNGEUb+/OVlD4Brodt/KX3/dnHo0I4tV6xrn7vgyWuT2V3tl9AvV14xvCXLsHPlqv9qanEkQxs3RTsstnBBVbS0am4gEDEYzEUFlfXFzki1udghK5VlFTWh8bmohxlt9jGBwFirTTYbi70V9spOj9cvCh0bW8Mza3Js5qmXrBtWPjJsKjaaHRsebp91+0y64TRsuqRp1o43eibdsNAZG9/TTQ899BD9dFxb7qzZUP2MyXwv/fSNdde9DyGdd+rNZLQzzUDvMqxdfRn945139E8Yn9dgm739re6xm9bWY1uzBEiuaLp1Q7j62jtTWaNuGtYz1FfiTV775ALhshdbJlmbWpZfds3637g80+d3fpgMV1uDwxcsnFlcWaZm5zkc44YMbfc4PBZByHGai9v8/haTXYFhlQKUTSh1eQSo9Pnag1aP0yIZi8rcc2pHXhYy5Yy5aHU00l5tsOfVDC+Pb2ieclU0P2flA303f/3WTTeuPXrvZVb3yq3T7qJPrN/QXer8rz27YOU99/7BJQk5t7xL/7x7H/3D+9f//8R1mT73Y3W4ej25BG9cuAjy5BAqSKY8A858HnIJsTiKJ5eI+ngspPiC3kAeJgOXWAZqSMLF0iK6RIe8Wy2aMGb26CZnXlnlitVXdl86K2E2I+waTFa3P1IaWdU+xmzxjB41rACGKdbEiNmTpo+oyxLKW6Z3zpsx0mKRCsKR5NgZ48aXFBeJJmeR0XhKdTQOKc0eP2rMww899bO7N8xzqkPEnKH1M+ffsO3QojmbZ8Qtcm6uqtD/EVS7w+3yuUqzzUKRKycXCr2VeeXV4jOpjwQ5W5It1aMuGzPx+s62Km++ASFJyS+sCCerqxdMm9hYlZP9htG9fNWD9786b/LlTW4hr6QoKz2GiEFXIAYNIddh79hVbgwNMqiRUCwy5iaivseUAtlmBWapCgz+YRqmD9rTgn3gORITJpusg2SINS3zB57bMnQgpo4Mw6QbDiy5auWUiZe//yukq6ZRdZ3r75y69cq2sYteeHB7z4wqekmT1ze8qX368g6Xu9xtKYjEOxdVDvWUOIpqIj5vkXPYsBkzu7ctXzGsIR7tnL1xXsswr6el9dLJ1aFCp8NWUlYV8/pikVlXHrxnVbfYuuzyJQdumNSYN3zFrmff62mfefnGqXeu76xL5lTN6Nn+4AuL5tPftl86e3hzRbDY6bAYjeZ8zCPkLXe7W0I2e3l5dai+FqmIMzhkQtuCS0a3BgMlVrPJ46ofMbTKbvN4orWFRagDJSdNrBkRCnH+jKyIKMzuGGESHXFX1wbwrFQiS+EcJSRUgomjOO94Zp1Gwe6ptyuaPVhkZ0cymmCsgSZGXjFu7lCtt27VwgSoiACeOWMLDAbYG01KpLiu3OAJ6mdM3ZWsqK0QtIvu/3qzbKr2lLTvnD5zrz+Q1Cn927BVDas93KIVJLVkBBmPesxmrGUMq6UPWwSJAY4VYC3TWqK9nKkzCrvzxzidV+0oE1iQWwesdgmsjhgzlyjEqzCzbsRi1e0/gBKO866MXoTpLCimHHILYgXrCtQSgn7R7mD3LpBezx/qyu949nBHvmto/rDbfkL/1hoKjRwZCrXC6HmtrfNaBU9lw5DqshmpLY+C75FH6AePPkY/eOQR8KU+rKiZWVo1pFGuxoEYUb1vWCjvilfoF/QE/eKVtQWllUXrZtTNKDn03/Nks9kGDYXT69qWL2+rmVIn0jOT/vxkycz62LyYaMh3VeZ3dORXuvKHgRJqxeJbW/VzKDS8rHZIQ3B4alnXgctWHOzqOnjiYJdwb03JxOHlDUJ7qCVUnUg9Fe8srq9b+uzGKVM2/mop6n/hkb4Z66oDC43whj07Rx4/pG75HcurJ4Wa6bU5CypCsXlsfSK/Znq6RnwkjuPBjDBM7RX5loUwHDw23VzOu81hU2VPRscKRh1x/aE0ze63e2sA5t03f4w2LwZqzega+bUtW16X7kMaoc7bPX/+7nmw/D6Mlo7Os/ttIS8tm3vPnGjnj0YfPeKpqfHAx5uef3HTZdU/Ptq5a+6cnZ1/qA0dZ/FEryPbP8B5nU/KM3ybb+Lo+jrbxkF+yPZyHBB3IamOOxRkxpn9GyTW7wWSXX76Hn3P35UMwHLZ1DC6wSSr3Kx+VN/iOcrs6Kl9LAF9H/z8hR1Sqc9XKhHdrvUCcqnWgT0WByFG0WTMiduMEHUIt8Ga1Od0O6wULBTDggVWpv4u5NPtqc9hDb0dLt+d+iL1xW61lb5FD0F56lnw0V/RtyAC4+kH9CFxL/0TTIDI2W/o28t66EvQ0rOMt10ghCpzsO0uMoa3XRUFNU9iKoQKeaBrOEwcMr6F65vtb8TNyLCYcqGzMKaZcMuiBxVo+dXZjdbIHFlWrEU1rjMGWaVX5g11Z1vL8suaK4RTXtlpSa2ylcr/dFpLyz6wFouCS5RcFvr3Yp+vGEZk2wtUsmgRpbTFarVV2MyCgTYU5IqyWlkh2xxVVSV09S/tZW5zn0GRcZ4U5jnzDLtyrT5vcbDYk2PhOMX2R9h+0GDtb9BmCPnezY/0bgfHOgFnLd9TYnsdqPw5PDaPGBZ6xd5+wjRETJ7i8jylIRPW+klmLmHJCmPHOdwqZYTMRqCESyFFKBHf7GKApmAwRdg+U5Ldk8weC5+HZcSftmtm2DQza+q7f4hNeCdZTKhsmcQ6cIH8XHf3c/Qs/ZCefX716ufhjrXv3NvZee87a3fRr3buhKw/wdBO+rRKVj+vJ2LJkefji8+fXd2588RnJ3Z27qRf0dcxuUToXPqfnTAV3tPnB9aJ8L1IE957GY7arSLrVQ/rTKmL72ZqTGs+tUfS+B4m/ezUnn7siD2nCBncrmxSTKp0W53JEw3b8LAw45c+rbj+mh4vNlQ+VlhYRqFzBg9NwM5ORvu4xiniOdXrRKYcSODZqWhn2RLStLOYjCVIsbNwIOCkhD2HXkx5fl1cZChpxLrUoqasioxHxS16iZ4mqK0PowJRAnU/VFUJy1JC4RJ1xRO8DMK0KYebmya/s8bSb0AwqFij4pxQETyNVRLcDtTnDn9X5QnJGajr4H3rYpwblaQJZdwohqdhm5g+MmFPOowc1Wb6oZ7OvHtuO5vVmF+/pwGU6GnYM37Q9DVzFsh3NQWi+qY5Xx8zYaZ6tXo1tseNCAcOQB2tRYA4qAFvPt+jUyFurx+BsAt/Fsrmpk6VNzUGvTnWYcLX+4WyA/6uwIFCs7lwf+rkgQCG/cIwnspfU5pnDIWnS88dSJ3c7/cfKGptLTwglGHwoL9rYG1ynC8gJdh3KqCUZjv15W7JjOyOIM9HBEMJhdhHNGq6+9n0+oFhkLVzdd/q9Ue+PLKenQAb/LfVmSe4dHY9eze8mX64fv2AfTpdFm/pBcWRdFGoXtgtUY9NNsHfvlVmauxAngZBE1dT07fKpd+cq5VhsG2cr7cSUsFtVza2FeOJMjj6gXqIOIw4UGzpCv+mOkomIb6S+jf14vKNQKWBKO+QXKxTKaJbNdv/Z9AWNEIMqyIagXe8EZi2FUNVI8aNjgLnXYifMpyl8hL6JfKeL5dSBc4shRwYCjl+WEu3Tnrl3Zcn0lvh8kmvrFjxypQUYWauU/SlhRxbZXyTypf09CyDM3BmWU9PXyVcAT2TZ0yfTG+lW/EKL+3RXzglRDk6n1dn5ofh46uOgDcIjDWyuiOtjDNLeByCFgcE46whqEtk8N7PmSM2KK7zTYkUeWC/ckoAWMBbcucvdm2/qH3FK0lY+8fQdWfJdRpt5M268//eSG3h1YC3u257eAVvWsuaEaf2rEDIgf2eoj2nhJN0L2vTlO3e6ZPhinfhQ54DvMoauDf1Fm/4V13LeRNfWrNgJQdjEBho6b4S2P/M7IX1MwIKo15IaLSX9mqQ4CdIyBfcayxNen+R29HPz8NA+nrFhNbX29eriQl+EhPqBfcaS8PmqJaWKxbEsyjzcLFVGqJ+ziLsKutBhlWIVHJ4wPgZPveTiQ44mo49ySgg0DCB4OxPA76mg4+eQuGJEYoOIOjiX2+KqyACXjMH5w1QirxhBzGy9WrBP5CLQSW0/BD1U/8hWi5M3L9f+jE9mPoUJtL9ggPaQHCkPmXYovMFDbs2i692BN4gMxqj1Ne0PqKJuGAUBpiUGahTvdBLE+f4MeMLRu6TZAT8M3kYi0jhT8TfGQxzF5pedmJVJRLvv16lF98zkDzGdIwCW90OHIoaQfXjfMQ+6u3TaELUUo8vEGak9moLEgs0mIThBQqW3qdBL7acPetbwJ/lskdp/oS5syE2Ztx8VOQ5jPYgDCVS/E1WFegdjDc5uLY5g+a+Gp6IUO4z1aMYcwLeZEGgCnxmphyhmAWi7zm09ZMjdPfvj8I2mAYlr67qJ/Me/Jx+TA880b23G//kjLvE72HREZGsepX+lT5JLz/6BCSh6PMH5/VpPB2X7f3fADEo6ovYG07uo+JCecJ1UlyiLcgsBpZmMXgs6luVeZErZnxzunVZs8PhE76u7L68u5L+H193f4zQj8LC3LHa/LgvMbNrmPTO2AkTxp45ylcVRNmeAQ5MZp/BhtgQ1nkNQwXUXeJc3+RIhqCG6Oth0GB3sMYH1ZAgcBqleJnHFv1tkv7mpVkPbm0E1AoC0S2TmIMOHqi+JmH4S9d/MofFg2/G4i95YyWcSo8dD7U3AWoT/tjwU0IZ28h47PiSOSwCyutLaS3vPd3fivsxVWa8mPLAyzg9Liu7m7sz+bwDTkt8rXGazJ2XOIJrLLRmytRuXDcauzLXpZR2NcP2qxk2MD8lQZuypntqmmy9TJvZnUA2snUBP1HY3Mgjhbp/HIKnyrA+GjGjClHAii+wi+VccsyZSpfT5VPn7IR9Nz733I2Ys0qYNFl7DB/AXVOPrd0FWSnnc2B4jjlTMTxbwPBMPsmWEJIJH8QdMucl9KR2Uj65IEVgr9aLY4Vz1EAGuBQpwsFi48WuBvI10Q82k3GZ4pHionAQZ7CQIZhHEFd1HrMLO0w4iKwJzALi8JjKcIJxDwMTTn34y18E7ZOa0f4/PnTz6UcXrZc3DVs69i8pzfLO+KlLnljF4pRSvP8k1L1xzNP0b1X0jH3zqyDeugvsdPKlrz48Dt+3vDP215euPbKtFBR8SFNMJxGxrZLGW8OWpcb87tL1ZPjDOoG1j89EfzrFWVRP+vC9PsKd3RjSzBASBtZnKtczy9gq5/wgfQGHlN7vM6fXizCM/gu2a9QCa6UH04HuvlE4Mdgw/H33mjW718j30zLEJyLsSZ3Sry0L2VOcPvTwGpbkPG6icj7L8IW7kg1emTL3HUNVCa+QPLceEYnTsSJ3IBu8GAnLisuUdN4ZphzXmTJJ4475gqs/7f2pM2Vd/Mhc8Hi4EEK1Ecmzz8TSCPu48Bj8B2nnRuZHmRFDNKGrA/ycwMqx5zgI/A3QX6T6ZZ9OjCVOm5lE0nM9yzVK5oTKCB0j4kRlumgJ12d1cRiJNUHajsVtTNw+OWizT1UPb2xdVxV67vI9pwolwvWyHWWejYfD1Us3nNrT0srXpqaCKqf9Ye1Wxr+DbGEEA5ERbCdNRFquHEwmP207mqQN9CS8Bm1tnyaPt83e20/2yruSx/ARjKcN4GaPjuNdW2rHXiAMkIHJLpnRKPVc/4t6RWS9Qtym+Af5f+UnuKwRsPCoByQCn1PLLJjFXFTpL+THqYVaOmCWBrO4HRIX2B8UTX8H1zySWyS1EplFf8G8UGHWLGqRH++gv8B3O+BzrssnFFYPxuiYgASEiFRvCllNr8xksYDUJsHTMSxJsHRYFyMm41YCIYE/jQlsDKZ6B3wJRKwe88bEGSxyd9o+Pg8BVyhWTX+Gc5st0syzNE+QNe6STIwiq7zGSBmbAWeJoDsecx5fwG5kTfm2/ucjQZzZNShz4lwTJBl9jx3xsM03+D48SB/8vnthgEylMqE+7cLAgAN0xgP6e0K8awRuB+G2DFbnb+1iZ5CF4ZisG2T4WbeNMEMJs5718TiJObNo6dUu4qM0jvD8GX4FLsg/zASuzRcdVI4YZYownCtKYxlpmQI5K2NWwEyZqOExxfhcwQeYituv2xAydnCGM8U6FjN5Lqev4LEKCiOAIRBEfIc3iF/6cJBv+vQn/eQnn96kcODglnD9mnrzbvqvX5bSf0Ju6S8hm9FEoq97Ja3FMXxOAwBDq8Eg4IIBFJCwesz1FnDe8NZi43SHX0U5vLGqfVypDgoCVk3HLmBmGyZH8OJ2bzzsqHSlMeIc9pQPYI9ej+8rPe1JSDJ10If1/JI5HOnQ+R1lCtxfn/EqI7fgmdjWlkfl8hqBGDECFy3zLmf6JzNHpN6bKwToXIGNEMV1xy1yKMD38Qfn2bDymZgo5c4cePJFue86MKjFNP2MZbNhuUpNsdXI8gaUm/q6TY+5iY84kxBNyGrTs5nVLRCJc41F4apFIjN1+4hYX1/fd4TZo9hU0vT5fBZLi/80zjRNAdFyj7pAXUCq+M6K6ldUixpkRDFoCQTlINMf48G4HIuLcQeictwh2h1+h2rHseaT216vLmikv6tptm95Y4Sz5Y0ttqZa+rvGTwyGTxqhrrbJtuWNkdaRb9xqb6qFOhZNN3H4FU7fam+uOZdSzyA3O4E5NNfoST/RM771dcy4jGM3ucDGYEV9/rwvH4Ab+VWI+fnOaRyUC7+BkOo3n96yaYNweHwf4aHUmPHf+iAidWTL6c3jU2M2bGJX4fCGb/GH4nNypTyjVyCgstXPlrusc4eUfmEsCGGYsEkj4ezRY/XF/SaTwWx1n5srOo8y6SyRxWZEvUx0qGbceoBz8ZTsyxH965GBbxIyOK+7D4n48AwrnmTwftD+QyYtkiELm576dyB6iSkuIAa+nyCDvp/A0tLfT4jAHbwN34u5ZBDm6kbwNNalQRc7x4AAeEZfsXj+OgO6vKoixyOWv4LaFcNcjqnG84rxpH+DihPS4CoMFAm82rj0M0XzL1Gw/0UtUzy+hO1mrR+oxoXzznLhvJMym3TI1zy2MDK3C+edsExH+720V9v7rQlXz4vpSzJooWk5dl55ju/+wodx1m995ZMazFsvKOjskfP0yPPKCH93GfrONa4qB9+uZkDLfqUQjnIPqO8pH170t7ffsf/n825aUlHkLCyKjC52vmUyj5n+fXUSGhqndSdGXrR/XEFBia+k2Du0umpkg7fUaquOpH3hdZ1Xn9Xsp+K8YYYKjrknqRuHzQ0nL0jLEhpZ2hSOvESYwZ6lZcyHupk9I2MHYUzHTOz4RhgVg7AFj6DPb0HNLlzMggqjGimWeQe00/85UamlPuvgtkitYwTeybwu3I7JE6bDvO7/xPrkKtvYTgbTQFsEexnEW8CF0horv35CU/DGZ1+YcP/9E1741caK5gk4ZZeO+c1r97YMHXP33WOGttz7+ktj2Jwgl8BJdafixhWsfw3F7F8iqBbRwQzaQeGyE/Qo1Jw4Kh09cfToCag52/U1kK/lhm3IoRu2QQO8to2+Rl/bBq/RshaJtDCdjOunaTtQEdv9MQpRFLSoxX3LgTjKtTREubBJNxIpiCqsnX0oqges7lEm33UTrcxhhFnz8IRU9lwKbtMfMPp+ux6lP1wP2w+Xn/p3JWvkO8os+4EyLSj+g+oPldoHL8+lOw50/lDJOH1e7mSJGIqm56iMcgzLNRkF5rRgCqIIY/Y0k8CtngyARYJyaEfbc0v6OR7LCWYdpb18CrMPyujxHW0Tqabfp/0ldFzP4z7Vg3OVL8iLfMf752wPIuuTjCzycgdl0Weq5w4WHD0kPsnHrk4mV48dt6Il3ODzNYRbVozjMcB7SsaVxzRSdogDoUEYx/lRNrPSQBrEeYnMv9kT5Fv1wC0jDLgljS2shmHdKdLtDxcxNS/FxaPE51EfSW6Nr1lTPvfiem0wd+K2hguHlDkEurFzZE+Uf1qncEW4j583nwb76c1slxR5h3TeGGq6J6rG6SbTNwQiz8I2FBAn99f1cJRUVBt3QfF5mCmOQWglFOlBH8qkZV+uXr1w6sqFf/0NnQbk+iVz6uouXbt96YK3FG3smHuW3ZinFt20+r6nhV8NH9daWkpb6PFJU28jaTs6kTP7wz4xrHriYYsv7pFna19oFTRRwS6oXnKFikvOtM1b49wim2EQ6+eMYwmYgswRk7MLOJCWxzhxe/s5Vko6Xel7U0j0phaAm00QI/ezZv3KeIOR5HB/ZxuOIMp+i8ljYR8asNk2BEC3DKt+I6BKr+nKDWjf8DHTzS2gm5i1bzROhPFeThNjiqVnDC9shEHjLErjagYztmnny0kz+Y/zZZgjqKgjuLtlMF4j5EONMEJ1jIAyCNRAvhQcAY54cIQQCKoO/MsXWSK8RVkXR3jmCeP5QhnGYaAM8iGuloEazzcEK/HGEccMJYdaIyvMXdNRI48QkDiPEPBtScWkIuboyMdZd6GIzBPFLNnkEsjLkGhT8n1FhcMiFUEAWXbkWnL9geJRzsJch5xX6nCGC8XcGkOhrSJ/Yo9k9Ug2Q/OkZqUgJ2R3j3FdtuidJwO1bl+NSynJrk2Wx3ODxV6Lx2MszbYmY0PlvOxQgbMsz+fMcjsNhaFgnVLamD8kWIUKowEMcpYMTtc1726SsrJHubPUPIMh35rbHBTyLaPrvEaDx1BTWyY4Suoryk2CRxr6LcH9L0mxIMPum/zHp7LCRQaLTSyNueOq2ZdndfogS/VnNcdkVbD7so0VTtHuNNqz1ycFk5wlGLN8pc0em9VkMIH/ZsgxGBTVLDrkItvQfHOJN+AwmbPiVos9x1SgWixyvsliLXQ2O2srKt2uSqfRPKW2oNWUZcpxlIcWz/gJ7X+mPOeWEa3DSgqiLXK2Uc01Fxepdq9FrjMWZEuWxpGjyzplh8mpcBm6V3SrC6SMDfJbPH6Az/t+fcMNv75BFAdfpJM38Ougv7SfJLO79DJUxzlvIF9rYq84YK/BGwNbKyRqArEXUb8vwd6REnwvC+ORa/BYA+lLcDtOIr3PJXD+wqL1PAfbACpILRmmf6+sey4hJ/Po3y2nv5YxIWOLDYd0VHl6wUtpYodI08i/Ru4njWOZLtwYuPqmrh083KfvRQrJtMPI2LXeB5jc6NIkn3fdGIZ8oY5WB7WP29H1gHftWIyw87QHMoRZGdAtzv/2PS1LMps7me+4gejSpI8wBV5EAU55jMhAgmlOeFCSCQHnYXqY41ucY4BGcvX9EKOIOjEEWyS+Y+rzBiEaDCj5oDBfLodubiyDcyYaAp9igf/0+8EP3MtP/G0M2xGjBxPOTv9Ef5c/X9Dy/RjKdya0p6KBQNSvatSBtDPX3xWAclG2jZu+8QyNTkx2xaBNSzjzMbH+VheGOp2J1L/wJX+UkMHfEo4mE0k7mUeW8D2jtE9gC8SZU6DHNBDDfGzZ8A6KiHLlf2C0mdUHrxlQH/D8ueCqDgx1Mpoe9rGN/Sjx0kG2m5MOMiealD4N+tJq2vmX+fq484nwAJKqD9L3Y9Z5wZeMPpCeJ3j7wJ5TkJk2OJPoB6f2pMXKmeQgZTiZmTsC9skpNaH08v00ou/Lh42CiGzXwbZHM2tWfsS3plXMFmh3v84k6fH/Hsc9A/Cnb0TJPdEWoe+kwGcPqoOzerYxkxi7F36W3sETYBWuqZ/imvLwvRYH9w6Iu8BhYh7XgzrZFrb5TC2Q6WaZ3rGMPkCX0AeW3TH2lR5NS/edpvW8Qn+kd9OROY/+9s1H5rRdYoF/aQ+c64UHNJptWSqm0o0W0nOCkMk4H3SLVyX75tdcCqytwyESZFt85UFlIMIcDwR9ujUsEg+YeC3xoUtwtwjML47dFah2m98bCOreoI48QeWbBG/neucuCkQC18+lX+28h/5rzg14s3iOJ+9t9rS39D68XfrY5yB9/thSDO4qSWk7U8Pn/mNT5+M/aarY8mu+qTCybRnt38rzS5x49MpbNl/52HH9bivAsgmtmGTqgiMg6HHXY1aY5fX6He0/0tmh/WLzwpXhzsTcWyZnbF3aoL1swZNGC1nTTXps3TOeInHGwMaQMgSAAQ7AuI09bPJWAclCLcHqUO3EIb9+371H6eX0SfrXV1cJpOv5S6D+sBgOU7LqVSiBabDt6Ocnnn+a/m06r8OrOBca+f8FUcr9zjhX5CTaGg8rAjOvBoRg2AXumDR1z5o1UyJzws/2Wr98up88/aW11/EOFB8XtTVTBDJlTXhOhJKpBYfoF0PoF1AwBAoObT50KO3TLGJLB++pySS9p3buO2pHxoLDDZ+mwWE13SeDzpxAZc6MOn1XPKTfy+gJvL+zM9+Z6T/mLsDwltnSGbHWQ6y/+TduhNfNyHbRQPTIoh//PCIKMe654JHIOroVqtahHh25Eqro1nXHhMdT77yTOpE68U7qHeFx+WN6zx/onvffh4V/EFENodekboRb6DrhGrgx8917poyMP4SnGFCFH5TJsWOo7g96Mb0ZN7h++YPfFnklL8zjWKaK386MVrD6wbK07x7X1ezI8CuZ/cmIs4vtZnOc9nBvczbv1EAQYZk9hfq43cFs1gof036udnWxweCBueOHzLphj77r20f0O8q4MQcyLpaBpP/TkKZrF3Xq8ZSH4cLv9arJBLLoO7029Z3hgId9i8x2j+3hWJhv3NnjulJSnv5M2Wp31PNHkqPebhl4xp+EM0/s4njohol/27r1b3Q/vZ3uZyGxy+LKN+bn/Z3+NXb1xNEmk6nI6cz95SU//uKiXK2kPLiJPvPIuFunjA6HyhSn0vPLn0OgK8epuWrCd9Dr3+l7JBEO5Lvlx359GGZfXaRqg7OGiby4s8vykRcX5qlbTWaTIbvYbHPlOpsacj6qcTVYJ8/GEk3NJZGs3GDbqFxwRvxh57xZYduYQDg3MCWZc15fidybtIjNdh//TwL4ZrzoyzARWxxn7y6hZFffxcpwWk3v/+yvlChLzpyFiz+Fx+THaDUcYwccP/s8HcUIiPR6apQ45+yOY8c4DqVtSen95cHaJhPPusJznmcmV3XYyuQx/Pz/AAfdhq542o2QsWrDMBCGfyVOSjOUDn4AdSlJiY1sMCTZ0hQHQqcM6RyMahsSKVj2EChd+wgd+wZ9s7xDz4pKl0IrkO7T3a+73wZwhU8wnNcNHhwzDPDiuIMLvDvu4hYnxx4G7M5xD9fsyXGf8q+kZN4l3e7tq5YZfDw77tDcN8ddPOLDsQef+Y574Cxx3Kd8gQU0DjiiQokcBWpwDJFhRDGGQIQEY+IV6SQU0RwGezR0GpvBQh+OVZkXNR9mIx6LKBnzlZaKz82+MUaSZGmV0k7JqJOit1hKJasy04p4TcWcmu6wJRHWMm92W4LUimsbK1JIayskYxwz2r81PlciTBBgSvv7M5BqVae6yiWPQ8Fn/McAXaJJMA1a8/9wu7FFQ2Vtf4mwE0IbW2fYyMqUWnEholAIwf/u+QXtVlqxAAAAeNpt0meTFVUUheH7DhkJEgQJgpIFhdvn7NM9gxKGCZKzKGZyUHJGySAgSq7i5wrFfYdPdFXX+tRP9V61Wl2tt8//rdbh1vueV29eWl2tYXQxjOGMYCSjGM0YxvIB4xjPBCbyIZOYzBSm8hHTmM7HzGAms5jNJ8xhLp/yGfOYzwIWsojFLOFzlrKML/iS5aygTUUiExRqGrrpYSVf8TWrWM0a1tLLOvroZ4BBvmE9G9jIJjazha1sYzs72MkudvMte/iO79nLD/zIT/zML/zKb+xjPwc4yCEOc4SjHOM4v/MHJzjJKU5zhrOc4zwXuMglLnOFq/zJX1zjOje4yS1uc4e73ONv7vOAh/zDI/7lPx7zhKc84zkveDnqwsljg1W7bVZmMrMZZjFrszG7zZ63mfSSXtJLekkv6SW9pJf00pBX6VV6lV6lV+lVepVepVfpVXpJL+klvaSX9JJe6njZu7J3Ze/K3pW9K3tXbg9915id/wid0Amd0Amd0Amd0Il3TueesJ+wn7CfsJ+wn7CfsJ+wn7CfsJ+wn7CfsJ+wn7CfsJ+wn0h6SS/pZb2sl/WyXtbLelkv62W9rBd6oRd6oRd6oRd6oRd6oVf0il7RK3pFr+gVvaJX9IperVfr1Xq1Xq1X69V6tV6tV+s1eo1eo9foNXqNXtPxijsr7qy4s+LOijsr7qy0h75rzG6zx+w115l9Zr85YA520l0Wd1ncZXGXxV0Wd1ncZama1x+EcTsAAAAB//8AAnjaY2BgYGQAgosrjpwF0ZcUq9bCaABTzgdAAAA=") format("woff"), + url("./Genericons.ttf") format("truetype"), + url("./Genericons.svg#Genericons") format("svg"); + font-weight: normal; + font-style: normal; +} + +@media screen and (-webkit-min-device-pixel-ratio:0) { + @font-face { + font-family: "Genericons"; + src: url("./Genericons.svg#Genericons") format("svg"); + } +} + + +/** + * All Genericons + */ + +.genericon { + font-size: 16px; + vertical-align: top; + text-align: center; + -moz-transition: color .1s ease-in 0; + -webkit-transition: color .1s ease-in 0; + display: inline-block; + font-family: "Genericons"; + font-style: normal; + font-weight: normal; + font-variant: normal; + line-height: 1; + text-decoration: inherit; + text-transform: none; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + speak: none; +} + + +/** + * Helper classes + */ + +.genericon-rotate-90 { + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + -o-transform: rotate(90deg); + transform: rotate(90deg); + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1); +} + +.genericon-rotate-180 { + -webkit-transform: rotate(180deg); + -moz-transform: rotate(180deg); + -ms-transform: rotate(180deg); + -o-transform: rotate(180deg); + transform: rotate(180deg); + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2); +} + +.genericon-rotate-270 { + -webkit-transform: rotate(270deg); + -moz-transform: rotate(270deg); + -ms-transform: rotate(270deg); + -o-transform: rotate(270deg); + transform: rotate(270deg); + filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3); +} + +.genericon-flip-horizontal { + -webkit-transform: scale(-1, 1); + -moz-transform: scale(-1, 1); + -ms-transform: scale(-1, 1); + -o-transform: scale(-1, 1); + transform: scale(-1, 1); +} + +.genericon-flip-vertical { + -webkit-transform: scale(1, -1); + -moz-transform: scale(1, -1); + -ms-transform: scale(1, -1); + -o-transform: scale(1, -1); + transform: scale(1, -1); +} + + +/** + * Individual icons + */ + +.genericon-404:before { content: "\f423"; } +.genericon-activity:before { content: "\f508"; } +.genericon-anchor:before { content: "\f509"; } +.genericon-aside:before { content: "\f101"; } +.genericon-attachment:before { content: "\f416"; } +.genericon-audio:before { content: "\f109"; } +.genericon-bold:before { content: "\f471"; } +.genericon-book:before { content: "\f444"; } +.genericon-bug:before { content: "\f50a"; } +.genericon-cart:before { content: "\f447"; } +.genericon-category:before { content: "\f301"; } +.genericon-chat:before { content: "\f108"; } +.genericon-checkmark:before { content: "\f418"; } +.genericon-close:before { content: "\f405"; } +.genericon-close-alt:before { content: "\f406"; } +.genericon-cloud:before { content: "\f426"; } +.genericon-cloud-download:before { content: "\f440"; } +.genericon-cloud-upload:before { content: "\f441"; } +.genericon-code:before { content: "\f462"; } +.genericon-codepen:before { content: "\f216"; } +.genericon-cog:before { content: "\f445"; } +.genericon-collapse:before { content: "\f432"; } +.genericon-comment:before { content: "\f300"; } +.genericon-day:before { content: "\f305"; } +.genericon-digg:before { content: "\f221"; } +.genericon-document:before { content: "\f443"; } +.genericon-dot:before { content: "\f428"; } +.genericon-downarrow:before { content: "\f502"; } +.genericon-download:before { content: "\f50b"; } +.genericon-draggable:before { content: "\f436"; } +.genericon-dribbble:before { content: "\f201"; } +.genericon-dropbox:before { content: "\f225"; } +.genericon-dropdown:before { content: "\f433"; } +.genericon-dropdown-left:before { content: "\f434"; } +.genericon-edit:before { content: "\f411"; } +.genericon-ellipsis:before { content: "\f476"; } +.genericon-expand:before { content: "\f431"; } +.genericon-external:before { content: "\f442"; } +.genericon-facebook:before { content: "\f203"; } +.genericon-facebook-alt:before { content: "\f204"; } +.genericon-fastforward:before { content: "\f458"; } +.genericon-feed:before { content: "\f413"; } +.genericon-flag:before { content: "\f468"; } +.genericon-flickr:before { content: "\f211"; } +.genericon-foursquare:before { content: "\f226"; } +.genericon-fullscreen:before { content: "\f474"; } +.genericon-gallery:before { content: "\f103"; } +.genericon-github:before { content: "\f200"; } +.genericon-googleplus:before { content: "\f206"; } +.genericon-googleplus-alt:before { content: "\f218"; } +.genericon-handset:before { content: "\f50c"; } +.genericon-heart:before { content: "\f461"; } +.genericon-help:before { content: "\f457"; } +.genericon-hide:before { content: "\f404"; } +.genericon-hierarchy:before { content: "\f505"; } +.genericon-home:before { content: "\f409"; } +.genericon-image:before { content: "\f102"; } +.genericon-info:before { content: "\f455"; } +.genericon-instagram:before { content: "\f215"; } +.genericon-italic:before { content: "\f472"; } +.genericon-key:before { content: "\f427"; } +.genericon-leftarrow:before { content: "\f503"; } +.genericon-link:before { content: "\f107"; } +.genericon-linkedin:before { content: "\f207"; } +.genericon-linkedin-alt:before { content: "\f208"; } +.genericon-location:before { content: "\f417"; } +.genericon-lock:before { content: "\f470"; } +.genericon-mail:before { content: "\f410"; } +.genericon-maximize:before { content: "\f422"; } +.genericon-menu:before { content: "\f419"; } +.genericon-microphone:before { content: "\f50d"; } +.genericon-minimize:before { content: "\f421"; } +.genericon-minus:before { content: "\f50e"; } +.genericon-month:before { content: "\f307"; } +.genericon-move:before { content: "\f50f"; } +.genericon-next:before { content: "\f429"; } +.genericon-notice:before { content: "\f456"; } +.genericon-paintbrush:before { content: "\f506"; } +.genericon-path:before { content: "\f219"; } +.genericon-pause:before { content: "\f448"; } +.genericon-phone:before { content: "\f437"; } +.genericon-picture:before { content: "\f473"; } +.genericon-pinned:before { content: "\f308"; } +.genericon-pinterest:before { content: "\f209"; } +.genericon-pinterest-alt:before { content: "\f210"; } +.genericon-play:before { content: "\f452"; } +.genericon-plugin:before { content: "\f439"; } +.genericon-plus:before { content: "\f510"; } +.genericon-pocket:before { content: "\f224"; } +.genericon-polldaddy:before { content: "\f217"; } +.genericon-portfolio:before { content: "\f460"; } +.genericon-previous:before { content: "\f430"; } +.genericon-print:before { content: "\f469"; } +.genericon-quote:before { content: "\f106"; } +.genericon-rating-empty:before { content: "\f511"; } +.genericon-rating-full:before { content: "\f512"; } +.genericon-rating-half:before { content: "\f513"; } +.genericon-reddit:before { content: "\f222"; } +.genericon-refresh:before { content: "\f420"; } +.genericon-reply:before { content: "\f412"; } +.genericon-reply-alt:before { content: "\f466"; } +.genericon-reply-single:before { content: "\f467"; } +.genericon-rewind:before { content: "\f459"; } +.genericon-rightarrow:before { content: "\f501"; } +.genericon-search:before { content: "\f400"; } +.genericon-send-to-phone:before { content: "\f438"; } +.genericon-send-to-tablet:before { content: "\f454"; } +.genericon-share:before { content: "\f415"; } +.genericon-show:before { content: "\f403"; } +.genericon-shuffle:before { content: "\f514"; } +.genericon-sitemap:before { content: "\f507"; } +.genericon-skip-ahead:before { content: "\f451"; } +.genericon-skip-back:before { content: "\f450"; } +.genericon-skype:before { content: "\f220"; } +.genericon-spam:before { content: "\f424"; } +.genericon-spotify:before { content: "\f515"; } +.genericon-standard:before { content: "\f100"; } +.genericon-star:before { content: "\f408"; } +.genericon-status:before { content: "\f105"; } +.genericon-stop:before { content: "\f449"; } +.genericon-stumbleupon:before { content: "\f223"; } +.genericon-subscribe:before { content: "\f463"; } +.genericon-subscribed:before { content: "\f465"; } +.genericon-summary:before { content: "\f425"; } +.genericon-tablet:before { content: "\f453"; } +.genericon-tag:before { content: "\f302"; } +.genericon-time:before { content: "\f303"; } +.genericon-top:before { content: "\f435"; } +.genericon-trash:before { content: "\f407"; } +.genericon-tumblr:before { content: "\f214"; } +.genericon-twitch:before { content: "\f516"; } +.genericon-twitter:before { content: "\f202"; } +.genericon-unapprove:before { content: "\f446"; } +.genericon-unsubscribe:before { content: "\f464"; } +.genericon-unzoom:before { content: "\f401"; } +.genericon-uparrow:before { content: "\f500"; } +.genericon-user:before { content: "\f304"; } +.genericon-video:before { content: "\f104"; } +.genericon-videocamera:before { content: "\f517"; } +.genericon-vimeo:before { content: "\f212"; } +.genericon-warning:before { content: "\f414"; } +.genericon-website:before { content: "\f475"; } +.genericon-week:before { content: "\f306"; } +.genericon-wordpress:before { content: "\f205"; } +.genericon-xpost:before { content: "\f504"; } +.genericon-youtube:before { content: "\f213"; } +.genericon-zoom:before { content: "\f402"; } + + + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/header.php b/srcs/wordpress/wp-content/themes/twentysixteen/header.php new file mode 100644 index 0000000..a5cfee6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/header.php @@ -0,0 +1,106 @@ + + class="no-js"> + + + + + + + + + + +> + +
+
+ + + + +
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/image.php b/srcs/wordpress/wp-content/themes/twentysixteen/image.php new file mode 100644 index 0000000..620b47c --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/image.php @@ -0,0 +1,118 @@ + + +
+
+ + + +
> + + + +
+ ', '' ); ?> +
+ +
+ +
+ + + + +
+ + '', + 'link_before' => '', + 'link_after' => '', + 'pagelink' => '' . __( 'Page', 'twentysixteen' ) . ' %', + 'separator' => ', ', + ) + ); + ?> +
+ +
+ + %1$s %3$s × %4$s', + esc_html_x( 'Full size', 'Used before full size attachment link.', 'twentysixteen' ), + esc_url( wp_get_attachment_url() ), + absint( $metadata['width'] ), + absint( $metadata['height'] ) + ); + } + ?> + "%s"', 'twentysixteen' ), + get_the_title() + ), + '', + '' + ); + ?> +
+
+ + _x( 'Published in%title', 'Parent post link', 'twentysixteen' ), + ) + ); + // End the loop. + endwhile; + ?> + +
+
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/inc/back-compat.php b/srcs/wordpress/wp-content/themes/twentysixteen/inc/back-compat.php new file mode 100644 index 0000000..e8c2e34 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/inc/back-compat.php @@ -0,0 +1,78 @@ +

%s

', $message ); +} + +/** + * Prevents the Customizer from being loaded on WordPress versions prior to 4.4. + * + * @since Twenty Sixteen 1.0 + * + * @global string $wp_version WordPress version. + */ +function twentysixteen_customize() { + wp_die( + /* translators: %s: The current WordPress version. */ + sprintf( __( 'Twenty Sixteen requires at least WordPress version 4.4. You are running version %s. Please upgrade and try again.', 'twentysixteen' ), $GLOBALS['wp_version'] ), + '', + array( + 'back_link' => true, + ) + ); +} +add_action( 'load-customize.php', 'twentysixteen_customize' ); + +/** + * Prevents the Theme Preview from being loaded on WordPress versions prior to 4.4. + * + * @since Twenty Sixteen 1.0 + * + * @global string $wp_version WordPress version. + */ +function twentysixteen_preview() { + if ( isset( $_GET['preview'] ) ) { + /* translators: %s: The current WordPress version. */ + wp_die( sprintf( __( 'Twenty Sixteen requires at least WordPress version 4.4. You are running version %s. Please upgrade and try again.', 'twentysixteen' ), $GLOBALS['wp_version'] ) ); + } +} +add_action( 'template_redirect', 'twentysixteen_preview' ); diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/inc/customizer.php b/srcs/wordpress/wp-content/themes/twentysixteen/inc/customizer.php new file mode 100644 index 0000000..3709358 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/inc/customizer.php @@ -0,0 +1,1259 @@ + $default_background_color, + ) + ) + ); + + /** + * Filter the arguments used when adding 'custom-header' support in Twenty Sixteen. + * + * @since Twenty Sixteen 1.0 + * + * @param array $args { + * An array of custom-header support arguments. + * + * @type string $default-text-color Default color of the header text. + * @type int $width Width in pixels of the custom header image. Default 1200. + * @type int $height Height in pixels of the custom header image. Default 280. + * @type bool $flex-height Whether to allow flexible-height header images. Default true. + * @type callable $wp-head-callback Callback function used to style the header image and text + * displayed on the blog. + * } + */ + add_theme_support( + 'custom-header', + apply_filters( + 'twentysixteen_custom_header_args', + array( + 'default-text-color' => $default_text_color, + 'width' => 1200, + 'height' => 280, + 'flex-height' => true, + 'wp-head-callback' => 'twentysixteen_header_style', + ) + ) + ); +} +add_action( 'after_setup_theme', 'twentysixteen_custom_header_and_background' ); + +if ( ! function_exists( 'twentysixteen_header_style' ) ) : + /** + * Styles the header text displayed on the site. + * + * Create your own twentysixteen_header_style() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + * + * @see twentysixteen_custom_header_and_background(). + */ + function twentysixteen_header_style() { + // If the header text option is untouched, let's bail. + if ( display_header_text() ) { + return; + } + + // If the header text has been hidden. + ?> + + get_setting( 'blogname' )->transport = 'postMessage'; + $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; + + if ( isset( $wp_customize->selective_refresh ) ) { + $wp_customize->selective_refresh->add_partial( + 'blogname', + array( + 'selector' => '.site-title a', + 'container_inclusive' => false, + 'render_callback' => 'twentysixteen_customize_partial_blogname', + ) + ); + $wp_customize->selective_refresh->add_partial( + 'blogdescription', + array( + 'selector' => '.site-description', + 'container_inclusive' => false, + 'render_callback' => 'twentysixteen_customize_partial_blogdescription', + ) + ); + } + + // Add color scheme setting and control. + $wp_customize->add_setting( + 'color_scheme', + array( + 'default' => 'default', + 'sanitize_callback' => 'twentysixteen_sanitize_color_scheme', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'color_scheme', + array( + 'label' => __( 'Base Color Scheme', 'twentysixteen' ), + 'section' => 'colors', + 'type' => 'select', + 'choices' => twentysixteen_get_color_scheme_choices(), + 'priority' => 1, + ) + ); + + // Add page background color setting and control. + $wp_customize->add_setting( + 'page_background_color', + array( + 'default' => $color_scheme[1], + 'sanitize_callback' => 'sanitize_hex_color', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'page_background_color', + array( + 'label' => __( 'Page Background Color', 'twentysixteen' ), + 'section' => 'colors', + ) + ) + ); + + // Remove the core header textcolor control, as it shares the main text color. + $wp_customize->remove_control( 'header_textcolor' ); + + // Add link color setting and control. + $wp_customize->add_setting( + 'link_color', + array( + 'default' => $color_scheme[2], + 'sanitize_callback' => 'sanitize_hex_color', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'link_color', + array( + 'label' => __( 'Link Color', 'twentysixteen' ), + 'section' => 'colors', + ) + ) + ); + + // Add main text color setting and control. + $wp_customize->add_setting( + 'main_text_color', + array( + 'default' => $color_scheme[3], + 'sanitize_callback' => 'sanitize_hex_color', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'main_text_color', + array( + 'label' => __( 'Main Text Color', 'twentysixteen' ), + 'section' => 'colors', + ) + ) + ); + + // Add secondary text color setting and control. + $wp_customize->add_setting( + 'secondary_text_color', + array( + 'default' => $color_scheme[4], + 'sanitize_callback' => 'sanitize_hex_color', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'secondary_text_color', + array( + 'label' => __( 'Secondary Text Color', 'twentysixteen' ), + 'section' => 'colors', + ) + ) + ); +} +add_action( 'customize_register', 'twentysixteen_customize_register', 11 ); + +/** + * Render the site title for the selective refresh partial. + * + * @since Twenty Sixteen 1.2 + * @see twentysixteen_customize_register() + * + * @return void + */ +function twentysixteen_customize_partial_blogname() { + bloginfo( 'name' ); +} + +/** + * Render the site tagline for the selective refresh partial. + * + * @since Twenty Sixteen 1.2 + * @see twentysixteen_customize_register() + * + * @return void + */ +function twentysixteen_customize_partial_blogdescription() { + bloginfo( 'description' ); +} + +/** + * Registers color schemes for Twenty Sixteen. + * + * Can be filtered with {@see 'twentysixteen_color_schemes'}. + * + * The order of colors in a colors array: + * 1. Main Background Color. + * 2. Page Background Color. + * 3. Link Color. + * 4. Main Text Color. + * 5. Secondary Text Color. + * + * @since Twenty Sixteen 1.0 + * + * @return array An associative array of color scheme options. + */ +function twentysixteen_get_color_schemes() { + /** + * Filter the color schemes registered for use with Twenty Sixteen. + * + * The default schemes include 'default', 'dark', 'gray', 'red', and 'yellow'. + * + * @since Twenty Sixteen 1.0 + * + * @param array $schemes { + * Associative array of color schemes data. + * + * @type array $slug { + * Associative array of information for setting up the color scheme. + * + * @type string $label Color scheme label. + * @type array $colors HEX codes for default colors prepended with a hash symbol ('#'). + * Colors are defined in the following order: Main background, page + * background, link, main text, secondary text. + * } + * } + */ + return apply_filters( + 'twentysixteen_color_schemes', + array( + 'default' => array( + 'label' => __( 'Default', 'twentysixteen' ), + 'colors' => array( + '#1a1a1a', + '#ffffff', + '#007acc', + '#1a1a1a', + '#686868', + ), + ), + 'dark' => array( + 'label' => __( 'Dark', 'twentysixteen' ), + 'colors' => array( + '#262626', + '#1a1a1a', + '#9adffd', + '#e5e5e5', + '#c1c1c1', + ), + ), + 'gray' => array( + 'label' => __( 'Gray', 'twentysixteen' ), + 'colors' => array( + '#616a73', + '#4d545c', + '#c7c7c7', + '#f2f2f2', + '#f2f2f2', + ), + ), + 'red' => array( + 'label' => __( 'Red', 'twentysixteen' ), + 'colors' => array( + '#ffffff', + '#ff675f', + '#640c1f', + '#402b30', + '#402b30', + ), + ), + 'yellow' => array( + 'label' => __( 'Yellow', 'twentysixteen' ), + 'colors' => array( + '#3b3721', + '#ffef8e', + '#774e24', + '#3b3721', + '#5b4d3e', + ), + ), + ) + ); +} + +if ( ! function_exists( 'twentysixteen_get_color_scheme' ) ) : + /** + * Retrieves the current Twenty Sixteen color scheme. + * + * Create your own twentysixteen_get_color_scheme() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + * + * @return array An associative array of either the current or default color scheme HEX values. + */ + function twentysixteen_get_color_scheme() { + $color_scheme_option = get_theme_mod( 'color_scheme', 'default' ); + $color_schemes = twentysixteen_get_color_schemes(); + + if ( array_key_exists( $color_scheme_option, $color_schemes ) ) { + return $color_schemes[ $color_scheme_option ]['colors']; + } + + return $color_schemes['default']['colors']; + } +endif; // twentysixteen_get_color_scheme + +if ( ! function_exists( 'twentysixteen_get_color_scheme_choices' ) ) : + /** + * Retrieves an array of color scheme choices registered for Twenty Sixteen. + * + * Create your own twentysixteen_get_color_scheme_choices() function to override + * in a child theme. + * + * @since Twenty Sixteen 1.0 + * + * @return array Array of color schemes. + */ + function twentysixteen_get_color_scheme_choices() { + $color_schemes = twentysixteen_get_color_schemes(); + $color_scheme_control_options = array(); + + foreach ( $color_schemes as $color_scheme => $value ) { + $color_scheme_control_options[ $color_scheme ] = $value['label']; + } + + return $color_scheme_control_options; + } +endif; // twentysixteen_get_color_scheme_choices + + +if ( ! function_exists( 'twentysixteen_sanitize_color_scheme' ) ) : + /** + * Handles sanitization for Twenty Sixteen color schemes. + * + * Create your own twentysixteen_sanitize_color_scheme() function to override + * in a child theme. + * + * @since Twenty Sixteen 1.0 + * + * @param string $value Color scheme name value. + * @return string Color scheme name. + */ + function twentysixteen_sanitize_color_scheme( $value ) { + $color_schemes = twentysixteen_get_color_scheme_choices(); + + if ( ! array_key_exists( $value, $color_schemes ) ) { + return 'default'; + } + + return $value; + } +endif; // twentysixteen_sanitize_color_scheme + +/** + * Enqueues front-end CSS for color scheme. + * + * @since Twenty Sixteen 1.0 + * + * @see wp_add_inline_style() + */ +function twentysixteen_color_scheme_css() { + $color_scheme_option = get_theme_mod( 'color_scheme', 'default' ); + + // Don't do anything if the default color scheme is selected. + if ( 'default' === $color_scheme_option ) { + return; + } + + $color_scheme = twentysixteen_get_color_scheme(); + + // Convert main text hex color to rgba. + $color_textcolor_rgb = twentysixteen_hex2rgb( $color_scheme[3] ); + + // If the rgba values are empty return early. + if ( empty( $color_textcolor_rgb ) ) { + return; + } + + // If we get this far, we have a custom color scheme. + $colors = array( + 'background_color' => $color_scheme[0], + 'page_background_color' => $color_scheme[1], + 'link_color' => $color_scheme[2], + 'main_text_color' => $color_scheme[3], + 'secondary_text_color' => $color_scheme[4], + 'border_color' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.2)', $color_textcolor_rgb ), + + ); + + $color_scheme_css = twentysixteen_get_color_scheme_css( $colors ); + + wp_add_inline_style( 'twentysixteen-style', $color_scheme_css ); +} +add_action( 'wp_enqueue_scripts', 'twentysixteen_color_scheme_css' ); + +/** + * Binds the JS listener to make Customizer color_scheme control. + * + * Passes color scheme data as colorScheme global. + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_customize_control_js() { + wp_enqueue_script( 'color-scheme-control', get_template_directory_uri() . '/js/color-scheme-control.js', array( 'customize-controls', 'iris', 'underscore', 'wp-util' ), '20170530', true ); + wp_localize_script( 'color-scheme-control', 'colorScheme', twentysixteen_get_color_schemes() ); +} +add_action( 'customize_controls_enqueue_scripts', 'twentysixteen_customize_control_js' ); + +/** + * Binds JS handlers to make the Customizer preview reload changes asynchronously. + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_customize_preview_js() { + wp_enqueue_script( 'twentysixteen-customize-preview', get_template_directory_uri() . '/js/customize-preview.js', array( 'customize-preview' ), '20170530', true ); +} +add_action( 'customize_preview_init', 'twentysixteen_customize_preview_js' ); + +/** + * Returns CSS for the color schemes. + * + * @since Twenty Sixteen 1.0 + * + * @param array $colors Color scheme colors. + * @return string Color scheme CSS. + */ +function twentysixteen_get_color_scheme_css( $colors ) { + $colors = wp_parse_args( + $colors, + array( + 'background_color' => '', + 'page_background_color' => '', + 'link_color' => '', + 'main_text_color' => '', + 'secondary_text_color' => '', + 'border_color' => '', + ) + ); + + return << .page-links-title, + .comment-author, + .comment-reply-title small a:hover, + .comment-reply-title small a:focus { + color: {$colors['main_text_color']}; + } + + blockquote, + .menu-toggle.toggled-on, + .menu-toggle.toggled-on:hover, + .menu-toggle.toggled-on:focus, + .post-navigation, + .post-navigation div + div, + .pagination, + .widget, + .page-header, + .page-links a, + .comments-title, + .comment-reply-title { + border-color: {$colors['main_text_color']}; + } + + button, + button[disabled]:hover, + button[disabled]:focus, + input[type="button"], + input[type="button"][disabled]:hover, + input[type="button"][disabled]:focus, + input[type="reset"], + input[type="reset"][disabled]:hover, + input[type="reset"][disabled]:focus, + input[type="submit"], + input[type="submit"][disabled]:hover, + input[type="submit"][disabled]:focus, + .menu-toggle.toggled-on, + .menu-toggle.toggled-on:hover, + .menu-toggle.toggled-on:focus, + .pagination:before, + .pagination:after, + .pagination .prev, + .pagination .next, + .page-links a { + background-color: {$colors['main_text_color']}; + } + + /* Secondary Text Color */ + + /** + * IE8 and earlier will drop any block with CSS3 selectors. + * Do not combine these styles with the next block. + */ + body:not(.search-results) .entry-summary { + color: {$colors['secondary_text_color']}; + } + + blockquote, + .post-password-form label, + a:hover, + a:focus, + a:active, + .post-navigation .meta-nav, + .image-navigation, + .comment-navigation, + .widget_recent_entries .post-date, + .widget_rss .rss-date, + .widget_rss cite, + .site-description, + .author-bio, + .entry-footer, + .entry-footer a, + .sticky-post, + .taxonomy-description, + .entry-caption, + .comment-metadata, + .pingback .edit-link, + .comment-metadata a, + .pingback .comment-edit-link, + .comment-form label, + .comment-notes, + .comment-awaiting-moderation, + .logged-in-as, + .form-allowed-tags, + .site-info, + .site-info a, + .wp-caption .wp-caption-text, + .gallery-caption, + .widecolumn label, + .widecolumn .mu_register label { + color: {$colors['secondary_text_color']}; + } + + .widget_calendar tbody a:hover, + .widget_calendar tbody a:focus { + background-color: {$colors['secondary_text_color']}; + } + + /* Border Color */ + fieldset, + pre, + abbr, + acronym, + table, + th, + td, + input[type="date"], + input[type="time"], + input[type="datetime-local"], + input[type="week"], + input[type="month"], + input[type="text"], + input[type="email"], + input[type="url"], + input[type="password"], + input[type="search"], + input[type="tel"], + input[type="number"], + textarea, + .main-navigation li, + .main-navigation .primary-menu, + .menu-toggle, + .dropdown-toggle:after, + .social-navigation a, + .image-navigation, + .comment-navigation, + .tagcloud a, + .entry-content, + .entry-summary, + .page-links a, + .page-links > span, + .comment-list article, + .comment-list .pingback, + .comment-list .trackback, + .comment-reply-link, + .no-comments, + .widecolumn .mu_register .mu_alert { + border-color: {$colors['main_text_color']}; /* Fallback for IE7 and IE8 */ + border-color: {$colors['border_color']}; + } + + hr, + code { + background-color: {$colors['main_text_color']}; /* Fallback for IE7 and IE8 */ + background-color: {$colors['border_color']}; + } + + @media screen and (min-width: 56.875em) { + .main-navigation li:hover > a, + .main-navigation li.focus > a { + color: {$colors['link_color']}; + } + + .main-navigation ul ul, + .main-navigation ul ul li { + border-color: {$colors['border_color']}; + } + + .main-navigation ul ul:before { + border-top-color: {$colors['border_color']}; + border-bottom-color: {$colors['border_color']}; + } + + .main-navigation ul ul li { + background-color: {$colors['page_background_color']}; + } + + .main-navigation ul ul:after { + border-top-color: {$colors['page_background_color']}; + border-bottom-color: {$colors['page_background_color']}; + } + } + +CSS; +} + + +/** + * Outputs an Underscore template for generating CSS for the color scheme. + * + * The template generates the css dynamically for instant display in the + * Customizer preview. + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_color_scheme_css_template() { + $colors = array( + 'background_color' => '{{ data.background_color }}', + 'page_background_color' => '{{ data.page_background_color }}', + 'link_color' => '{{ data.link_color }}', + 'main_text_color' => '{{ data.main_text_color }}', + 'secondary_text_color' => '{{ data.secondary_text_color }}', + 'border_color' => '{{ data.border_color }}', + ); + ?> + + a, + .main-navigation li.focus > a { + color: %1$s; + } + } + '; + + wp_add_inline_style( 'twentysixteen-style', sprintf( $css, $link_color ) ); +} +add_action( 'wp_enqueue_scripts', 'twentysixteen_link_color_css', 11 ); + +/** + * Enqueues front-end CSS for the main text color. + * + * @since Twenty Sixteen 1.0 + * + * @see wp_add_inline_style() + */ +function twentysixteen_main_text_color_css() { + $color_scheme = twentysixteen_get_color_scheme(); + $default_color = $color_scheme[3]; + $main_text_color = get_theme_mod( 'main_text_color', $default_color ); + + // Don't do anything if the current color is the default. + if ( $main_text_color === $default_color ) { + return; + } + + // Convert main text hex color to rgba. + $main_text_color_rgb = twentysixteen_hex2rgb( $main_text_color ); + + // If the rgba values are empty return early. + if ( empty( $main_text_color_rgb ) ) { + return; + } + + // If we get this far, we have a custom color scheme. + $border_color = vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.2)', $main_text_color_rgb ); + + $css = ' + /* Custom Main Text Color */ + body, + blockquote cite, + blockquote small, + .main-navigation a, + .menu-toggle, + .dropdown-toggle, + .social-navigation a, + .post-navigation a, + .pagination a:hover, + .pagination a:focus, + .widget-title a, + .site-branding .site-title a, + .entry-title a, + .page-links > .page-links-title, + .comment-author, + .comment-reply-title small a:hover, + .comment-reply-title small a:focus { + color: %1$s + } + + blockquote, + .menu-toggle.toggled-on, + .menu-toggle.toggled-on:hover, + .menu-toggle.toggled-on:focus, + .post-navigation, + .post-navigation div + div, + .pagination, + .widget, + .page-header, + .page-links a, + .comments-title, + .comment-reply-title { + border-color: %1$s; + } + + button, + button[disabled]:hover, + button[disabled]:focus, + input[type="button"], + input[type="button"][disabled]:hover, + input[type="button"][disabled]:focus, + input[type="reset"], + input[type="reset"][disabled]:hover, + input[type="reset"][disabled]:focus, + input[type="submit"], + input[type="submit"][disabled]:hover, + input[type="submit"][disabled]:focus, + .menu-toggle.toggled-on, + .menu-toggle.toggled-on:hover, + .menu-toggle.toggled-on:focus, + .pagination:before, + .pagination:after, + .pagination .prev, + .pagination .next, + .page-links a { + background-color: %1$s; + } + + /* Border Color */ + fieldset, + pre, + abbr, + acronym, + table, + th, + td, + input[type="date"], + input[type="time"], + input[type="datetime-local"], + input[type="week"], + input[type="month"], + input[type="text"], + input[type="email"], + input[type="url"], + input[type="password"], + input[type="search"], + input[type="tel"], + input[type="number"], + textarea, + .main-navigation li, + .main-navigation .primary-menu, + .menu-toggle, + .dropdown-toggle:after, + .social-navigation a, + .image-navigation, + .comment-navigation, + .tagcloud a, + .entry-content, + .entry-summary, + .page-links a, + .page-links > span, + .comment-list article, + .comment-list .pingback, + .comment-list .trackback, + .comment-reply-link, + .no-comments, + .widecolumn .mu_register .mu_alert { + border-color: %1$s; /* Fallback for IE7 and IE8 */ + border-color: %2$s; + } + + hr, + code { + background-color: %1$s; /* Fallback for IE7 and IE8 */ + background-color: %2$s; + } + + @media screen and (min-width: 56.875em) { + .main-navigation ul ul, + .main-navigation ul ul li { + border-color: %2$s; + } + + .main-navigation ul ul:before { + border-top-color: %2$s; + border-bottom-color: %2$s; + } + } + '; + + wp_add_inline_style( 'twentysixteen-style', sprintf( $css, $main_text_color, $border_color ) ); +} +add_action( 'wp_enqueue_scripts', 'twentysixteen_main_text_color_css', 11 ); + +/** + * Enqueues front-end CSS for the secondary text color. + * + * @since Twenty Sixteen 1.0 + * + * @see wp_add_inline_style() + */ +function twentysixteen_secondary_text_color_css() { + $color_scheme = twentysixteen_get_color_scheme(); + $default_color = $color_scheme[4]; + $secondary_text_color = get_theme_mod( 'secondary_text_color', $default_color ); + + // Don't do anything if the current color is the default. + if ( $secondary_text_color === $default_color ) { + return; + } + + $css = ' + /* Custom Secondary Text Color */ + + /** + * IE8 and earlier will drop any block with CSS3 selectors. + * Do not combine these styles with the next block. + */ + body:not(.search-results) .entry-summary { + color: %1$s; + } + + blockquote, + .post-password-form label, + a:hover, + a:focus, + a:active, + .post-navigation .meta-nav, + .image-navigation, + .comment-navigation, + .widget_recent_entries .post-date, + .widget_rss .rss-date, + .widget_rss cite, + .site-description, + .author-bio, + .entry-footer, + .entry-footer a, + .sticky-post, + .taxonomy-description, + .entry-caption, + .comment-metadata, + .pingback .edit-link, + .comment-metadata a, + .pingback .comment-edit-link, + .comment-form label, + .comment-notes, + .comment-awaiting-moderation, + .logged-in-as, + .form-allowed-tags, + .site-info, + .site-info a, + .wp-caption .wp-caption-text, + .gallery-caption, + .widecolumn label, + .widecolumn .mu_register label { + color: %1$s; + } + + .widget_calendar tbody a:hover, + .widget_calendar tbody a:focus { + background-color: %1$s; + } + '; + + wp_add_inline_style( 'twentysixteen-style', sprintf( $css, $secondary_text_color ) ); +} +add_action( 'wp_enqueue_scripts', 'twentysixteen_secondary_text_color_css', 11 ); diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/inc/template-tags.php b/srcs/wordpress/wp-content/themes/twentysixteen/inc/template-tags.php new file mode 100644 index 0000000..dfddc93 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/inc/template-tags.php @@ -0,0 +1,286 @@ +%1$s%2$s %4$s', + get_avatar( get_the_author_meta( 'user_email' ), $author_avatar_size ), + _x( 'Author', 'Used before post author name.', 'twentysixteen' ), + esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ), + get_the_author() + ); + } + + if ( in_array( get_post_type(), array( 'post', 'attachment' ) ) ) { + twentysixteen_entry_date(); + } + + $format = get_post_format(); + if ( current_theme_supports( 'post-formats', $format ) ) { + printf( + '%1$s%3$s', + sprintf( '%s ', _x( 'Format', 'Used before post format.', 'twentysixteen' ) ), + esc_url( get_post_format_link( $format ) ), + get_post_format_string( $format ) + ); + } + + if ( 'post' === get_post_type() ) { + twentysixteen_entry_taxonomies(); + } + + if ( ! is_singular() && ! post_password_required() && ( comments_open() || get_comments_number() ) ) { + echo ''; + /* translators: %s: Post title. */ + comments_popup_link( sprintf( __( 'Leave a comment on %s', 'twentysixteen' ), get_the_title() ) ); + echo ''; + } + } +endif; + +if ( ! function_exists( 'twentysixteen_entry_date' ) ) : + /** + * Prints HTML with date information for current post. + * + * Create your own twentysixteen_entry_date() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + */ + function twentysixteen_entry_date() { + $time_string = ''; + + if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) { + $time_string = ''; + } + + $time_string = sprintf( + $time_string, + esc_attr( get_the_date( 'c' ) ), + get_the_date(), + esc_attr( get_the_modified_date( 'c' ) ), + get_the_modified_date() + ); + + printf( + '%1$s %3$s', + _x( 'Posted on', 'Used before publish date.', 'twentysixteen' ), + esc_url( get_permalink() ), + $time_string + ); + } +endif; + +if ( ! function_exists( 'twentysixteen_entry_taxonomies' ) ) : + /** + * Prints HTML with category and tags for current post. + * + * Create your own twentysixteen_entry_taxonomies() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + */ + function twentysixteen_entry_taxonomies() { + $categories_list = get_the_category_list( _x( ', ', 'Used between list items, there is a space after the comma.', 'twentysixteen' ) ); + if ( $categories_list && twentysixteen_categorized_blog() ) { + printf( + '%1$s %2$s', + _x( 'Categories', 'Used before category names.', 'twentysixteen' ), + $categories_list + ); + } + + $tags_list = get_the_tag_list( '', _x( ', ', 'Used between list items, there is a space after the comma.', 'twentysixteen' ) ); + if ( $tags_list && ! is_wp_error( $tags_list ) ) { + printf( + '%1$s %2$s', + _x( 'Tags', 'Used before tag names.', 'twentysixteen' ), + $tags_list + ); + } + } +endif; + +if ( ! function_exists( 'twentysixteen_post_thumbnail' ) ) : + /** + * Displays an optional post thumbnail. + * + * Wraps the post thumbnail in an anchor element on index views, or a div + * element when on single views. + * + * Create your own twentysixteen_post_thumbnail() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + */ + function twentysixteen_post_thumbnail() { + if ( post_password_required() || is_attachment() || ! has_post_thumbnail() ) { + return; + } + + if ( is_singular() ) : + ?> + +
+ +
+ + + + + + +
+ +
+ %2$s', + esc_url( get_permalink( get_the_ID() ) ), + /* translators: %s: Post title. */ + sprintf( __( 'Continue reading "%s"', 'twentysixteen' ), get_the_title( get_the_ID() ) ) + ); + return ' … ' . $link; + } + add_filter( 'excerpt_more', 'twentysixteen_excerpt_more' ); +endif; + +if ( ! function_exists( 'twentysixteen_categorized_blog' ) ) : + /** + * Determines whether blog/site has more than one category. + * + * Create your own twentysixteen_categorized_blog() function to override in a child theme. + * + * @since Twenty Sixteen 1.0 + * + * @return bool True if there is more than one category, false otherwise. + */ + function twentysixteen_categorized_blog() { + $all_the_cool_cats = get_transient( 'twentysixteen_categories' ); + if ( false === $all_the_cool_cats ) { + // Create an array of all the categories that are attached to posts. + $all_the_cool_cats = get_categories( + array( + 'fields' => 'ids', + // We only need to know if there is more than one category. + 'number' => 2, + ) + ); + + // Count the number of categories that are attached to the posts. + $all_the_cool_cats = count( $all_the_cool_cats ); + + set_transient( 'twentysixteen_categories', $all_the_cool_cats ); + } + + if ( $all_the_cool_cats > 1 || is_preview() ) { + // This blog has more than 1 category so twentysixteen_categorized_blog should return true. + return true; + } else { + // This blog has only 1 category so twentysixteen_categorized_blog should return false. + return false; + } + } +endif; + +/** + * Flushes out the transients used in twentysixteen_categorized_blog(). + * + * @since Twenty Sixteen 1.0 + */ +function twentysixteen_category_transient_flusher() { + if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) { + return; + } + // Like, beat it. Dig? + delete_transient( 'twentysixteen_categories' ); +} +add_action( 'edit_category', 'twentysixteen_category_transient_flusher' ); +add_action( 'save_post', 'twentysixteen_category_transient_flusher' ); + +if ( ! function_exists( 'twentysixteen_the_custom_logo' ) ) : + /** + * Displays the optional custom logo. + * + * Does nothing if the custom logo is not available. + * + * @since Twenty Sixteen 1.2 + */ + function twentysixteen_the_custom_logo() { + if ( function_exists( 'the_custom_logo' ) ) { + the_custom_logo(); + } + } +endif; + +if ( ! function_exists( 'wp_body_open' ) ) : + /** + * Fire the wp_body_open action. + * + * Added for backwards compatibility to support pre 5.2.0 WordPress versions. + * + * @since Twenty Sixteen 2.0 + */ + function wp_body_open() { + /** + * Triggered after the opening tag. + * + * @since Twenty Sixteen 2.0 + */ + do_action( 'wp_body_open' ); + } +endif; diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/index.php b/srcs/wordpress/wp-content/themes/twentysixteen/index.php new file mode 100644 index 0000000..f6ec56c --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/index.php @@ -0,0 +1,65 @@ + + +
+
+ + + + +
+

+
+ + + __( 'Previous page', 'twentysixteen' ), + 'next_text' => __( 'Next page', 'twentysixteen' ), + 'before_page_number' => '' . __( 'Page', 'twentysixteen' ) . ' ', + ) + ); + + // If no content, include the "No posts found" template. + else : + get_template_part( 'template-parts/content', 'none' ); + + endif; + ?> + +
+
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/js/color-scheme-control.js b/srcs/wordpress/wp-content/themes/twentysixteen/js/color-scheme-control.js new file mode 100644 index 0000000..e65b5bd --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/js/color-scheme-control.js @@ -0,0 +1,96 @@ +/* global colorScheme, Color */ +/** + * Add a listener to the Color Scheme control to update other color controls to new values/defaults. + * Also trigger an update of the Color Scheme CSS when a color is changed. + */ + +( function( api ) { + var cssTemplate = wp.template( 'twentysixteen-color-scheme' ), + colorSchemeKeys = [ + 'background_color', + 'page_background_color', + 'link_color', + 'main_text_color', + 'secondary_text_color' + ], + colorSettings = [ + 'background_color', + 'page_background_color', + 'link_color', + 'main_text_color', + 'secondary_text_color' + ]; + + api.controlConstructor.select = api.Control.extend( { + ready: function() { + if ( 'color_scheme' === this.id ) { + this.setting.bind( 'change', function( value ) { + var colors = colorScheme[value].colors; + + // Update Background Color. + var color = colors[0]; + api( 'background_color' ).set( color ); + api.control( 'background_color' ).container.find( '.color-picker-hex' ) + .data( 'data-default-color', color ) + .wpColorPicker( 'defaultColor', color ); + + // Update Page Background Color. + color = colors[1]; + api( 'page_background_color' ).set( color ); + api.control( 'page_background_color' ).container.find( '.color-picker-hex' ) + .data( 'data-default-color', color ) + .wpColorPicker( 'defaultColor', color ); + + // Update Link Color. + color = colors[2]; + api( 'link_color' ).set( color ); + api.control( 'link_color' ).container.find( '.color-picker-hex' ) + .data( 'data-default-color', color ) + .wpColorPicker( 'defaultColor', color ); + + // Update Main Text Color. + color = colors[3]; + api( 'main_text_color' ).set( color ); + api.control( 'main_text_color' ).container.find( '.color-picker-hex' ) + .data( 'data-default-color', color ) + .wpColorPicker( 'defaultColor', color ); + + // Update Secondary Text Color. + color = colors[4]; + api( 'secondary_text_color' ).set( color ); + api.control( 'secondary_text_color' ).container.find( '.color-picker-hex' ) + .data( 'data-default-color', color ) + .wpColorPicker( 'defaultColor', color ); + } ); + } + } + } ); + + // Generate the CSS for the current Color Scheme. + function updateCSS() { + var scheme = api( 'color_scheme' )(), + css, + colors = _.object( colorSchemeKeys, colorScheme[ scheme ].colors ); + + // Merge in color scheme overrides. + _.each( colorSettings, function( setting ) { + colors[ setting ] = api( setting )(); + } ); + + // Add additional color. + // jscs:disable + colors.border_color = Color( colors.main_text_color ).toCSS( 'rgba', 0.2 ); + // jscs:enable + + css = cssTemplate( colors ); + + api.previewer.send( 'update-color-scheme-css', css ); + } + + // Update the CSS whenever a color setting is changed. + _.each( colorSettings, function( setting ) { + api( setting, function( setting ) { + setting.bind( updateCSS ); + } ); + } ); +} )( wp.customize ); diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/js/customize-preview.js b/srcs/wordpress/wp-content/themes/twentysixteen/js/customize-preview.js new file mode 100644 index 0000000..fc99333 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/js/customize-preview.js @@ -0,0 +1,41 @@ +/** + * Live-update changed settings in real time in the Customizer preview. + */ + +( function( $ ) { + var style = $( '#twentysixteen-color-scheme-css' ), + api = wp.customize; + + if ( ! style.length ) { + style = $( 'head' ).append( ''; + return parent.insertBefore(p.lastChild, parent.firstChild); + } + + /** + * Returns the value of `html5.elements` as an array. + * @private + * @returns {Array} An array of shived element node names. + */ + function getElements() { + var elements = html5.elements; + return typeof elements == 'string' ? elements.split(' ') : elements; + } + + /** + * Extends the built-in list of html5 elements + * @memberOf html5 + * @param {String|Array} newElements whitespace separated list or array of new element names to shiv + * @param {Document} ownerDocument The context document. + */ + function addElements(newElements, ownerDocument) { + var elements = html5.elements; + if(typeof elements != 'string'){ + elements = elements.join(' '); + } + if(typeof newElements != 'string'){ + newElements = newElements.join(' '); + } + html5.elements = elements +' '+ newElements; + shivDocument(ownerDocument); + } + + /** + * Returns the data associated to the given document + * @private + * @param {Document} ownerDocument The document. + * @returns {Object} An object of data. + */ + function getExpandoData(ownerDocument) { + var data = expandoData[ownerDocument[expando]]; + if (!data) { + data = {}; + expanID++; + ownerDocument[expando] = expanID; + expandoData[expanID] = data; + } + return data; + } + + /** + * returns a shived element for the given nodeName and document + * @memberOf html5 + * @param {String} nodeName name of the element + * @param {Document|DocumentFragment} ownerDocument The context document. + * @returns {Object} The shived element. + */ + function createElement(nodeName, ownerDocument, data){ + if (!ownerDocument) { + ownerDocument = document; + } + if(supportsUnknownElements){ + return ownerDocument.createElement(nodeName); + } + if (!data) { + data = getExpandoData(ownerDocument); + } + var node; + + if (data.cache[nodeName]) { + node = data.cache[nodeName].cloneNode(); + } else if (saveClones.test(nodeName)) { + node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode(); + } else { + node = data.createElem(nodeName); + } + + // Avoid adding some elements to fragments in IE < 9 because + // * Attributes like `name` or `type` cannot be set/changed once an element + // is inserted into a document/fragment + // * Link elements with `src` attributes that are inaccessible, as with + // a 403 response, will cause the tab/window to crash + // * Script elements appended to fragments will execute when their `src` + // or `text` property is set + return node.canHaveChildren && !reSkip.test(nodeName) && !node.tagUrn ? data.frag.appendChild(node) : node; + } + + /** + * returns a shived DocumentFragment for the given document + * @memberOf html5 + * @param {Document} ownerDocument The context document. + * @returns {Object} The shived DocumentFragment. + */ + function createDocumentFragment(ownerDocument, data){ + if (!ownerDocument) { + ownerDocument = document; + } + if(supportsUnknownElements){ + return ownerDocument.createDocumentFragment(); + } + data = data || getExpandoData(ownerDocument); + var clone = data.frag.cloneNode(), + i = 0, + elems = getElements(), + l = elems.length; + for(;i -1, + isOpera = navigator.userAgent.toLowerCase().indexOf( 'opera' ) > -1, + isIE = navigator.userAgent.toLowerCase().indexOf( 'msie' ) > -1; + + if ( ( isWebkit || isOpera || isIE ) && document.getElementById && window.addEventListener ) { + window.addEventListener( 'hashchange', function() { + var id = location.hash.substring( 1 ), + element; + + if ( ! ( /^[A-z0-9_-]+$/.test( id ) ) ) { + return; + } + + element = document.getElementById( id ); + + if ( element ) { + if ( ! ( /^(?:a|select|input|button|textarea)$/i.test( element.tagName ) ) ) { + element.tabIndex = -1; + } + + element.focus(); + + // Repositions the window on jump-to-anchor to account for admin bar and border height. + window.scrollBy( 0, -53 ); + } + }, false ); + } +} )(); diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/page.php b/srcs/wordpress/wp-content/themes/twentysixteen/page.php new file mode 100644 index 0000000..a232c9f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/page.php @@ -0,0 +1,42 @@ + + +
+
+ + +
+ + + +
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/readme.txt b/srcs/wordpress/wp-content/themes/twentysixteen/readme.txt new file mode 100644 index 0000000..e562dae --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/readme.txt @@ -0,0 +1,115 @@ +=== Twenty Sixteen === +Contributors: wordpressdotorg +Tested up to: 5.0 +Version: 2.0 +License: GPLv2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html +Tags: one-column, two-columns, right-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, flexible-header, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog + +== Description == +Twenty Sixteen is a modernized take on an ever-popular WordPress layout — the horizontal masthead with an optional right sidebar that works perfectly for blogs and websites. It has custom color options with beautiful default color schemes, a harmonious fluid grid using a mobile-first approach, and impeccable polish in every detail. Twenty Sixteen will make your WordPress look beautiful everywhere. + +* Mobile-first, Responsive Layout +* Custom Colors +* Custom Header +* Social Links +* Post Formats +* The GPL v2.0 or later license. :) Use it to make something cool. + +For more information about Twenty Sixteen please go to https://wordpress.org/support/article/twenty-sixteen/. + +== Installation == + +1. In your admin panel, go to Appearance -> Themes and click the 'Add New' button. +2. Type in Twenty Sixteen in the search form and press the 'Enter' key on your keyboard. +3. Click on the 'Activate' button to use your new theme right away. +4. Go to https://wordpress.org/support/article/twenty-sixteen/ for a guide on how to customize this theme. +5. Navigate to Appearance > Customize in your admin panel and customize to taste. + +== Copyright == + +Twenty Sixteen WordPress Theme, Copyright 2014-2019 WordPress.org +Twenty Sixteen is distributed under the terms of the GNU GPL + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +Twenty Sixteen Theme bundles the following third-party resources: + +HTML5 Shiv v3.7.0, Copyright 2014 Alexander Farkas +Licenses: MIT/GPL2 +Source: https://github.com/aFarkas/html5shiv + +Genericons icon font, Copyright 2013-2017 Automattic.com +License: GNU GPL, Version 2 (or later) +Source: http://www.genericons.com + +Image used in screenshot.png: A photo by Austin Schmid (https://unsplash.com/schmidy/), licensed under Creative Commons Zero(http://creativecommons.org/publicdomain/zero/1.0/) + +== Changelog == + += 2.0 = +* Released: May 7, 2019 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_2.0 + += 1.9 = +* Released: February 21, 2019 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.9 + += 1.8 = +* Released: January 9, 2019 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.8 + += 1.7 = +* Released: December 19, 2018 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.7 + += 1.6 = +* Released: December 6, 2018 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.6 + += 1.5 = +* Released: May 17, 2018 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.5 + += 1.4 = +* Released: November 14, 2017 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.4 + += 1.3 = +* Released: August 16, 2016 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.3 + += 1.2 = +* Released: April 12, 2016 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.2 + += 1.1 = +* Released: January 6, 2016 + +https://codex.wordpress.org/Twenty_Sixteen_Theme_Changelog#Version_1.1 + += 1.0 = +* Released: December 8, 2015 + +Initial release + +== Notes == + +Only the default and dark color schemes are accessibility ready. diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/rtl.css b/srcs/wordpress/wp-content/themes/twentysixteen/rtl.css new file mode 100644 index 0000000..5add22f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/rtl.css @@ -0,0 +1,756 @@ +/* +Theme Name: Twenty Sixteen +Description: Adds support for languages written in a Right To Left (RTL) direction. +It's easy, just a matter of overwriting all the horizontal positioning attributes +of your CSS stylesheet in a separate stylesheet file named rtl.css. + +See: https://codex.wordpress.org/Right_to_Left_Language_Support +*/ + +/** + * Table of Contents: + * + * 1.0 - Normalize + * 2.0 - Typography + * 3.0 - Elements + * 4.0 - Forms + * 5.0 - Navigations + * 6.0 - Accessibility + * 7.0 - Widgets + * 8.0 - Content + * 8.1 - Header + * 8.2 - Posts and pages + * 8.3 - Comments + * 8.4 - Footer + * 9.0 - Multisites + * 10.0 - Media Queries + * 10.1 - >= 710px + * 10.2 - >= 910px + * 10.3 - >= 985px + * 10.4 - >= 1200px + */ + + +/** + * 1.0 - Normalize + */ + +body { + direction: rtl; + unicode-bidi: embed; +} + +input[type="checkbox"], +input[type="radio"] { + margin-right: auto; + margin-left: 0.4375em; +} + + +/** + * 2.0 - Typography + */ + +body, +button, +button[disabled]:hover, +button[disabled]:focus, +input[type="button"], +input[type="button"][disabled]:hover, +input[type="button"][disabled]:focus, +input[type="reset"], +input[type="reset"][disabled]:hover, +input[type="reset"][disabled]:focus, +input[type="submit"], +input[type="submit"][disabled]:hover, +input[type="submit"][disabled]:focus, +input, +select, +textarea, +.post-password-form label, +.main-navigation, +.post-navigation, +.post-navigation .post-title, +.pagination, +.image-navigation, +.comment-navigation, +.site .skip-link, +.logged-in .site .skip-link, +.widget .widget-title, +.widget_recent_entries .post-date, +.widget_rss .rss-date, +.widget_rss cite, +.tagcloud a, +.site-title, +.entry-title, +.entry-footer, +.sticky-post, +.page-title, +.page-links, +.comments-title, +.comment-reply-title, +.comment-metadata, +.pingback .edit-link, +.comment-reply-link, +.comment-form label, +.no-comments, +.required, +.site-footer .site-title, +.site-footer .site-title:after, +.widecolumn label, +.widecolumn .mu_register label, +.site-footer span[role=separator] { + font-family: Arial, Tahoma, sans-serif; +} + +::-webkit-input-placeholder { + font-family: Arial, Tahoma, sans-serif; +} + +:-moz-placeholder { + font-family: Arial, Tahoma, sans-serif; +} + +::-moz-placeholder { + font-family: Arial, Tahoma, sans-serif; +} + +:-ms-input-placeholder { + font-family: Arial, Tahoma, sans-serif; +} + +blockquote { + border-right-width: 4px; + border-left-width: 0; + padding-right: 1.263157895em; + padding-left: 0; +} + +.entry-content h1, +.entry-content h2, +.entry-content h3, +.entry-content h4, +.entry-content h5, +.entry-content h6, +.entry-summary h1, +.entry-summary h2, +.entry-summary h3, +.entry-summary h4, +.entry-summary h5, +.entry-summary h6, +.comment-content h1, +.comment-content h2, +.comment-content h3, +.comment-content h4, +.comment-content h5, +.comment-content h6, +.textwidget h1, +.textwidget h2, +.textwidget h3, +.textwidget h4, +.textwidget h5, +.textwidget h6, +.entry-content .author-title, +.widget_calendar caption, +.widecolumn h2 { + font-weight: 700; +} + + +/** + * 3.0 - Elements + */ + +ul, +ol { + margin: 0 1.25em 1.75em 0; +} + +ol { + margin-right: 1.5em; + margin-left: 0; +} + +caption, +th, +td { + text-align: right; +} + + +/** + * 4.0 - Forms + */ + +input[type="search"].search-field { + border-radius: 0 2px 2px 0; +} + +.search-submit:before { + left: 1px; +} + +.search-submit { + border-radius: 2px 0 0 2px; + left: 0; + right: auto; +} + + +/** + * 5.0 - Navigation + */ + +.main-navigation ul ul { + margin-right: 0.875em; + margin-left: auto; +} + +.main-navigation .menu-item-has-children > a { + margin-right: auto; + margin-left: 56px; +} + +.dropdown-toggle { + left: 0; + right: auto; +} + +.dropdown-toggle:after { + border-right-width: 1px; + border-left-width: 0; + left: auto; + right: 1px; +} + +.social-navigation li { + float: right; + margin: 0 0 0.4375em 0.4375em; +} + +.pagination:before { + left: 0; + right: auto; +} + +.pagination:after { + left: 54px; + right: auto; +} + +.pagination .nav-links { + padding-right: 0; + padding-left: 106px; +} + +.pagination .nav-links:before { + content: "\f430"; + left: -1px; + right: auto; +} + +.pagination .nav-links:after { + content: "\f429"; + left: 55px; + right: auto; +} + +.pagination .page-numbers { + margin: 0 -0.7368421053em 0 0.7368421053em; +} + +.pagination .prev, +.pagination .next { + margin: 0; +} + +.pagination .prev { + left: 54px; + right: auto; +} + +.pagination .prev:before { + content: "\f429"; + left: auto; + right: -1px; +} + +.pagination .next { + left: 0; + right: auto; +} + +.pagination .next:before { + content: "\f430"; + left: -1px; + right: auto; +} + +.comment-navigation { + margin-right: 0; + margin-left: 0; +} + + +/** + * 6.0 - Accessibility + */ + +.site .skip-link { + left: auto; + right: -9999em; +} + +.site .skip-link:focus { + left: auto; + right: 6px; +} + + +/** + * 7.0 - Widgets + */ + +.tagcloud a { + margin-right: 0; + margin-left: 0.1875em; +} + +.tagcloud ul { + margin-right: 0; +} + + +/** + * 8.0 - Content + */ + + +/** + * 8.1 - Header + */ + +.site-branding { + margin-right: 0; + margin-left: auto; +} + + +/** + * 8.2 - Posts and pages + */ + +.author-avatar .avatar { + float: right; + margin-right: 0; + margin-left: 1.75em; +} + +.entry-footer .avatar { + margin-right: 0; + margin-left: 0.5384615385em; +} + +.page-links a, +.page-links > span { + margin-right: auto; + margin-left: 0.3076923077em; +} + +.page-links > .page-links-title { + padding-right: 0; + padding-left: 0.6153846154em; +} + +body:not(.search-results) .entry-summary .alignright { + margin: 0.2631578947em 0 1.4736842105em 1.4736842105em; +} + +body:not(.search-results) .entry-summary .alignleft { + margin: 0.2631578947em 1.4736842105em 1.4736842105em 0; +} + + +/** + * 8.3 - Comments + */ + +.comment-list .children > li { + padding-right: 0.875em; + padding-left: 0; +} + +.comment-author .avatar { + float: right; + margin-right: auto; + margin-left: 0.875em; +} + +.bypostauthor > article .fn:after { + left: auto; + right: 3px; +} + +.comment-content ul, +.comment-content ol { + margin: 0 1.25em 1.5em 0; +} + +.comment-reply-title small a { + float: left; +} + +.comment-form #wp-comment-cookies-consent { + margin: 0 0 0 10px; +} + +.comment-form .comment-form-cookies-consent label { + font-family: Arial, Tahoma, sans-serif; +} + +/** + * 9.0 - Multisites + */ + +.widecolumn .mu_register label { + margin-right: 0; + margin-left: 0.7692307692em; +} + + +/** + * 10.0 - Media Queries + */ + + +/** + * 10.1 - >= 710px + */ + +@media screen and (min-width: 44.375em) { + .pagination { + margin: 0 7.6923% 4.421052632em 23.0769%; + } + + .entry-header, + .post-thumbnail, + .entry-content, + .entry-summary, + .entry-footer, + .comments-area, + .image-navigation, + .post-navigation, + .page-header, + .page-content, + .content-bottom-widgets { + margin-right: 7.6923%; + margin-left: 23.0769%; + } + + .entry-content blockquote:not(.alignright):not(.alignleft), + .entry-summary blockquote, + .comment-content blockquote { + margin-right: -1.473684211em; + margin-left: auto; + } + + .entry-content blockquote blockquote:not(.alignright):not(.alignleft), + .entry-summary blockquote blockquote, + .comment-content blockquote blockquote { + margin-right: 0; + margin-left: auto; + } + + .entry-content ul, + .entry-summary ul, + .comment-content ul, + .entry-content ol, + .entry-summary ol, + .comment-content ol { + margin-right: 0; + margin-left: auto; + } + + .entry-content li > ul, + .entry-summary li > ul, + .comment-content li > ul, + .entry-content blockquote > ul, + .entry-summary blockquote > ul, + .comment-content blockquote > ul { + margin-right: 1.25em; + margin-left: auto; + } + + .entry-content li > ol, + .entry-summary li > ol, + .comment-content li > ol, + .entry-content blockquote > ol, + .entry-summary blockquote > ol, + .comment-content blockquote > ol { + margin-right: 1.5em; + margin-left: auto; + } + + .comment-list .children > li { + padding-right: 1.75em; + padding-left: 0; + } + + .sidebar, + .widecolumn { + padding-right: 7.6923%; + padding-left: 23.0769%; + } + + body:not(.search-results) .entry-summary li > ul, + body:not(.search-results) .entry-summary blockquote > ul { + margin-right: 1.157894737em; + margin-left: auto; + } + + body:not(.search-results) .entry-summary li > ol, + body:not(.search-results) .entry-summary blockquote > ol { + margin-right: 1.473684211em; + margin-left: auto; + } +} + + +/** + * 10.2 - >= 910px + */ + +@media screen and (min-width: 56.875em) { + .main-navigation .primary-menu > li { + float: right; + } + + .main-navigation ul ul { + left: auto; + margin: 0; + right: -999em; + } + + .main-navigation ul ul:before { + left: 9px; + right: auto; + } + + .main-navigation ul ul:after { + left: 11px; + right: auto; + } + + .main-navigation li:hover > ul, + .main-navigation li.focus > ul { + left: 0; + right: auto; + } + + .main-navigation ul ul li:hover > ul, + .main-navigation ul ul li.focus > ul { + left: 100%; + right: auto; + } + + .main-navigation .menu-item-has-children > a { + margin: 0; + padding-right: 0.875em; + padding-left: 2.25em; + } + + .main-navigation .menu-item-has-children > a:after { + left: 0.625em; + right: auto; + } + + .main-navigation ul ul .menu-item-has-children > a { + padding-right: 0.875em; + padding-left: 2.0625em; + } + + .main-navigation ul ul .menu-item-has-children > a:after { + left: 0.5625em; + right: auto; + top: 0.8125em; + -webkit-transform: rotate(-90deg); + -moz-transform: rotate(-90deg); + -ms-transform: rotate(-90deg); + transform: rotate(-90deg); + } + + .content-area { + float: right; + margin-right: auto; + margin-left: -100%; + } + + .entry-header, + .post-thumbnail, + .entry-content, + .entry-summary, + .entry-footer, + .comments-area, + .image-navigation, + .post-navigation, + .pagination, + .page-header, + .page-content, + .content-bottom-widgets { + margin-right: 0; + margin-left: 0; + } + + .sidebar { + float: right; + margin-right: 75%; + margin-left: auto; + padding: 0; + } + + .widget blockquote { + padding-right: 1.0625em; + padding-left: 0; + } + + .widget .alignright { + margin: 0.2307692308em 0 1.6153846154em 1.6153846154em; + } + + .widget .alignleft { + margin: 0.2307692308em 1.6153846154em 1.6153846154em 0; + } + + .tagcloud a { + margin: 0 0 0.5384615385em 0.2307692308em; + } + + .content-bottom-widgets .widget-area:nth-child(1):nth-last-child(2), + .content-bottom-widgets .widget-area:nth-child(2):nth-last-child(1) { + float: right; + margin-right: auto; + margin-left: 7.1428571%; + } + + .content-bottom-widgets .widget-area:nth-child(2):nth-last-child(1):last-of-type { + margin-right: auto; + margin-left: 0; + } + + .site-info { + margin: 0.538461538em 0 0.538461538em auto; + } + + .no-sidebar .entry-header, + .no-sidebar .entry-content, + .no-sidebar .entry-summary, + .no-sidebar .entry-footer, + .no-sidebar .comments-area, + .no-sidebar .image-navigation, + .no-sidebar .post-navigation, + .no-sidebar .pagination, + .no-sidebar .page-header, + .no-sidebar .page-content, + .no-sidebar .content-bottom-widgets { + margin-right: 15%; + margin-left: 15%; + } + + .no-sidebar .post-thumbnail { + margin-right: 0; + margin-left: 0; + } + + .widecolumn { + padding-right: 15%; + padding-left: 15%; + } +} + + +/** + * 10.3 - >= 985px + */ + +@media screen and (min-width: 61.5625em) { + body:not(.search-results) article:not(.type-page) .entry-content { + float: left; + } + + body:not(.search-results) article:not(.type-page) .entry-content > blockquote.alignleft.below-entry-meta { + margin-right: 1.473684211em; + margin-left: 0; + width: -webkit-calc(50% - 0.736842105em); + width: calc(50% - 0.736842105em); + } + + body:not(.search-results) article:not(.type-page) .entry-content > blockquote.alignright.below-entry-meta { + margin-right: -40%; + margin-left: 1.473684211em; + width: -webkit-calc(60% - 1.4736842105em); + width: calc(60% - 1.4736842105em); + } + + body:not(.search-results) article:not(.type-page) img.below-entry-meta, + body:not(.search-results) article:not(.type-page) figure.below-entry-meta { + margin-right: -40%; + margin-left: 0; + } + + body:not(.search-results) article:not(.type-page) .entry-footer { + float: right; + } + + body.no-sidebar:not(.search-results) article:not(.type-page) .entry-content { + float: right; + margin-right: 34.99999999%; + margin-left: -100%; + } + + body.no-sidebar:not(.search-results) article:not(.type-page) .entry-footer { + margin-right: 15%; + margin-left: -100%; + } +} + + +/** + * 10.4 - >= 1200px + */ + +@media screen and (min-width: 75em) { + body:not(.search-results) .entry-summary li > ul, + body:not(.search-results) .entry-summary blockquote > ul { + margin-right: 0.956521739em; + margin-left: auto; + } + + body:not(.search-results) .entry-summary li > ol, + body:not(.search-results) .entry-summary blockquote > ol { + margin-right: 1.52173913em; + margin-left: auto; + } + + body:not(.search-results) .entry-summary blockquote { + padding-right: 1.347826087em; + padding-left: 0; + } + + body:not(.search-results) .entry-summary blockquote:not(.alignright):not(.alignleft) { + margin-right: -1.52173913em; + margin-left: auto; + } + + body:not(.search-results) .entry-summary blockquote blockquote:not(.alignright):not(.alignleft) { + margin-right: 0; + margin-left: auto; + } + + body:not(.search-results) .entry-summary .alignright { + margin: 0.2608695652em 0 1.5217391304em 1.5217391304em; + } + + body:not(.search-results) .entry-summary .alignleft { + margin: 0.2608695652em 1.5217391304em 1.5217391304em 0; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/screenshot.png b/srcs/wordpress/wp-content/themes/twentysixteen/screenshot.png new file mode 100644 index 0000000..e4f2b25 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentysixteen/screenshot.png differ diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/search.php b/srcs/wordpress/wp-content/themes/twentysixteen/search.php new file mode 100644 index 0000000..37aed86 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/search.php @@ -0,0 +1,61 @@ + + +
+
+ + + + + + __( 'Previous page', 'twentysixteen' ), + 'next_text' => __( 'Next page', 'twentysixteen' ), + 'before_page_number' => '' . __( 'Page', 'twentysixteen' ) . ' ', + ) + ); + + // If no content, include the "No posts found" template. + else : + get_template_part( 'template-parts/content', 'none' ); + + endif; + ?> + +
+
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/searchform.php b/srcs/wordpress/wp-content/themes/twentysixteen/searchform.php new file mode 100644 index 0000000..c2f83af --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/searchform.php @@ -0,0 +1,17 @@ + + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/sidebar-content-bottom.php b/srcs/wordpress/wp-content/themes/twentysixteen/sidebar-content-bottom.php new file mode 100644 index 0000000..d561eb7 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/sidebar-content-bottom.php @@ -0,0 +1,28 @@ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/sidebar.php b/srcs/wordpress/wp-content/themes/twentysixteen/sidebar.php new file mode 100644 index 0000000..45aff97 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/sidebar.php @@ -0,0 +1,15 @@ + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/single.php b/srcs/wordpress/wp-content/themes/twentysixteen/single.php new file mode 100644 index 0000000..3454170 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/single.php @@ -0,0 +1,59 @@ + + +
+
+ _x( 'Published in%title', 'Parent post link', 'twentysixteen' ), + ) + ); + } elseif ( is_singular( 'post' ) ) { + // Previous/next post navigation. + the_post_navigation( + array( + 'next_text' => ' ' . + '' . __( 'Next post:', 'twentysixteen' ) . ' ' . + '%title', + 'prev_text' => ' ' . + '' . __( 'Previous post:', 'twentysixteen' ) . ' ' . + '%title', + ) + ); + } + + // End of the loop. + endwhile; + ?> + +
+ + + +
+ + + diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/style.css b/srcs/wordpress/wp-content/themes/twentysixteen/style.css new file mode 100644 index 0000000..4a4c083 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/style.css @@ -0,0 +1,4010 @@ +/* +Theme Name: Twenty Sixteen +Theme URI: https://wordpress.org/themes/twentysixteen/ +Author: the WordPress team +Author URI: https://wordpress.org/ +Description: Twenty Sixteen is a modernized take on an ever-popular WordPress layout — the horizontal masthead with an optional right sidebar that works perfectly for blogs and websites. It has custom color options with beautiful default color schemes, a harmonious fluid grid using a mobile-first approach, and impeccable polish in every detail. Twenty Sixteen will make your WordPress look beautiful everywhere. +Version: 2.0 +Requires at least: 4.4 +Requires PHP: 5.2.4 +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html +Tags: one-column, two-columns, right-sidebar, accessibility-ready, custom-background, custom-colors, custom-header, custom-menu, editor-style, featured-images, flexible-header, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready, blog +Text Domain: twentysixteen + +This theme, like WordPress, is licensed under the GPL. +Use it to make something cool, have fun, and share what you've learned with others. +*/ + + +/** + * Table of Contents + * + * 1.0 - Normalize + * 2.0 - Genericons + * 3.0 - Typography + * 4.0 - Elements + * 5.0 - Forms + * 6.0 - Navigation + * 6.1 - Links + * 6.2 - Menus + * 7.0 - Accessibility + * 8.0 - Alignments + * 9.0 - Clearings + * 10.0 - Widgets + * 11.0 - Content + * 11.1 - Header + * 11.2 - Posts and pages + * 11.3 - Post Formats + * 11.4 - Comments + * 11.5 - Sidebar + * 11.6 - Footer + * 12.0 - Media + * 12.1 - Captions + * 12.2 - Galleries + * 13.0 - Multisite + * 14.0 - Media Queries + * 14.1 - >= 710px + * 14.2 - >= 783px + * 14.3 - >= 910px + * 14.4 - >= 985px + * 14.5 - >= 1200px + * 15.0 - Print + */ + + +/** + * 1.0 - Normalize + * + * Normalizing styles have been helped along thanks to the fine work of + * Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/ + */ + +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} + +body { + margin: 0; +} + +article, +aside, +details, +figcaption, +figure, +footer, +header, +main, +menu, +nav, +section, +summary { + display: block; +} + +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} + +audio:not([controls]) { + display: none; + height: 0; +} + +[hidden], +template { + display: none; +} + +a { + background-color: transparent; +} + +abbr[title] { + border-bottom: 1px dotted; +} + +b, +strong { + font-weight: 700; +} + +small { + font-size: 80%; +} + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +img { + border: 0; +} + +svg:not(:root) { + overflow: hidden; +} + +figure { + margin: 0; +} + +hr { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} + +code, +kbd, +pre, +samp { + font-size: 1em; +} + +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} + +select { + text-transform: none; +} + +button { + overflow: visible; +} + +button, +input, +select, +textarea { + max-width: 100%; +} + +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} + +button[disabled], +html input[disabled] { + cursor: default; + opacity: .5; +} + +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} + +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + margin-right: 0.4375em; + padding: 0; +} + +input[type="date"]::-webkit-inner-spin-button, +input[type="date"]::-webkit-outer-spin-button, +input[type="time"]::-webkit-inner-spin-button, +input[type="time"]::-webkit-outer-spin-button, +input[type="datetime-local"]::-webkit-inner-spin-button, +input[type="datetime-local"]::-webkit-outer-spin-button, +input[type="week"]::-webkit-inner-spin-button, +input[type="week"]::-webkit-outer-spin-button, +input[type="month"]::-webkit-inner-spin-button, +input[type="month"]::-webkit-outer-spin-button, +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +input[type="search"] { + -webkit-appearance: textfield; +} + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +fieldset { + border: 1px solid #d1d1d1; + margin: 0 0 1.75em; + min-width: inherit; + padding: 0.875em; +} + +fieldset > :last-child { + margin-bottom: 0; +} + +legend { + border: 0; + padding: 0; +} + +textarea { + overflow: auto; + vertical-align: top; +} + +optgroup { + font-weight: bold; +} + + +/** + * 2.0 - Genericons + */ + +.menu-item-has-children a:after, +.social-navigation a:before, +.dropdown-toggle:after, +.bypostauthor > article .fn:after, +.comment-reply-title small a:before, +.pagination .prev:before, +.pagination .next:before, +.pagination .nav-links:before, +.pagination .nav-links:after, +.search-submit:before { + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-family: "Genericons"; + font-size: 16px; + font-style: normal; + font-variant: normal; + font-weight: normal; + line-height: 1; + speak: none; + text-align: center; + text-decoration: inherit; + text-transform: none; + vertical-align: top; +} + + +/** + * 3.0 - Typography + */ + +body, +button, +input, +select, +textarea { + color: #1a1a1a; + font-family: Merriweather, Georgia, serif; + font-size: 16px; + font-size: 1rem; + line-height: 1.75; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + clear: both; + font-weight: 700; + margin: 0; + text-rendering: optimizeLegibility; +} + +p { + margin: 0 0 1.75em; +} + +dfn, +cite, +em, +i { + font-style: italic; +} + +blockquote { + border: 0 solid #1a1a1a; + border-left-width: 4px; + color: #686868; + font-size: 19px; + font-size: 1.1875rem; + font-style: italic; + line-height: 1.4736842105; + margin: 0 0 1.4736842105em; + overflow: hidden; + padding: 0 0 0 1.263157895em; +} + +blockquote, +q { + quotes: none; +} + +blockquote:before, +blockquote:after, +q:before, +q:after { + content: ""; +} + +blockquote p { + margin-bottom: 1.4736842105em; +} + +blockquote cite, +blockquote small { + color: #1a1a1a; + display: block; + font-size: 16px; + font-size: 1rem; + line-height: 1.75; +} + +blockquote cite:before, +blockquote small:before { + content: "\2014\00a0"; +} + +blockquote em, +blockquote i, +blockquote cite { + font-style: normal; +} + +blockquote strong, +blockquote b { + font-weight: 400; +} + +blockquote > :last-child { + margin-bottom: 0; +} + +address { + font-style: italic; + margin: 0 0 1.75em; +} + +code, +kbd, +tt, +var, +samp, +pre { + font-family: Inconsolata, monospace; +} + +pre { + border: 1px solid #d1d1d1; + font-size: 16px; + font-size: 1rem; + line-height: 1.3125; + margin: 0 0 1.75em; + max-width: 100%; + overflow: auto; + padding: 1.75em; + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} + +code { + background-color: #d1d1d1; + padding: 0.125em 0.25em; +} + +abbr, +acronym { + border-bottom: 1px dotted #d1d1d1; + cursor: help; +} + +mark, +ins { + background: #007acc; + color: #fff; + padding: 0.125em 0.25em; + text-decoration: none; +} + +big { + font-size: 125%; +} + + +/** + * 4.0 - Elements + */ + +html { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +*, +*:before, +*:after { + /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */ + -webkit-box-sizing: inherit; + -moz-box-sizing: inherit; + box-sizing: inherit; +} + +body { + background: #1a1a1a; + /* Fallback for when there is no custom background color defined. */ +} + +hr { + background-color: #d1d1d1; + border: 0; + height: 1px; + margin: 0 0 1.75em; +} + +ul, +ol { + margin: 0 0 1.75em 1.25em; + padding: 0; +} + +ul { + list-style: disc; +} + +ol { + list-style: decimal; + margin-left: 1.5em; +} + +li > ul, +li > ol { + margin-bottom: 0; +} + +dl { + margin: 0 0 1.75em; +} + +dt { + font-weight: 700; +} + +dd { + margin: 0 0 1.75em; +} + +img { + height: auto; + /* Make sure images are scaled correctly. */ + max-width: 100%; + /* Adhere to container width. */ + vertical-align: middle; +} + +del { + opacity: 0.8; +} + +table, +th, +td { + border: 1px solid #d1d1d1; +} + +table { + border-collapse: separate; + border-spacing: 0; + border-width: 1px 0 0 1px; + margin: 0 0 1.75em; + table-layout: fixed; + /* Prevents HTML tables from becoming too wide */ + width: 100%; +} + +caption, +th, +td { + font-weight: normal; + text-align: left; +} + +th { + border-width: 0 1px 1px 0; + font-weight: 700; +} + +td { + border-width: 0 1px 1px 0; +} + +th, +td { + padding: 0.4375em; +} + +/* Placeholder text color -- selectors need to be separate to work. */ +::-webkit-input-placeholder { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; +} + +:-moz-placeholder { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; +} + +::-moz-placeholder { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + opacity: 1; + /* Since FF19 lowers the opacity of the placeholder by default */ +} + +:-ms-input-placeholder { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; +} + + +/** + * 5.0 - Forms + */ + +input { + line-height: normal; +} + +button, +button[disabled]:hover, +button[disabled]:focus, +input[type="button"], +input[type="button"][disabled]:hover, +input[type="button"][disabled]:focus, +input[type="reset"], +input[type="reset"][disabled]:hover, +input[type="reset"][disabled]:focus, +input[type="submit"], +input[type="submit"][disabled]:hover, +input[type="submit"][disabled]:focus { + background: #1a1a1a; + border: 0; + border-radius: 2px; + color: #fff; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-weight: 700; + letter-spacing: 0.046875em; + line-height: 1; + padding: 0.84375em 0.875em 0.78125em; + text-transform: uppercase; +} + +button:hover, +button:focus, +input[type="button"]:hover, +input[type="button"]:focus, +input[type="reset"]:hover, +input[type="reset"]:focus, +input[type="submit"]:hover, +input[type="submit"]:focus { + background: #007acc; +} + +button:focus, +input[type="button"]:focus, +input[type="reset"]:focus, +input[type="submit"]:focus { + outline: thin dotted; + outline-offset: -4px; +} + +input[type="date"], +input[type="time"], +input[type="datetime-local"], +input[type="week"], +input[type="month"], +input[type="text"], +input[type="email"], +input[type="url"], +input[type="password"], +input[type="search"], +input[type="tel"], +input[type="number"], +textarea { + background: #f7f7f7; + background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(255, 255, 255, 0)); + border: 1px solid #d1d1d1; + border-radius: 2px; + color: #686868; + padding: 0.625em 0.4375em; + width: 100%; +} + +input[type="date"]:focus, +input[type="time"]:focus, +input[type="datetime-local"]:focus, +input[type="week"]:focus, +input[type="month"]:focus, +input[type="text"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="password"]:focus, +input[type="search"]:focus, +input[type="tel"]:focus, +input[type="number"]:focus, +textarea:focus { + background-color: #fff; + border-color: #007acc; + color: #1a1a1a; + outline: 0; +} + +.post-password-form { + margin-bottom: 1.75em; +} + +.post-password-form label { + color: #686868; + display: block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + letter-spacing: 0.076923077em; + line-height: 1.6153846154; + margin-bottom: 1.75em; + text-transform: uppercase; +} + +.post-password-form input[type="password"] { + margin-top: 0.4375em; +} + +.post-password-form > :last-child { + margin-bottom: 0; +} + +.search-form { + position: relative; +} + +input[type="search"].search-field { + border-radius: 2px 0 0 2px; + width: -webkit-calc(100% - 42px); + width: calc(100% - 42px); +} + +.search-submit:before { + content: "\f400"; + font-size: 24px; + left: 2px; + line-height: 42px; + position: relative; + width: 40px; +} + +.search-submit { + border-radius: 0 2px 2px 0; + bottom: 0; + overflow: hidden; + padding: 0; + position: absolute; + right: 0; + top: 0; + width: 42px; +} + + +/** + * 6.0 - Navigation + */ + +/** + * 6.1 - Links + */ + +a { + color: #007acc; + text-decoration: none; +} + +a:hover, +a:focus, +a:active { + color: #686868; +} + +a:focus { + outline: thin dotted; +} + +a:hover, +a:active { + outline: 0; +} + +.entry-content a, +.entry-summary a, +.taxonomy-description a, +.logged-in-as a, +.comment-content a, +.pingback .comment-body > a, +.textwidget a, +.entry-footer a:hover, +.site-info a:hover { + box-shadow: 0 1px 0 0 currentColor; +} + +.entry-content a:hover, +.entry-content a:focus, +.entry-summary a:hover, +.entry-summary a:focus, +.taxonomy-description a:hover, +.taxonomy-description a:focus, +.logged-in-as a:hover, +.logged-in-as a:focus, +.comment-content a:hover, +.comment-content a:focus, +.pingback .comment-body > a:hover, +.pingback .comment-body > a:focus, +.textwidget a:hover, +.textwidget a:focus { + box-shadow: none; +} + + +/** + * 6.2 - Menus + */ + +.site-header-menu { + display: none; + -webkit-flex: 0 1 100%; + -ms-flex: 0 1 100%; + flex: 0 1 100%; + margin: 0.875em 0; +} + +.site-header-menu.toggled-on, +.no-js .site-header-menu { + display: block; +} + +.main-navigation { + font-family: Montserrat, "Helvetica Neue", sans-serif; +} + +.site-footer .main-navigation { + margin-bottom: 1.75em; +} + +.main-navigation ul { + list-style: none; + margin: 0; +} + +.main-navigation li { + border-top: 1px solid #d1d1d1; + position: relative; +} + +.main-navigation a { + color: #1a1a1a; + display: block; + line-height: 1.3125; + outline-offset: -1px; + padding: 0.84375em 0; +} + +.main-navigation a:hover, +.main-navigation a:focus { + color: #007acc; +} + +.main-navigation .current-menu-item > a, +.main-navigation .current-menu-ancestor > a { + font-weight: 700; +} + +.main-navigation ul ul { + display: none; + margin-left: 0.875em; +} + +.no-js .main-navigation ul ul { + display: block; +} + +.main-navigation ul .toggled-on { + display: block; +} + +.main-navigation .primary-menu { + border-bottom: 1px solid #d1d1d1; +} + +.main-navigation .menu-item-has-children > a { + margin-right: 56px; +} + +.dropdown-toggle { + background-color: transparent; + border: 0; + border-radius: 0; + color: #1a1a1a; + content: ""; + height: 48px; + padding: 0; + position: absolute; + right: 0; + text-transform: none; + top: 0; + width: 48px; +} + +.dropdown-toggle:after { + border: 0 solid #d1d1d1; + border-left-width: 1px; + content: "\f431"; + font-size: 24px; + left: 1px; + position: relative; + width: 48px; +} + +.dropdown-toggle:hover, +.dropdown-toggle:focus { + background-color: transparent; + color: #007acc; +} + +.dropdown-toggle:focus { + outline: thin dotted; + outline-offset: -1px; +} + +.dropdown-toggle:focus:after { + border-color: transparent; +} + +.dropdown-toggle.toggled-on:after { + content: "\f432"; +} + +.site-header .main-navigation + .social-navigation { + margin-top: 1.75em; +} + +.site-footer .social-navigation { + margin-bottom: 1.75em; +} + +.social-navigation ul { + list-style: none; + margin: 0 0 -0.4375em; +} + +.social-navigation li { + float: left; + margin: 0 0.4375em 0.4375em 0; +} + +.social-navigation a { + border: 1px solid #d1d1d1; + border-radius: 50%; + color: #1a1a1a; + display: block; + height: 35px; + position: relative; + width: 35px; +} + +.social-navigation a:before { + content: "\f415"; + height: 33px; + line-height: 33px; + text-align: center; + width: 33px; +} + +.social-navigation a:hover:before, +.social-navigation a:focus:before { + color: #007acc; +} + +.social-navigation a[href*="codepen.io"]:before { + content: "\f216"; +} + +.social-navigation a[href*="digg.com"]:before { + content: "\f221"; +} + +.social-navigation a[href*="dribbble.com"]:before { + content: "\f201"; +} + +.social-navigation a[href*="dropbox.com"]:before { + content: "\f225"; +} + +.social-navigation a[href*="facebook.com"]:before { + content: "\f203"; +} + +.social-navigation a[href*="flickr.com"]:before { + content: "\f211"; +} + +.social-navigation a[href*="foursquare.com"]:before { + content: "\f226"; +} + +.social-navigation a[href*="plus.google.com"]:before { + content: "\f206"; +} + +.social-navigation a[href*="github.com"]:before { + content: "\f200"; +} + +.social-navigation a[href*="instagram.com"]:before { + content: "\f215"; +} + +.social-navigation a[href*="linkedin.com"]:before { + content: "\f208"; +} + +.social-navigation a[href*="path.com"]:before { + content: "\f219"; +} + +.social-navigation a[href*="pinterest.com"]:before { + content: "\f210"; +} + +.social-navigation a[href*="getpocket.com"]:before { + content: "\f224"; +} + +.social-navigation a[href*="polldaddy.com"]:before { + content: "\f217"; +} + +.social-navigation a[href*="reddit.com"]:before { + content: "\f222"; +} + +.social-navigation a[href*="skype.com"]:before { + content: "\f220"; +} + +.social-navigation a[href*="stumbleupon.com"]:before { + content: "\f223"; +} + +.social-navigation a[href*="tumblr.com"]:before { + content: "\f214"; +} + +.social-navigation a[href*="twitter.com"]:before { + content: "\f202"; +} + +.social-navigation a[href*="vimeo.com"]:before { + content: "\f212"; +} + +.social-navigation a[href*="wordpress.com"]:before, +.social-navigation a[href*="wordpress.org"]:before { + content: "\f205"; +} + +.social-navigation a[href*="youtube.com"]:before { + content: "\f213"; +} + +.social-navigation a[href^="mailto:"]:before { + content: "\f410"; +} + +.social-navigation a[href*="spotify.com"]:before { + content: "\f515"; +} + +.social-navigation a[href*="twitch.tv"]:before { + content: "\f516"; +} + +.social-navigation a[href$="/feed/"]:before { + content: "\f413"; +} + +.post-navigation { + border-top: 4px solid #1a1a1a; + border-bottom: 4px solid #1a1a1a; + clear: both; + font-family: Montserrat, "Helvetica Neue", sans-serif; + margin: 0 7.6923% 3.5em; +} + +.post-navigation a { + color: #1a1a1a; + display: block; + padding: 1.75em 0; +} + +.post-navigation span { + display: block; +} + +.post-navigation .meta-nav { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + letter-spacing: 0.076923077em; + line-height: 1.6153846154; + margin-bottom: 0.5384615385em; + text-transform: uppercase; +} + +.post-navigation .post-title { + display: inline; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 23px; + font-size: 1.4375rem; + font-weight: 700; + line-height: 1.2173913043; + text-rendering: optimizeLegibility; +} + +.post-navigation a:hover .post-title, +.post-navigation a:focus .post-title { + color: #007acc; +} + +.post-navigation div + div { + border-top: 4px solid #1a1a1a; +} + +.pagination { + border-top: 4px solid #1a1a1a; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 19px; + font-size: 1.1875rem; + margin: 0 7.6923% 2.947368421em; + min-height: 56px; + position: relative; +} + +.pagination:before, +.pagination:after { + background-color: #1a1a1a; + content: ""; + height: 52px; + position: absolute; + top:0; + width: 52px; + z-index: 0; +} + +.pagination:before { + right: 0; +} + +.pagination:after { + right: 54px; +} + +.pagination a:hover, +.pagination a:focus { + color: #1a1a1a; +} + +.pagination .nav-links { + padding-right: 106px; + position: relative; +} + +.pagination .nav-links:before, +.pagination .nav-links:after { + color: #fff; + font-size: 32px; + line-height: 51px; + opacity: 0.3; + position: absolute; + width: 52px; + z-index: 1; +} + +.pagination .nav-links:before { + content: "\f429"; + right: -1px; +} + +.pagination .nav-links:after { + content: "\f430"; + right: 55px; +} + +/* reset screen-reader-text */ +.pagination .current .screen-reader-text { + position: static !important; +} + +.pagination .page-numbers { + display: none; + letter-spacing: 0.013157895em; + line-height: 1; + margin: 0 0.7368421053em 0 -0.7368421053em; + padding: 0.8157894737em 0.7368421053em 0.3947368421em; + text-transform: uppercase; +} + +.pagination .current { + display: inline-block; + font-weight: 700; +} + +.pagination .prev, +.pagination .next { + background-color: #1a1a1a; + color: #fff; + display: inline-block; + height: 52px; + margin: 0; + overflow: hidden; + padding: 0; + position: absolute; + top: 0; + width: 52px; + z-index: 2; +} + +.pagination .prev:before, +.pagination .next:before { + font-size: 32px; + height: 53px; + line-height: 52px; + position: relative; + width: 53px; +} + +.pagination .prev:hover, +.pagination .prev:focus, +.pagination .next:hover, +.pagination .next:focus { + background-color: #007acc; + color: #fff; +} + +.pagination .prev:focus, +.pagination .next:focus { + outline: 0; +} + +.pagination .prev { + right: 54px; +} + +.pagination .prev:before { + content: "\f430"; + left: -1px; + top: -1px; +} + +.pagination .next { + right: 0; +} + +.pagination .next:before { + content: "\f429"; + right: -1px; + top: -1px; +} + +.image-navigation, +.comment-navigation { + border-top: 1px solid #d1d1d1; + border-bottom: 1px solid #d1d1d1; + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin: 0 7.6923% 2.1538461538em; + padding: 1.0769230769em 0; +} + +.comment-navigation { + margin-right: 0; + margin-left: 0; +} + +.comments-title + .comment-navigation { + border-bottom: 0; + margin-bottom: 0; +} + +.image-navigation .nav-previous:not(:empty), +.image-navigation .nav-next:not(:empty), +.comment-navigation .nav-previous:not(:empty), +.comment-navigation .nav-next:not(:empty) { + display: inline-block; +} + +.image-navigation .nav-previous:not(:empty) + .nav-next:not(:empty):before, +.comment-navigation .nav-previous:not(:empty) + .nav-next:not(:empty):before { + content: "\002f"; + display: inline-block; + opacity: 0.7; + padding: 0 0.538461538em; +} + + +/** + * 7.0 - Accessibility + */ + +/* Text meant only for screen readers */ +.says, +.screen-reader-text { + clip: rect(1px, 1px, 1px, 1px); + height: 1px; + overflow: hidden; + position: absolute !important; + width: 1px; + /* many screen reader and browser combinations announce broken words as they would appear visually */ + word-wrap: normal !important; +} + +/* must have higher specificity than alternative color schemes inline styles */ +.site .skip-link { + background-color: #f1f1f1; + box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.2); + color: #21759b; + display: block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 14px; + font-weight: 700; + left: -9999em; + outline: none; + padding: 15px 23px 14px; + text-decoration: none; + text-transform: none; + top: -9999em; +} + +.logged-in .site .skip-link { + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.2); + font-family: "Open Sans", sans-serif; +} + +.site .skip-link:focus { + clip: auto; + height: auto; + left: 6px; + top: 7px; + width: auto; + z-index: 100000; +} + + +/** + * 8.0 - Alignments + */ + +.alignleft { + float: left; + margin: 0.375em 1.75em 1.75em 0; +} + +.alignright { + float: right; + margin: 0.375em 0 1.75em 1.75em; +} + +.aligncenter { + clear: both; + display: block; + margin: 0 auto 1.75em; +} + +blockquote.alignleft { + margin: 0.3157894737em 1.4736842105em 1.473684211em 0; +} + +blockquote.alignright { + margin: 0.3157894737em 0 1.473684211em 1.4736842105em; +} + +blockquote.aligncenter { + margin-bottom: 1.473684211em; +} + + +/** + * 9.0 - Clearings + */ + +.clear:before, +.clear:after, +blockquote:before, +blockquote:after, +.entry-content:before, +.entry-content:after, +.entry-summary:before, +.entry-summary:after, +.comment-content:before, +.comment-content:after, +.site-content:before, +.site-content:after, +.site-main > article:before, +.site-main > article:after, +.primary-menu:before, +.primary-menu:after, +.social-links-menu:before, +.social-links-menu:after, +.textwidget:before, +.textwidget:after, +.content-bottom-widgets:before, +.content-bottom-widgets:after { + content: ""; + display: table; +} + +.clear:after, +blockquote:after, +.entry-content:after, +.entry-summary:after, +.comment-content:after, +.site-content:after, +.site-main > article:after, +.primary-menu:after, +.social-links-menu:after, +.textwidget:after, +.content-bottom-widgets:after { + clear: both; +} + + +/** + * 10.0 - Widgets + */ + +.widget { + border-top: 4px solid #1a1a1a; + margin-bottom: 3.5em; + padding-top: 1.75em; +} + +.widget-area > :last-child, +.widget > :last-child { + margin-bottom: 0; +} + +.widget .widget-title { + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 16px; + font-size: 1rem; + letter-spacing: 0.046875em; + line-height: 1.3125; + margin: 0 0 1.75em; + text-transform: uppercase; +} + +.widget .widget-title:empty { + margin-bottom: 0; +} + +.widget-title a { + color: #1a1a1a; +} + +/* Calendar widget */ +.widget.widget_calendar table { + margin: 0; +} + +.widget_calendar td, +.widget_calendar th { + line-height: 2.5625; + padding: 0; + text-align: center; +} + +.widget_calendar caption { + font-weight: 900; + margin-bottom: 1.75em; +} + +.widget_calendar tbody a { + background-color: #007acc; + color: #fff; + display: block; + font-weight: 700; +} + +.widget_calendar tbody a:hover, +.widget_calendar tbody a:focus { + background-color: #686868; + color: #fff; +} + +/* Recent Posts widget */ +.widget_recent_entries .post-date { + color: #686868; + display: block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.615384615; + margin-bottom: 0.538461538em; +} + +.widget_recent_entries li:last-child .post-date { + margin-bottom: 0; +} + +/* RSS widget */ +.widget_rss .rsswidget img { + margin-top: -0.375em; +} + +.widget_rss .rss-date, +.widget_rss cite { + color: #686868; + display: block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + font-style: normal; + line-height: 1.615384615; + margin-bottom: 0.538461538em; +} + +.widget_rss .rssSummary:last-child { + margin-bottom: 2.1538461538em; +} + +.widget_rss li:last-child :last-child { + margin-bottom: 0; +} + +/* Tag Cloud widget */ +.tagcloud a { + border: 1px solid #d1d1d1; + border-radius: 2px; + display: inline-block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + line-height: 1; + margin: 0 0.1875em 0.4375em 0; + padding: 0.5625em 0.4375em 0.5em; +} + +.tagcloud ul { + list-style-type: none; + margin-left: 0; +} + +.tagcloud ul li { + display: inline-block; +} + +.tagcloud a:hover, +.tagcloud a:focus { + border-color: #007acc; + color: #007acc; + outline: 0; +} + + +/** + * 11.0 - Content + */ + +.site { + background-color: #fff; +} + +.site-inner { + margin: 0 auto; + max-width: 1320px; + position: relative; +} + +.site-content { + word-wrap: break-word; +} + +/* Do not show the outline on the skip link target. */ +#content[tabindex="-1"]:focus { + outline: 0; +} + +.site-main { + margin-bottom: 3.5em; +} + +.site-main > :last-child { + margin-bottom: 0; +} + + +/** + * 11.1 - Header + */ + +.site-header { + padding: 2.625em 7.6923%; +} + +.site-header-main { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; +} + +.site-branding { + margin: 0.875em auto 0.875em 0; + /* Avoid overflowing wide custom logo in small screens in Firefox and IEs */ + max-width: 100%; + min-width: 0; + overflow: hidden; +} + +.custom-logo-link { + display: block; +} + +.custom-logo { + max-width: 180px; +} + +.site-title { + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 23px; + font-size: 1.4375rem; + font-weight: 700; + line-height: 1.2173913043; + margin: 0; +} + +.site-branding .site-title a { + color: #1a1a1a; +} + +.site-branding .site-title a:hover, +.site-branding .site-title a:focus { + color: #007acc; +} + +.wp-custom-logo .site-title { + margin-top: 0.608695652em; +} + +.site-description { + color: #686868; + display: none; + font-size: 13px; + font-size: 0.8125rem; + font-weight: 400; + line-height: 1.0769230769; + margin: 0.538461538em 0 0; +} + +.menu-toggle { + background-color: transparent; + border: 1px solid #d1d1d1; + color: #1a1a1a; + font-size: 13px; + font-size: 0.8125rem; + margin: 1.076923077em 0; + padding: 0.769230769em; +} + +.no-js .menu-toggle { + display: none; +} + +.menu-toggle:hover, +.menu-toggle:focus { + background-color: transparent; + border-color: #007acc; + color: #007acc; +} + +.menu-toggle.toggled-on, +.menu-toggle.toggled-on:hover, +.menu-toggle.toggled-on:focus { + background-color: #1a1a1a; + border-color: #1a1a1a; + color: #fff; +} + +.menu-toggle:focus { + outline: 0; +} + +.menu-toggle.toggled-on:focus { + outline: thin dotted; +} + +.header-image { + clear: both; + margin: 0.875em 0; +} + +.header-image a { + display: block; +} + +.header-image a:hover img, +.header-image a:focus img { + opacity: 0.85; +} + +/** + * 11.2 - Posts and pages + */ + +.site-main > article { + margin-bottom: 3.5em; + position: relative; +} + +.entry-header, +.entry-summary, +.entry-content, +.entry-footer, +.page-content { + margin-right: 7.6923%; + margin-left: 7.6923%; +} + +.entry-title { + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 28px; + font-size: 1.75rem; + font-weight: 700; + line-height: 1.25; + margin-bottom: 1em; +} + +.entry-title a { + color: #1a1a1a; +} + +.entry-title a:hover, +.entry-title a:focus { + color: #007acc; +} + +.post-thumbnail { + display: block; + margin: 0 7.6923% 1.75em; +} + +.post-thumbnail img { + display: block; +} + +.no-sidebar .post-thumbnail img { + margin: 0 auto; +} + +a.post-thumbnail:hover, +a.post-thumbnail:focus { + opacity: 0.85; +} + +.entry-content, +.entry-summary { + border-color: #d1d1d1; +} + +.entry-content h1, +.entry-summary h1, +.comment-content h1, +.textwidget h1 { + font-size: 28px; + font-size: 1.75rem; + line-height: 1.25; + margin-top: 2em; + margin-bottom: 1em; +} + +.entry-content h2, +.entry-summary h2, +.comment-content h2, +.textwidget h2 { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.2173913043; + margin-top: 2.4347826087em; + margin-bottom: 1.2173913043em; +} + +.entry-content h3, +.entry-summary h3, +.comment-content h3, +.textwidget h3 { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.1052631579; + margin-top: 2.9473684211em; + margin-bottom: 1.4736842105em; +} + +.entry-content h4, +.entry-content h5, +.entry-content h6, +.entry-summary h4, +.entry-summary h5, +.entry-summary h6, +.comment-content h4, +.comment-content h5, +.comment-content h6, +.textwidget h4, +.textwidget h5, +.textwidget h6 { + font-size: 16px; + font-size: 1rem; + line-height: 1.3125; + margin-top: 3.5em; + margin-bottom: 1.75em; +} + +.entry-content h4, +.entry-summary h4, +.comment-content h4, +.textwidget h4 { + letter-spacing: 0.140625em; + text-transform: uppercase; +} + +.entry-content h6, +.entry-summary h6, +.comment-content h6, +.textwidget h6 { + font-style: italic; +} + +.entry-content h1, +.entry-content h2, +.entry-content h3, +.entry-content h4, +.entry-content h5, +.entry-content h6, +.entry-summary h1, +.entry-summary h2, +.entry-summary h3, +.entry-summary h4, +.entry-summary h5, +.entry-summary h6, +.comment-content h1, +.comment-content h2, +.comment-content h3, +.comment-content h4, +.comment-content h5, +.comment-content h6, +.textwidget h1, +.textwidget h2, +.textwidget h3, +.textwidget h4, +.textwidget h5, +.textwidget h6 { + font-weight: 900; +} + +.entry-content h1:first-child, +.entry-content h2:first-child, +.entry-content h3:first-child, +.entry-content h4:first-child, +.entry-content h5:first-child, +.entry-content h6:first-child, +.entry-summary h1:first-child, +.entry-summary h2:first-child, +.entry-summary h3:first-child, +.entry-summary h4:first-child, +.entry-summary h5:first-child, +.entry-summary h6:first-child, +.comment-content h1:first-child, +.comment-content h2:first-child, +.comment-content h3:first-child, +.comment-content h4:first-child, +.comment-content h5:first-child, +.comment-content h6:first-child, +.textwidget h1:first-child, +.textwidget h2:first-child, +.textwidget h3:first-child, +.textwidget h4:first-child, +.textwidget h5:first-child, +.textwidget h6:first-child { + margin-top: 0; +} + +.post-navigation .post-title, +.entry-title, +.comments-title { + -webkit-hyphens: auto; + -moz-hyphens: auto; + -ms-hyphens: auto; + hyphens: auto; +} + +body:not(.search-results) .entry-summary { + color: #686868; + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.4736842105; + margin-bottom: 1.4736842105em; +} + +body:not(.search-results) .entry-header + .entry-summary { + margin-top: -0.736842105em; +} + +body:not(.search-results) .entry-summary p, +body:not(.search-results) .entry-summary address, +body:not(.search-results) .entry-summary hr, +body:not(.search-results) .entry-summary ul, +body:not(.search-results) .entry-summary ol, +body:not(.search-results) .entry-summary dl, +body:not(.search-results) .entry-summary dd, +body:not(.search-results) .entry-summary table { + margin-bottom: 1.4736842105em; +} + +body:not(.search-results) .entry-summary li > ul, +body:not(.search-results) .entry-summary li > ol { + margin-bottom: 0; +} + +body:not(.search-results) .entry-summary th, +body:not(.search-results) .entry-summary td { + padding: 0.3684210526em; +} + +body:not(.search-results) .entry-summary fieldset { + margin-bottom: 1.4736842105em; + padding: 0.3684210526em; +} + +body:not(.search-results) .entry-summary blockquote { + border-color: currentColor; +} + +body:not(.search-results) .entry-summary blockquote > :last-child { + margin-bottom: 0; +} + +body:not(.search-results) .entry-summary .alignleft { + margin: 0.2631578947em 1.4736842105em 1.4736842105em 0; +} + +body:not(.search-results) .entry-summary .alignright { + margin: 0.2631578947em 0 1.4736842105em 1.4736842105em; +} + +body:not(.search-results) .entry-summary .aligncenter { + margin-bottom: 1.4736842105em; +} + +.entry-content > :last-child, +.entry-summary > :last-child, +body:not(.search-results) .entry-summary > :last-child, +.page-content > :last-child, +.comment-content > :last-child, +.textwidget > :last-child { + margin-bottom: 0; +} + +.more-link { + white-space: nowrap; +} + +.author-info { + border-color: inherit; + border-style: solid; + border-width: 1px 0 1px 0; + clear: both; + padding-top: 1.75em; + padding-bottom: 1.75em; +} + +.author-avatar .avatar { + float: left; + height: 42px; + margin: 0 1.75em 1.75em 0; + width: 42px; +} + +.author-description > :last-child { + margin-bottom: 0; +} + +.entry-content .author-title { + clear: none; + font-size: 16px; + font-size: 1rem; + font-weight: 900; + line-height: 1.75; + margin: 0; +} + +.author-bio { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin-bottom: 1.6153846154em; + overflow: hidden; +} + +.author-link { + white-space: nowrap; +} + +.entry-footer { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin-top: 2.1538461538em; +} + +.entry-footer:empty { + margin: 0; +} + +.entry-footer a { + color: #686868; +} + +.entry-footer a:hover, +.entry-footer a:focus { + color: #007acc; +} + +.entry-footer > span:not(:last-child):after { + content: "\002f"; + display: inline-block; + opacity: 0.7; + padding: 0 0.538461538em; +} + +.entry-footer .avatar { + height: 21px; + margin: -0.1538461538em 0.5384615385em 0 0; + width: 21px; +} + +.sticky-post { + color: #686868; + display: block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + letter-spacing: 0.076923077em; + line-height: 1.6153846154; + margin-bottom: 0.5384615385em; + text-transform: uppercase; +} + +/** + * IE8 and earlier will drop any block with CSS3 selectors. + * Do not combine these styles with the next block. + */ +.updated:not(.published) { + display: none; +} + +.sticky .posted-on, +.byline { + display: none; +} + +.single .byline, +.group-blog .byline { + display: inline; +} + +.page-header { + border-top: 4px solid #1a1a1a; + margin: 0 7.6923% 3.5em; + padding-top: 1.75em; +} + +body.error404 .page-header, +body.search-no-results .page-header { + border-top: 0; + padding-top: 0; +} + +.page-title { + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.2173913043; +} + +.taxonomy-description { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; +} + +.taxonomy-description p { + margin: 0.5384615385em 0 1.6153846154em; +} + +.taxonomy-description > :last-child { + margin-bottom: 0; +} + +.page-links { + clear: both; + font-family: Montserrat, "Helvetica Neue", sans-serif; + margin: 0 0 1.75em; +} + +.page-links a, +.page-links > span { + border: 1px solid #d1d1d1; + border-radius: 2px; + display: inline-block; + font-size: 13px; + font-size: 0.8125rem; + height: 1.8461538462em; + line-height: 1.6923076923em; + margin-right: 0.3076923077em; + text-align: center; + width: 1.8461538462em; +} + +.page-links a { + background-color: #1a1a1a; + border-color: #1a1a1a; + color: #fff; +} + +.page-links a:hover, +.page-links a:focus { + background-color: #007acc; + border-color: transparent; + color: #fff; +} + +.page-links > .page-links-title { + border: 0; + color: #1a1a1a; + height: auto; + margin: 0; + padding-right: 0.6153846154em; + width: auto; +} + +.entry-attachment { + margin-bottom: 1.75em; +} + +.entry-caption { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + font-style: italic; + line-height: 1.6153846154; + padding-top: 1.0769230769em; +} + +.entry-caption > :last-child { + margin-bottom: 0; +} + +.content-bottom-widgets { + margin: 0 7.6923%; +} + +.content-bottom-widgets .widget-area { + margin-bottom: 3.5em; +} + + +/** + * 11.3 - Post Formats + */ + +.format-aside .entry-title, +.format-image .entry-title, +.format-video .entry-title, +.format-quote .entry-title, +.format-gallery .entry-title, +.format-status .entry-title, +.format-link .entry-title, +.format-audio .entry-title, +.format-chat .entry-title { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.473684211; + margin-bottom: 1.473684211em; +} + +.blog .format-status .entry-title, +.archive .format-status .entry-title { + display: none; +} + + +/** + * 11.4 - Comments + */ + +.comments-area { + margin: 0 7.6923% 3.5em; +} + +.comment-list + .comment-respond, +.comment-navigation + .comment-respond { + padding-top: 1.75em; +} + +.comments-title, +.comment-reply-title { + border-top: 4px solid #1a1a1a; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 23px; + font-size: 1.4375rem; + font-weight: 700; + line-height: 1.3125; + padding-top: 1.217391304em; +} + +.comments-title { + margin-bottom: 1.217391304em; +} + +.comment-list { + list-style: none; + margin: 0; +} + +.comment-list article, +.comment-list .pingback, +.comment-list .trackback { + border-top: 1px solid #d1d1d1; + padding: 1.75em 0; +} + +.comment-list .children { + list-style: none; + margin: 0; +} + +.comment-list .children > li { + padding-left: 0.875em; +} + +.comment-author { + color: #1a1a1a; + margin-bottom: 0.4375em; +} + +.comment-author .avatar { + float: left; + height: 28px; + margin-right: 0.875em; + position: relative; + width: 28px; +} + +.bypostauthor > article .fn:after { + content: "\f304"; + left: 3px; + position: relative; + top: 5px; +} + +.comment-metadata, +.pingback .edit-link { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; +} + +.comment-metadata { + margin-bottom: 2.1538461538em; +} + +.comment-metadata a, +.pingback .comment-edit-link { + color: #686868; +} + +.comment-metadata a:hover, +.comment-metadata a:focus, +.pingback .comment-edit-link:hover, +.pingback .comment-edit-link:focus { + color: #007acc; +} + +.comment-metadata .edit-link, +.pingback .edit-link { + display: inline-block; +} + +.comment-metadata .edit-link:before, +.pingback .edit-link:before { + content: "\002f"; + display: inline-block; + opacity: 0.7; + padding: 0 0.538461538em; +} + +.comment-content ul, +.comment-content ol { + margin: 0 0 1.5em 1.25em; +} + +.comment-content li > ul, +.comment-content li > ol { + margin-bottom: 0; +} + +.comment-reply-link { + border: 1px solid #d1d1d1; + border-radius: 2px; + color: #007acc; + display: inline-block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1; + margin-top: 2.1538461538em; + padding: 0.5384615385em 0.5384615385em 0.4615384615em; +} + +.comment-reply-link:hover, +.comment-reply-link:focus { + border-color: currentColor; + color: #007acc; + outline: 0; +} + +.comment-form { + padding-top: 1.75em; +} + +.comment-form label { + color: #686868; + display: block; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + letter-spacing: 0.076923077em; + line-height: 1.6153846154; + margin-bottom: 0.5384615385em; + text-transform: uppercase; +} + +.comment-list .comment-form { + padding-bottom: 1.75em; +} + +.comment-notes, +.comment-awaiting-moderation, +.logged-in-as, +.form-allowed-tags { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin-bottom: 2.1538461538em; +} + +.no-comments { + border-top: 1px solid #d1d1d1; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-weight: 700; + margin: 0; + padding-top: 1.75em; +} + +.comment-navigation + .no-comments { + border-top: 0; + padding-top: 0; +} + +.form-allowed-tags code { + font-family: Inconsolata, monospace; +} + +.form-submit { + margin-bottom: 0; +} + +.required { + color: #007acc; + font-family: Merriweather, Georgia, serif; +} + +.comment-reply-title small { + font-size: 100%; +} + +.comment-reply-title small a { + border: 0; + float: right; + height: 32px; + overflow: hidden; + width: 26px; +} + +.comment-reply-title small a:hover, +.comment-reply-title small a:focus { + color: #1a1a1a; +} + +.comment-reply-title small a:before { + content: "\f405"; + font-size: 32px; + position: relative; + top: -5px; +} + +.comment-form #wp-comment-cookies-consent { + margin: 0 10px 0 0; +} + +.comment-form .comment-form-cookies-consent label { + display: inline; + font-family: Merriweather, Georgia, serif; + letter-spacing: 0; + text-transform: none; +} + +/** + * 11.5 - Sidebar + */ + +.sidebar { + margin-bottom: 3.5em; + padding: 0 7.6923%; +} + + +/** + * 11.6 - Footer + */ + +.site-footer { + padding: 0 7.6923% 1.75em; +} + +.site-info { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; +} + +.site-info a { + color: #686868; +} + +.site-info a:hover, +.site-info a:focus { + color: #007acc; +} + +.site-footer .site-title { + font-family: inherit; + font-size: inherit; + font-weight: 400; +} + +.site-footer .site-title:after { + content: "\002f"; + display: inline-block; + font-family: Montserrat, sans-serif; + opacity: 0.7; + padding: 0 0.307692308em 0 0.538461538em; +} + +.site-footer span[role=separator] { + font-family: Montserrat, sans-serif; + opacity: 0.7; + padding: 0 0.307692308em 0 0.538461538em; +} + +.site-footer span[role=separator]::before { + content: '\002f'; +} + + +/** + * 12.0 - Media + */ + +.site .avatar { + border-radius: 50%; +} + +.entry-content .wp-smiley, +.entry-summary .wp-smiley, +.comment-content .wp-smiley, +.textwidget .wp-smiley { + border: none; + margin-top: 0; + margin-bottom: 0; + padding: 0; +} + +.entry-content a img, +.entry-summary a img, +.comment-content a img, +.textwidget a img { + display: block; +} + +/* Make sure embeds and iframes fit their containers. */ +embed, +iframe, +object, +video { + margin-bottom: 1.75em; + max-width: 100%; + vertical-align: middle; +} + +p > embed, +p > iframe, +p > object, +p > video { + margin-bottom: 0; +} + +.entry-content .wp-audio-shortcode a, +.entry-content .wp-playlist a { + box-shadow: none; +} + +.wp-audio-shortcode, +.wp-video, +.wp-playlist.wp-audio-playlist { + margin-top: 0; + margin-bottom: 1.75em; +} + +.wp-playlist.wp-audio-playlist { + padding-bottom: 0; +} + +.wp-playlist .wp-playlist-tracks { + margin-top: 0; +} + +.wp-playlist-item .wp-playlist-caption { + border-bottom: 0; + padding: 0.7142857143em 0; +} + +.wp-playlist-item .wp-playlist-item-length { + top: 0.7142857143em; +} + + +/** + * 12.1 - Captions + */ + +.wp-caption { + margin-bottom: 1.75em; + max-width: 100%; +} + +.wp-caption img[class*="wp-image-"] { + display: block; + margin: 0; +} + +.wp-caption .wp-caption-text { + color: #686868; + font-size: 13px; + font-size: 0.8125rem; + font-style: italic; + line-height: 1.6153846154; + padding-top: 0.5384615385em; +} + + +/** + * 12.2 - Galleries + */ + +.gallery { + margin: 0 -1.1666667% 1.75em; +} + +.gallery-item { + display: inline-block; + max-width: 33.33%; + padding: 0 1.1400652% 2.2801304%; + text-align: center; + vertical-align: top; + width: 100%; +} + +.gallery-columns-1 .gallery-item { + max-width: 100%; +} + +.gallery-columns-2 .gallery-item { + max-width: 50%; +} + +.gallery-columns-4 .gallery-item { + max-width: 25%; +} + +.gallery-columns-5 .gallery-item { + max-width: 20%; +} + +.gallery-columns-6 .gallery-item { + max-width: 16.66%; +} + +.gallery-columns-7 .gallery-item { + max-width: 14.28%; +} + +.gallery-columns-8 .gallery-item { + max-width: 12.5%; +} + +.gallery-columns-9 .gallery-item { + max-width: 11.11%; +} + +.gallery-icon img { + margin: 0 auto; +} + +.gallery-caption { + color: #686868; + display: block; + font-size: 13px; + font-size: 0.8125rem; + font-style: italic; + line-height: 1.6153846154; + padding-top: 0.5384615385em; +} + +.gallery-columns-6 .gallery-caption, +.gallery-columns-7 .gallery-caption, +.gallery-columns-8 .gallery-caption, +.gallery-columns-9 .gallery-caption { + display: none; +} + + +/** + * 13.0 - Multisites + */ + +.widecolumn { + margin-bottom: 3.5em; + padding: 0 7.6923%; +} + +.widecolumn .mu_register { + width: auto; +} + +.widecolumn .mu_register .mu_alert { + background: transparent; + border-color: #d1d1d1; + color: inherit; + margin-bottom: 3.5em; + padding: 1.75em; +} + +.widecolumn form, +.widecolumn .mu_register form { + margin-top: 0; +} + +.widecolumn h2 { + font-size: 23px; + font-size: 1.4375rem; + font-weight: 900; + line-height: 1.2173913043; + margin-bottom: 1.2173913043em; +} + +.widecolumn p { + margin: 1.75em 0; +} + +.widecolumn p + h2 { + margin-top: 2.4347826087em; +} + +.widecolumn label, +.widecolumn .mu_register label { + color: #686868; + font-family: Montserrat, "Helvetica Neue", sans-serif; + font-size: 13px; + font-size: 0.8125rem; + font-weight: 400; + letter-spacing: 0.076923077em; + line-height: 1.6153846154; + text-transform: uppercase; +} + +.widecolumn .mu_register label { + margin: 2.1538461538em 0.7692307692em 0.5384615385em 0; +} + +.widecolumn .mu_register label strong { + font-weight: 400; +} + +.widecolumn #key, +.widecolumn .mu_register #blog_title, +.widecolumn .mu_register #user_email, +.widecolumn .mu_register #blogname, +.widecolumn .mu_register #user_name { + font-size: 16px; + font-size: 1rem; + width: 100%; +} + +.widecolumn .mu_register #blogname { + margin: 0; +} + +.widecolumn .mu_register #blog_title, +.widecolumn .mu_register #user_email, +.widecolumn .mu_register #user_name { + margin: 0 0 0.375em; +} + +.widecolumn #submit, +.widecolumn .mu_register input[type="submit"] { + font-size: 16px; + font-size: 1rem; + margin: 0; + width: auto; +} + +.widecolumn .mu_register .prefix_address, +.widecolumn .mu_register .suffix_address { + font-size: inherit; +} + +.widecolumn .mu_register > :last-child, +.widecolumn form > :last-child { + margin-bottom: 0; +} + + +/** + * 14.0 - Media Queries + */ + +/** + * Does the same thing as , + * but in the future W3C standard way. -ms- prefix is required for IE10+ to + * render responsive styling in Windows 8 "snapped" views; IE10+ does not honor + * the meta tag. See https://core.trac.wordpress.org/ticket/25888. + */ +@-ms-viewport { + width: device-width; +} + +@viewport { + width: device-width; +} + + +/** + * 14.1 - >= 710px + */ + +@media screen and (min-width: 44.375em) { + body:not(.custom-background-image):before, + body:not(.custom-background-image):after { + background: inherit; + content: ""; + display: block; + height: 21px; + left: 0; + position: fixed; + width: 100%; + z-index: 99; + } + + body:not(.custom-background-image):before { + top: 0; + } + + body:not(.custom-background-image).admin-bar:before { + top: 46px; + } + + body:not(.custom-background-image):after { + bottom: 0; + } + + .site { + margin: 21px; + } + + .site-main { + margin-bottom: 5.25em; + } + + .site-header { + padding: 3.9375em 7.6923%; + } + + .site-branding { + margin-top: 1.3125em; + margin-bottom: 1.3125em; + } + + .custom-logo { + max-width: 210px; + } + + .site-title { + font-size: 28px; + font-size: 1.75rem; + line-height: 1.25; + } + + .wp-custom-logo .site-title { + margin-top: 0.5em; + } + + .site-description { + display: block; + } + + .menu-toggle { + font-size: 16px; + font-size: 1.0rem; + margin: 1.3125em 0; + padding: 0.8125em 0.875em 0.6875em; + } + + .site-header-menu { + margin: 1.3125em 0; + } + + .site-header .main-navigation + .social-navigation { + margin-top: 2.625em; + } + + .header-image { + margin: 1.3125em 0; + } + + .pagination { + margin: 0 23.0769% 4.421052632em 7.6923% + } + + .post-navigation { + margin-bottom: 5.25em; + } + + .post-navigation .post-title { + font-size: 28px; + font-size: 1.75rem; + line-height: 1.25; + } + + /* restore screen-reader-text */ + .pagination .current .screen-reader-text { + position: absolute !important; + } + + .pagination .page-numbers { + display: inline-block; + } + + .site-main > article { + margin-bottom: 5.25em; + } + + .entry-header, + .post-thumbnail, + .entry-content, + .entry-summary, + .entry-footer, + .comments-area, + .image-navigation, + .post-navigation, + .page-header, + .page-content, + .content-bottom-widgets { + margin-right: 23.0769%; + } + + .entry-title { + font-size: 33px; + font-size: 2.0625rem; + line-height: 1.2727272727; + margin-bottom: 0.8484848485em; + } + + .entry-content blockquote.alignleft, + .entry-content blockquote.alignright { + border-width: 4px 0 0 0; + padding: 0.9473684211em 0 0; + width: -webkit-calc(50% - 0.736842105em); + width: calc(50% - 0.736842105em); + } + + .entry-content blockquote:not(.alignleft):not(.alignright), + .entry-summary blockquote, + .comment-content blockquote { + margin-left: -1.473684211em; + } + + .entry-content blockquote blockquote:not(.alignleft):not(.alignright), + .entry-summary blockquote blockquote, + .comment-content blockquote blockquote { + margin-left: 0; + } + + .entry-content ul, + .entry-summary ul, + .comment-content ul, + .entry-content ol, + .entry-summary ol, + .comment-content ol { + margin-left: 0; + } + + .entry-content li > ul, + .entry-summary li > ul, + .comment-content li > ul, + .entry-content blockquote > ul, + .entry-summary blockquote > ul, + .comment-content blockquote > ul { + margin-left: 1.25em; + } + + .entry-content li > ol, + .entry-summary li > ol, + .comment-content li > ol, + .entry-content blockquote > ol, + .entry-summary blockquote > ol, + .comment-content blockquote > ol { + margin-left: 1.5em; + } + + .comment-author { + margin-bottom: 0; + } + + .comment-author .avatar { + height: 42px; + position: relative; + top: 0.25em; + width: 42px; + } + + .comment-list .children > li { + padding-left: 1.75em; + } + + .comment-list + .comment-respond, + .comment-navigation + .comment-respond { + padding-top: 3.5em; + } + + .comments-area, + .widget, + .content-bottom-widgets .widget-area { + margin-bottom: 5.25em; + } + + .sidebar, + .widecolumn { + margin-bottom: 5.25em; + padding-right: 23.0769%; + } + + body:not(.search-results) .entry-summary li > ul, + body:not(.search-results) .entry-summary blockquote > ul { + margin-left: 1.157894737em; + } + + body:not(.search-results) .entry-summary li > ol, + body:not(.search-results) .entry-summary blockquote > ol { + margin-left: 1.473684211em; + } +} + + +/** + * 14.2 - >= 783px + */ + +@media screen and (min-width: 48.9375em) { + body:not(.custom-background-image).admin-bar:before { + top: 32px; + } +} + + +/** + * 14.3 - >= 910px + */ + +@media screen and (min-width: 56.875em) { + .site-header { + padding-right: 4.5455%; + padding-left: 4.5455%; + } + + .site-header-main { + -webkit-align-items: flex-start; + -ms-flex-align: start; + align-items: flex-start; + } + + .wp-custom-logo .site-header-main { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + } + + .site-header-menu { + display: block; + -webkit-flex: 0 1 auto; + -ms-flex: 0 1 auto; + flex: 0 1 auto; + } + + .main-navigation { + margin: 0 -0.875em; + } + + .main-navigation .primary-menu, + .main-navigation .primary-menu > li { + border: 0; + } + + .main-navigation .primary-menu > li { + float: left; + } + + .main-navigation a { + outline-offset: -8px; + padding: 0.65625em 0.875em; + white-space: nowrap; + } + + .main-navigation li:hover > a, + .main-navigation li.focus > a { + color: #007acc; + } + + .main-navigation ul ul { + border-bottom: 1px solid #d1d1d1; + display: block; + left: -999em; + margin: 0; + position: absolute; + z-index: 99999; + } + + .main-navigation ul ul ul { + top: -1px; + } + + .main-navigation ul ul ul:before, + .main-navigation ul ul ul:after { + border: 0; + } + + .main-navigation ul ul li { + background-color: #fff; + border: 1px solid #d1d1d1; + border-bottom-width: 0; + } + + .main-navigation ul ul a { + white-space: normal; + width: 12.6875em; + } + + .main-navigation ul ul:before, + .main-navigation ul ul:after { + border-style: solid; + content: ""; + position: absolute; + } + + .main-navigation ul ul:before { + border-color: #d1d1d1 transparent; + border-width: 0 10px 10px; + right: 9px; + top: -9px; + } + + .main-navigation ul ul:after { + border-color: #fff transparent; + border-width: 0 8px 8px; + right: 11px; + top: -7px; + } + + .main-navigation li:hover > ul, + .main-navigation li.focus > ul { + left: auto; + right: 0; + } + + .main-navigation ul ul li:hover > ul, + .main-navigation ul ul li.focus > ul { + left: auto; + right: 100%; + } + + .main-navigation .menu-item-has-children > a { + margin: 0; + padding-right: 2.25em; + } + + .main-navigation .menu-item-has-children > a:after { + content: "\f431"; + position: absolute; + right: 0.625em; + top: 0.8125em; + } + + .main-navigation ul ul .menu-item-has-children > a { + padding-right: 2.0625em; + } + + .main-navigation ul ul .menu-item-has-children > a:after { + right: 0.5625em; + top: 0.875em; + -webkit-transform: rotate(90deg); + -moz-transform: rotate(90deg); + -ms-transform: rotate(90deg); + transform: rotate(90deg); + } + + .dropdown-toggle, + .main-navigation ul .dropdown-toggle.toggled-on, + .menu-toggle, + .site-header .social-navigation, + .site-footer .main-navigation { + display: none; + } + + .site-content { + padding: 0 4.5455%; + } + + .content-area { + float: left; + margin-right: -100%; + width: 70%; + } + + .entry-header, + .post-thumbnail, + .entry-content, + .entry-summary, + .entry-footer, + .comments-area, + .image-navigation, + .post-navigation, + .pagination, + .page-header, + .page-content, + .content-bottom-widgets { + margin-right: 0; + margin-left: 0; + } + + .sidebar { + float: left; + margin-left: 75%; + padding: 0; + width: 25%; + } + + .widget { + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin-bottom: 3.230769231em; + padding-top: 1.615384615em; + } + + .widget .widget-title { + margin-bottom: 1.3125em; + } + + .widget p, + .widget address, + .widget hr, + .widget ul, + .widget ol, + .widget dl, + .widget dd, + .widget table { + margin-bottom: 1.6153846154em; + } + + .widget li > ul, + .widget li > ol { + margin-bottom: 0; + } + + .widget blockquote { + font-size: 16px; + font-size: 1rem; + line-height: 1.3125; + margin-bottom: 1.3125em; + padding-left: 1.0625em; + } + + .widget blockquote cite, + .widget blockquote small { + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + } + + .widget th, + .widget td { + padding: 0.5384615385em; + } + + .widget pre { + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin-bottom: 1.6153846154em; + padding: 0.5384615385em; + } + + .widget fieldset { + margin-bottom: 1.6153846154em; + padding: 0.5384615385em; + } + + .widget button, + .widget input, + .widget select, + .widget textarea { + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + } + + .widget button, + .widget input[type="button"], + .widget input[type="reset"], + .widget input[type="submit"] { + line-height: 1; + padding: 0.846153846em; + } + + .widget input[type="date"], + .widget input[type="time"], + .widget input[type="datetime-local"], + .widget input[type="week"], + .widget input[type="month"], + .widget input[type="text"], + .widget input[type="email"], + .widget input[type="url"], + .widget input[type="password"], + .widget input[type="search"], + .widget input[type="tel"], + .widget input[type="number"], + .widget textarea { + padding: 0.4615384615em 0.5384615385em; + } + + .widget h1 { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.2173913043; + margin-bottom: 0.9130434783em; + } + + .widget h2 { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.1052631579; + margin-bottom: 1.1052631579em; + } + + .widget h3 { + font-size: 16px; + font-size: 1rem; + line-height: 1.3125; + margin-bottom: 1.3125em; + } + + .widget h4, + .widget h5, + .widget h6 { + font-size: 13px; + font-size: 0.8125rem; + line-height: 1.6153846154; + margin-bottom: 0.9130434783em; + } + + .widget .alignleft { + margin: 0.2307692308em 1.6153846154em 1.6153846154em 0; + } + + .widget .alignright { + margin: 0.2307692308em 0 1.6153846154em 1.6153846154em; + } + + .widget .aligncenter { + margin-bottom: 1.6153846154em; + } + + .widget_calendar td, + .widget_calendar th { + line-height: 2.6923076923; + padding: 0; + } + + .widget_rss .rssSummary:last-child { + margin-bottom: 1.615384615em; + } + + .widget input[type="search"].search-field { + width: -webkit-calc(100% - 35px); + width: calc(100% - 35px); + } + + .widget .search-submit:before { + font-size: 16px; + left: 1px; + line-height: 35px; + width: 34px; + } + + .widget button.search-submit { + padding: 0; + width: 35px; + } + + .tagcloud a { + margin: 0 0.2307692308em 0.5384615385em 0; + padding: 0.5384615385em 0.4615384615em 0.4615384615em; + } + + .textwidget h1 { + margin-top: 1.8260869565em; + } + + .textwidget h2 { + margin-top: 2.2105263158em; + } + + .textwidget h3 { + margin-top: 2.625em; + } + + .textwidget h4 { + letter-spacing: 0.153846154em; + } + + .textwidget h4, + .textwidget h5, + .textwidget h6 { + margin-top: 3.2307692308em; + } + + .content-bottom-widgets .widget-area:nth-child(1):nth-last-child(2), + .content-bottom-widgets .widget-area:nth-child(2):nth-last-child(1) { + float: left; + margin-right: 7.1428571%; + width: 46.42857145%; + } + + .content-bottom-widgets .widget-area:nth-child(2):nth-last-child(1):last-of-type { + margin-right: 0; + } + + .site-footer { + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-flex-wrap: wrap; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding: 0 4.5455% 3.5em; + } + + .site-footer .social-navigation { + margin: 0; + -webkit-order: 2; + -ms-flex-order: 2; + order: 2; + } + + .site-info { + margin: 0.538461538em auto 0.538461538em 0; + -webkit-order: 1; + -ms-flex-order: 1; + order: 1; + } + + .no-sidebar .content-area { + float: none; + margin: 0; + width: 100%; + } + + .no-sidebar .entry-header, + .no-sidebar .entry-content, + .no-sidebar .entry-summary, + .no-sidebar .entry-footer, + .no-sidebar .comments-area, + .no-sidebar .image-navigation, + .no-sidebar .post-navigation, + .no-sidebar .pagination, + .no-sidebar .page-header, + .no-sidebar .page-content, + .no-sidebar .content-bottom-widgets { + margin-right: 15%; + margin-left: 15%; + } + + .widecolumn { + padding-right: 15%; + padding-left: 15%; + } +} + + +/** + * 14.4 - >= 985px + */ + +@media screen and (min-width: 61.5625em) { + .site-main { + margin-bottom: 7.0em; + } + + .site-header { + padding: 5.25em 4.5455%; + } + + .site-branding, + .site-header-menu, + .header-image { + margin-top: 1.75em; + margin-bottom: 1.75em; + } + + .custom-logo { + max-width: 240px; + } + + .image-navigation { + margin-bottom: 3.230769231em; + } + + .post-navigation { + margin-bottom: 7.0em; + } + + .pagination { + margin-bottom: 5.894736842em; + } + + .widget { + margin-bottom: 4.307692308em; + } + + .site-main > article { + margin-bottom: 7.0em; + } + + .entry-title { + font-size: 40px; + font-size: 2.5rem; + line-height: 1.225; + margin-bottom: 1.05em; + } + + .format-aside .entry-title, + .format-image .entry-title, + .format-video .entry-title, + .format-quote .entry-title, + .format-gallery .entry-title, + .format-status .entry-title, + .format-link .entry-title, + .format-audio .entry-title, + .format-chat .entry-title { + font-size: 23px; + font-size: 1.4375em; + line-height: 1.304347826; + margin-bottom: 1.826086957em; + } + + .post-thumbnail { + margin-bottom: 2.625em; + } + + .entry-content h1, + .entry-summary h1, + .comment-content h1 { + font-size: 33px; + font-size: 2.0625rem; + line-height: 1.2727272727; + margin-top: 1.696969697em; + margin-bottom: 0.8484848485em; + } + + .entry-content h2, + .entry-summary h2, + .comment-content h2 { + font-size: 28px; + font-size: 1.75rem; + line-height: 1.25; + margin-top: 2em; + margin-bottom: 1em; + } + + .entry-content h3, + .entry-summary h3, + .comment-content h3 { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.2173913043; + margin-top: 2.4347826087em; + margin-bottom: 1.2173913043em; + } + + .entry-content h4, + .entry-summary h4, + .entry-intro h4, + .comment-content h4 { + letter-spacing: 0.131578947em; + } + + .entry-content h4, + .entry-content h5, + .entry-content h6, + .entry-summary h4, + .entry-summary h5, + .entry-summary h6, + .comment-content h4, + .comment-content h5, + .comment-content h6 { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.1052631579; + margin-top: 2.9473684211em; + margin-bottom: 1.473684211em; + } + + .author-info { + border-bottom-width: 0; + padding-bottom: 0; + } + + .comment-list + .comment-respond, + .comment-navigation + .comment-respond { + padding-top: 5.25em; + } + + .comments-area, + .sidebar, + .content-bottom-widgets .widget-area, + .widecolumn { + margin-bottom: 7.0em; + } + + body:not(.search-results) .entry-summary { + margin-bottom: 2.210526316em; + } + + body:not(.search-results) .entry-header + .entry-summary { + margin-top: -1.105263158em; + } + + body:not(.search-results) article:not(.type-page) .entry-content { + float: right; + width: 71.42857144%; + } + + body:not(.search-results) article:not(.type-page) .entry-content > blockquote.alignleft.below-entry-meta { + margin-left: -40%; + width: -webkit-calc(60% - 1.4736842105em); + width: calc(60% - 1.4736842105em); + } + + body:not(.search-results) article:not(.type-page) img.below-entry-meta, + body:not(.search-results) article:not(.type-page) figure.below-entry-meta { + clear: both; + display: block; + float: none; + margin-right: 0; + margin-left: -40%; + max-width: 140%; + } + + body:not(.search-results) article:not(.type-page) figure.below-entry-meta img.below-entry-meta, + body:not(.search-results) article:not(.type-page) table figure.below-entry-meta, + body:not(.search-results) article:not(.type-page) table img.below-entry-meta { + margin: 0; + max-width: 100%; + } + + body:not(.search-results) article:not(.type-page) .entry-footer { + float: left; + margin-top: 0.1538461538em; + width: 21.42857143%; + } + + body:not(.search-results) article:not(.type-page) .entry-footer > span:not(:last-child):after { + display: none; + } + + .single .byline, + .full-size-link, + body:not(.search-results).group-blog .byline, + body:not(.search-results) .entry-format, + body:not(.search-results) .cat-links, + body:not(.search-results) .tags-links, + body:not(.search-results) article:not(.sticky) .posted-on, + body:not(.search-results) article:not(.type-page) .comments-link, + body:not(.search-results) article:not(.type-page) .entry-footer .edit-link { + display: block; + margin-bottom: 0.5384615385em; + } + + body:not(.search-results) article:not(.type-page) .entry-footer > span:last-child { + margin-bottom: 0; + } + + body:not(.search-results) article:not(.type-page) .entry-footer .avatar { + display: block; + height: auto; + margin: 0 0 0.5384615385em; + width: 49px; + } + + body.no-sidebar:not(.search-results) article:not(.type-page) .entry-content { + float: left; + margin-right: -100%; + margin-left: 34.99999999%; + width: 50.00000001%; + } + + body.no-sidebar:not(.search-results) article:not(.type-page) .entry-footer { + margin-right: -100%; + margin-left: 15%; + width: 15%; + } +} + + +/** + * 14.5 - >= 1200px + */ + +@media screen and (min-width: 75em) { + body:not(.search-results) .entry-summary { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.5217391304; + margin-bottom: 1.826086957em; + } + + body:not(.search-results) .entry-header + .entry-summary { + margin-top: -0.913043478em; + } + + body:not(.search-results) .entry-summary p, + body:not(.search-results) .entry-summary address, + body:not(.search-results) .entry-summary hr, + body:not(.search-results) .entry-summary ul, + body:not(.search-results) .entry-summary ol, + body:not(.search-results) .entry-summary dl, + body:not(.search-results) .entry-summary dd, + body:not(.search-results) .entry-summary table { + margin-bottom: 1.5217391304em; + } + + body:not(.search-results) .entry-summary li > ul, + body:not(.search-results) .entry-summary blockquote > ul { + margin-left: 0.956521739em; + } + + body:not(.search-results) .entry-summary li > ol, + body:not(.search-results) .entry-summary blockquote > ol { + margin-left: 1.52173913em; + } + + body:not(.search-results) .entry-summary blockquote { + font-size: 23px; + font-size: 1.4375rem; + line-height: 1.5217391304; + margin: 0 0 1.5217391304em; + padding-left: 1.347826087em; + } + + body:not(.search-results) .entry-summary blockquote:not(.alignleft):not(.alignright) { + margin-left: -1.52173913em; + } + + body:not(.search-results) .entry-summary blockquote blockquote:not(.alignleft):not(.alignright) { + margin-left: 0; + } + + body:not(.search-results) .entry-summary blockquote cite, + body:not(.search-results) .entry-summary blockquote small { + font-size: 19px; + font-size: 1.1875rem; + line-height: 1.8421052632; + } + + body:not(.search-results) .entry-summary th, + body:not(.search-results) .entry-summary td { + padding: 0.3043478261em; + } + + body:not(.search-results) .entry-summary pre { + font-size: 16px; + font-size: 1rem; + line-height: 1.75; + margin-bottom: 1.75em; + padding: 1.75em; + } + + body:not(.search-results) .entry-summary fieldset { + margin-bottom: 1.5217391304em; + padding: 0.3043478261em; + } + + body:not(.search-results) .entry-summary h1 { + margin-top: 2.121212121em; + margin-bottom: 1.060606061em; + } + + body:not(.search-results) .entry-summary h2 { + margin-top: 2.5em; + margin-bottom: 1.25em; + } + + body:not(.search-results) .entry-summary h3 { + margin-top: 3.043478261em; + margin-bottom: 1.52173913em; + } + + body:not(.search-results) .entry-summary h4, + body:not(.search-results) .entry-summary h5, + body:not(.search-results) .entry-summary h6 { + margin-top: 3.684210526em; + margin-bottom: 1.842105263em; + } + + body:not(.search-results) .entry-summary h1:first-child, + body:not(.search-results) .entry-summary h2:first-child, + body:not(.search-results) .entry-summary h3:first-child, + body:not(.search-results) .entry-summary h4:first-child, + body:not(.search-results) .entry-summary h5:first-child, + body:not(.search-results) .entry-summary h6:first-child { + margin-top: 0; + } + + body:not(.search-results) .entry-summary .alignleft { + margin: 0.2608695652em 1.5217391304em 1.5217391304em 0; + } + + body:not(.search-results) .entry-summary .alignright { + margin: 0.2608695652em 0 1.5217391304em 1.5217391304em; + } + + body:not(.search-results) .entry-summary .aligncenter { + margin-bottom: 1.5217391304em; + } +} + + +/** + * 15.0 - Print + */ + +@media print { + form, + button, + input, + select, + textarea, + .navigation, + .main-navigation, + .social-navigation, + .sidebar, + .content-bottom-widgets, + .header-image, + .page-links, + .edit-link, + .comment-respond, + .comment-edit-link, + .comment-reply-link, + .comment-metadata .edit-link, + .pingback .edit-link { + display: none; + } + + body, + blockquote cite, + blockquote small, + pre, + .entry-content h4, + .entry-content h5, + .entry-content h6, + .entry-summary h4, + .entry-summary h5, + .entry-summary h6, + .comment-content h4, + .comment-content h5, + .comment-content h6, + .entry-content .author-title { + font-size: 12pt; + } + + blockquote { + font-size: 14.25pt; + } + + .site-title, + .page-title, + .comments-title, + .entry-content h2, + .entry-summary h2, + .comment-content h2, + .widecolumn h2 { + font-size: 17.25pt; + } + + .site-description { + display: block; + } + + .entry-title { + font-size: 24.75pt; + line-height: 1.2727272727; + margin-bottom: 1.696969697em; + } + + .format-aside .entry-title, + .format-image .entry-title, + .format-video .entry-title, + .format-quote .entry-title, + .format-gallery .entry-title, + .format-status .entry-title, + .format-link .entry-title, + .format-audio .entry-title, + .format-chat .entry-title { + font-size: 17.25pt; + line-height: 1.304347826; + margin-bottom: 1.826086957em; + } + + .entry-content h1, + .entry-summary h1, + .comment-content h1 { + font-size: 21pt; + } + + .entry-content h3, + .entry-summary h3, + .comment-content h3, + body:not(.search-results) .entry-summary { + font-size: 14.25pt; + } + + .site-description, + .author-bio, + .entry-footer, + .sticky-post, + .taxonomy-description, + .entry-caption, + .comment-metadata, + .comment-notes, + .comment-awaiting-moderation, + .site-info, + .wp-caption .wp-caption-text, + .gallery-caption { + font-size: 9.75pt; + } + + body, + .site { + background: none !important; /* Brute force since user agents all print differently. */ + } + + body, + blockquote cite, + blockquote small, + .site-branding .site-title a, + .entry-title a, + .comment-author { + color: #1a1a1a !important; /* Make sure color schemes don't affect to print */ + } + + blockquote, + .page-header, + .comments-title { + border-color: #1a1a1a !important; /* Make sure color schemes don't affect to print */ + } + + blockquote, + .site-description, + body:not(.search-results) .entry-summary, + body:not(.search-results) .entry-summary blockquote, + .author-bio, + .entry-footer, + .entry-footer a, + .sticky-post, + .taxonomy-description, + .entry-caption, + .comment-author, + .comment-metadata a, + .comment-notes, + .comment-awaiting-moderation, + .site-info, + .site-info a, + .wp-caption .wp-caption-text, + .gallery-caption { + color: #686868 !important; /* Make sure color schemes don't affect to print */ + } + + code, + hr { + background-color: #d1d1d1 !important; /* Make sure color schemes don't affect to print */ + } + + pre, + abbr, + acronym, + table, + th, + td, + .author-info, + .comment-list article, + .comment-list .pingback, + .comment-list .trackback, + .no-comments { + border-color: #d1d1d1 !important; /* Make sure color schemes don't affect to print */ + } + + a { + color: #007acc !important; /* Make sure color schemes don't affect to print */ + } + + .entry-content a, + .entry-summary a, + .taxonomy-description a, + .comment-content a, + .pingback .comment-body > a { + box-shadow: none; + border-bottom: 1px solid #007acc !important; /* Make sure color schemes don't affect to print */ + } + + .site { + margin: 5%; + } + + .site-inner { + max-width: none; + } + + .site-header { + padding: 0 0 1.75em; + } + + .site-branding { + margin-top: 0; + margin-bottom: 1.75em; + } + + .site-main { + margin-bottom: 3.5em; + } + + .entry-header, + .entry-footer, + .page-header, + .page-content, + .entry-content, + .entry-summary, + .post-thumbnail, + .comments-area { + margin-right: 0; + margin-left: 0; + } + + .post-thumbnail, + .site-main > article { + margin-bottom: 3.5em; + } + + .entry-content blockquote.alignleft, + .entry-content blockquote.alignright { + border-width: 4px 0 0 0; + padding: 0.9473684211em 0 0; + width: -webkit-calc(50% - 0.736842105em); + width: calc(50% - 0.736842105em); + } + + body:not(.search-results) .entry-header + .entry-summary { + margin-top: -1.473684211em; + } + + .site-footer, + .widecolumn { + padding: 0; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/biography.php b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/biography.php new file mode 100644 index 0000000..264adc5 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/biography.php @@ -0,0 +1,40 @@ + + +
+
+ +
+ +
+

+ +

+ + +

+
+
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-none.php b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-none.php new file mode 100644 index 0000000..ad401cf --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-none.php @@ -0,0 +1,38 @@ + + +
+ + +
+ + +

+ Get started here.', 'twentysixteen' ), esc_url( admin_url( 'post-new.php' ) ) ); + ?> +

+ + + +

+ + + + +

+ + + +
+
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-page.php b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-page.php new file mode 100644 index 0000000..58af8e0 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-page.php @@ -0,0 +1,47 @@ + + +
> +
+ ', '' ); ?> +
+ + + +
+ '', + 'link_before' => '', + 'link_after' => '', + 'pagelink' => '' . __( 'Page', 'twentysixteen' ) . ' %', + 'separator' => ', ', + ) + ); + ?> +
+ + "%s"', 'twentysixteen' ), + get_the_title() + ), + '
', + '
' + ); + ?> + +
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-search.php b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-search.php new file mode 100644 index 0000000..6a912eb --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-search.php @@ -0,0 +1,53 @@ + + +
> +
+ ', esc_url( get_permalink() ) ), '' ); ?> +
+ + + + + + + +
+ + "%s"', 'twentysixteen' ), + get_the_title() + ), + '', + '' + ); + ?> +
+ + + + "%s"', 'twentysixteen' ), + get_the_title() + ), + '
', + '
' + ); + ?> + + +
+ diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-single.php b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-single.php new file mode 100644 index 0000000..1eb9f26 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content-single.php @@ -0,0 +1,55 @@ + + +
> +
+ ', '' ); ?> +
+ + + + + +
+ '', + 'link_before' => '', + 'link_after' => '', + 'pagelink' => '' . __( 'Page', 'twentysixteen' ) . ' %', + 'separator' => ', ', + ) + ); + + if ( '' !== get_the_author_meta( 'description' ) ) { + get_template_part( 'template-parts/biography' ); + } + ?> +
+ +
+ + "%s"', 'twentysixteen' ), + get_the_title() + ), + '', + '' + ); + ?> +
+
diff --git a/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content.php b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content.php new file mode 100644 index 0000000..1497c76 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentysixteen/template-parts/content.php @@ -0,0 +1,61 @@ + + +
> +
+ + + + + ', esc_url( get_permalink() ) ), '' ); ?> +
+ + + + + +
+ "%s"', 'twentysixteen' ), + get_the_title() + ) + ); + + wp_link_pages( + array( + 'before' => '', + 'link_before' => '', + 'link_after' => '', + 'pagelink' => '' . __( 'Page', 'twentysixteen' ) . ' %', + 'separator' => ', ', + ) + ); + ?> +
+ +
+ + "%s"', 'twentysixteen' ), + get_the_title() + ), + '', + '' + ); + ?> +
+
diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/.stylelintrc.json b/srcs/wordpress/wp-content/themes/twentytwenty/.stylelintrc.json new file mode 100644 index 0000000..4db6c01 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/.stylelintrc.json @@ -0,0 +1,12 @@ +{ + "extends": [ + "stylelint-config-wordpress" + ], + "plugins": ["stylelint-a11y"], + "rules": { + "font-family-no-missing-generic-family-keyword": null, + "no-descending-specificity": null, + "a11y/no-outline-none": true, + "a11y/selector-pseudo-class-focus": true + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/404.php b/srcs/wordpress/wp-content/themes/twentytwenty/404.php new file mode 100644 index 0000000..fbf509a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/404.php @@ -0,0 +1,36 @@ + + +
+ +
+ +

+ +

+ + __( '404 not found', 'twentytwenty' ), + ) + ); + ?> + +
+ +
+ + + + * { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + font-size: 18px; +} + +@supports ( font-variation-settings: normal ) { + + .editor-styles-wrapper > * { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } + +} + +.block-editor-default-block-appender textarea.block-editor-default-block-appender__content { + color: inherit; + font-family: inherit; + font-size: inherit; +} + +.block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle:not(:hover):not(:focus), +.block-editor-default-block-appender .block-editor-inserter .block-editor-inserter__toggle:not(:hover):not(:focus) { + color: inherit; +} + + +/* Fonts ------------------------------------- */ + +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the Classic and block + * editors. The following font-face override fixes the issue by manually + * inserting a custom font that includes just a Hoefler Text space replacement + * for that character instead. + */ +@font-face { + font-family: NonBreakingSpaceOverride; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* ---------------------------------------------- +Inter variable font. Usage: + +@supports (font-variation-settings: normal) { + html { font-family: "Inter var", sans-serif; } +} +---------------------------------------------- */ + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: normal; + src: url(../fonts/inter/Inter-upright-var.woff2) format("woff2"); +} + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: italic; + src: url(../fonts/inter/Inter-italic-var.woff2) format("woff2"); +} + +/* Structure --------------------------------- */ + +.wp-block { + max-width: 610px; +} + +.wp-block[data-align="wide"] .wp-block[data-align="wide"], +.wp-block[data-align="full"] .wp-block[data-align="wide"] { + max-width: 1200px; +} + +.wp-block .wp-block[data-type="core/group"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]), +.wp-block .wp-block[data-type="core/cover"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]) { + margin-right: auto; + margin-left: auto; + max-width: 610px; +} + +.wp-block .wp-block[data-align="full"] { + margin-right: 0; + margin-left: 0; +} + +*[data-align="right"] .wp-block-edit, +*[data-align="left"] .wp-block-edit { + max-width: 50%; +} + +.wp-block[data-align="wide"] { + max-width: 1200px; +} + +.wp-block[data-align="full"] { + max-width: none; +} + +.editor-styles-wrapper .editor-rich-text__tinymce, +.editor-styles-wrapper .editor-rich-text__tinymce.mce-content-body { + line-height: 1.5; +} + + +/* Font Families ------------------------------ */ + +.editor-styles-wrapper p, +.editor-styles-wrapper ol, +.editor-styles-wrapper ul, +.editor-styles-wrapper dl, +.editor-styles-wrapper dt { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +.editor-post-title__block .editor-post-title__input, +.editor-styles-wrapper .wp-block h1, +.editor-styles-wrapper .wp-block h2, +.editor-styles-wrapper .wp-block h3, +.editor-styles-wrapper .wp-block h4, +.editor-styles-wrapper .wp-block h5, +.editor-styles-wrapper .wp-block h6, +.editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter, +.editor-styles-wrapper cite, +.editor-styles-wrapper figcaption, +.editor-styles-wrapper .wp-caption-text { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .editor-post-title__block .editor-post-title__input, + .editor-styles-wrapper .wp-block h1, + .editor-styles-wrapper .wp-block h2, + .editor-styles-wrapper .wp-block h3, + .editor-styles-wrapper .wp-block h4, + .editor-styles-wrapper .wp-block h5, + .editor-styles-wrapper .wp-block h6, + .editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter, + .editor-styles-wrapper cite, + .editor-styles-wrapper figcaption, + .editor-styles-wrapper .wp-caption-text { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } + +} + + +/* Colors ------------------------------------ */ + +/* CUSTOM COLORS */ + +:root .has-accent-color { + color: #cd2653; +} + +:root .has-accent-background-color { + background-color: #cd2653; + color: #fff; +} + +:root .has-primary-color { + color: #000; +} + +:root .has-primary-background-color { + background-color: #000; + color: #f5efe0; +} + +:root .has-secondary-color { + color: #6d6d6d; +} + +:root .has-secondary-background-color { + background-color: #6d6d6d; + color: #fff; +} + +:root .has-subtle-background-color { + color: #dcd7ca; +} + +:root .has-subtle-background-background-color { + background-color: #dcd7ca; + color: #000; +} + +:root .has-background-color { + color: #f5efe0; +} + +:root .has-background-background-color { + background-color: #f5efe0; + color: #000; +} + +/* GENERAL COLORS */ + +.has-black-background-color { + background-color: #000; + color: #fff; +} + +.has-white-background-color { + background-color: #fff; + color: #000; +} + +.has-black-color { + color: #000; +} + +.has-white-color { + color: #fff; +} + + +/* Typography -------------------------------- */ + +.editor-styles-wrapper .editor-block-list__layout a { + color: #cd2653; + text-decoration: underline; +} + +.editor-styles-wrapper a:focus, +.editor-styles-wrapper a:hover { + text-decoration: none; +} + +.editor-post-title__block .editor-post-title__input, +.editor-styles-wrapper .wp-block h1, +.editor-styles-wrapper .wp-block h2, +.editor-styles-wrapper .wp-block h3, +.editor-styles-wrapper .wp-block h4, +.editor-styles-wrapper .wp-block h5, +.editor-styles-wrapper .wp-block h6 { + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; + font-weight: 700; + letter-spacing: -0.0415625em; + line-height: 1.25; + margin: 40px 0 25px; +} + +.editor-post-title__block .editor-post-title__input, +.editor-styles-wrapper .wp-block h1 { + font-size: 36px; + font-weight: 800; + line-height: 1.138888889; +} + +.editor-styles-wrapper .wp-block h2 { + font-size: 32px; +} + +.editor-styles-wrapper .wp-block h3 { + font-size: 28px; +} + +.editor-styles-wrapper .wp-block h4 { + font-size: 24px; +} + +.editor-styles-wrapper .wp-block h5 { + font-size: 21px; +} + +.editor-styles-wrapper .wp-block h6 { + font-size: 16px; + letter-spacing: 0.03125em; + text-transform: uppercase; +} + +.editor-styles-wrapper li, +.editor-styles-wrapper p, +.editor-styles-wrapper p.wp-block-paragraph { + line-height: 1.4; +} + +/* POST TITLE */ + +.wp-block.editor-post-title__block { + max-width: 1000px; +} + +.editor-styles-wrapper .editor-post-title__block .editor-post-title__input { + margin: 0; + text-align: center; +} + +/* DROP CAP */ + +.editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter { + color: #cd2653; + font-size: 5.1em; + font-weight: 800; + margin: 0.05em 0 0 0.1em; +} + + +/* Monospace --------------------------------- */ + +.editor-styles-wrapper code, +.editor-styles-wrapper kbd, +.editor-styles-wrapper pre, +.editor-styles-wrapper samp { + font-family: monospace; +} + +.editor-styles-wrapper kbd, +.editor-styles-wrapper pre, +.editor-styles-wrapper samp { + border-radius: 0; + font-size: 0.75em; + padding: 4px 6px; +} + +.editor-styles-wrapper pre { + border-color: #dcd7ca; + border-radius: 0; + line-height: 1.5; + padding: 1em; +} + + +/* Custom Text Sizes ------------------------- */ + +.editor-styles-wrapper p.has-large-font-size.editor-rich-text__tinymce, +.editor-styles-wrapper p.has-large-font-size.editor-rich-text__tinymce.mce-content-body, +.editor-styles-wrapper p.has-larger-font-size.editor-rich-text__tinymce, +.editor-styles-wrapper p.has-larger-font-size.editor-rich-text__tinymce.mce-content-body { + line-height: 1.4; +} + +.editor-styles-wrapper p.has-small-font-size { + font-size: 0.842em; +} + +.editor-styles-wrapper p.has-normal-font-size, +.editor-styles-wrapper p.has-regular-font-size { + font-size: 1em; +} + +.editor-styles-wrapper p.has-medium-font-size { + font-size: 1.1em; +} + +.editor-styles-wrapper p.has-large-font-size { + font-size: 1.25em; +} + +.editor-styles-wrapper p.has-larger-font-size { + font-size: 1.5em; +} + + +/* Post Media -------------------------------- */ + +.editor-styles-wrapper figure { + margin: 0; +} + +.editor-styles-wrapper .alignleft, +.editor-styles-wrapper .alignright { + margin-bottom: 1.2em; + max-width: 260px; +} + +.editor-styles-wrapper .wp-caption .alignleft, +.editor-styles-wrapper .wp-caption .alignright { + margin-bottom: 0; +} + +.editor-styles-wrapper .alignleft { + margin-left: 1em; +} + +.editor-styles-wrapper .alignright { + margin-right: 1em; +} + +.editor-styles-wrapper figcaption { + color: #6d6d6d; + font-size: 15px; + font-weight: 500; + line-height: 1.2; + margin-top: 5px; + text-align: inherit; +} + + +/* Forms ------------------------------------- */ + +.editor-styles-wrapper fieldset { + border: 2px solid #dcd7ca; + padding: 20px; +} + +.editor-styles-wrapper legend { + font-size: 0.85em; + font-weight: 700; + padding: 0 10px; +} + +.editor-styles-wrapper label { + font-size: 15px; + font-weight: 600; +} + + +/* Block: Base Margins ---------------------- */ + +/* Block: Shared Widget Styles -------------- */ + +.editor-styles-wrapper ul.wp-block-archives, +.editor-styles-wrapper ul.wp-block-categories, +.editor-styles-wrapper ul.wp-block-latest-posts, +.editor-styles-wrapper ul.wp-block-categories__list { + font-family: inherit; + list-style: none; + margin: 40px 0; + padding-right: 0; +} + +.editor-styles-wrapper ul.wp-block-categories__list ul { + margin: 0; +} + +.editor-styles-wrapper ul.wp-block-archives li, +.editor-styles-wrapper ul.wp-block-categories li, +.editor-styles-wrapper ul.wp-block-latest-posts li, +.editor-styles-wrapper ul.wp-block-categories__list li { + color: #6d6d6d; + line-height: 1.476; + margin: 5px 0 0 0; +} + +.editor-styles-wrapper ul.wp-block-archives li li, +.editor-styles-wrapper ul.wp-block-categories li li, +.editor-styles-wrapper ul.wp-block-categories__list li li, +.editor-styles-wrapper ul.wp-block-latest-posts li li { + margin-right: 20px; +} + +.editor-styles-wrapper .wp-block-archives li > a, +.editor-styles-wrapper .wp-block-categories li > a, +.editor-styles-wrapper .wp-block-latest-posts li > a { + font-weight: 700; + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-archives li > a:focus, +.editor-styles-wrapper .wp-block-archives li > a:hover, +.editor-styles-wrapper .wp-block-categories li > a:focus, +.editor-styles-wrapper .wp-block-categories li > a:hover, +.editor-styles-wrapper .wp-block-latest-posts li > a:focus, +.editor-styles-wrapper .wp-block-latest-posts li > a:hover { + font-weight: 700; + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-archives.aligncenter, +.editor-styles-wrapper .wp-block-categories.aligncenter { + text-align: center; +} + +.editor-styles-wrapper .wp-block-latest-comments time, +.editor-styles-wrapper .wp-block-latest-posts time { + color: #6d6d6d; + font-size: 0.7em; + font-weight: 600; + letter-spacing: normal; + line-height: 1.476; + margin-top: 0.15em; +} + + +/* Block: Table ------------------------------ */ + +.editor-styles-wrapper .wp-block-table { + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + font-size: 18px; + margin-bottom: 1.1em; + width: 100%; +} + +.editor-styles-wrapper .wp-block-table, +.editor-styles-wrapper .wp-block-table * { + border-color: #dcd7ca; +} + +.editor-styles-wrapper .wp-block-table tr { + border: none; +} + +.editor-styles-wrapper .wp-block-table caption { + background: #dcd7ca; + text-align: center; +} + +.editor-styles-wrapper .wp-block-table th, +.editor-styles-wrapper .wp-block-table td { + line-height: 1.4; + margin: 0; + overflow: visible; + padding: 0; +} + +.editor-styles-wrapper .wp-block-table .wp-block-table__cell-content { + padding: 0.5em; +} + +.editor-styles-wrapper .wp-block-table thead { + vertical-align: bottom; + white-space: nowrap; + text-align: inherit; +} + +.editor-styles-wrapper .wp-block-table th { + font-weight: 700; + text-align: inherit; /* Prevents the header from being centered by default*/ +} + +.editor-styles-wrapper .wp-block-table th.has-text-align-center { + text-align: center; +} + +.editor-styles-wrapper .wp-block-table th.has-text-align-right { + text-align: left; +} + +.editor-styles-wrapper .wp-block-table th.has-text-align-left { + text-align: right; +} + +/* STYLE: STRIPES */ + +.editor-styles-wrapper .wp-block-table.is-style-stripes { + border: 1px solid #dcd7ca; +} + +.editor-styles-wrapper .wp-block-table.is-style-stripes tbody tr:nth-child(odd) { + background: #dcd7ca; +} + + +/* Block: Separator -------------------------- */ + +hr.wp-block-separator { + border-top: 1px solid #6d6d6d; + color: #6d6d6d; + margin: 30px 0; +} + +hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) { + max-width: 100%; +} + +hr.wp-block-separator:not(.is-style-dots) { + background: linear-gradient(to right, currentColor calc(50% - 16px), transparent calc(50% - 16px), transparent calc(50% + 16px), currentColor calc(50% + 16px)); + background-color: transparent !important; + border: none; + height: 1px; + overflow: visible; + position: relative; +} + +.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) { + height: 1px; +} + +hr.wp-block-separator:not(.is-style-dots)::before, +hr.wp-block-separator:not(.is-style-dots)::after { + background: currentColor; + content: ""; + display: block; + height: 16px; + position: absolute; + top: calc(50% - 8px); + transform: rotate(-22.5deg); + width: 1px; +} + +hr.wp-block-separator::before { + right: calc(50% - 5px); +} + +hr.wp-block-separator::after { + left: calc(50% - 5px); +} + +/* STYLE: DOTS */ + +hr.wp-block-separator.is-style-dots::before { + font-size: 32px; + font-weight: 700; + letter-spacing: 1em; + padding-right: 1em; +} + + +/* Block: Quote ------------------------------ */ + +.editor-styles-wrapper blockquote { + margin: 0; +} + +.editor-styles-wrapper .wp-block-quote { + border-color: #cd2653; + border-style: solid; + border-width: 0 2px 0 0; + margin: 20px 0; + padding: 5px 20px 5px 0; +} + +.editor-styles-wrapper .wp-block-quote.has-text-align-center, +.editor-styles-wrapper .wp-block-quote[style*="text-align:center"], +.editor-styles-wrapper .wp-block-quote[style*="text-align: center"] { + border-width: 0; + padding: 5px 0; +} + +.editor-styles-wrapper .wp-block-quote.has-text-align-right, +.editor-styles-wrapper .wp-block-quote[style*="text-align:right"], +.editor-styles-wrapper .wp-block-quote[style*="text-align: right"] { + border-width: 0 0 0 2px; + padding: 5px 0 5px 20px; +} + +.editor-styles-wrapper cite, +.editor-styles-wrapper .wp-block-quote__citation, +.editor-styles-wrapper .wp-block-quote cite, +.editor-styles-wrapper .wp-block-quote footer { + color: #6d6d6d; + font-size: 14px; + font-weight: 600; + line-height: 1.25; +} + +.editor-styles-wrapper .wp-block-quote p { + color: inherit; + font-weight: 400; + margin: 0 0 20px 0; +} + +.editor-styles-wrapper .wp-block-quote.is-style-large { + border: none; + padding: 0; +} + +.editor-styles-wrapper .wp-block-quote.is-style-large p { + font-family: inherit; + font-size: 24px; + font-style: normal; + font-weight: 700; + letter-spacing: -0.035714286em; + line-height: 1.285714286; +} + +.editor-styles-wrapper .wp-block-quote.is-style-large .wp-block-quote__citation, +.editor-styles-wrapper .wp-block-quote.is-style-large cite, +.editor-styles-wrapper .wp-block-quote.is-style-large footer { + font-size: 16px; +} + + +/* Block: Code, Verse and Preformatted ------- */ + +.editor-styles-wrapper .wp-block-code { + color: inherit; +} + +.editor-styles-wrapper .wp-block-code, +.editor-styles-wrapper .wp-block-preformatted pre, +.editor-styles-wrapper .wp-block-verse pre { + border: 1px solid #dcd7ca; + border-radius: 0; + padding: 30px; +} + +.editor-styles-wrapper .wp-block-freeform.block-library-rich-text__tinymce pre, +.editor-styles-wrapper .wp-block-preformatted pre, +.editor-styles-wrapper .wp-block-code .block-editor-plain-text, +.editor-styles-wrapper .wp-block-verse pre { + background: transparent; + color: inherit; + font-family: monospace; + font-size: 14px; +} + +/* Block: Cover ------------------------------ */ + +.editor-styles-wrapper .wp-block-cover-image .wp-block-cover__inner-container, +.editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container { + margin: 0 auto; + width: calc(100% - 40px); +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"], +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] { + height: auto; + max-height: none; +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .wp-block-cover { + text-align: right; +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .wp-block-cover { + text-align: left; +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .block-editor-block-list__block-edit, +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .block-editor-block-list__block-edit { + float: none; + margin-right: 0; + margin-left: 0; + max-width: 100%; +} + +.wp-block-cover-image .wp-block-cover-image-text, +.wp-block-cover-image .wp-block-cover-text, +.wp-block-cover-image h2, +.wp-block-cover .wp-block-cover-image-text, +.wp-block-cover .wp-block-cover-text, +.wp-block-cover h2 { + max-width: 100%; +} + +.editor-styles-wrapper .wp-block-cover a { + color: inherit; +} + +/* Block: Shared Media Styles ---------------- */ + +.wp-block[data-type*="core-embed"][data-align="full"] figcaption, +.wp-block[data-type="core/image"][data-align="full"] figcaption, +.wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption { + padding: 0 14px; +} + +/* Block: Paragraph -------------------------- */ + +/* Block: Pullquote -------------------------- */ + +.editor-styles-wrapper .wp-block-pullquote { + border: none; + color: inherit; + padding: 0; + position: relative; + text-align: center; +} + +.editor-styles-wrapper .wp-block-pullquote::before { + background: #fff; + border-radius: 50%; + color: #cd2653; + content: "”"; + display: block; + font-size: 62px; + font-weight: 500; + line-height: 1.2; + margin: 0 auto 15px auto; + text-align: center; + height: 44px; + width: 44px; +} + +.editor-styles-wrapper .wp-block .wp-block-pullquote p { + font-family: inherit; + font-size: 28px; + font-weight: 700; + line-height: 1.178571429; + letter-spacing: -0.041785714em; + margin-bottom: 20px; +} + +.editor-styles-wrapper .wp-block .wp-block-pullquote p:last-child { + margin-bottom: 0; +} + +.editor-styles-wrapper .wp-block .wp-block-pullquote p, +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color blockquote > .block-editor-rich-text p, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .editor-rich-text p, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .editor-rich-text p { + font-size: 28px; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"], +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] { + height: auto; + max-height: none; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote.is-style-solid-color blockquote { + text-align: right; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote.is-style-solid-color blockquote { + text-align: left; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit { + float: none; + margin-right: 0; + margin-left: 0; + max-width: 100%; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit .wp-block-pullquote::before { + margin-left: 0; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit .wp-block-pullquote::before { + margin-right: 0; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .is-style-solid-color::before { + left: 20px; + transform: translateY(-50%); +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .is-style-solid-color::before { + right: 20px; + transform: translateY(-50%); +} + +.editor-styles-wrapper .wp-block-pullquote__citation, +.editor-styles-wrapper .wp-block-pullquote cite, +.editor-styles-wrapper .wp-block-pullquote footer { + color: #6d6d6d; + font-size: 16px; + font-weight: 500; + margin-top: 12px; + text-transform: none; +} + +/* STYLE: SOLID COLOR */ + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color { + padding: 30px 20px; + position: relative; +} + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color::before { + position: absolute; + top: 0; + right: 50%; + transform: translateY(-50%) translateX(50%); +} + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color blockquote { + max-width: 100%; + text-align: center; +} + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation, +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color .wp-block-pullquote cite, +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color .wp-block-pullquote footer { + color: inherit; +} + + +/* Block: Verse ------------------------------ */ + +.editor-styles-wrapper .wp-block-verse pre, +.editor-styles-wrapper pre.wp-block-verse { + font-size: 0.75em; +} + + +/* Block: Button ----------------------------- */ + +.editor-styles-wrapper .wp-block-button__link, +.editor-styles-wrapper .wp-block-file__button { + background: #cd2653; + border-radius: 0; + color: #fff; + font-size: 15px; + font-weight: 600; + letter-spacing: 0.0333em; + line-height: 1.25; + padding: 1.1em 1.44em; + text-transform: uppercase; +} + +.editor-styles-wrapper .wp-block-button .wp-block-button__link.mce-content-body { + line-height: 1.1; +} + +/* BUTTON STYLE: OUTLINE */ + +.editor-styles-wrapper .is-style-outline .wp-block-button__link { + background: none; + border-color: currentColor; + color: #cd2653; + padding: calc(1.1em - 2px) calc(1.44em - 2px); +} + +/* BUTTON STYLE: SQUARED */ + +.editor-styles-wrapper .is-style-squared .wp-block-button__link { + border-radius: 0; +} + + +/* Block: Latest Comments -------------------- */ + +.editor-styles-wrapper .wp-block-latest-comments { + font-family: inherit; + margin-right: 0; +} + +.editor-styles-wrapper .wp-block-latest-comments li.wp-block-latest-comments__comment { + font-size: inherit; + margin-bottom: 20px; +} + +.editor-styles-wrapper .wp-block-latest-comments li.wp-block-latest-comments__comment:last-child { + margin-bottom: 0; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta, +.editor-styles-wrapper .wp-block-latest-comments__comment-excerpt { + margin-right: 0 !important; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta { + font-weight: 700; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta a { + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta a:focus, +.editor-styles-wrapper .wp-block-latest-comments__comment-meta a:hover { + text-decoration: none; +} + +/* HAS AVATAR */ + +.editor-styles-wrapper .wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment { + display: flex; +} + +.editor-styles-wrapper .wp-block-latest-comments.has-avatars img.avatar { + flex-shrink: 0; + margin: 5px 0 0 15px; +} + +/* HAS EXCERPT */ + +.editor-styles-wrapper .wp-block-latest-comments__comment-excerpt { + margin: 0; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-excerpt p { + font-family: inherit; + font-size: 0.7em; + margin: 10px 0 0; +} + + +/* Block: Latest Posts ----------------------- */ + +.editor-styles-wrapper ul.wp-block-latest-posts:not(.is-grid) li { + margin-top: 15px; +} + +/* STYLE: GRID */ + +.editor-styles-wrapper .wp-block-latest-posts.is-grid li { + border-color: #dcd7ca; +} + +.editor-styles-wrapper ul.wp-block-latest-posts.is-grid li { + border-style: solid; + border-width: 2px 0 0; + line-height: 1.25; + margin: 20px 0 16px 16px; + padding-top: 12px; +} + +.editor-styles-wrapper .wp-block-latest-posts__post-excerpt { + font-size: 0.95em; + line-height: 1.4; + margin-top: 15px; +} + +/* Block: Shortcode -------------------------- */ + +.editor-styles-wrapper .wp-block-shortcode textarea { + color: #191e23; +} + +/* Block: Embed ------------------------------ */ + +.editor-styles-wrapper .wp-block-embed { + margin-bottom: 30px; + margin-top: 30px; +} + +.editor-styles-wrapper .wp-block[data-type*="core-embed"][data-align="center"] * { + margin-right: auto; + margin-left: auto; +} + +/* Block: File ------------------------------- */ + +.editor-styles-wrapper .wp-block-file { + background: none; + padding: 0; +} + +.editor-styles-wrapper .wp-block-file__content-wrapper { + align-items: center; + display: flex; + justify-content: space-between; +} + +.editor-styles-wrapper .wp-block-file .wp-block-file__textlink { + color: #cd2653; + font-weight: 700; + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-file .wp-block-file__textlink:focus, +.editor-styles-wrapper .wp-block-file .wp-block-file__textlink:hover { + text-decoration: underline; +} + +.editor-styles-wrapper .wp-block-file .wp-block-file__button { + font-size: 14px; + padding: 1em 1.25em; +} + +/* Block: Image ------------------------------ */ + +.editor-styles-wrapper .wp-block-image { + margin-bottom: 30px; + margin-top: 30px; +} + +.editor-styles-wrapper .wp-block-image.is-resized { + margin-right: auto; + margin-left: auto; +} + +/* Block: Group ------------------------------ */ + +.editor-styles-wrapper .wp-block-group.has-background { + padding: 20px; +} + +.wp-block-group .wp-block[data-type="core/heading"]:first-child * { + margin-top: 0; +} + +.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"], +.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + margin-right: 0; + width: 100%; +} + +/* Block: Paragraph -------------------------- */ + + +/* X. Media Queries +/* ------------------------------------------- */ + + +@media ( min-width: 480px ) { + + + /* STRUCTURE */ + + .editor-styles-wrapper .wp-block[data-align="right"] { + margin-left: 0; + } + + .editor-styles-wrapper .wp-block[data-align="left"] { + margin: 0; + } + + /* BLOCK: COVER */ + + .wp-block[data-type="core/cover"][data-align="left"] [data-block], + .wp-block[data-type="core/cover"][data-align="right"] [data-block] { + margin-top: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .block-editor-block-list__block-edit { + float: left; + margin-right: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .block-editor-block-list__block-edit { + float: right; + margin-left: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .wp-block-pullquote::before { + margin-left: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .wp-block-pullquote::before { + margin-right: 0; + } + + /* BLOCK: PULL QUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"], + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] { + height: 0; + max-width: 260px; + } + + .wp-block[data-type="core/pullquote"][data-align="left"] [data-block], + .wp-block[data-type="core/pullquote"][data-align="right"] [data-block] { + margin-top: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit { + float: left; + margin-right: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit { + float: right; + margin-left: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote::before { + margin-left: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote::before { + margin-right: 0; + } + + +} + +@media ( min-width: 600px ) { + + + /* BLOCK: SHARED MEDIA STYLES */ + + .wp-block[data-type*="core-embed"][data-align="full"] figcaption, + .wp-block[data-type="core/image"][data-align="full"] figcaption, + .wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption { + padding: 0 45px; + } + + /* BLOCK: COLUMNS */ + + .editor-styles-wrapper .wp-block[data-type="core/column"] h1, + .editor-styles-wrapper .wp-block[data-type="core/column"] h2, + .editor-styles-wrapper .wp-block[data-type="core/column"] h3, + .editor-styles-wrapper .wp-block[data-type="core/column"] h4, + .editor-styles-wrapper .wp-block[data-type="core/column"] h5, + .editor-styles-wrapper .wp-block[data-type="core/column"] h6 { + margin: 35px 0 20px 0; + } + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit { + margin-left: -30px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit { + margin-right: -30px; + } + + +} + +@media ( min-width: 700px ) { + + /* STRUCTURE */ + + .editor-styles-wrapper > * { + font-size: 21px; + } + + /* TYPOGRAPHY */ + + .editor-post-title__block .editor-post-title__input, + .editor-styles-wrapper .wp-block h1 { + font-size: 64px; + } + + .editor-styles-wrapper .wp-block h2 { + font-size: 48px; + } + + .editor-styles-wrapper .wp-block h3 { + font-size: 40px; + } + + .editor-styles-wrapper .wp-block h4 { + font-size: 32px; + } + + .editor-styles-wrapper .wp-block h5 { + font-size: 24px; + } + + .editor-styles-wrapper li, + .editor-styles-wrapper p, + .editor-styles-wrapper p.wp-block-paragraph { + line-height: 1.476; + } + + /* FORMS */ + + .editor-styles-wrapper fieldset { + padding: 30px; + } + + .editor-styles-wrapper legend { + padding: 0 15px; + } + + /* BLOCK: BASE MARGINS */ + + /* BLOCK: BUTTON */ + + .editor-styles-wrapper .wp-block-button__link, + .editor-styles-wrapper .wp-block-file__button { + font-size: 17px; + } + + /* BLOCK: CODE */ + + .editor-styles-wrapper .wp-block-preformatted pre, + .editor-styles-wrapper .wp-block-code .block-editor-plain-text, + .editor-styles-wrapper .wp-block-verse pre { + font-size: 16px; + } + + /* BLOCK: COLUMNS */ + + .wp-block-column { + font-size: 16px; + } + + /* BLOCK: COVER */ + + .editor-styles-wrapper .wp-block-cover-image .wp-block-cover__inner-container, + .editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container { + width: calc(100% - 80px); + } + + /* BLOCK: GROUP */ + + .editor-styles-wrapper .wp-block:not([data-align="wide"]):not([data-align="full"]) div:not([class*="__inner-container"]) .wp-block-group.has-background, + .editor-styles-wrapper .wp-block div[class*="__inner-container"] .wp-block[data-align="wide"] .wp-block-group.has-background, + .editor-styles-wrapper .wp-block div[class*="__inner-container"] .wp-block[data-align="full"] .wp-block-group.has-background { + padding: 40px; + } + + .editor-styles-wrapper .wp-block[data-align="wide"] .wp-block-group.has-background, + .editor-styles-wrapper .wp-block[data-align="full"] .wp-block-group.has-background { + padding: 80px; + } + + /* BLOCK: LATEST POSTS */ + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block .wp-block-pullquote p, + .editor-styles-wrapper .wp-block-pullquote.is-style-solid-color blockquote > .block-editor-rich-text p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .editor-rich-text p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .editor-rich-text p { + font-size: 32px; + } + + .editor-styles-wrapper .wp-block-pullquote__citation, + .editor-styles-wrapper .wp-block-pullquote cite, + .editor-styles-wrapper .wp-block-pullquote footer { + margin-top: 20px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] .wp-block-pullquote::before, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote::before { + font-size: 113px; + height: 80px; + margin-bottom: 20px; + width: 80px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] .wp-block-pullquote.is-style-solid-color, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote.is-style-solid-color { + padding: 60px 40px 40px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote:not(.is-style-solid-color) { + padding-right: 10px; + padding-left: 10px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] blockquote p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] blockquote p { + font-size: 48px; + line-height: 1.203125; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] p { + font-size: 32px; + line-height: 1.1875; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .is-style-solid-color p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .is-style-solid-color p { + font-size: 26px; + } + + /* BLOCK: TABLE */ + + .editor-styles-wrapper table.wp-block-table { + font-size: 18px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin-bottom: 60px; + margin-top: 60px; + } + +} + + +@media ( min-width: 1000px ) { + + + /* BLOCK: COLUMNS */ + + .wp-block-column { + font-size: 18px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin-bottom: 80px; + margin-top: 80px; + } + + hr.wp-block-separator.is-style-wide { + margin-right: -70px; + margin-left: -70px; + } + + +} + + +@media ( min-width: 1220px ) { + + + /* TYPOGRAPHY */ + + .editor-post-title__block .editor-post-title__input, + .editor-styles-wrapper .wp-block h1 { + font-size: 84px; + } + + .editor-styles-wrapper .wp-block h6 { + font-size: 18px; + } + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] .wp-block-pullquote.is-style-solid-color, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote.is-style-solid-color { + padding: 90px 40px 80px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] blockquote p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] blockquote p { + font-size: 64px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator.is-style-wide { + margin-right: -150px; + margin-left: -150px; + } + +} + + +@media ( min-width: 1360px ) { + + + /* STRUCTURE */ + + .editor-styles-wrapper .wp-block[data-align="left"], + .editor-styles-wrapper .wp-block[data-align="right"] { + margin: 0 auto; + max-width: 1220px; + } + + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .is-style-solid-color::before, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .is-style-solid-color::before { + top: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"], + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] { + margin: 0 auto; + max-width: 1220px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator.is-style-wide { + margin-right: -200px; + margin-left: -200px; + } + + +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-block.css b/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-block.css new file mode 100644 index 0000000..55d1446 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-block.css @@ -0,0 +1,1454 @@ +/* ------------------------------------------- */ + +/* Twenty Twenty Editor Styles — Block Editor +/* ------------------------------------------- */ + +.editor-styles-wrapper { + background: #f5efe0; + color: #000; + letter-spacing: -0.015em; + -moz-font-smoothing: antialiased; + -webkit-font-smoothing: antialiased; +} + +.editor-styles-wrapper > * { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + font-size: 18px; +} + +@supports ( font-variation-settings: normal ) { + + .editor-styles-wrapper > * { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } + +} + +.block-editor-default-block-appender textarea.block-editor-default-block-appender__content { + color: inherit; + font-family: inherit; + font-size: inherit; +} + +.block-editor-block-list__empty-block-inserter .block-editor-inserter__toggle:not(:hover):not(:focus), +.block-editor-default-block-appender .block-editor-inserter .block-editor-inserter__toggle:not(:hover):not(:focus) { + color: inherit; +} + + +/* Fonts ------------------------------------- */ + +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the Classic and block + * editors. The following font-face override fixes the issue by manually + * inserting a custom font that includes just a Hoefler Text space replacement + * for that character instead. + */ +@font-face { + font-family: NonBreakingSpaceOverride; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* ---------------------------------------------- +Inter variable font. Usage: + +@supports (font-variation-settings: normal) { + html { font-family: "Inter var", sans-serif; } +} +---------------------------------------------- */ + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: normal; + src: url(../fonts/inter/Inter-upright-var.woff2) format("woff2"); +} + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: italic; + src: url(../fonts/inter/Inter-italic-var.woff2) format("woff2"); +} + +/* Structure --------------------------------- */ + +.wp-block { + max-width: 610px; +} + +.wp-block[data-align="wide"] .wp-block[data-align="wide"], +.wp-block[data-align="full"] .wp-block[data-align="wide"] { + max-width: 1200px; +} + +.wp-block .wp-block[data-type="core/group"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]), +.wp-block .wp-block[data-type="core/cover"]:not([data-align="full"]):not([data-align="wide"]):not([data-align="left"]):not([data-align="right"]) { + margin-left: auto; + margin-right: auto; + max-width: 610px; +} + +.wp-block .wp-block[data-align="full"] { + margin-left: 0; + margin-right: 0; +} + +*[data-align="right"] .wp-block-edit, +*[data-align="left"] .wp-block-edit { + max-width: 50%; +} + +.wp-block[data-align="wide"] { + max-width: 1200px; +} + +.wp-block[data-align="full"] { + max-width: none; +} + +.editor-styles-wrapper .editor-rich-text__tinymce, +.editor-styles-wrapper .editor-rich-text__tinymce.mce-content-body { + line-height: 1.5; +} + + +/* Font Families ------------------------------ */ + +.editor-styles-wrapper p, +.editor-styles-wrapper ol, +.editor-styles-wrapper ul, +.editor-styles-wrapper dl, +.editor-styles-wrapper dt { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +.editor-post-title__block .editor-post-title__input, +.editor-styles-wrapper .wp-block h1, +.editor-styles-wrapper .wp-block h2, +.editor-styles-wrapper .wp-block h3, +.editor-styles-wrapper .wp-block h4, +.editor-styles-wrapper .wp-block h5, +.editor-styles-wrapper .wp-block h6, +.editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter, +.editor-styles-wrapper cite, +.editor-styles-wrapper figcaption, +.editor-styles-wrapper .wp-caption-text { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .editor-post-title__block .editor-post-title__input, + .editor-styles-wrapper .wp-block h1, + .editor-styles-wrapper .wp-block h2, + .editor-styles-wrapper .wp-block h3, + .editor-styles-wrapper .wp-block h4, + .editor-styles-wrapper .wp-block h5, + .editor-styles-wrapper .wp-block h6, + .editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter, + .editor-styles-wrapper cite, + .editor-styles-wrapper figcaption, + .editor-styles-wrapper .wp-caption-text { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } + +} + + +/* Colors ------------------------------------ */ + +/* CUSTOM COLORS */ + +:root .has-accent-color { + color: #cd2653; +} + +:root .has-accent-background-color { + background-color: #cd2653; + color: #fff; +} + +:root .has-primary-color { + color: #000; +} + +:root .has-primary-background-color { + background-color: #000; + color: #f5efe0; +} + +:root .has-secondary-color { + color: #6d6d6d; +} + +:root .has-secondary-background-color { + background-color: #6d6d6d; + color: #fff; +} + +:root .has-subtle-background-color { + color: #dcd7ca; +} + +:root .has-subtle-background-background-color { + background-color: #dcd7ca; + color: #000; +} + +:root .has-background-color { + color: #f5efe0; +} + +:root .has-background-background-color { + background-color: #f5efe0; + color: #000; +} + +/* GENERAL COLORS */ + +.has-black-background-color { + background-color: #000; + color: #fff; +} + +.has-white-background-color { + background-color: #fff; + color: #000; +} + +.has-black-color { + color: #000; +} + +.has-white-color { + color: #fff; +} + + +/* Typography -------------------------------- */ + +.editor-styles-wrapper .editor-block-list__layout a { + color: #cd2653; + text-decoration: underline; +} + +.editor-styles-wrapper a:focus, +.editor-styles-wrapper a:hover { + text-decoration: none; +} + +.editor-post-title__block .editor-post-title__input, +.editor-styles-wrapper .wp-block h1, +.editor-styles-wrapper .wp-block h2, +.editor-styles-wrapper .wp-block h3, +.editor-styles-wrapper .wp-block h4, +.editor-styles-wrapper .wp-block h5, +.editor-styles-wrapper .wp-block h6 { + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; + font-weight: 700; + letter-spacing: -0.0415625em; + line-height: 1.25; + margin: 40px 0 25px; +} + +.editor-post-title__block .editor-post-title__input, +.editor-styles-wrapper .wp-block h1 { + font-size: 36px; + font-weight: 800; + line-height: 1.138888889; +} + +.editor-styles-wrapper .wp-block h2 { + font-size: 32px; +} + +.editor-styles-wrapper .wp-block h3 { + font-size: 28px; +} + +.editor-styles-wrapper .wp-block h4 { + font-size: 24px; +} + +.editor-styles-wrapper .wp-block h5 { + font-size: 21px; +} + +.editor-styles-wrapper .wp-block h6 { + font-size: 16px; + letter-spacing: 0.03125em; + text-transform: uppercase; +} + +.editor-styles-wrapper li, +.editor-styles-wrapper p, +.editor-styles-wrapper p.wp-block-paragraph { + line-height: 1.4; +} + +/* POST TITLE */ + +.wp-block.editor-post-title__block { + max-width: 1000px; +} + +.editor-styles-wrapper .editor-post-title__block .editor-post-title__input { + margin: 0; + text-align: center; +} + +/* DROP CAP */ + +.editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter { + color: #cd2653; + font-size: 5.1em; + font-weight: 800; + margin: 0.05em 0.1em 0 0; +} + + +/* Monospace --------------------------------- */ + +.editor-styles-wrapper code, +.editor-styles-wrapper kbd, +.editor-styles-wrapper pre, +.editor-styles-wrapper samp { + font-family: monospace; +} + +.editor-styles-wrapper kbd, +.editor-styles-wrapper pre, +.editor-styles-wrapper samp { + border-radius: 0; + font-size: 0.75em; + padding: 4px 6px; +} + +.editor-styles-wrapper pre { + border-color: #dcd7ca; + border-radius: 0; + line-height: 1.5; + padding: 1em; +} + + +/* Custom Text Sizes ------------------------- */ + +.editor-styles-wrapper p.has-large-font-size.editor-rich-text__tinymce, +.editor-styles-wrapper p.has-large-font-size.editor-rich-text__tinymce.mce-content-body, +.editor-styles-wrapper p.has-larger-font-size.editor-rich-text__tinymce, +.editor-styles-wrapper p.has-larger-font-size.editor-rich-text__tinymce.mce-content-body { + line-height: 1.4; +} + +.editor-styles-wrapper p.has-small-font-size { + font-size: 0.842em; +} + +.editor-styles-wrapper p.has-normal-font-size, +.editor-styles-wrapper p.has-regular-font-size { + font-size: 1em; +} + +.editor-styles-wrapper p.has-medium-font-size { + font-size: 1.1em; +} + +.editor-styles-wrapper p.has-large-font-size { + font-size: 1.25em; +} + +.editor-styles-wrapper p.has-larger-font-size { + font-size: 1.5em; +} + + +/* Post Media -------------------------------- */ + +.editor-styles-wrapper figure { + margin: 0; +} + +.editor-styles-wrapper .alignleft, +.editor-styles-wrapper .alignright { + margin-bottom: 1.2em; + max-width: 260px; +} + +.editor-styles-wrapper .wp-caption .alignleft, +.editor-styles-wrapper .wp-caption .alignright { + margin-bottom: 0; +} + +.editor-styles-wrapper .alignleft { + margin-right: 1em; +} + +.editor-styles-wrapper .alignright { + margin-left: 1em; +} + +.editor-styles-wrapper figcaption { + color: #6d6d6d; + font-size: 15px; + font-weight: 500; + line-height: 1.2; + margin-top: 5px; + text-align: inherit; +} + + +/* Forms ------------------------------------- */ + +.editor-styles-wrapper fieldset { + border: 2px solid #dcd7ca; + padding: 20px; +} + +.editor-styles-wrapper legend { + font-size: 0.85em; + font-weight: 700; + padding: 0 10px; +} + +.editor-styles-wrapper label { + font-size: 15px; + font-weight: 600; +} + + +/* Block: Base Margins ---------------------- */ + +/* Block: Shared Widget Styles -------------- */ + +.editor-styles-wrapper ul.wp-block-archives, +.editor-styles-wrapper ul.wp-block-categories, +.editor-styles-wrapper ul.wp-block-latest-posts, +.editor-styles-wrapper ul.wp-block-categories__list { + font-family: inherit; + list-style: none; + margin: 40px 0; + padding-left: 0; +} + +.editor-styles-wrapper ul.wp-block-categories__list ul { + margin: 0; +} + +.editor-styles-wrapper ul.wp-block-archives li, +.editor-styles-wrapper ul.wp-block-categories li, +.editor-styles-wrapper ul.wp-block-latest-posts li, +.editor-styles-wrapper ul.wp-block-categories__list li { + color: #6d6d6d; + line-height: 1.476; + margin: 5px 0 0 0; +} + +.editor-styles-wrapper ul.wp-block-archives li li, +.editor-styles-wrapper ul.wp-block-categories li li, +.editor-styles-wrapper ul.wp-block-categories__list li li, +.editor-styles-wrapper ul.wp-block-latest-posts li li { + margin-left: 20px; +} + +.editor-styles-wrapper .wp-block-archives li > a, +.editor-styles-wrapper .wp-block-categories li > a, +.editor-styles-wrapper .wp-block-latest-posts li > a { + font-weight: 700; + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-archives li > a:focus, +.editor-styles-wrapper .wp-block-archives li > a:hover, +.editor-styles-wrapper .wp-block-categories li > a:focus, +.editor-styles-wrapper .wp-block-categories li > a:hover, +.editor-styles-wrapper .wp-block-latest-posts li > a:focus, +.editor-styles-wrapper .wp-block-latest-posts li > a:hover { + font-weight: 700; + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-archives.aligncenter, +.editor-styles-wrapper .wp-block-categories.aligncenter { + text-align: center; +} + +.editor-styles-wrapper .wp-block-latest-comments time, +.editor-styles-wrapper .wp-block-latest-posts time { + color: #6d6d6d; + font-size: 0.7em; + font-weight: 600; + letter-spacing: normal; + line-height: 1.476; + margin-top: 0.15em; +} + + +/* Block: Table ------------------------------ */ + +.editor-styles-wrapper .wp-block-table { + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + font-size: 18px; + margin-bottom: 1.1em; + width: 100%; +} + +.editor-styles-wrapper .wp-block-table, +.editor-styles-wrapper .wp-block-table * { + border-color: #dcd7ca; +} + +.editor-styles-wrapper .wp-block-table tr { + border: none; +} + +.editor-styles-wrapper .wp-block-table caption { + background: #dcd7ca; + text-align: center; +} + +.editor-styles-wrapper .wp-block-table th, +.editor-styles-wrapper .wp-block-table td { + line-height: 1.4; + margin: 0; + overflow: visible; + padding: 0; +} + +.editor-styles-wrapper .wp-block-table .wp-block-table__cell-content { + padding: 0.5em; +} + +.editor-styles-wrapper .wp-block-table thead { + vertical-align: bottom; + white-space: nowrap; + text-align: inherit; +} + +.editor-styles-wrapper .wp-block-table th { + font-weight: 700; + text-align: inherit; /* Prevents the header from being centered by default*/ +} + +.editor-styles-wrapper .wp-block-table th.has-text-align-center { + text-align: center; +} + +.editor-styles-wrapper .wp-block-table th.has-text-align-right { + text-align: right; +} + +.editor-styles-wrapper .wp-block-table th.has-text-align-left { + text-align: left; +} + +/* STYLE: STRIPES */ + +.editor-styles-wrapper .wp-block-table.is-style-stripes { + border: 1px solid #dcd7ca; +} + +.editor-styles-wrapper .wp-block-table.is-style-stripes tbody tr:nth-child(odd) { + background: #dcd7ca; +} + + +/* Block: Separator -------------------------- */ + +hr.wp-block-separator { + border-top: 1px solid #6d6d6d; + color: #6d6d6d; + margin: 30px 0; +} + +hr.wp-block-separator:not(.is-style-wide):not(.is-style-dots) { + max-width: 100%; +} + +hr.wp-block-separator:not(.is-style-dots) { + background: linear-gradient(to left, currentColor calc(50% - 16px), transparent calc(50% - 16px), transparent calc(50% + 16px), currentColor calc(50% + 16px)); + background-color: transparent !important; + border: none; + height: 1px; + overflow: visible; + position: relative; +} + +.wp-block-separator.has-background:not(.is-style-wide):not(.is-style-dots) { + height: 1px; +} + +hr.wp-block-separator:not(.is-style-dots)::before, +hr.wp-block-separator:not(.is-style-dots)::after { + background: currentColor; + content: ""; + display: block; + height: 16px; + position: absolute; + top: calc(50% - 8px); + transform: rotate(22.5deg); + width: 1px; +} + +hr.wp-block-separator::before { + left: calc(50% - 5px); +} + +hr.wp-block-separator::after { + right: calc(50% - 5px); +} + +/* STYLE: DOTS */ + +hr.wp-block-separator.is-style-dots::before { + font-size: 32px; + font-weight: 700; + letter-spacing: 1em; + padding-left: 1em; +} + + +/* Block: Quote ------------------------------ */ + +.editor-styles-wrapper blockquote { + margin: 0; +} + +.editor-styles-wrapper .wp-block-quote { + border-color: #cd2653; + border-style: solid; + border-width: 0 0 0 2px; + margin: 20px 0; + padding: 5px 0 5px 20px; +} + +.editor-styles-wrapper .wp-block-quote.has-text-align-center, +.editor-styles-wrapper .wp-block-quote[style*="text-align:center"], +.editor-styles-wrapper .wp-block-quote[style*="text-align: center"] { + border-width: 0; + padding: 5px 0; +} + +.editor-styles-wrapper .wp-block-quote.has-text-align-right, +.editor-styles-wrapper .wp-block-quote[style*="text-align:right"], +.editor-styles-wrapper .wp-block-quote[style*="text-align: right"] { + border-width: 0 2px 0 0; + padding: 5px 20px 5px 0; +} + +.editor-styles-wrapper cite, +.editor-styles-wrapper .wp-block-quote__citation, +.editor-styles-wrapper .wp-block-quote cite, +.editor-styles-wrapper .wp-block-quote footer { + color: #6d6d6d; + font-size: 14px; + font-weight: 600; + line-height: 1.25; +} + +.editor-styles-wrapper .wp-block-quote p { + color: inherit; + font-weight: 400; + margin: 0 0 20px 0; +} + +.editor-styles-wrapper .wp-block-quote.is-style-large { + border: none; + padding: 0; +} + +.editor-styles-wrapper .wp-block-quote.is-style-large p { + font-family: inherit; + font-size: 24px; + font-style: normal; + font-weight: 700; + letter-spacing: -0.035714286em; + line-height: 1.285714286; +} + +.editor-styles-wrapper .wp-block-quote.is-style-large .wp-block-quote__citation, +.editor-styles-wrapper .wp-block-quote.is-style-large cite, +.editor-styles-wrapper .wp-block-quote.is-style-large footer { + font-size: 16px; +} + + +/* Block: Code, Verse and Preformatted ------- */ + +.editor-styles-wrapper .wp-block-code { + color: inherit; +} + +.editor-styles-wrapper .wp-block-code, +.editor-styles-wrapper .wp-block-preformatted pre, +.editor-styles-wrapper .wp-block-verse pre { + border: 1px solid #dcd7ca; + border-radius: 0; + padding: 30px; +} + +.editor-styles-wrapper .wp-block-freeform.block-library-rich-text__tinymce pre, +.editor-styles-wrapper .wp-block-preformatted pre, +.editor-styles-wrapper .wp-block-code .block-editor-plain-text, +.editor-styles-wrapper .wp-block-verse pre { + background: transparent; + color: inherit; + font-family: monospace; + font-size: 14px; +} + +/* Block: Cover ------------------------------ */ + +.editor-styles-wrapper .wp-block-cover-image .wp-block-cover__inner-container, +.editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container { + margin: 0 auto; + width: calc(100% - 40px); +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"], +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] { + height: auto; + max-height: none; +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .wp-block-cover { + text-align: left; +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .wp-block-cover { + text-align: right; +} + +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .block-editor-block-list__block-edit, +.editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .block-editor-block-list__block-edit { + float: none; + margin-left: 0; + margin-right: 0; + max-width: 100%; +} + +.wp-block-cover-image .wp-block-cover-image-text, +.wp-block-cover-image .wp-block-cover-text, +.wp-block-cover-image h2, +.wp-block-cover .wp-block-cover-image-text, +.wp-block-cover .wp-block-cover-text, +.wp-block-cover h2 { + max-width: 100%; +} + +.editor-styles-wrapper .wp-block-cover a { + color: inherit; +} + +/* Block: Shared Media Styles ---------------- */ + +.wp-block[data-type*="core-embed"][data-align="full"] figcaption, +.wp-block[data-type="core/image"][data-align="full"] figcaption, +.wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption { + padding: 0 14px; +} + +/* Block: Paragraph -------------------------- */ + +/* Block: Pullquote -------------------------- */ + +.editor-styles-wrapper .wp-block-pullquote { + border: none; + color: inherit; + padding: 0; + position: relative; + text-align: center; +} + +.editor-styles-wrapper .wp-block-pullquote::before { + background: #fff; + border-radius: 50%; + color: #cd2653; + content: "”"; + display: block; + font-size: 62px; + font-weight: 500; + line-height: 1.2; + margin: 0 auto 15px auto; + text-align: center; + height: 44px; + width: 44px; +} + +.editor-styles-wrapper .wp-block .wp-block-pullquote p { + font-family: inherit; + font-size: 28px; + font-weight: 700; + line-height: 1.178571429; + letter-spacing: -0.041785714em; + margin-bottom: 20px; +} + +.editor-styles-wrapper .wp-block .wp-block-pullquote p:last-child { + margin-bottom: 0; +} + +.editor-styles-wrapper .wp-block .wp-block-pullquote p, +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color blockquote > .block-editor-rich-text p, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .editor-rich-text p, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .editor-rich-text p { + font-size: 28px; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"], +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] { + height: auto; + max-height: none; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote.is-style-solid-color blockquote { + text-align: left; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote.is-style-solid-color blockquote { + text-align: right; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit, +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit { + float: none; + margin-left: 0; + margin-right: 0; + max-width: 100%; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit .wp-block-pullquote::before { + margin-right: 0; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit .wp-block-pullquote::before { + margin-left: 0; +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .is-style-solid-color::before { + right: 20px; + transform: translateY(-50%); +} + +.editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .is-style-solid-color::before { + left: 20px; + transform: translateY(-50%); +} + +.editor-styles-wrapper .wp-block-pullquote__citation, +.editor-styles-wrapper .wp-block-pullquote cite, +.editor-styles-wrapper .wp-block-pullquote footer { + color: #6d6d6d; + font-size: 16px; + font-weight: 500; + margin-top: 12px; + text-transform: none; +} + +/* STYLE: SOLID COLOR */ + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color { + padding: 30px 20px; + position: relative; +} + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color::before { + position: absolute; + top: 0; + left: 50%; + transform: translateY(-50%) translateX(-50%); +} + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color blockquote { + max-width: 100%; + text-align: center; +} + +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color .wp-block-pullquote__citation, +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color .wp-block-pullquote cite, +.editor-styles-wrapper .wp-block-pullquote.is-style-solid-color .wp-block-pullquote footer { + color: inherit; +} + + +/* Block: Verse ------------------------------ */ + +.editor-styles-wrapper .wp-block-verse pre, +.editor-styles-wrapper pre.wp-block-verse { + font-size: 0.75em; +} + + +/* Block: Button ----------------------------- */ + +.editor-styles-wrapper .wp-block-button__link, +.editor-styles-wrapper .wp-block-file__button { + background: #cd2653; + border-radius: 0; + color: #fff; + font-size: 15px; + font-weight: 600; + letter-spacing: 0.0333em; + line-height: 1.25; + padding: 1.1em 1.44em; + text-transform: uppercase; +} + +.editor-styles-wrapper .wp-block-button .wp-block-button__link.mce-content-body { + line-height: 1.1; +} + +/* BUTTON STYLE: OUTLINE */ + +.editor-styles-wrapper .is-style-outline .wp-block-button__link { + background: none; + border-color: currentColor; + color: #cd2653; + padding: calc(1.1em - 2px) calc(1.44em - 2px); +} + +/* BUTTON STYLE: SQUARED */ + +.editor-styles-wrapper .is-style-squared .wp-block-button__link { + border-radius: 0; +} + + +/* Block: Latest Comments -------------------- */ + +.editor-styles-wrapper .wp-block-latest-comments { + font-family: inherit; + margin-left: 0; +} + +.editor-styles-wrapper .wp-block-latest-comments li.wp-block-latest-comments__comment { + font-size: inherit; + margin-bottom: 20px; +} + +.editor-styles-wrapper .wp-block-latest-comments li.wp-block-latest-comments__comment:last-child { + margin-bottom: 0; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta, +.editor-styles-wrapper .wp-block-latest-comments__comment-excerpt { + margin-left: 0 !important; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta { + font-weight: 700; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta a { + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-meta a:focus, +.editor-styles-wrapper .wp-block-latest-comments__comment-meta a:hover { + text-decoration: none; +} + +/* HAS AVATAR */ + +.editor-styles-wrapper .wp-block-latest-comments.has-avatars .wp-block-latest-comments__comment { + display: flex; +} + +.editor-styles-wrapper .wp-block-latest-comments.has-avatars img.avatar { + flex-shrink: 0; + margin: 5px 15px 0 0; +} + +/* HAS EXCERPT */ + +.editor-styles-wrapper .wp-block-latest-comments__comment-excerpt { + margin: 0; +} + +.editor-styles-wrapper .wp-block-latest-comments__comment-excerpt p { + font-family: inherit; + font-size: 0.7em; + margin: 10px 0 0; +} + + +/* Block: Latest Posts ----------------------- */ + +.editor-styles-wrapper ul.wp-block-latest-posts:not(.is-grid) li { + margin-top: 15px; +} + +/* STYLE: GRID */ + +.editor-styles-wrapper .wp-block-latest-posts.is-grid li { + border-color: #dcd7ca; +} + +.editor-styles-wrapper ul.wp-block-latest-posts.is-grid li { + border-style: solid; + border-width: 2px 0 0; + line-height: 1.25; + margin: 20px 16px 16px 0; + padding-top: 12px; +} + +.editor-styles-wrapper .wp-block-latest-posts__post-excerpt { + font-size: 0.95em; + line-height: 1.4; + margin-top: 15px; +} + +/* Block: Shortcode -------------------------- */ + +.editor-styles-wrapper .wp-block-shortcode textarea { + color: #191e23; +} + +/* Block: Embed ------------------------------ */ + +.editor-styles-wrapper .wp-block-embed { + margin-bottom: 30px; + margin-top: 30px; +} + +.editor-styles-wrapper .wp-block[data-type*="core-embed"][data-align="center"] * { + margin-left: auto; + margin-right: auto; +} + +/* Block: File ------------------------------- */ + +.editor-styles-wrapper .wp-block-file { + background: none; + padding: 0; +} + +.editor-styles-wrapper .wp-block-file__content-wrapper { + align-items: center; + display: flex; + justify-content: space-between; +} + +.editor-styles-wrapper .wp-block-file .wp-block-file__textlink { + color: #cd2653; + font-weight: 700; + text-decoration: none; +} + +.editor-styles-wrapper .wp-block-file .wp-block-file__textlink:focus, +.editor-styles-wrapper .wp-block-file .wp-block-file__textlink:hover { + text-decoration: underline; +} + +.editor-styles-wrapper .wp-block-file .wp-block-file__button { + font-size: 14px; + padding: 1em 1.25em; +} + +/* Block: Image ------------------------------ */ + +.editor-styles-wrapper .wp-block-image { + margin-bottom: 30px; + margin-top: 30px; +} + +.editor-styles-wrapper .wp-block-image.is-resized { + margin-left: auto; + margin-right: auto; +} + +/* Block: Group ------------------------------ */ + +.editor-styles-wrapper .wp-block-group.has-background { + padding: 20px; +} + +.wp-block-group .wp-block[data-type="core/heading"]:first-child * { + margin-top: 0; +} + +.wp-block[data-type="core/group"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"], +.wp-block[data-type="core/group"][data-align="full"] > .editor-block-list__block-edit > div > .wp-block-group.has-background > .wp-block-group__inner-container > .editor-inner-blocks > .editor-block-list__layout > .wp-block[data-align="full"] { + margin-left: 0; + width: 100%; +} + +/* Block: Paragraph -------------------------- */ + + +/* X. Media Queries +/* ------------------------------------------- */ + + +@media ( min-width: 480px ) { + + + /* STRUCTURE */ + + .editor-styles-wrapper .wp-block[data-align="right"] { + margin-right: 0; + } + + .editor-styles-wrapper .wp-block[data-align="left"] { + margin: 0; + } + + /* BLOCK: COVER */ + + .wp-block[data-type="core/cover"][data-align="left"] [data-block], + .wp-block[data-type="core/cover"][data-align="right"] [data-block] { + margin-top: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .block-editor-block-list__block-edit { + float: right; + margin-left: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .block-editor-block-list__block-edit { + float: left; + margin-right: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="right"] .wp-block-pullquote::before { + margin-right: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/cover"][data-align="left"] .wp-block-pullquote::before { + margin-left: 0; + } + + /* BLOCK: PULL QUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"], + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] { + height: 0; + max-width: 260px; + } + + .wp-block[data-type="core/pullquote"][data-align="left"] [data-block], + .wp-block[data-type="core/pullquote"][data-align="right"] [data-block] { + margin-top: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit { + float: right; + margin-left: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit { + float: left; + margin-right: 20px; + max-width: 260px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .wp-block-pullquote::before { + margin-right: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .wp-block-pullquote::before { + margin-left: 0; + } + + +} + +@media ( min-width: 600px ) { + + + /* BLOCK: SHARED MEDIA STYLES */ + + .wp-block[data-type*="core-embed"][data-align="full"] figcaption, + .wp-block[data-type="core/image"][data-align="full"] figcaption, + .wp-block[data-type="core/gallery"][data-align="full"] .blocks-gallery-caption { + padding: 0 45px; + } + + /* BLOCK: COLUMNS */ + + .editor-styles-wrapper .wp-block[data-type="core/column"] h1, + .editor-styles-wrapper .wp-block[data-type="core/column"] h2, + .editor-styles-wrapper .wp-block[data-type="core/column"] h3, + .editor-styles-wrapper .wp-block[data-type="core/column"] h4, + .editor-styles-wrapper .wp-block[data-type="core/column"] h5, + .editor-styles-wrapper .wp-block[data-type="core/column"] h6 { + margin: 35px 0 20px 0; + } + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .block-editor-block-list__block-edit { + margin-right: -30px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .block-editor-block-list__block-edit { + margin-left: -30px; + } + + +} + +@media ( min-width: 700px ) { + + /* STRUCTURE */ + + .editor-styles-wrapper > * { + font-size: 21px; + } + + /* TYPOGRAPHY */ + + .editor-post-title__block .editor-post-title__input, + .editor-styles-wrapper .wp-block h1 { + font-size: 64px; + } + + .editor-styles-wrapper .wp-block h2 { + font-size: 48px; + } + + .editor-styles-wrapper .wp-block h3 { + font-size: 40px; + } + + .editor-styles-wrapper .wp-block h4 { + font-size: 32px; + } + + .editor-styles-wrapper .wp-block h5 { + font-size: 24px; + } + + .editor-styles-wrapper li, + .editor-styles-wrapper p, + .editor-styles-wrapper p.wp-block-paragraph { + line-height: 1.476; + } + + /* FORMS */ + + .editor-styles-wrapper fieldset { + padding: 30px; + } + + .editor-styles-wrapper legend { + padding: 0 15px; + } + + /* BLOCK: BASE MARGINS */ + + /* BLOCK: BUTTON */ + + .editor-styles-wrapper .wp-block-button__link, + .editor-styles-wrapper .wp-block-file__button { + font-size: 17px; + } + + /* BLOCK: CODE */ + + .editor-styles-wrapper .wp-block-preformatted pre, + .editor-styles-wrapper .wp-block-code .block-editor-plain-text, + .editor-styles-wrapper .wp-block-verse pre { + font-size: 16px; + } + + /* BLOCK: COLUMNS */ + + .wp-block-column { + font-size: 16px; + } + + /* BLOCK: COVER */ + + .editor-styles-wrapper .wp-block-cover-image .wp-block-cover__inner-container, + .editor-styles-wrapper .wp-block-cover .wp-block-cover__inner-container { + width: calc(100% - 80px); + } + + /* BLOCK: GROUP */ + + .editor-styles-wrapper .wp-block:not([data-align="wide"]):not([data-align="full"]) div:not([class*="__inner-container"]) .wp-block-group.has-background, + .editor-styles-wrapper .wp-block div[class*="__inner-container"] .wp-block[data-align="wide"] .wp-block-group.has-background, + .editor-styles-wrapper .wp-block div[class*="__inner-container"] .wp-block[data-align="full"] .wp-block-group.has-background { + padding: 40px; + } + + .editor-styles-wrapper .wp-block[data-align="wide"] .wp-block-group.has-background, + .editor-styles-wrapper .wp-block[data-align="full"] .wp-block-group.has-background { + padding: 80px; + } + + /* BLOCK: LATEST POSTS */ + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block .wp-block-pullquote p, + .editor-styles-wrapper .wp-block-pullquote.is-style-solid-color blockquote > .block-editor-rich-text p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .editor-rich-text p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .editor-rich-text p { + font-size: 32px; + } + + .editor-styles-wrapper .wp-block-pullquote__citation, + .editor-styles-wrapper .wp-block-pullquote cite, + .editor-styles-wrapper .wp-block-pullquote footer { + margin-top: 20px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] .wp-block-pullquote::before, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote::before { + font-size: 113px; + height: 80px; + margin-bottom: 20px; + width: 80px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] .wp-block-pullquote.is-style-solid-color, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote.is-style-solid-color { + padding: 60px 40px 40px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote:not(.is-style-solid-color) { + padding-left: 10px; + padding-right: 10px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] blockquote p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] blockquote p { + font-size: 48px; + line-height: 1.203125; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] p { + font-size: 32px; + line-height: 1.1875; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .is-style-solid-color p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .is-style-solid-color p { + font-size: 26px; + } + + /* BLOCK: TABLE */ + + .editor-styles-wrapper table.wp-block-table { + font-size: 18px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin-bottom: 60px; + margin-top: 60px; + } + +} + + +@media ( min-width: 1000px ) { + + + /* BLOCK: COLUMNS */ + + .wp-block-column { + font-size: 18px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin-bottom: 80px; + margin-top: 80px; + } + + hr.wp-block-separator.is-style-wide { + margin-left: -70px; + margin-right: -70px; + } + + +} + + +@media ( min-width: 1220px ) { + + + /* TYPOGRAPHY */ + + .editor-post-title__block .editor-post-title__input, + .editor-styles-wrapper .wp-block h1 { + font-size: 84px; + } + + .editor-styles-wrapper .wp-block h6 { + font-size: 18px; + } + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] .wp-block-pullquote.is-style-solid-color, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] .wp-block-pullquote.is-style-solid-color { + padding: 90px 40px 80px; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="wide"] blockquote p, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="full"] blockquote p { + font-size: 64px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator.is-style-wide { + margin-left: -150px; + margin-right: -150px; + } + +} + + +@media ( min-width: 1360px ) { + + + /* STRUCTURE */ + + .editor-styles-wrapper .wp-block[data-align="left"], + .editor-styles-wrapper .wp-block[data-align="right"] { + margin: 0 auto; + max-width: 1220px; + } + + + /* BLOCK: PULLQUOTE */ + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"] .is-style-solid-color::before, + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] .is-style-solid-color::before { + top: 0; + } + + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="left"], + .editor-styles-wrapper .wp-block[data-type="core/pullquote"][data-align="right"] { + margin: 0 auto; + max-width: 1220px; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator.is-style-wide { + margin-left: -200px; + margin-right: -200px; + } + + +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic-rtl.css b/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic-rtl.css new file mode 100644 index 0000000..7b886c7 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic-rtl.css @@ -0,0 +1,601 @@ +/* -------------------------------------------------------------------------- */ + +/* Twenty Twenty Editor Styles — Classic Editor +/* -------------------------------------------------------------------------- */ + + +/* Fonts ------------------------------------- */ + +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the classic editor and + * block editor. The following font-face override fixes the issue by manually + * inserting a custom font that includes just a Hoefler Text space replacement + * for that character instead. + */ +@font-face { + font-family: NonBreakingSpaceOverride; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* ---------------------------------------------- +Inter variable font. Usage: + +@supports (font-variation-settings: normal) { + html { font-family: "Inter var", sans-serif; } +} +---------------------------------------------- */ + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: normal; + src: url(../fonts/inter/Inter-upright-var.woff2) format("woff2"); +} + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: italic; + src: url(../fonts/inter/Inter-italic-var.woff2) format("woff2"); +} + +/* Structure --------------------------------- */ + +body#tinymce.wp-editor.content { /* stylelint-disable-line no-duplicate-selectors */ + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + body#tinymce.wp-editor.content { /* stylelint-disable-line no-duplicate-selectors */ + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } + +} + +body#tinymce.wp-editor.content { /* stylelint-disable-line no-duplicate-selectors */ + background: #f5efe0; + color: #000; + font-size: 21px; + letter-spacing: -0.015em; + margin: 0 auto; + max-width: calc(100% - 40px); + width: 580px; +} + +body#tinymce.wp-editor.content * { + box-sizing: border-box; + -webkit-font-smoothing: antialiased; +} + +body#tinymce.wp-editor.content p, +body#tinymce.wp-editor.content ol, +body#tinymce.wp-editor.content ul, +body#tinymce.wp-editor.content dl, +body#tinymce.wp-editor.content dt { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +body#tinymce.wp-editor.content p, +body#tinymce.wp-editor.content ul, +body#tinymce.wp-editor.content ol, +body#tinymce.wp-editor.content blockquote { + line-height: 1.5; + margin-bottom: 1.5em; +} + +body#tinymce.wp-editor.content code, +body#tinymce.wp-editor.content kbd, +body#tinymce.wp-editor.content samp { + background: rgba(0, 0, 0, 0.075); +} + +body#tinymce.wp-editor.content code, +body#tinymce.wp-editor.content kbd, +body#tinymce.wp-editor.content pre, +body#tinymce.wp-editor.content samp { + font-family: monospace; + color: inherit; + font-size: 15px; +} + +body#tinymce.wp-editor.content pre { + border: 1px solid #dcd7ca; + line-height: 1.5; + margin: 40px 0; + overflow: auto; + padding: 30px; + text-align: right; +} + +body#tinymce.wp-editor.content a, +body#tinymce.wp-editor.content a:focus, +body#tinymce.wp-editor.content a:hover { + color: #cd2653; + text-decoration: underline; +} + +body#tinymce.wp-editor.content img { + height: auto; + max-width: 100%; +} + +body#tinymce.wp-editor.content img[data-wp-more] { + height: 16px; +} + +body#tinymce.wp-editor.content hr { + border: none; + border-top: 1px solid #dcd7ca; + margin: 2em auto; + width: 100%; +} + +body#tinymce.wp-editor.content hr:not(.is-style-dots) { + background: linear-gradient(to right, currentColor calc(50% - 16px), transparent calc(50% - 16px), transparent calc(50% + 16px), currentColor calc(50% + 16px)); + border: none; + color: #6d6d6d; + height: 1px; + margin: 80px 0; + overflow: visible; + position: relative; +} + +body#tinymce.wp-editor.content hr:not(.is-style-dots)::before, +body#tinymce.wp-editor.content hr:not(.is-style-dots)::after { + background: currentColor; + content: ""; + display: block; + height: 16px; + position: absolute; + top: calc(50% - 8px); + transform: rotate(-22.5deg); + width: 1px; +} + +body#tinymce.wp-editor.content hr::before { + right: calc(50% - 5px); +} + +body#tinymce.wp-editor.content hr::after { + left: calc(50% - 5px); +} + +body#tinymce.wp-editor.content dt { + font-weight: 600; +} + +body#tinymce.wp-editor.content dd { + line-height: 1.5; +} + +body#tinymce.wp-editor.content dd + dt { + margin-top: 1.5rem; +} + + +/* Font Families ----------------------------- */ + +body#tinymce.wp-editor.content figcaption, +body#tinymce.wp-editor.content .wp-caption-text, +body#tinymce.wp-editor.content .wp-caption-dd, +body#tinymce.wp-editor.content cite, +body#tinymce.wp-editor.content table { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + line-height: 1; +} + +@supports ( font-variation-settings: normal ) { + + body#tinymce.wp-editor.content figcaption, + body#tinymce.wp-editor.content .wp-caption-text, + body#tinymce.wp-editor.content .wp-caption-dd, + body#tinymce.wp-editor.content cite, + body#tinymce.wp-editor.content table { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + + +/* Titles ------------------------------------ */ + +body#tinymce.wp-editor.content h1, +body#tinymce.wp-editor.content h2, +body#tinymce.wp-editor.content h3, +body#tinymce.wp-editor.content h4, +body#tinymce.wp-editor.content h5, +body#tinymce.wp-editor.content h6 { + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; + font-weight: 700; + letter-spacing: -0.0415625em; + line-height: 1.25; + margin: 40px 0 25px; +} + +body#tinymce.wp-editor.content h1 { + font-size: 84px; + font-weight: 800; + line-height: 1.138888889; +} + +body#tinymce.wp-editor.content h2 { + font-size: 48px; +} + +body#tinymce.wp-editor.content h3 { + font-size: 40px; +} + +body#tinymce.wp-editor.content h4 { + font-size: 32px; +} + +body#tinymce.wp-editor.content h5 { + font-size: 24px; +} + +body#tinymce.wp-editor.content h6 { + font-size: 18px; + letter-spacing: 0.03125em; + text-transform: uppercase; +} + +/* Blockquote -------------------------------- */ + +body#tinymce.wp-editor.content blockquote { + border-style: solid; + border: none; + border-right: 2px solid #cd2653; + margin: 0 0 1.6em 0; + padding: 0.25em 1em 0.25em 0; +} + +body#tinymce.wp-editor.content blockquote p { + font-style: normal; + font-weight: 400; + margin: 0; +} + +body#tinymce.wp-editor.content cite { + color: #6d6d6d; + font-size: 16px; + font-weight: 500; + font-style: normal; +} + +body#tinymce.wp-editor.content blockquote cite { + display: block; + margin-top: 20px; +} + + +/* Lists ------------------------------------- */ + +body#tinymce.wp-editor.content ul { + margin-right: 1.5em; + padding-right: 0; + list-style: disc; +} + +body#tinymce.wp-editor.content ol { + margin-right: 1.5em; + padding-right: 0; + list-style: square; +} + +body#tinymce.wp-editor.content ul ul { + list-style: circle; +} + +body#tinymce.wp-editor.content ul ul ul { + list-style: square; +} + +body#tinymce.wp-editor.content ol ol { + list-style: lower-alpha; +} + +body#tinymce.wp-editor.content ol ol ol { + list-style: lower-roman; +} + +body#tinymce.wp-editor.content ul ul, +body#tinymce.wp-editor.content ul ol, +body#tinymce.wp-editor.content ol ul, +body#tinymce.wp-editor.content ol ol { + margin-bottom: 0; +} + +body#tinymce.wp-editor.content li { + line-height: 1.5; + margin-bottom: 0.5em; +} + +body#tinymce.wp-editor.content ol > li:last-child, +body#tinymce.wp-editor.content ul > li:last-child { + margin-bottom: 0; +} + +body#tinymce.wp-editor.content ol > li:first-child, +body#tinymce.wp-editor.content ul > li:first-child { + margin-top: 0.5em; +} + + +/* Post Media -------------------------------- */ + +body#tinymce.wp-editor.content figure, +body#tinymce.wp-editor.content video { + display: block; + margin: 0; +} + +body#tinymce.wp-editor.content .wp-caption { + margin-bottom: 1.5em; +} + +body#tinymce.wp-editor.content img.alignleft, +body#tinymce.wp-editor.content .alignleft img, +body#tinymce.wp-editor.content img.aligncenter, +body#tinymce.wp-editor.content .aligncenter img, +body#tinymce.wp-editor.content img.alignright, +body#tinymce.wp-editor.content .alignright img, +body#tinymce.wp-editor.content img.alignnone, +body#tinymce.wp-editor.content .alignnone img { + display: block; +} + +body#tinymce.wp-editor.content .aligncenter, +body#tinymce.wp-editor.content .alignnone, +body#tinymce.wp-editor.content .alignwide, +body#tinymce.wp-editor.content .alignfull { + margin: 50px auto; +} + +body#tinymce.wp-editor.content .alignleft, +body#tinymce.wp-editor.content .alignright { + margin-bottom: 25px; + max-width: 50%; +} + +body#tinymce.wp-editor.content .wp-caption img { + display: block; +} + +body#tinymce.wp-editor.content .wp-caption .alignleft, +body#tinymce.wp-editor.content .wp-caption .alignright { + margin-bottom: 0; +} + +body#tinymce.wp-editor.content .alignleft { + float: left; + margin-left: 25px; + max-width: 260px; +} + +body#tinymce.wp-editor.content .alignright { + float: right; + margin-right: 25px; + max-width: 260px; +} + +body#tinymce.wp-editor.content .wpview[data-wpview-type="gallery"] + .wpview[data-wpview-type="gallery"] { + margin-top: -34px; +} + +body#tinymce.wp-editor.content figcaption, +body#tinymce.wp-editor.content .wp-caption-text, +body#tinymce.wp-editor.content .wp-caption-dd, +body#tinymce.wp-editor.content .gallery-caption { + color: #6d6d6d; + display: block; + font-size: 15px; + font-weight: 500; + line-height: 1.2; + margin: 18px 0 0; +} + +body#tinymce.wp-editor.content figcaption a, +body#tinymce.wp-editor.content .wp-caption-text a, +body#tinymce.wp-editor.content .wp-caption-dd a, +body#tinymce.wp-editor.content .gallery-caption a { + color: inherit; +} + + +/* Tables ------------------------------------ */ + +body#tinymce.wp-editor.content table { + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + font-size: 18px; + width: 100%; +} + +body#tinymce.wp-editor.content th, +body#tinymce.wp-editor.content td { + line-height: 1.2; + margin: 0; + overflow: visible; + padding: 0.5em; +} + +body#tinymce.wp-editor.content caption { + text-align: center; + padding: 0.5em; +} + +body#tinymce.wp-editor.content thead { + vertical-align: bottom; + white-space: nowrap; +} + +body#tinymce.wp-editor.content th { + text-align: right; +} + + +/* Forms ------------------------------------- */ + +body#tinymce.wp-editor.content fieldset { + border: 2px solid #dcd7ca; + padding: 30px; +} + +body#tinymce.wp-editor.content fieldset legend { + font-size: 0.85em; + font-weight: 700; + padding: 0 15px; +} + +body#tinymce.wp-editor.content label { + display: block; + font-size: 15px; + font-weight: 600; + margin: 0 0 5px 0; +} + +body#tinymce.wp-editor.content input, +body#tinymce.wp-editor.content textarea { + border-color: #dcd7ca; + color: inherit; + font-family: inherit; + font-size: inherit; +} + +body#tinymce.wp-editor.content input[type="text"], +body#tinymce.wp-editor.content input[type="password"], +body#tinymce.wp-editor.content input[type="email"], +body#tinymce.wp-editor.content input[type="url"], +body#tinymce.wp-editor.content input[type="date"], +body#tinymce.wp-editor.content input[type="month"], +body#tinymce.wp-editor.content input[type="time"], +body#tinymce.wp-editor.content input[type="datetime"], +body#tinymce.wp-editor.content input[type="datetime-local"], +body#tinymce.wp-editor.content input[type="week"], +body#tinymce.wp-editor.content input[type="number"], +body#tinymce.wp-editor.content input[type="search"], +body#tinymce.wp-editor.content input[type="tel"], +body#tinymce.wp-editor.content input[type="color"], +body#tinymce.wp-editor.content textarea { + -webkit-appearance: none; + -moz-appearance: none; + background: transparent; + border-radius: 3px; + border-style: solid; + border-width: 0.1rem; + box-shadow: none; + display: block; + font-size: inherit; + font-weight: 400; + margin: 0; + max-width: 100%; + padding: 13.5px 18px; + width: 100%; + word-break: normal; +} + +body#tinymce.wp-editor.content textarea { + height: 200px; + line-height: 1.5; + width: 100%; +} + +body#tinymce.wp-editor.content button, +body#tinymce.wp-editor.content .faux-button, +body#tinymce.wp-editor.content .wp-block-button__link, +body#tinymce.wp-editor.content .wp-block-file__button, +body#tinymce.wp-editor.content input[type="button"], +body#tinymce.wp-editor.content input[type="reset"], +body#tinymce.wp-editor.content input[type="submit"] { + -webkit-appearance: none; + -moz-appearance: none; + background: #cd2653; + border: none; + border-radius: 0; + color: #fff; + cursor: pointer; + display: inline-block; + font-size: 17px; + font-weight: 600; + letter-spacing: 0.0333em; + line-height: 1.25; + margin: 0; + padding: 1.1em 1.44em; + text-align: center; + text-decoration: none; + text-transform: uppercase; +} + +body#tinymce.wp-editor.content button:focus, +body#tinymce.wp-editor.content button:hover, +body#tinymce.wp-editor.content .faux-button:hover, +body#tinymce.wp-editor.content .faux-button:focus, +body#tinymce.wp-editor.content .wp-block-button__link:focus, +body#tinymce.wp-editor.content .wp-block-button__link:hover, +body#tinymce.wp-editor.content .wp-block-file__button:focus, +body#tinymce.wp-editor.content .wp-block-file__button:hover, +body#tinymce.wp-editor.content input[type="button"]:focus, +body#tinymce.wp-editor.content input[type="button"]:hover, +body#tinymce.wp-editor.content input[type="reset"]:focus, +body#tinymce.wp-editor.content input[type="reset"]:hover, +body#tinymce.wp-editor.content input[type="submit"]:focus, +body#tinymce.wp-editor.content input[type="submit"]:hover { + color: #fff; + text-decoration: underline; +} + +.wp-block-button:not(.alignleft):not(.alignright) { + margin-bottom: 30px; + margin-top: 30px; +} + +/* BUTTON ALIGN: CENTER */ + +.wp-block-button.aligncenter { + text-align: center; +} + +/* BUTTON STYLE: OUTLINE */ + +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link, +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link:focus, +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link:hover { + color: #cd2653; +} + +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link { + background: none; + border: 2px solid currentColor; + padding: calc(1.1em - 2px) calc(1.44em - 2px); +} + +/* BUTTON STYLE: SQUARED */ + +body#tinymce.wp-editor.content .is-style-squared .wp-block-button__link { + border-radius: 0; +} + + +/* Blocks ------------------------------------ */ + +/* BLOCK: HELPER CLASSES */ + +body#tinymce.wp-editor.content .has-background { + padding: 20px; +} + +/* BLOCK: GALLERY */ + +body#tinymce.wp-editor.content ul.wp-block-gallery { + list-style: none; + margin-right: 0; +} + +body#tinymce.wp-editor.content ul.wp-block-gallery li { + margin-right: 0; +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic.css b/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic.css new file mode 100644 index 0000000..91301b6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/css/editor-style-classic.css @@ -0,0 +1,605 @@ +/* -------------------------------------------------------------------------- */ + +/* Twenty Twenty Editor Styles — Classic Editor +/* -------------------------------------------------------------------------- */ + + +/* Fonts ------------------------------------- */ + +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the classic editor and + * block editor. The following font-face override fixes the issue by manually + * inserting a custom font that includes just a Hoefler Text space replacement + * for that character instead. + */ +@font-face { + font-family: NonBreakingSpaceOverride; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* ---------------------------------------------- +Inter variable font. Usage: + +@supports (font-variation-settings: normal) { + html { font-family: "Inter var", sans-serif; } +} +---------------------------------------------- */ + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: normal; + src: url(../fonts/inter/Inter-upright-var.woff2) format("woff2"); +} + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: italic; + src: url(../fonts/inter/Inter-italic-var.woff2) format("woff2"); +} + +/* Structure --------------------------------- */ + +body#tinymce.wp-editor.content { /* stylelint-disable-line no-duplicate-selectors */ + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + body#tinymce.wp-editor.content { /* stylelint-disable-line no-duplicate-selectors */ + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } + +} + +body#tinymce.wp-editor.content { /* stylelint-disable-line no-duplicate-selectors */ + background: #f5efe0; + color: #000; + font-size: 21px; + letter-spacing: -0.015em; + margin: 0 auto; + max-width: calc(100% - 40px); + width: 580px; +} + +body#tinymce.wp-editor.content * { + box-sizing: border-box; + -webkit-font-smoothing: antialiased; +} + +body#tinymce.wp-editor.content p, +body#tinymce.wp-editor.content ol, +body#tinymce.wp-editor.content ul, +body#tinymce.wp-editor.content dl, +body#tinymce.wp-editor.content dt { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +body#tinymce.wp-editor.content p, +body#tinymce.wp-editor.content ul, +body#tinymce.wp-editor.content ol, +body#tinymce.wp-editor.content blockquote { + line-height: 1.5; + margin-bottom: 1.5em; +} + +body#tinymce.wp-editor.content code, +body#tinymce.wp-editor.content kbd, +body#tinymce.wp-editor.content samp { + background: rgba(0, 0, 0, 0.075); +} + +body#tinymce.wp-editor.content code, +body#tinymce.wp-editor.content kbd, +body#tinymce.wp-editor.content pre, +body#tinymce.wp-editor.content samp { + font-family: monospace; + color: inherit; + font-size: 15px; +} + +body#tinymce.wp-editor.content pre { + border: 1px solid #dcd7ca; + line-height: 1.5; + margin: 40px 0; + overflow: auto; + padding: 30px; + text-align: left; +} + +body#tinymce.wp-editor.content a, +body#tinymce.wp-editor.content a:focus, +body#tinymce.wp-editor.content a:hover { + color: #cd2653; + text-decoration: underline; +} + +body#tinymce.wp-editor.content img { + height: auto; + max-width: 100%; +} + +body#tinymce.wp-editor.content img[data-wp-more] { + height: 16px; +} + +body#tinymce.wp-editor.content hr { + border: none; + border-top: 1px solid #dcd7ca; + margin: 2em auto; + width: 100%; +} + +body#tinymce.wp-editor.content hr:not(.is-style-dots) { + background: linear-gradient(to left, currentColor calc(50% - 16px), transparent calc(50% - 16px), transparent calc(50% + 16px), currentColor calc(50% + 16px)); + border: none; + color: #6d6d6d; + height: 1px; + margin: 80px 0; + overflow: visible; + position: relative; +} + +body#tinymce.wp-editor.content hr:not(.is-style-dots)::before, +body#tinymce.wp-editor.content hr:not(.is-style-dots)::after { + background: currentColor; + content: ""; + display: block; + height: 16px; + position: absolute; + top: calc(50% - 8px); + transform: rotate(22.5deg); + width: 1px; +} + +body#tinymce.wp-editor.content hr::before { + left: calc(50% - 5px); +} + +body#tinymce.wp-editor.content hr::after { + right: calc(50% - 5px); +} + +body#tinymce.wp-editor.content dt { + font-weight: 600; +} + +body#tinymce.wp-editor.content dd { + line-height: 1.5; +} + +body#tinymce.wp-editor.content dd + dt { + margin-top: 1.5rem; +} + + +/* Font Families ----------------------------- */ + +body#tinymce.wp-editor.content figcaption, +body#tinymce.wp-editor.content .wp-caption-text, +body#tinymce.wp-editor.content .wp-caption-dd, +body#tinymce.wp-editor.content cite, +body#tinymce.wp-editor.content table { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + line-height: 1; +} + +@supports ( font-variation-settings: normal ) { + + body#tinymce.wp-editor.content figcaption, + body#tinymce.wp-editor.content .wp-caption-text, + body#tinymce.wp-editor.content .wp-caption-dd, + body#tinymce.wp-editor.content cite, + body#tinymce.wp-editor.content table { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + + +/* Titles ------------------------------------ */ + +body#tinymce.wp-editor.content h1, +body#tinymce.wp-editor.content h2, +body#tinymce.wp-editor.content h3, +body#tinymce.wp-editor.content h4, +body#tinymce.wp-editor.content h5, +body#tinymce.wp-editor.content h6 { + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; + font-weight: 700; + letter-spacing: -0.0415625em; + line-height: 1.25; + margin: 40px 0 25px; +} + +body#tinymce.wp-editor.content h1 { + font-size: 84px; + font-weight: 800; + line-height: 1.138888889; +} + +body#tinymce.wp-editor.content h2 { + font-size: 48px; +} + +body#tinymce.wp-editor.content h3 { + font-size: 40px; +} + +body#tinymce.wp-editor.content h4 { + font-size: 32px; +} + +body#tinymce.wp-editor.content h5 { + font-size: 24px; +} + +body#tinymce.wp-editor.content h6 { + font-size: 18px; + letter-spacing: 0.03125em; + text-transform: uppercase; +} + +/* Blockquote -------------------------------- */ + +body#tinymce.wp-editor.content blockquote { + border-style: solid; + border: none; + border-left: 2px solid #cd2653; + margin: 0 0 1.6em 0; + padding: 0.25em 0 0.25em 1em; +} + +body#tinymce.wp-editor.content blockquote p { + font-style: normal; + font-weight: 400; + margin: 0; +} + +body#tinymce.wp-editor.content cite { + color: #6d6d6d; + font-size: 16px; + font-weight: 500; + font-style: normal; +} + +body#tinymce.wp-editor.content blockquote cite { + display: block; + margin-top: 20px; +} + + +/* Lists ------------------------------------- */ + +body#tinymce.wp-editor.content ul { + margin-left: 1.5em; + padding-left: 0; + list-style: disc; +} + +body#tinymce.wp-editor.content ol { + margin-left: 1.5em; + padding-left: 0; + list-style: square; +} + +body#tinymce.wp-editor.content ul ul { + list-style: circle; +} + +body#tinymce.wp-editor.content ul ul ul { + list-style: square; +} + +body#tinymce.wp-editor.content ol ol { + list-style: lower-alpha; +} + +body#tinymce.wp-editor.content ol ol ol { + list-style: lower-roman; +} + +body#tinymce.wp-editor.content ul ul, +body#tinymce.wp-editor.content ul ol, +body#tinymce.wp-editor.content ol ul, +body#tinymce.wp-editor.content ol ol { + margin-bottom: 0; +} + +body#tinymce.wp-editor.content li { + line-height: 1.5; + margin-bottom: 0.5em; +} + +body#tinymce.wp-editor.content ol > li:last-child, +body#tinymce.wp-editor.content ul > li:last-child { + margin-bottom: 0; +} + +body#tinymce.wp-editor.content ol > li:first-child, +body#tinymce.wp-editor.content ul > li:first-child { + margin-top: 0.5em; +} + + +/* Post Media -------------------------------- */ + +body#tinymce.wp-editor.content figure, +body#tinymce.wp-editor.content video { + display: block; + margin: 0; +} + +body#tinymce.wp-editor.content .wp-caption { + margin-bottom: 1.5em; +} + +body#tinymce.wp-editor.content img.alignleft, +body#tinymce.wp-editor.content .alignleft img, +body#tinymce.wp-editor.content img.aligncenter, +body#tinymce.wp-editor.content .aligncenter img, +body#tinymce.wp-editor.content img.alignright, +body#tinymce.wp-editor.content .alignright img, +body#tinymce.wp-editor.content img.alignnone, +body#tinymce.wp-editor.content .alignnone img { + display: block; +} + +body#tinymce.wp-editor.content .aligncenter, +body#tinymce.wp-editor.content .alignnone, +body#tinymce.wp-editor.content .alignwide, +body#tinymce.wp-editor.content .alignfull { + margin: 50px auto; +} + +body#tinymce.wp-editor.content .alignleft, +body#tinymce.wp-editor.content .alignright { + margin-bottom: 25px; + max-width: 50%; +} + +body#tinymce.wp-editor.content .wp-caption img { + display: block; +} + +body#tinymce.wp-editor.content .wp-caption .alignleft, +body#tinymce.wp-editor.content .wp-caption .alignright { + margin-bottom: 0; +} + +body#tinymce.wp-editor.content .alignleft { + + /*rtl:ignore*/ + float: left; + margin-right: 25px; + max-width: 260px; +} + +body#tinymce.wp-editor.content .alignright { + + /*rtl:ignore*/ + float: right; + margin-left: 25px; + max-width: 260px; +} + +body#tinymce.wp-editor.content .wpview[data-wpview-type="gallery"] + .wpview[data-wpview-type="gallery"] { + margin-top: -34px; +} + +body#tinymce.wp-editor.content figcaption, +body#tinymce.wp-editor.content .wp-caption-text, +body#tinymce.wp-editor.content .wp-caption-dd, +body#tinymce.wp-editor.content .gallery-caption { + color: #6d6d6d; + display: block; + font-size: 15px; + font-weight: 500; + line-height: 1.2; + margin: 18px 0 0; +} + +body#tinymce.wp-editor.content figcaption a, +body#tinymce.wp-editor.content .wp-caption-text a, +body#tinymce.wp-editor.content .wp-caption-dd a, +body#tinymce.wp-editor.content .gallery-caption a { + color: inherit; +} + + +/* Tables ------------------------------------ */ + +body#tinymce.wp-editor.content table { + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + font-size: 18px; + width: 100%; +} + +body#tinymce.wp-editor.content th, +body#tinymce.wp-editor.content td { + line-height: 1.2; + margin: 0; + overflow: visible; + padding: 0.5em; +} + +body#tinymce.wp-editor.content caption { + text-align: center; + padding: 0.5em; +} + +body#tinymce.wp-editor.content thead { + vertical-align: bottom; + white-space: nowrap; +} + +body#tinymce.wp-editor.content th { + text-align: left; +} + + +/* Forms ------------------------------------- */ + +body#tinymce.wp-editor.content fieldset { + border: 2px solid #dcd7ca; + padding: 30px; +} + +body#tinymce.wp-editor.content fieldset legend { + font-size: 0.85em; + font-weight: 700; + padding: 0 15px; +} + +body#tinymce.wp-editor.content label { + display: block; + font-size: 15px; + font-weight: 600; + margin: 0 0 5px 0; +} + +body#tinymce.wp-editor.content input, +body#tinymce.wp-editor.content textarea { + border-color: #dcd7ca; + color: inherit; + font-family: inherit; + font-size: inherit; +} + +body#tinymce.wp-editor.content input[type="text"], +body#tinymce.wp-editor.content input[type="password"], +body#tinymce.wp-editor.content input[type="email"], +body#tinymce.wp-editor.content input[type="url"], +body#tinymce.wp-editor.content input[type="date"], +body#tinymce.wp-editor.content input[type="month"], +body#tinymce.wp-editor.content input[type="time"], +body#tinymce.wp-editor.content input[type="datetime"], +body#tinymce.wp-editor.content input[type="datetime-local"], +body#tinymce.wp-editor.content input[type="week"], +body#tinymce.wp-editor.content input[type="number"], +body#tinymce.wp-editor.content input[type="search"], +body#tinymce.wp-editor.content input[type="tel"], +body#tinymce.wp-editor.content input[type="color"], +body#tinymce.wp-editor.content textarea { + -webkit-appearance: none; + -moz-appearance: none; + background: transparent; + border-radius: 3px; + border-style: solid; + border-width: 0.1rem; + box-shadow: none; + display: block; + font-size: inherit; + font-weight: 400; + margin: 0; + max-width: 100%; + padding: 13.5px 18px; + width: 100%; + word-break: normal; +} + +body#tinymce.wp-editor.content textarea { + height: 200px; + line-height: 1.5; + width: 100%; +} + +body#tinymce.wp-editor.content button, +body#tinymce.wp-editor.content .faux-button, +body#tinymce.wp-editor.content .wp-block-button__link, +body#tinymce.wp-editor.content .wp-block-file__button, +body#tinymce.wp-editor.content input[type="button"], +body#tinymce.wp-editor.content input[type="reset"], +body#tinymce.wp-editor.content input[type="submit"] { + -webkit-appearance: none; + -moz-appearance: none; + background: #cd2653; + border: none; + border-radius: 0; + color: #fff; + cursor: pointer; + display: inline-block; + font-size: 17px; + font-weight: 600; + letter-spacing: 0.0333em; + line-height: 1.25; + margin: 0; + padding: 1.1em 1.44em; + text-align: center; + text-decoration: none; + text-transform: uppercase; +} + +body#tinymce.wp-editor.content button:focus, +body#tinymce.wp-editor.content button:hover, +body#tinymce.wp-editor.content .faux-button:hover, +body#tinymce.wp-editor.content .faux-button:focus, +body#tinymce.wp-editor.content .wp-block-button__link:focus, +body#tinymce.wp-editor.content .wp-block-button__link:hover, +body#tinymce.wp-editor.content .wp-block-file__button:focus, +body#tinymce.wp-editor.content .wp-block-file__button:hover, +body#tinymce.wp-editor.content input[type="button"]:focus, +body#tinymce.wp-editor.content input[type="button"]:hover, +body#tinymce.wp-editor.content input[type="reset"]:focus, +body#tinymce.wp-editor.content input[type="reset"]:hover, +body#tinymce.wp-editor.content input[type="submit"]:focus, +body#tinymce.wp-editor.content input[type="submit"]:hover { + color: #fff; + text-decoration: underline; +} + +.wp-block-button:not(.alignleft):not(.alignright) { + margin-bottom: 30px; + margin-top: 30px; +} + +/* BUTTON ALIGN: CENTER */ + +.wp-block-button.aligncenter { + text-align: center; +} + +/* BUTTON STYLE: OUTLINE */ + +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link, +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link:focus, +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link:hover { + color: #cd2653; +} + +body#tinymce.wp-editor.content .is-style-outline .wp-block-button__link { + background: none; + border: 2px solid currentColor; + padding: calc(1.1em - 2px) calc(1.44em - 2px); +} + +/* BUTTON STYLE: SQUARED */ + +body#tinymce.wp-editor.content .is-style-squared .wp-block-button__link { + border-radius: 0; +} + + +/* Blocks ------------------------------------ */ + +/* BLOCK: HELPER CLASSES */ + +body#tinymce.wp-editor.content .has-background { + padding: 20px; +} + +/* BLOCK: GALLERY */ + +body#tinymce.wp-editor.content ul.wp-block-gallery { + list-style: none; + margin-left: 0; +} + +body#tinymce.wp-editor.content ul.wp-block-gallery li { + margin-left: 0; +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-italic-var.woff2 b/srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-italic-var.woff2 new file mode 100644 index 0000000..2300488 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-italic-var.woff2 differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-upright-var.woff2 b/srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-upright-var.woff2 new file mode 100644 index 0000000..37d9900 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/fonts/inter/Inter-upright-var.woff2 differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-1.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-1.png new file mode 100644 index 0000000..ab55b91 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-1.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-2.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-2.png new file mode 100644 index 0000000..844d377 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-landscape-2.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-1.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-1.png new file mode 100644 index 0000000..3acd76b Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-1.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-2.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-2.png new file mode 100644 index 0000000..e1ab8f8 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-square-2.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-1.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-1.png new file mode 100644 index 0000000..d02d917 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-1.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-2.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-2.png new file mode 100644 index 0000000..6b1dd1a Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-2.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-3.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-3.png new file mode 100644 index 0000000..3675b55 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-3.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-4.png b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-4.png new file mode 100644 index 0000000..aa7c7f0 Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/assets/images/2020-three-quarters-4.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/color-calculations.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/color-calculations.js new file mode 100644 index 0000000..23f3cba --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/color-calculations.js @@ -0,0 +1,154 @@ +/* global Color */ +/* eslint no-unused-vars: off */ +/** + * Color Calculations. + * + * @since 1.0.0 + * + * @param {string} backgroundColor - The background color. + * @param {number} accentHue - The hue for our accent color. + * + * @return {Object} - this + */ +function _twentyTwentyColor( backgroundColor, accentHue ) { + // Set the object properties. + this.backgroundColor = backgroundColor; + this.accentHue = accentHue; + this.bgColorObj = new Color( backgroundColor ); + this.textColorObj = this.bgColorObj.getMaxContrastColor(); + this.textColor = this.textColorObj.toCSS(); + this.isDark = 0.5 > this.bgColorObj.toLuminosity(); + this.isLight = ! this.isDark; + + // Return the object. + return this; +} + +/** + * Builds an array of Color objects based on the accent hue. + * For improved performance we only build half the array + * depending on dark/light background-color. + * + * @since 1.0.0 + * + * @return {Object} - this + */ +_twentyTwentyColor.prototype.setAccentColorsArray = function() { + var self = this, + minSaturation = 65, + maxSaturation = 100, + minLightness = 30, + maxLightness = 80, + stepSaturation = 2, + stepLightness = 2, + pushColor = function() { + var colorObj = new Color( { + h: self.accentHue, + s: s, + l: l + } ), + item, + /** + * Get a score for this color in contrast to its background color and surrounding text. + * + * @since 1.0.0 + * @param {number} contrastBackground - WCAG contrast with the background color. + * @param {number} contrastSurroundingText - WCAG contrast with surrounding text. + * @return {number} - 0 is best, higher numbers have bigger difference with the desired scores. + */ + getScore = function( contrastBackground, contrastSurroundingText ) { + var diffBackground = ( 7 >= contrastBackground ) ? 0 : 7 - contrastBackground, + diffSurroundingText = ( 3 >= contrastSurroundingText ) ? 0 : 3 - contrastSurroundingText; + + return diffBackground + diffSurroundingText; + }; + + item = { + color: colorObj, + contrastBackground: colorObj.getDistanceLuminosityFrom( self.bgColorObj ), + contrastText: colorObj.getDistanceLuminosityFrom( self.textColorObj ) + }; + + // Check a minimum of 4.5:1 contrast with the background and 3:1 with surrounding text. + if ( 4.5 > item.contrastBackground || 3 > item.contrastText ) { + return; + } + + // Get a score for this color by multiplying the 2 contrasts. + // We'll use that to sort the array. + item.score = getScore( item.contrastBackground, item.contrastText ); + + self.accentColorsArray.push( item ); + }, + s, l, aaa; + + this.accentColorsArray = []; + + // We're using `for` loops here because they perform marginally better than other loops. + for ( s = minSaturation; s <= maxSaturation; s += stepSaturation ) { + for ( l = minLightness; l <= maxLightness; l += stepLightness ) { + pushColor( s, l ); + } + } + + // Check if we have colors that are AAA compliant. + aaa = this.accentColorsArray.filter( function( color ) { + return 7 <= color.contrastBackground; + } ); + + // If we have AAA-compliant colors, always prefer them. + if ( aaa.length ) { + this.accentColorsArray = aaa; + } + + // Sort colors by contrast. + this.accentColorsArray.sort( function( a, b ) { + return a.score - b.score; + } ); + return this; +}; + +/** + * Get accessible text-color. + * + * @since 1.0.0 + * + * @return {Color} - Returns a Color object. + */ +_twentyTwentyColor.prototype.getTextColor = function() { + return this.textColor; +}; + +/** + * Get accessible color for the defined accent-hue and background-color. + * + * @since 1.0.0 + * + * @return {Color} - Returns a Color object. + */ +_twentyTwentyColor.prototype.getAccentColor = function() { + var fallback; + + // If we have colors returns the 1st one - it has the highest score. + if ( this.accentColorsArray[0] ) { + return this.accentColorsArray[0].color; + } + + // Fallback. + fallback = new Color( 'hsl(' + this.accentHue + ',75%,50%)' ); + return fallback.getReadableContrastingColor( this.bgColorObj, 4.5 ); +}; + +/** + * Return a new instance of the _twentyTwentyColor object. + * + * @since 1.0.0 + * @param {string} backgroundColor - The background color. + * @param {number} accentHue - The hue for our accent color. + * @return {Object} - this + */ +function twentyTwentyColor( backgroundColor, accentHue ) {// jshint ignore:line + var color = new _twentyTwentyColor( backgroundColor, accentHue ); + color.setAccentColorsArray(); + return color; +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-controls.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-controls.js new file mode 100644 index 0000000..f3d94a4 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-controls.js @@ -0,0 +1,90 @@ +/* global twentyTwentyBgColors, twentyTwentyColor, jQuery, wp, _ */ +/** + * Customizer enhancements for a better user experience. + * + * Contains extra logic for our Customizer controls & settings. + * + * @since 1.0.0 + */ + +( function() { + // Wait until the customizer has finished loading. + wp.customize.bind( 'ready', function() { + // Add a listener for accent-color changes. + wp.customize( 'accent_hue', function( value ) { + value.bind( function( to ) { + // Update the value for our accessible colors for all areas. + Object.keys( twentyTwentyBgColors ).forEach( function( context ) { + var backgroundColorValue; + if ( twentyTwentyBgColors[ context ].color ) { + backgroundColorValue = twentyTwentyBgColors[ context ].color; + } else { + backgroundColorValue = wp.customize( twentyTwentyBgColors[ context ].setting ).get(); + } + twentyTwentySetAccessibleColorsValue( context, backgroundColorValue, to ); + } ); + } ); + } ); + + // Add a listener for background-color changes. + Object.keys( twentyTwentyBgColors ).forEach( function( context ) { + wp.customize( twentyTwentyBgColors[ context ].setting, function( value ) { + value.bind( function( to ) { + // Update the value for our accessible colors for this area. + twentyTwentySetAccessibleColorsValue( context, to, wp.customize( 'accent_hue' ).get(), to ); + } ); + } ); + } ); + } ); + + /** + * Updates the value of the "accent_accessible_colors" setting. + * + * @since 1.0.0 + * + * @param {string} context The area for which we want to get colors. Can be for example "content", "header" etc. + * @param {string} backgroundColor The background color (HEX value). + * @param {number} accentHue Numeric representation of the selected hue (0 - 359). + * + * @return {void} + */ + function twentyTwentySetAccessibleColorsValue( context, backgroundColor, accentHue ) { + var value, colors; + + // Get the current value for our accessible colors, and make sure it's an object. + value = wp.customize( 'accent_accessible_colors' ).get(); + value = ( _.isObject( value ) && ! _.isArray( value ) ) ? value : {}; + + // Get accessible colors for the defined background-color and hue. + colors = twentyTwentyColor( backgroundColor, accentHue ); + + // Sanity check. + if ( colors.getAccentColor() && 'function' === typeof colors.getAccentColor().toCSS ) { + // Update the value for this context. + value[ context ] = { + text: colors.getTextColor(), + accent: colors.getAccentColor().toCSS(), + background: backgroundColor + }; + + // Get borders color. + value[ context ].borders = colors.bgColorObj + .clone() + .getReadableContrastingColor( colors.bgColorObj, 1.36 ) + .toCSS(); + + // Get secondary color. + value[ context ].secondary = colors.bgColorObj + .clone() + .getReadableContrastingColor( colors.bgColorObj ) + .s( colors.bgColorObj.s() / 2 ) + .toCSS(); + } + + // Change the value. + wp.customize( 'accent_accessible_colors' ).set( value ); + + // Small hack to save the option. + wp.customize( 'accent_accessible_colors' )._dirty = true; + } +}( jQuery ) ); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-preview.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-preview.js new file mode 100644 index 0000000..28b8506 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize-preview.js @@ -0,0 +1,186 @@ +/* global twentyTwentyBgColors, twentyTwentyPreviewEls, jQuery, _, wp */ +/** + * Customizer enhancements for a better user experience. + * + * Contains handlers to make Theme Customizer preview reload changes asynchronously. + * + * @since 1.0.0 + */ + +( function( $, api, _ ) { + /** + * Return a value for our partial refresh. + * + * @param {Object} partial Current partial. + * + * @return {jQuery.Promise} Resolved promise. + */ + function returnDeferred( partial ) { + var deferred = new $.Deferred(); + + deferred.resolveWith( partial, _.map( partial.placements(), function() { + return ''; + } ) ); + + return deferred.promise(); + } + + // Selective refresh for "Fixed Background Image" + api.selectiveRefresh.partialConstructor.cover_fixed = api.selectiveRefresh.Partial.extend( { + + /** + * Override the refresh method + * + * @return {jQuery.Promise} Resolved promise. + */ + refresh: function() { + var partial, cover, params; + + partial = this; + params = partial.params; + cover = $( params.selector ); + + if ( cover.length && cover.hasClass( 'bg-image' ) ) { + cover.toggleClass( 'bg-attachment-fixed' ); + } + + return returnDeferred( partial ); + } + + } ); + + // Selective refresh for "Image Overlay Opacity" + api.selectiveRefresh.partialConstructor.cover_opacity = api.selectiveRefresh.Partial.extend( { + + /** + * Input attributes. + * + * @type {Object} + */ + attrs: {}, + + /** + * Override the refresh method + * + * @return {jQuery.Promise} Resolved promise. + */ + refresh: function() { + var partial, ranges, attrs, setting, params, cover, className, classNames; + + partial = this; + attrs = partial.attrs; + ranges = _.range( attrs.min, attrs.max + attrs.step, attrs.step ); + params = partial.params; + setting = api( params.primarySetting ); + cover = $( params.selector ); + + if ( cover.length ) { + classNames = _.map( ranges, function( val ) { + return 'opacity-' + val; + } ); + + className = classNames[ ranges.indexOf( parseInt( setting.get(), 10 ) ) ]; + + cover.removeClass( classNames.join( ' ' ) ); + cover.addClass( className ); + } + + return returnDeferred( partial ); + } + + } ); + + // Add listener for the "header_footer_background_color" control. + api( 'header_footer_background_color', function( value ) { + value.bind( function( to ) { + // Add background color to header and footer wrappers. + $( 'body:not(.overlay-header)#site-header, #site-footer' ).css( 'background-color', to ); + + // Change body classes if this is the same background-color as the content background. + if ( to.toLowerCase() === api( 'background_color' ).get().toLowerCase() ) { + $( 'body' ).addClass( 'reduced-spacing' ); + } else { + $( 'body' ).removeClass( 'reduced-spacing' ); + } + } ); + } ); + + // Add listener for the "background_color" control. + api( 'background_color', function( value ) { + value.bind( function( to ) { + // Change body classes if this is the same background-color as the header/footer background. + if ( to.toLowerCase() === api( 'header_footer_background_color' ).get().toLowerCase() ) { + $( 'body' ).addClass( 'reduced-spacing' ); + } else { + $( 'body' ).removeClass( 'reduced-spacing' ); + } + } ); + } ); + + // Add listener for the accent color. + api( 'accent_hue', function( value ) { + value.bind( function() { + // Generate the styles. + // Add a small delay to be sure the accessible colors were generated. + setTimeout( function() { + Object.keys( twentyTwentyBgColors ).forEach( function( context ) { + twentyTwentyGenerateColorA11yPreviewStyles( context ); + } ); + }, 50 ); + } ); + } ); + + // Add listeners for background-color settings. + Object.keys( twentyTwentyBgColors ).forEach( function( context ) { + wp.customize( twentyTwentyBgColors[ context ].setting, function( value ) { + value.bind( function() { + // Generate the styles. + // Add a small delay to be sure the accessible colors were generated. + setTimeout( function() { + twentyTwentyGenerateColorA11yPreviewStyles( context ); + }, 50 ); + } ); + } ); + } ); + + /** + * Add styles to elements in the preview pane. + * + * @since 1.0.0 + * + * @param {string} context The area for which we want to generate styles. Can be for example "content", "header" etc. + * + * @return {void} + */ + function twentyTwentyGenerateColorA11yPreviewStyles( context ) { + // Get the accessible colors option. + var a11yColors = window.parent.wp.customize( 'accent_accessible_colors' ).get(), + stylesheedID = 'twentytwenty-customizer-styles-' + context, + stylesheet = $( '#' + stylesheedID ), + styles = ''; + // If the stylesheet doesn't exist, create it and append it to . + if ( ! stylesheet.length ) { + $( '#twentytwenty-style-inline-css' ).after( '' ); + stylesheet = $( '#' + stylesheedID ); + } + if ( ! _.isUndefined( a11yColors[ context ] ) ) { + // Check if we have elements defined. + if ( twentyTwentyPreviewEls[ context ] ) { + _.each( twentyTwentyPreviewEls[ context ], function( items, setting ) { + _.each( items, function( elements, property ) { + if ( ! _.isUndefined( a11yColors[ context ][ setting ] ) ) { + styles += elements.join( ',' ) + '{' + property + ':' + a11yColors[ context ][ setting ] + ';}'; + } + } ); + } ); + } + } + // Add styles. + stylesheet.html( styles ); + } + // Generate styles on load. Handles page-changes on the preview pane. + $( document ).ready( function() { + twentyTwentyGenerateColorA11yPreviewStyles( 'content' ); + twentyTwentyGenerateColorA11yPreviewStyles( 'header-footer' ); + } ); +}( jQuery, wp.customize, _ ) ); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize.js new file mode 100644 index 0000000..2a38ace --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/customize.js @@ -0,0 +1,27 @@ +/* global wp, jQuery */ + +( function( $, api ) { + $( document ).ready( function() { + // Make it possible to reset the color based on a radio input's value. + // `active` can be either `custom` or `default`. + api.control( 'accent_hue_active' ).setting.bind( function( active ) { + var control = api.control( 'accent_hue' ); // Get the accent hue control. + + if ( 'custom' === active ) { + // Activate the hue color picker control and focus it. + control.activate( { + completeCallback: function() { + control.focus(); + } + } ); + } else { + // If the `custom` option isn't selected, deactivate the hue color picker and set a default. + control.deactivate( { + completeCallback: function() { + control.setting.set( control.params.defaultValue ); + } + } ); + } + } ); + } ); +}( jQuery, wp.customize ) ); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/editor-script-block.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/editor-script-block.js new file mode 100644 index 0000000..0225570 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/editor-script-block.js @@ -0,0 +1,9 @@ +/** + * Remove squared button style + * + * @since 1.0.0 + */ +/* global wp */ +wp.domReady( function() { + wp.blocks.unregisterBlockStyle( 'core/button', 'squared' ); +} ); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/index.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/index.js new file mode 100644 index 0000000..5ded185 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/index.js @@ -0,0 +1,800 @@ +/* ----------------------------------------------------------------------------------------------- + Namespace +--------------------------------------------------------------------------------------------------- */ + +var twentytwenty = twentytwenty || {}; + +// Set a default value for scrolled. +twentytwenty.scrolled = 0; + +// polyfill closest +// https://developer.mozilla.org/en-US/docs/Web/API/Element/closest#Polyfill +if ( ! Element.prototype.closest ) { + Element.prototype.closest = function( s ) { + var el = this; + + do { + if ( el.matches( s ) ) { + return el; + } + + el = el.parentElement || el.parentNode; + } while ( el !== null && el.nodeType === 1 ); + + return null; + }; +} + +// polyfill forEach +// https://developer.mozilla.org/en-US/docs/Web/API/NodeList/forEach#Polyfill +if ( window.NodeList && ! NodeList.prototype.forEach ) { + NodeList.prototype.forEach = function( callback, thisArg ) { + var i; + var len = this.length; + + thisArg = thisArg || window; + + for ( i = 0; i < len; i++ ) { + callback.call( thisArg, this[ i ], i, this ); + } + }; +} + +// event "polyfill" +twentytwenty.createEvent = function( eventName ) { + var event; + if ( typeof window.Event === 'function' ) { + event = new Event( eventName ); + } else { + event = document.createEvent( 'Event' ); + event.initEvent( eventName, true, false ); + } + return event; +}; + +// matches "polyfill" +// https://developer.mozilla.org/es/docs/Web/API/Element/matches +if ( ! Element.prototype.matches ) { + Element.prototype.matches = + Element.prototype.matchesSelector || + Element.prototype.mozMatchesSelector || + Element.prototype.msMatchesSelector || + Element.prototype.oMatchesSelector || + Element.prototype.webkitMatchesSelector || + function( s ) { + var matches = ( this.document || this.ownerDocument ).querySelectorAll( s ), + i = matches.length; + while ( --i >= 0 && matches.item( i ) !== this ) {} + return i > -1; + }; +} + +// Add a class to the body for when touch is enabled for browsers that don't support media queries +// for interaction media features. Adapted from +twentytwenty.touchEnabled = { + + init: function() { + var matchMedia = function() { + // Include the 'heartz' as a way to have a non matching MQ to help terminate the join. See . + var prefixes = [ '-webkit-', '-moz-', '-o-', '-ms-' ]; + var query = [ '(', prefixes.join( 'touch-enabled),(' ), 'heartz', ')' ].join( '' ); + return window.matchMedia && window.matchMedia( query ).matches; + }; + + if ( ( 'ontouchstart' in window ) || ( window.DocumentTouch && document instanceof window.DocumentTouch ) || matchMedia() ) { + document.body.classList.add( 'touch-enabled' ); + } + } +}; // twentytwenty.touchEnabled + +/* ----------------------------------------------------------------------------------------------- + Cover Modals +--------------------------------------------------------------------------------------------------- */ + +twentytwenty.coverModals = { + + init: function() { + if ( document.querySelector( '.cover-modal' ) ) { + // Handle cover modals when they're toggled + this.onToggle(); + + // When toggled, untoggle if visitor clicks on the wrapping element of the modal + this.outsideUntoggle(); + + // Close on escape key press + this.closeOnEscape(); + + // Hide and show modals before and after their animations have played out + this.hideAndShowModals(); + } + }, + + // Handle cover modals when they're toggled + onToggle: function() { + document.querySelectorAll( '.cover-modal' ).forEach( function( element ) { + element.addEventListener( 'toggled', function( event ) { + var modal = event.target, + body = document.body; + + if ( modal.classList.contains( 'active' ) ) { + body.classList.add( 'showing-modal' ); + } else { + body.classList.remove( 'showing-modal' ); + body.classList.add( 'hiding-modal' ); + + // Remove the hiding class after a delay, when animations have been run + setTimeout( function() { + body.classList.remove( 'hiding-modal' ); + }, 500 ); + } + } ); + } ); + }, + + // Close modal on outside click + outsideUntoggle: function() { + document.addEventListener( 'click', function( event ) { + var target = event.target; + var modal = document.querySelector( '.cover-modal.active' ); + + if ( target === modal ) { + this.untoggleModal( target ); + } + }.bind( this ) ); + }, + + // Close modal on escape key press + closeOnEscape: function() { + document.addEventListener( 'keydown', function( event ) { + if ( event.keyCode === 27 ) { + event.preventDefault(); + document.querySelectorAll( '.cover-modal.active' ).forEach( function( element ) { + this.untoggleModal( element ); + }.bind( this ) ); + } + }.bind( this ) ); + }, + + // Hide and show modals before and after their animations have played out + hideAndShowModals: function() { + var _doc = document, + _win = window, + modals = _doc.querySelectorAll( '.cover-modal' ), + htmlStyle = _doc.documentElement.style, + adminBar = _doc.querySelector( '#wpadminbar' ); + + function getAdminBarHeight( negativeValue ) { + var height, + currentScroll = _win.pageYOffset; + + if ( adminBar ) { + height = currentScroll + adminBar.getBoundingClientRect().height; + + return negativeValue ? -height : height; + } + + return currentScroll === 0 ? 0 : -currentScroll; + } + + function htmlStyles() { + var overflow = _win.innerHeight > _doc.documentElement.getBoundingClientRect().height; + + return { + 'overflow-y': overflow ? 'hidden' : 'scroll', + position: 'fixed', + width: '100%', + top: getAdminBarHeight( true ) + 'px', + left: 0 + }; + } + + // Show the modal + modals.forEach( function( modal ) { + modal.addEventListener( 'toggle-target-before-inactive', function( event ) { + var styles = htmlStyles(), + offsetY = _win.pageYOffset, + paddingTop = ( Math.abs( getAdminBarHeight() ) - offsetY ) + 'px', + mQuery = _win.matchMedia( '(max-width: 600px)' ); + + if ( event.target !== modal ) { + return; + } + + Object.keys( styles ).forEach( function( styleKey ) { + htmlStyle.setProperty( styleKey, styles[ styleKey ] ); + } ); + + _win.twentytwenty.scrolled = parseInt( styles.top, 10 ); + + if ( adminBar ) { + _doc.body.style.setProperty( 'padding-top', paddingTop ); + + if ( mQuery.matches ) { + if ( offsetY >= getAdminBarHeight() ) { + modal.style.setProperty( 'top', 0 ); + } else { + modal.style.setProperty( 'top', ( getAdminBarHeight() - offsetY ) + 'px' ); + } + } + } + + modal.classList.add( 'show-modal' ); + } ); + + // Hide the modal after a delay, so animations have time to play out + modal.addEventListener( 'toggle-target-after-inactive', function( event ) { + if ( event.target !== modal ) { + return; + } + + setTimeout( function() { + var clickedEl = twentytwenty.toggles.clickedEl; + + modal.classList.remove( 'show-modal' ); + + Object.keys( htmlStyles() ).forEach( function( styleKey ) { + htmlStyle.removeProperty( styleKey ); + } ); + + if ( adminBar ) { + _doc.body.style.removeProperty( 'padding-top' ); + modal.style.removeProperty( 'top' ); + } + + if ( clickedEl !== false ) { + clickedEl.focus(); + clickedEl = false; + } + + _win.scrollTo( 0, Math.abs( _win.twentytwenty.scrolled + getAdminBarHeight() ) ); + + _win.twentytwenty.scrolled = 0; + }, 500 ); + } ); + } ); + }, + + // Untoggle a modal + untoggleModal: function( modal ) { + var modalTargetClass, + modalToggle = false; + + // If the modal has specified the string (ID or class) used by toggles to target it, untoggle the toggles with that target string + // The modal-target-string must match the string toggles use to target the modal + if ( modal.dataset.modalTargetString ) { + modalTargetClass = modal.dataset.modalTargetString; + + modalToggle = document.querySelector( '*[data-toggle-target="' + modalTargetClass + '"]' ); + } + + // If a modal toggle exists, trigger it so all of the toggle options are included + if ( modalToggle ) { + modalToggle.click(); + + // If one doesn't exist, just hide the modal + } else { + modal.classList.remove( 'active' ); + } + } + +}; // twentytwenty.coverModals + +/* ----------------------------------------------------------------------------------------------- + Intrinsic Ratio Embeds +--------------------------------------------------------------------------------------------------- */ + +twentytwenty.intrinsicRatioVideos = { + + init: function() { + this.makeFit(); + + window.addEventListener( 'resize', function() { + this.makeFit(); + }.bind( this ) ); + }, + + makeFit: function() { + document.querySelectorAll( 'iframe, object, video' ).forEach( function( video ) { + var ratio, iTargetWidth, + container = video.parentNode; + + // Skip videos we want to ignore + if ( video.classList.contains( 'intrinsic-ignore' ) || video.parentNode.classList.contains( 'intrinsic-ignore' ) ) { + return true; + } + + if ( ! video.dataset.origwidth ) { + // Get the video element proportions + video.setAttribute( 'data-origwidth', video.width ); + video.setAttribute( 'data-origheight', video.height ); + } + + iTargetWidth = container.offsetWidth; + + // Get ratio from proportions + ratio = iTargetWidth / video.dataset.origwidth; + + // Scale based on ratio, thus retaining proportions + video.style.width = iTargetWidth + 'px'; + video.style.height = ( video.dataset.origheight * ratio ) + 'px'; + } ); + } + +}; // twentytwenty.instrinsicRatioVideos + +/* ----------------------------------------------------------------------------------------------- + Modal Menu +--------------------------------------------------------------------------------------------------- */ +twentytwenty.modalMenu = { + + init: function() { + // If the current menu item is in a sub level, expand all the levels higher up on load + this.expandLevel(); + this.keepFocusInModal(); + }, + + expandLevel: function() { + var modalMenus = document.querySelectorAll( '.modal-menu' ); + + modalMenus.forEach( function( modalMenu ) { + var activeMenuItem = modalMenu.querySelector( '.current-menu-item' ); + + if ( activeMenuItem ) { + twentytwentyFindParents( activeMenuItem, 'li' ).forEach( function( element ) { + var subMenuToggle = element.querySelector( '.sub-menu-toggle' ); + if ( subMenuToggle ) { + twentytwenty.toggles.performToggle( subMenuToggle, true ); + } + } ); + } + } ); + }, + + keepFocusInModal: function() { + var _doc = document; + + _doc.addEventListener( 'keydown', function( event ) { + var toggleTarget, modal, selectors, elements, menuType, bottomMenu, activeEl, lastEl, firstEl, tabKey, shiftKey, + clickedEl = twentytwenty.toggles.clickedEl; + + if ( clickedEl && _doc.body.classList.contains( 'showing-modal' ) ) { + toggleTarget = clickedEl.dataset.toggleTarget; + selectors = 'input, a, button'; + modal = _doc.querySelector( toggleTarget ); + + elements = modal.querySelectorAll( selectors ); + elements = Array.prototype.slice.call( elements ); + + if ( '.menu-modal' === toggleTarget ) { + menuType = window.matchMedia( '(min-width: 1000px)' ).matches; + menuType = menuType ? '.expanded-menu' : '.mobile-menu'; + + elements = elements.filter( function( element ) { + return null !== element.closest( menuType ) && null !== element.offsetParent; + } ); + + elements.unshift( _doc.querySelector( '.close-nav-toggle' ) ); + + bottomMenu = _doc.querySelector( '.menu-bottom > nav' ); + + if ( bottomMenu ) { + bottomMenu.querySelectorAll( selectors ).forEach( function( element ) { + elements.push( element ); + } ); + } + } + + lastEl = elements[ elements.length - 1 ]; + firstEl = elements[0]; + activeEl = _doc.activeElement; + tabKey = event.keyCode === 9; + shiftKey = event.shiftKey; + + if ( ! shiftKey && tabKey && lastEl === activeEl ) { + event.preventDefault(); + firstEl.focus(); + } + + if ( shiftKey && tabKey && firstEl === activeEl ) { + event.preventDefault(); + lastEl.focus(); + } + } + } ); + } +}; // twentytwenty.modalMenu + +/* ----------------------------------------------------------------------------------------------- + Primary Menu +--------------------------------------------------------------------------------------------------- */ + +twentytwenty.primaryMenu = { + + init: function() { + this.focusMenuWithChildren(); + }, + + // The focusMenuWithChildren() function implements Keyboard Navigation in the Primary Menu + // by adding the '.focus' class to all 'li.menu-item-has-children' when the focus is on the 'a' element. + focusMenuWithChildren: function() { + // Get all the link elements within the primary menu. + var links, i, len, + menu = document.querySelector( '.primary-menu-wrapper' ); + + if ( ! menu ) { + return false; + } + + links = menu.getElementsByTagName( 'a' ); + + // Each time a menu link is focused or blurred, toggle focus. + for ( i = 0, len = links.length; i < len; i++ ) { + links[i].addEventListener( 'focus', toggleFocus, true ); + links[i].addEventListener( 'blur', toggleFocus, true ); + } + + //Sets or removes the .focus class on an element. + function toggleFocus() { + var self = this; + + // Move up through the ancestors of the current link until we hit .primary-menu. + while ( -1 === self.className.indexOf( 'primary-menu' ) ) { + // On li elements toggle the class .focus. + if ( 'li' === self.tagName.toLowerCase() ) { + if ( -1 !== self.className.indexOf( 'focus' ) ) { + self.className = self.className.replace( ' focus', '' ); + } else { + self.className += ' focus'; + } + } + self = self.parentElement; + } + } + } +}; // twentytwenty.primaryMenu + +/* ----------------------------------------------------------------------------------------------- + Toggles +--------------------------------------------------------------------------------------------------- */ + +twentytwenty.toggles = { + + clickedEl: false, + + init: function() { + // Do the toggle + this.toggle(); + + // Check for toggle/untoggle on resize + this.resizeCheck(); + + // Check for untoggle on escape key press + this.untoggleOnEscapeKeyPress(); + }, + + performToggle: function( element, instantly ) { + var target, timeOutTime, classToToggle, + self = this, + _doc = document, + // Get our targets + toggle = element, + targetString = toggle.dataset.toggleTarget, + activeClass = 'active'; + + // Elements to focus after modals are closed + if ( ! _doc.querySelectorAll( '.show-modal' ).length ) { + self.clickedEl = _doc.activeElement; + } + + if ( targetString === 'next' ) { + target = toggle.nextSibling; + } else { + target = _doc.querySelector( targetString ); + } + + // Trigger events on the toggle targets before they are toggled + if ( target.classList.contains( activeClass ) ) { + target.dispatchEvent( twentytwenty.createEvent( 'toggle-target-before-active' ) ); + } else { + target.dispatchEvent( twentytwenty.createEvent( 'toggle-target-before-inactive' ) ); + } + + // Get the class to toggle, if specified + classToToggle = toggle.dataset.classToToggle ? toggle.dataset.classToToggle : activeClass; + + // For cover modals, set a short timeout duration so the class animations have time to play out + timeOutTime = 0; + + if ( target.classList.contains( 'cover-modal' ) ) { + timeOutTime = 10; + } + + setTimeout( function() { + var focusElement, + subMenued = target.classList.contains( 'sub-menu' ), + newTarget = subMenued ? toggle.closest( '.menu-item' ).querySelector( '.sub-menu' ) : target, + duration = toggle.dataset.toggleDuration; + + // Toggle the target of the clicked toggle + if ( toggle.dataset.toggleType === 'slidetoggle' && ! instantly && duration !== '0' ) { + twentytwentyMenuToggle( newTarget, duration ); + } else { + newTarget.classList.toggle( classToToggle ); + } + + // If the toggle target is 'next', only give the clicked toggle the active class + if ( targetString === 'next' ) { + toggle.classList.toggle( activeClass ); + } else if ( target.classList.contains( 'sub-menu' ) ) { + toggle.classList.toggle( activeClass ); + } else { + // If not, toggle all toggles with this toggle target + _doc.querySelector( '*[data-toggle-target="' + targetString + '"]' ).classList.toggle( activeClass ); + } + + // Toggle aria-expanded on the toggle + twentytwentyToggleAttribute( toggle, 'aria-expanded', 'true', 'false' ); + + if ( self.clickedEl && -1 !== toggle.getAttribute( 'class' ).indexOf( 'close-' ) ) { + twentytwentyToggleAttribute( self.clickedEl, 'aria-expanded', 'true', 'false' ); + } + + // Toggle body class + if ( toggle.dataset.toggleBodyClass ) { + _doc.body.classList.toggle( toggle.dataset.toggleBodyClass ); + } + + // Check whether to set focus + if ( toggle.dataset.setFocus ) { + focusElement = _doc.querySelector( toggle.dataset.setFocus ); + + if ( focusElement ) { + if ( target.classList.contains( activeClass ) ) { + focusElement.focus(); + } else { + focusElement.blur(); + } + } + } + + // Trigger the toggled event on the toggle target + target.dispatchEvent( twentytwenty.createEvent( 'toggled' ) ); + + // Trigger events on the toggle targets after they are toggled + if ( target.classList.contains( activeClass ) ) { + target.dispatchEvent( twentytwenty.createEvent( 'toggle-target-after-active' ) ); + } else { + target.dispatchEvent( twentytwenty.createEvent( 'toggle-target-after-inactive' ) ); + } + }, timeOutTime ); + }, + + // Do the toggle + toggle: function() { + var self = this; + + document.querySelectorAll( '*[data-toggle-target]' ).forEach( function( element ) { + element.addEventListener( 'click', function( event ) { + event.preventDefault(); + self.performToggle( element ); + } ); + } ); + }, + + // Check for toggle/untoggle on screen resize + resizeCheck: function() { + if ( document.querySelectorAll( '*[data-untoggle-above], *[data-untoggle-below], *[data-toggle-above], *[data-toggle-below]' ).length ) { + window.addEventListener( 'resize', function() { + var winWidth = window.innerWidth, + toggles = document.querySelectorAll( '.toggle' ); + + toggles.forEach( function( toggle ) { + var unToggleAbove = toggle.dataset.untoggleAbove, + unToggleBelow = toggle.dataset.untoggleBelow, + toggleAbove = toggle.dataset.toggleAbove, + toggleBelow = toggle.dataset.toggleBelow; + + // If no width comparison is set, continue + if ( ! unToggleAbove && ! unToggleBelow && ! toggleAbove && ! toggleBelow ) { + return; + } + + // If the toggle width comparison is true, toggle the toggle + if ( + ( ( ( unToggleAbove && winWidth > unToggleAbove ) || + ( unToggleBelow && winWidth < unToggleBelow ) ) && + toggle.classList.contains( 'active' ) ) || + ( ( ( toggleAbove && winWidth > toggleAbove ) || + ( toggleBelow && winWidth < toggleBelow ) ) && + ! toggle.classList.contains( 'active' ) ) + ) { + toggle.click(); + } + } ); + } ); + } + }, + + // Close toggle on escape key press + untoggleOnEscapeKeyPress: function() { + document.addEventListener( 'keyup', function( event ) { + if ( event.key === 'Escape' ) { + document.querySelectorAll( '*[data-untoggle-on-escape].active' ).forEach( function( element ) { + if ( element.classList.contains( 'active' ) ) { + element.click(); + } + } ); + } + } ); + } + +}; // twentytwenty.toggles + +/** + * Is the DOM ready + * + * this implementation is coming from https://gomakethings.com/a-native-javascript-equivalent-of-jquerys-ready-method/ + * + * @param {Function} fn Callback function to run. + */ +function twentytwentyDomReady( fn ) { + if ( typeof fn !== 'function' ) { + return; + } + + if ( document.readyState === 'interactive' || document.readyState === 'complete' ) { + return fn(); + } + + document.addEventListener( 'DOMContentLoaded', fn, false ); +} + +twentytwentyDomReady( function() { + twentytwenty.toggles.init(); // Handle toggles + twentytwenty.coverModals.init(); // Handle cover modals + twentytwenty.intrinsicRatioVideos.init(); // Retain aspect ratio of videos on window resize + twentytwenty.modalMenu.init(); // Modal Menu + twentytwenty.primaryMenu.init(); // Primary Menu + twentytwenty.touchEnabled.init(); // Add class to body if device is touch-enabled +} ); + +/* ----------------------------------------------------------------------------------------------- + Helper functions +--------------------------------------------------------------------------------------------------- */ + +/* Toggle an attribute ----------------------- */ + +function twentytwentyToggleAttribute( element, attribute, trueVal, falseVal ) { + if ( trueVal === undefined ) { + trueVal = true; + } + if ( falseVal === undefined ) { + falseVal = false; + } + if ( element.getAttribute( attribute ) !== trueVal ) { + element.setAttribute( attribute, trueVal ); + } else { + element.setAttribute( attribute, falseVal ); + } +} + +/** + * Toggle a menu item on or off. + * + * @param {HTMLElement} target + * @param {number} duration + */ +function twentytwentyMenuToggle( target, duration ) { + var initialParentHeight, finalParentHeight, menu, menuItems, transitionListener, + initialPositions = [], + finalPositions = []; + + if ( ! target ) { + return; + } + + menu = target.closest( '.menu-wrapper' ); + + // Step 1: look at the initial positions of every menu item. + menuItems = menu.querySelectorAll( '.menu-item' ); + + menuItems.forEach( function( menuItem, index ) { + initialPositions[ index ] = { x: menuItem.offsetLeft, y: menuItem.offsetTop }; + } ); + initialParentHeight = target.parentElement.offsetHeight; + + target.classList.add( 'toggling-target' ); + + // Step 2: toggle target menu item and look at the final positions of every menu item. + target.classList.toggle( 'active' ); + + menuItems.forEach( function( menuItem, index ) { + finalPositions[ index ] = { x: menuItem.offsetLeft, y: menuItem.offsetTop }; + } ); + finalParentHeight = target.parentElement.offsetHeight; + + // Step 3: close target menu item again. + // The whole process happens without giving the browser a chance to render, so it's invisible. + target.classList.toggle( 'active' ); + + // Step 4: prepare animation. + // Position all the items with absolute offsets, at the same starting position. + // Shouldn't result in any visual changes if done right. + menu.classList.add( 'is-toggling' ); + target.classList.toggle( 'active' ); + menuItems.forEach( function( menuItem, index ) { + var initialPosition = initialPositions[ index ]; + if ( initialPosition.y === 0 && menuItem.parentElement === target ) { + initialPosition.y = initialParentHeight; + } + menuItem.style.transform = 'translate(' + initialPosition.x + 'px, ' + initialPosition.y + 'px)'; + } ); + + // The double rAF is unfortunately needed, since we're toggling CSS classes, and + // the only way to ensure layout completion here across browsers is to wait twice. + // This just delays the start of the animation by 2 frames and is thus not an issue. + requestAnimationFrame( function() { + requestAnimationFrame( function() { + // Step 5: start animation by moving everything to final position. + // All the layout work has already happened, while we were preparing for the animation. + // The animation now runs entirely in CSS, using cheap CSS properties (opacity and transform) + // that don't trigger the layout or paint stages. + menu.classList.add( 'is-animating' ); + menuItems.forEach( function( menuItem, index ) { + var finalPosition = finalPositions[ index ]; + if ( finalPosition.y === 0 && menuItem.parentElement === target ) { + finalPosition.y = finalParentHeight; + } + if ( duration !== undefined ) { + menuItem.style.transitionDuration = duration + 'ms'; + } + menuItem.style.transform = 'translate(' + finalPosition.x + 'px, ' + finalPosition.y + 'px)'; + } ); + if ( duration !== undefined ) { + target.style.transitionDuration = duration + 'ms'; + } + } ); + + // Step 6: finish toggling. + // Remove all transient classes when the animation ends. + transitionListener = function() { + menu.classList.remove( 'is-animating' ); + menu.classList.remove( 'is-toggling' ); + target.classList.remove( 'toggling-target' ); + menuItems.forEach( function( menuItem ) { + menuItem.style.transform = ''; + menuItem.style.transitionDuration = ''; + } ); + target.style.transitionDuration = ''; + target.removeEventListener( 'transitionend', transitionListener ); + }; + + target.addEventListener( 'transitionend', transitionListener ); + } ); +} + +/** + * traverses the DOM up to find elements matching the query + * + * @param {HTMLElement} target + * @param {string} query + * @return {NodeList} parents matching query + */ +function twentytwentyFindParents( target, query ) { + var parents = []; + + // recursively go up the DOM adding matches to the parents array + function traverse( item ) { + var parent = item.parentNode; + if ( parent instanceof HTMLElement ) { + if ( parent.matches( query ) ) { + parents.push( parent ); + } + traverse( parent ); + } + } + + traverse( target ); + + return parents; +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/skip-link-focus-fix.js b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/skip-link-focus-fix.js new file mode 100644 index 0000000..181b797 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/assets/js/skip-link-focus-fix.js @@ -0,0 +1,33 @@ +/** + * File skip-link-focus-fix.js. + * + * Helps with accessibility for keyboard only users. + * + * This is the source file for what is minified in the twentytwenty_skip_link_focus_fix() PHP function. + * + * Learn more: https://git.io/vWdr2 + */ +( function() { + var isIe = /(trident|msie)/i.test( navigator.userAgent ); + + if ( isIe && document.getElementById && window.addEventListener ) { + window.addEventListener( 'hashchange', function() { + var id = location.hash.substring( 1 ), + element; + + if ( ! ( /^[A-z0-9_-]+$/.test( id ) ) ) { + return; + } + + element = document.getElementById( id ); + + if ( element ) { + if ( ! ( /^(?:a|select|input|button|textarea)$/i.test( element.tagName ) ) ) { + element.tabIndex = -1; + } + + element.focus(); + } + }, false ); + } +}() ); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-customize.php b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-customize.php new file mode 100644 index 0000000..cec2496 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-customize.php @@ -0,0 +1,526 @@ +get_setting( 'blogname' )->transport = 'postMessage'; + $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; + + $wp_customize->selective_refresh->add_partial( + 'blogname', + array( + 'selector' => '.site-title a', + 'render_callback' => 'twentytwenty_customize_partial_blogname', + ) + ); + + $wp_customize->selective_refresh->add_partial( + 'blogdescription', + array( + 'selector' => '.site-description', + 'render_callback' => 'twentytwenty_customize_partial_blogdescription', + ) + ); + + $wp_customize->selective_refresh->add_partial( + 'custom_logo', + array( + 'selector' => '.header-titles [class*=site-]:not(.site-description)', + 'render_callback' => 'twentytwenty_customize_partial_site_logo', + ) + ); + + $wp_customize->selective_refresh->add_partial( + 'retina_logo', + array( + 'selector' => '.header-titles [class*=site-]:not(.site-description)', + 'render_callback' => 'twentytwenty_customize_partial_site_logo', + ) + ); + + /** + * Site Identity + */ + + /* 2X Header Logo ---------------- */ + $wp_customize->add_setting( + 'retina_logo', + array( + 'capability' => 'edit_theme_options', + 'sanitize_callback' => array( __CLASS__, 'sanitize_checkbox' ), + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'retina_logo', + array( + 'type' => 'checkbox', + 'section' => 'title_tagline', + 'priority' => 10, + 'label' => __( 'Retina logo', 'twentytwenty' ), + 'description' => __( 'Scales the logo to half its uploaded size, making it sharp on high-res screens.', 'twentytwenty' ), + ) + ); + + // Header & Footer Background Color. + $wp_customize->add_setting( + 'header_footer_background_color', + array( + 'default' => '#ffffff', + 'sanitize_callback' => 'sanitize_hex_color', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'header_footer_background_color', + array( + 'label' => __( 'Header & Footer Background Color', 'twentytwenty' ), + 'section' => 'colors', + ) + ) + ); + + // Enable picking an accent color. + $wp_customize->add_setting( + 'accent_hue_active', + array( + 'capability' => 'edit_theme_options', + 'sanitize_callback' => array( __CLASS__, 'sanitize_select' ), + 'transport' => 'postMessage', + 'default' => 'default', + ) + ); + + $wp_customize->add_control( + 'accent_hue_active', + array( + 'type' => 'radio', + 'section' => 'colors', + 'label' => __( 'Primary Color', 'twentytwenty' ), + 'choices' => array( + 'default' => __( 'Default', 'twentytwenty' ), + 'custom' => __( 'Custom', 'twentytwenty' ), + ), + ) + ); + + /** + * Implementation for the accent color. + * This is different to all other color options because of the accessibility enhancements. + * The control is a hue-only colorpicker, and there is a separate setting that holds values + * for other colors calculated based on the selected hue and various background-colors on the page. + * + * @since 1.0.0 + */ + + // Add the setting for the hue colorpicker. + $wp_customize->add_setting( + 'accent_hue', + array( + 'default' => 344, + 'type' => 'theme_mod', + 'sanitize_callback' => 'absint', + 'transport' => 'postMessage', + ) + ); + + // Add setting to hold colors derived from the accent hue. + $wp_customize->add_setting( + 'accent_accessible_colors', + array( + 'default' => array( + 'content' => array( + 'text' => '#000000', + 'accent' => '#cd2653', + 'secondary' => '#6d6d6d', + 'borders' => '#dcd7ca', + ), + 'header-footer' => array( + 'text' => '#000000', + 'accent' => '#cd2653', + 'secondary' => '#6d6d6d', + 'borders' => '#dcd7ca', + ), + ), + 'type' => 'theme_mod', + 'transport' => 'postMessage', + 'sanitize_callback' => array( __CLASS__, 'sanitize_accent_accessible_colors' ), + ) + ); + + // Add the hue-only colorpicker for the accent color. + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'accent_hue', + array( + 'section' => 'colors', + 'settings' => 'accent_hue', + 'description' => __( 'Apply a custom color for links, buttons, featured images.', 'twentytwenty' ), + 'mode' => 'hue', + 'active_callback' => function() use ( $wp_customize ) { + return ( 'custom' === $wp_customize->get_setting( 'accent_hue_active' )->value() ); + }, + ) + ) + ); + + // Update background color with postMessage, so inline CSS output is updated as well. + $wp_customize->get_setting( 'background_color' )->transport = 'postMessage'; + + /** + * Theme Options + */ + + $wp_customize->add_section( + 'options', + array( + 'title' => __( 'Theme Options', 'twentytwenty' ), + 'priority' => 40, + 'capability' => 'edit_theme_options', + ) + ); + + /* Enable Header Search ----------------------------------------------- */ + + $wp_customize->add_setting( + 'enable_header_search', + array( + 'capability' => 'edit_theme_options', + 'default' => true, + 'sanitize_callback' => array( __CLASS__, 'sanitize_checkbox' ), + ) + ); + + $wp_customize->add_control( + 'enable_header_search', + array( + 'type' => 'checkbox', + 'section' => 'options', + 'priority' => 10, + 'label' => __( 'Show search in header', 'twentytwenty' ), + ) + ); + + /* Show author bio ---------------------------------------------------- */ + + $wp_customize->add_setting( + 'show_author_bio', + array( + 'capability' => 'edit_theme_options', + 'default' => true, + 'sanitize_callback' => array( __CLASS__, 'sanitize_checkbox' ), + ) + ); + + $wp_customize->add_control( + 'show_author_bio', + array( + 'type' => 'checkbox', + 'section' => 'options', + 'priority' => 10, + 'label' => __( 'Show author bio', 'twentytwenty' ), + ) + ); + + /* Display full content or excerpts on the blog and archives --------- */ + + $wp_customize->add_setting( + 'blog_content', + array( + 'capability' => 'edit_theme_options', + 'default' => 'full', + 'sanitize_callback' => array( __CLASS__, 'sanitize_select' ), + ) + ); + + $wp_customize->add_control( + 'blog_content', + array( + 'type' => 'radio', + 'section' => 'options', + 'priority' => 10, + 'label' => __( 'On archive pages, posts show:', 'twentytwenty' ), + 'choices' => array( + 'full' => __( 'Full text', 'twentytwenty' ), + 'summary' => __( 'Summary', 'twentytwenty' ), + ), + ) + ); + + /** + * Template: Cover Template. + */ + $wp_customize->add_section( + 'cover_template_options', + array( + 'title' => __( 'Cover Template', 'twentytwenty' ), + 'capability' => 'edit_theme_options', + 'description' => __( 'Settings for the "Cover Template" page template. Add a featured image to use as background.', 'twentytwenty' ), + 'priority' => 42, + ) + ); + + /* Overlay Fixed Background ------ */ + + $wp_customize->add_setting( + 'cover_template_fixed_background', + array( + 'capability' => 'edit_theme_options', + 'default' => true, + 'sanitize_callback' => array( __CLASS__, 'sanitize_checkbox' ), + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'cover_template_fixed_background', + array( + 'type' => 'checkbox', + 'section' => 'cover_template_options', + 'label' => __( 'Fixed Background Image', 'twentytwenty' ), + 'description' => __( 'Creates a parallax effect when the visitor scrolls.', 'twentytwenty' ), + ) + ); + + $wp_customize->selective_refresh->add_partial( + 'cover_template_fixed_background', + array( + 'selector' => '.cover-header', + 'type' => 'cover_fixed', + ) + ); + + /* Separator --------------------- */ + + $wp_customize->add_setting( + 'cover_template_separator_1', + array( + 'sanitize_callback' => 'wp_filter_nohtml_kses', + ) + ); + + $wp_customize->add_control( + new TwentyTwenty_Separator_Control( + $wp_customize, + 'cover_template_separator_1', + array( + 'section' => 'cover_template_options', + ) + ) + ); + + /* Overlay Background Color ------ */ + + $wp_customize->add_setting( + 'cover_template_overlay_background_color', + array( + 'default' => twentytwenty_get_color_for_area( 'content', 'accent' ), + 'sanitize_callback' => 'sanitize_hex_color', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'cover_template_overlay_background_color', + array( + 'label' => __( 'Overlay Background Color', 'twentytwenty' ), + 'description' => __( 'The color used for the overlay. Defaults to the accent color.', 'twentytwenty' ), + 'section' => 'cover_template_options', + ) + ) + ); + + /* Overlay Text Color ------------ */ + + $wp_customize->add_setting( + 'cover_template_overlay_text_color', + array( + 'default' => '#ffffff', + 'sanitize_callback' => 'sanitize_hex_color', + ) + ); + + $wp_customize->add_control( + new WP_Customize_Color_Control( + $wp_customize, + 'cover_template_overlay_text_color', + array( + 'label' => __( 'Overlay Text Color', 'twentytwenty' ), + 'description' => __( 'The color used for the text in the overlay.', 'twentytwenty' ), + 'section' => 'cover_template_options', + ) + ) + ); + + /* Overlay Color Opacity --------- */ + + $wp_customize->add_setting( + 'cover_template_overlay_opacity', + array( + 'default' => 80, + 'sanitize_callback' => 'absint', + 'transport' => 'postMessage', + ) + ); + + $wp_customize->add_control( + 'cover_template_overlay_opacity', + array( + 'label' => __( 'Overlay Opacity', 'twentytwenty' ), + 'description' => __( 'Make sure that the contrast is high enough so that the text is readable.', 'twentytwenty' ), + 'section' => 'cover_template_options', + 'type' => 'range', + 'input_attrs' => twentytwenty_customize_opacity_range(), + ) + ); + + $wp_customize->selective_refresh->add_partial( + 'cover_template_overlay_opacity', + array( + 'selector' => '.cover-color-overlay', + 'type' => 'cover_opacity', + ) + ); + } + + /** + * Sanitization callback for the "accent_accessible_colors" setting. + * + * @static + * @access public + * @since 1.0.0 + * @param array $value The value we want to sanitize. + * @return array Returns sanitized value. Each item in the array gets sanitized separately. + */ + public static function sanitize_accent_accessible_colors( $value ) { + + // Make sure the value is an array. Do not typecast, use empty array as fallback. + $value = is_array( $value ) ? $value : array(); + + // Loop values. + foreach ( $value as $area => $values ) { + foreach ( $values as $context => $color_val ) { + $value[ $area ][ $context ] = sanitize_hex_color( $color_val ); + } + } + + return $value; + } + + /** + * Sanitize select. + * + * @param string $input The input from the setting. + * @param object $setting The selected setting. + * + * @return string $input|$setting->default The input from the setting or the default setting. + */ + public static function sanitize_select( $input, $setting ) { + $input = sanitize_key( $input ); + $choices = $setting->manager->get_control( $setting->id )->choices; + return ( array_key_exists( $input, $choices ) ? $input : $setting->default ); + } + + /** + * Sanitize boolean for checkbox. + * + * @param bool $checked Whether or not a box is checked. + * + * @return bool + */ + public static function sanitize_checkbox( $checked ) { + return ( ( isset( $checked ) && true === $checked ) ? true : false ); + } + + } + + // Setup the Theme Customizer settings and controls. + add_action( 'customize_register', array( 'TwentyTwenty_Customize', 'register' ) ); + +} + +/** + * PARTIAL REFRESH FUNCTIONS + * */ +if ( ! function_exists( 'twentytwenty_customize_partial_blogname' ) ) { + /** + * Render the site title for the selective refresh partial. + */ + function twentytwenty_customize_partial_blogname() { + bloginfo( 'name' ); + } +} + +if ( ! function_exists( 'twentytwenty_customize_partial_blogdescription' ) ) { + /** + * Render the site description for the selective refresh partial. + */ + function twentytwenty_customize_partial_blogdescription() { + bloginfo( 'description' ); + } +} + +if ( ! function_exists( 'twentytwenty_customize_partial_site_logo' ) ) { + /** + * Render the site logo for the selective refresh partial. + * + * Doing it this way so we don't have issues with `render_callback`'s arguments. + */ + function twentytwenty_customize_partial_site_logo() { + twentytwenty_site_logo(); + } +} + + +/** + * Input attributes for cover overlay opacity option. + * + * @return array Array containing attribute names and their values. + */ +function twentytwenty_customize_opacity_range() { + /** + * Filter the input attributes for opacity + * + * @param array $attrs { + * The attributes + * + * @type int $min Minimum value + * @type int $max Maximum value + * @type int $step Interval between numbers + * } + */ + return apply_filters( + 'twentytwenty_customize_opacity_range', + array( + 'min' => 0, + 'max' => 90, + 'step' => 5, + ) + ); +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-non-latin-languages.php b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-non-latin-languages.php new file mode 100644 index 0000000..a3a1336 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-non-latin-languages.php @@ -0,0 +1,122 @@ + array( 'Tahoma', 'Arial', 'sans-serif' ), + 'ary' => array( 'Tahoma', 'Arial', 'sans-serif' ), + 'azb' => array( 'Tahoma', 'Arial', 'sans-serif' ), + 'ckb' => array( 'Tahoma', 'Arial', 'sans-serif' ), + 'fa-IR' => array( 'Tahoma', 'Arial', 'sans-serif' ), + 'haz' => array( 'Tahoma', 'Arial', 'sans-serif' ), + 'ps' => array( 'Tahoma', 'Arial', 'sans-serif' ), + + // Chinese Simplified (China) - Noto Sans SC. + 'zh-CN' => array( '\'PingFang SC\'', '\'Helvetica Neue\'', '\'Microsoft YaHei New\'', '\'STHeiti Light\'', 'sans-serif' ), + + // Chinese Traditional (Taiwan) - Noto Sans TC. + 'zh-TW' => array( '\'PingFang TC\'', '\'Helvetica Neue\'', '\'Microsoft YaHei New\'', '\'STHeiti Light\'', 'sans-serif' ), + + // Chinese (Hong Kong) - Noto Sans HK. + 'zh-HK' => array( '\'PingFang HK\'', '\'Helvetica Neue\'', '\'Microsoft YaHei New\'', '\'STHeiti Light\'', 'sans-serif' ), + + // Cyrillic. + 'bel' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'bg-BG' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'kk' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'mk-MK' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'mn' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'ru-RU' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'sah' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'sr-RS' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'tt-RU' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + 'uk' => array( '\'Helvetica Neue\'', 'Helvetica', '\'Segoe UI\'', 'Arial', 'sans-serif' ), + + // Devanagari. + 'bn-BD' => array( 'Arial', 'sans-serif' ), + 'hi-IN' => array( 'Arial', 'sans-serif' ), + 'mr' => array( 'Arial', 'sans-serif' ), + 'ne-NP' => array( 'Arial', 'sans-serif' ), + + // Greek. + 'el' => array( '\'Helvetica Neue\', Helvetica, Arial, sans-serif' ), + + // Gujarati. + 'gu' => array( 'Arial', 'sans-serif' ), + + // Hebrew. + 'he-IL' => array( '\'Arial Hebrew\'', 'Arial', 'sans-serif' ), + + // Japanese. + 'ja' => array( 'sans-serif' ), + + // Korean. + 'ko-KR' => array( '\'Apple SD Gothic Neo\'', '\'Malgun Gothic\'', '\'Nanum Gothic\'', 'Dotum', 'sans-serif' ), + + // Thai. + 'th' => array( '\'Sukhumvit Set\'', '\'Helvetica Neue\'', 'Helvetica', 'Arial', 'sans-serif' ), + + // Vietnamese. + 'vi' => array( '\'Libre Franklin\'', 'sans-serif' ), + + ) + ); + + // Return if the selected language has no fallback fonts. + if ( empty( $font_family[ $locale ] ) ) { + return; + } + + // Define elements to apply fallback fonts to. + $elements = apply_filters( + 'twentytwenty_get_localized_font_family_elements', + array( + 'front-end' => array( 'body', 'input', 'textarea', 'button', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-file__button', '.has-drop-cap:not(:focus)::first-letter', '.has-drop-cap:not(:focus)::first-letter', '.entry-content .wp-block-archives', '.entry-content .wp-block-categories', '.entry-content .wp-block-cover-image', '.entry-content .wp-block-latest-comments', '.entry-content .wp-block-latest-posts', '.entry-content .wp-block-pullquote', '.entry-content .wp-block-quote.is-large', '.entry-content .wp-block-quote.is-style-large', '.entry-content .wp-block-archives *', '.entry-content .wp-block-categories *', '.entry-content .wp-block-latest-posts *', '.entry-content .wp-block-latest-comments *', '.entry-content p', '.entry-content ol', '.entry-content ul', '.entry-content dl', '.entry-content dt', '.entry-content cite', '.entry-content figcaption', '.entry-content .wp-caption-text', '.comment-content p', '.comment-content ol', '.comment-content ul', '.comment-content dl', '.comment-content dt', '.comment-content cite', '.comment-content figcaption', '.comment-content .wp-caption-text', '.widget_text p', '.widget_text ol', '.widget_text ul', '.widget_text dl', '.widget_text dt', '.widget-content .rssSummary', '.widget-content cite', '.widget-content figcaption', '.widget-content .wp-caption-text' ), + 'block-editor' => array( '.editor-styles-wrapper > *', '.editor-styles-wrapper p', '.editor-styles-wrapper ol', '.editor-styles-wrapper ul', '.editor-styles-wrapper dl', '.editor-styles-wrapper dt', '.editor-post-title__block .editor-post-title__input', '.editor-styles-wrapper .wp-block h1', '.editor-styles-wrapper .wp-block h2', '.editor-styles-wrapper .wp-block h3', '.editor-styles-wrapper .wp-block h4', '.editor-styles-wrapper .wp-block h5', '.editor-styles-wrapper .wp-block h6', '.editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter', '.editor-styles-wrapper cite', '.editor-styles-wrapper figcaption', '.editor-styles-wrapper .wp-caption-text' ), + 'classic-editor' => array( 'body#tinymce.wp-editor', 'body#tinymce.wp-editor p', 'body#tinymce.wp-editor ol', 'body#tinymce.wp-editor ul', 'body#tinymce.wp-editor dl', 'body#tinymce.wp-editor dt', 'body#tinymce.wp-editor figcaption', 'body#tinymce.wp-editor .wp-caption-text', 'body#tinymce.wp-editor .wp-caption-dd', 'body#tinymce.wp-editor cite', 'body#tinymce.wp-editor table' ), + ) + ); + + // Return if the specified type doesn't exist. + if ( empty( $elements[ $type ] ) ) { + return; + } + + // Return the specified styles. + return twentytwenty_generate_css( implode( ',', $elements[ $type ] ), 'font-family', implode( ',', $font_family[ $locale ] ), null, null, false ); + + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-script-loader.php b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-script-loader.php new file mode 100644 index 0000000..a8af12f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-script-loader.php @@ -0,0 +1,47 @@ +get_data( $handle, $attr ) ) { + continue; + } + // Prevent adding attribute when already added in #12009. + if ( ! preg_match( ":\s$attr(=|>|\s):", $tag ) ) { + $tag = preg_replace( ':(?=>):', " $attr", $tag, 1 ); + } + // Only allow async or defer, not both. + break; + } + return $tag; + } + + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-separator-control.php b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-separator-control.php new file mode 100644 index 0000000..8072257 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-separator-control.php @@ -0,0 +1,26 @@ +'; + } + + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-svg-icons.php b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-svg-icons.php new file mode 100644 index 0000000..a4b2e7a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-svg-icons.php @@ -0,0 +1,259 @@ +\s*<', $svg ); // Remove white space between SVG tags. + return $svg; + } + return null; + } + + /** + * GET SOCIAL LINK SVG + * Detects the social network from a URL and returns the SVG code for its icon. + * + * @param string $uri The URL to retrieve SVG for. + */ + public static function get_social_link_svg( $uri ) { + static $regex_map; // Only compute regex map once, for performance. + if ( ! isset( $regex_map ) ) { + $regex_map = array(); + $map = &self::$social_icons_map; // Use reference instead of copy, to save memory. + foreach ( array_keys( self::$social_icons ) as $icon ) { + $domains = array_key_exists( $icon, $map ) ? $map[ $icon ] : array( sprintf( '%s.com', $icon ) ); + $domains = array_map( 'trim', $domains ); // Remove leading/trailing spaces, to prevent regex from failing to match. + $domains = array_map( 'preg_quote', $domains ); + $regex_map[ $icon ] = sprintf( '/(%s)/i', implode( '|', $domains ) ); + } + } + foreach ( $regex_map as $icon => $regex ) { + if ( preg_match( $regex, $uri ) ) { + return twentytwenty_get_theme_svg( $icon, 'social' ); + } + } + return null; + } + + /** + * ICON STORAGE + * Store the code for all SVGs in an array. + * + * @var array + */ + public static $ui_icons = array( + 'arrow-down' => ' + + ', + 'arrow-down-circled ' => ' + + ', + 'bookmark' => ' + + ', + 'calendar' => ' + + ', + 'chevron-down' => ' + + ', + 'comment' => ' + + ', + 'cross' => ' + + ', + 'ellipsis' => ' + + ', + 'edit' => ' + + ', + 'folder' => ' + + ', + 'link' => ' + + ', + 'search' => ' + + ', + 'tag' => ' + + ', + 'user' => ' + + ', + ); + + /** + * Social Icons – domain mappings. + * + * By default, each Icon ID is matched against a .com TLD. To override this behavior, + * specify all the domains it covers (including the .com TLD too, if applicable). + * + * @var array + */ + public static $social_icons_map = array( + 'amazon' => array( + 'amazon.com', + 'amazon.cn', + 'amazon.in', + 'amazon.fr', + 'amazon.de', + 'amazon.it', + 'amazon.nl', + 'amazon.es', + 'amazon.co', + 'amazon.ca', + ), + 'behance' => array( + 'behance.net', + ), + 'codepen' => array( + 'codepen.io', + ), + 'facebook' => array( + 'facebook.com', + 'fb.me', + ), + 'feed' => array( + 'feed', + ), + 'lastfm' => array( + 'last.fm', + ), + 'mail' => array( + 'mailto:', + ), + 'pocket' => array( + 'getpocket.com', + ), + 'twitch' => array( + 'twitch.tv', + ), + 'wordpress' => array( + 'wordpress.com', + 'wordpress.org', + ), + ); + + /** + * Social Icons – svg sources. + * + * @var array + */ + public static $social_icons = array( + '500px' => '', + + 'amazon' => '', + + 'bandcamp' => '', + + 'behance' => '', + + 'codepen' => '', + + 'deviantart' => '', + + 'dribbble' => '', + + 'dropbox' => '', + + 'etsy' => '', + + 'facebook' => '', + + 'feed' => '', + + 'flickr' => '', + + 'foursquare' => '', + + 'goodreads' => '', + + 'google' => '', + + 'github' => '', + + 'instagram' => '', + + 'lastfm' => '', + + 'linkedin' => '', + + 'mail' => '', + + 'mastodon' => '', + + 'medium' => '', + + 'meetup' => '', + + 'pinterest' => '', + + 'pocket' => '', + + 'reddit' => '', + + 'skype' => '', + + 'snapchat' => '', + + 'soundcloud' => '', + + 'spotify' => '', + + 'tumblr' => '', + + 'twitch' => '', + + 'twitter' => '', + + 'vimeo' => '', + + 'vk' => '', + + // phpcs:disable WordPress.WP.CapitalPDangit.Misspelled + 'wordpress' => '', + + 'yelp' => '', + + 'youtube' => '', + + ); + + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-walker-comment.php b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-walker-comment.php new file mode 100644 index 0000000..1472d0b --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/classes/class-twentytwenty-walker-comment.php @@ -0,0 +1,142 @@ + + < id="comment-" has_children ? 'parent' : '', $comment ); ?>> +
+
+
+ ', $comment_author_url ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped --Escaped in https://developer.wordpress.org/reference/functions/get_comment_author_url/ + echo wp_kses_post( $avatar ); + } + } + + printf( + '%1$s%2$s', + esc_html( $comment_author ), + __( 'says:', 'twentytwenty' ) + ); + + if ( ! empty( $comment_author_url ) ) { + echo ''; + } + ?> +
+ + + +
+ +
+ + comment_approved ) { + ?> +

+ + +
+ + 'div-comment', + 'depth' => $depth, + 'max_depth' => $args['max_depth'], + 'before' => '', + 'after' => '', + ) + ) + ); + + $by_post_author = twentytwenty_is_comment_by_post_author( $comment ); + + if ( $comment_reply_link || $by_post_author ) { + ?> + +
+ + ' . __( 'By Post Author', 'twentytwenty' ) . ''; + } + ?> + +
+ + + +
+ + ID ); + + if ( isset( $args['pages_with_children'][ $page->ID ] ) ) { + $css_class[] = 'page_item_has_children'; + } + + if ( ! empty( $current_page ) ) { + $_current_page = get_post( $current_page ); + if ( $_current_page && in_array( $page->ID, $_current_page->ancestors, true ) ) { + $css_class[] = 'current_page_ancestor'; + } + if ( $page->ID === $current_page ) { + $css_class[] = 'current_page_item'; + } elseif ( $_current_page && $page->ID === $_current_page->post_parent ) { + $css_class[] = 'current_page_parent'; + } + } elseif ( get_option( 'page_for_posts' ) === $page->ID ) { + $css_class[] = 'current_page_parent'; + } + + /** + * Filters the list of CSS classes to include with each page item in the list. + * + * @since 2.8.0 + * + * @see wp_list_pages() + * + * @param string[] $css_class An array of CSS classes to be applied to each list item. + * @param WP_Post $page Page data object. + * @param int $depth Depth of page, used for padding. + * @param array $args An array of arguments. + * @param int $current_page ID of the current page. + */ + $css_classes = implode( ' ', apply_filters( 'page_css_class', $css_class, $page, $depth, $args, $current_page ) ); + $css_classes = $css_classes ? ' class="' . esc_attr( $css_classes ) . '"' : ''; + + if ( '' === $page->post_title ) { + /* translators: %d: ID of a post */ + $page->post_title = sprintf( __( '#%d (no title)', 'twentytwenty' ), $page->ID ); + } + + $args['link_before'] = empty( $args['link_before'] ) ? '' : $args['link_before']; + $args['link_after'] = empty( $args['link_after'] ) ? '' : $args['link_after']; + + $atts = array(); + $atts['href'] = get_permalink( $page->ID ); + $atts['aria-current'] = ( $page->ID === $current_page ) ? 'page' : ''; + + /** + * Filters the HTML attributes applied to a page menu item's anchor element. + * + * @since 4.8.0 + * + * @param array $atts { + * The HTML attributes applied to the menu item's `` element, empty strings are ignored. + * + * @type string $href The href attribute. + * @type string $aria_current The aria-current attribute. + * } + * @param WP_Post $page Page data object. + * @param int $depth Depth of page, used for padding. + * @param array $args An array of arguments. + * @param int $current_page ID of the current page. + */ + $atts = apply_filters( 'page_menu_link_attributes', $atts, $page, $depth, $args, $current_page ); + + $attributes = ''; + foreach ( $atts as $attr => $value ) { + if ( ! empty( $value ) ) { + $value = ( 'href' === $attr ) ? esc_url( $value ) : esc_attr( $value ); + $attributes .= ' ' . $attr . '="' . $value . '"'; + } + } + + $args['list_item_before'] = ''; + $args['list_item_after'] = ''; + + // Wrap the link in a div and append a sub menu toggle. + if ( isset( $args['show_toggles'] ) && true === $args['show_toggles'] ) { + // Wrap the menu item link contents in a div, used for positioning. + $args['list_item_before'] = '
'; + $args['list_item_after'] = ''; + + // Add a toggle to items with children. + if ( isset( $args['pages_with_children'][ $page->ID ] ) ) { + + $toggle_target_string = '.menu-modal .page-item-' . $page->ID . ' > ul'; + $toggle_duration = twentytwenty_toggle_duration(); + + // Add the sub menu toggle. + $args['list_item_after'] .= ''; + + } + + // Close the wrapper. + $args['list_item_after'] .= '
'; + } + + // Add icons to menu items with children. + if ( isset( $args['show_sub_menu_icons'] ) && true === $args['show_sub_menu_icons'] ) { + if ( isset( $args['pages_with_children'][ $page->ID ] ) ) { + $args['list_item_after'] = ''; + } + } + + $output .= $indent . sprintf( + '%s%s%s%s
%s', + $css_classes, + $args['list_item_before'], + $attributes, + $args['link_before'], + /** This filter is documented in wp-includes/post-template.php */ + apply_filters( 'the_title', $page->post_title, $page->ID ), + $args['link_after'], + $args['list_item_after'] + ); + + if ( ! empty( $args['show_date'] ) ) { + if ( 'modified' === $args['show_date'] ) { + $time = $page->post_modified; + } else { + $time = $page->post_date; + } + + $date_format = empty( $args['date_format'] ) ? '' : $args['date_format']; + $output .= ' ' . mysql2date( $date_format, $time ); + } + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/comments.php b/srcs/wordpress/wp-content/themes/twentytwenty/comments.php new file mode 100644 index 0000000..5338887 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/comments.php @@ -0,0 +1,132 @@ + + +
+ + + +
+ +

+ +

+ +
+ +
+ + new TwentyTwenty_Walker_Comment(), + 'avatar_size' => 120, + 'style' => 'div', + ) + ); + + $comment_pagination = paginate_comments_links( + array( + 'echo' => false, + 'end_size' => 0, + 'mid_size' => 0, + 'next_text' => __( 'Newer Comments', 'twentytwenty' ) . ' ', + 'prev_text' => ' ' . __( 'Older Comments', 'twentytwenty' ), + ) + ); + + if ( $comment_pagination ) { + $pagination_classes = ''; + + // If we're only showing the "Next" link, add a class indicating so. + if ( false === strpos( $comment_pagination, 'prev page-numbers' ) ) { + $pagination_classes = ' only-next'; + } + ?> + + + + + +
+ +
+ + '; + } + + comment_form( + array( + 'class_form' => 'section-inner thin max-percentage', + 'title_reply_before' => '

', + 'title_reply_after' => '

', + ) + ); + +} elseif ( is_single() ) { + + if ( $comments ) { + echo ''; + } + + ?> + +
+ +

+ +
+ + + + + + + + diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/functions.php b/srcs/wordpress/wp-content/themes/twentytwenty/functions.php new file mode 100644 index 0000000..ce1e2a6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/functions.php @@ -0,0 +1,757 @@ + 'f5efe0', + ) + ); + + // Set content-width. + global $content_width; + if ( ! isset( $content_width ) ) { + $content_width = 580; + } + + /* + * Enable support for Post Thumbnails on posts and pages. + * + * @link https://developer.wordpress.org/themes/functionality/featured-images-post-thumbnails/ + */ + add_theme_support( 'post-thumbnails' ); + + // Set post thumbnail size. + set_post_thumbnail_size( 1200, 9999 ); + + // Add custom image size used in Cover Template. + add_image_size( 'twentytwenty-fullscreen', 1980, 9999 ); + + // Custom logo. + $logo_width = 120; + $logo_height = 90; + + // If the retina setting is active, double the recommended width and height. + if ( get_theme_mod( 'retina_logo', false ) ) { + $logo_width = floor( $logo_width * 2 ); + $logo_height = floor( $logo_height * 2 ); + } + + add_theme_support( + 'custom-logo', + array( + 'height' => $logo_height, + 'width' => $logo_width, + 'flex-height' => true, + 'flex-width' => true, + ) + ); + + /* + * Let WordPress manage the document title. + * By adding theme support, we declare that this theme does not use a + * hard-coded tag in the document head, and expect WordPress to + * provide it for us. + */ + add_theme_support( 'title-tag' ); + + /* + * Switch default core markup for search form, comment form, and comments + * to output valid HTML5. + */ + add_theme_support( + 'html5', + array( + 'search-form', + 'comment-form', + 'comment-list', + 'gallery', + 'caption', + 'script', + 'style', + ) + ); + + /* + * Make theme available for translation. + * Translations can be filed in the /languages/ directory. + * If you're building a theme based on Twenty Twenty, use a find and replace + * to change 'twentytwenty' to the name of your theme in all the template files. + */ + load_theme_textdomain( 'twentytwenty' ); + + // Add support for full and wide align images. + add_theme_support( 'align-wide' ); + + /* + * Adds starter content to highlight the theme on fresh sites. + * This is done conditionally to avoid loading the starter content on every + * page load, as it is a one-off operation only needed once in the customizer. + */ + if ( is_customize_preview() ) { + require get_template_directory() . '/inc/starter-content.php'; + add_theme_support( 'starter-content', twentytwenty_get_starter_content() ); + } + + // Add theme support for selective refresh for widgets. + add_theme_support( 'customize-selective-refresh-widgets' ); + + /* + * Adds `async` and `defer` support for scripts registered or enqueued + * by the theme. + */ + $loader = new TwentyTwenty_Script_Loader(); + add_filter( 'script_loader_tag', array( $loader, 'filter_script_loader_tag' ), 10, 2 ); + +} + +add_action( 'after_setup_theme', 'twentytwenty_theme_support' ); + +/** + * REQUIRED FILES + * Include required files. + */ +require get_template_directory() . '/inc/template-tags.php'; + +// Handle SVG icons. +require get_template_directory() . '/classes/class-twentytwenty-svg-icons.php'; +require get_template_directory() . '/inc/svg-icons.php'; + +// Handle Customizer settings. +require get_template_directory() . '/classes/class-twentytwenty-customize.php'; + +// Require Separator Control class. +require get_template_directory() . '/classes/class-twentytwenty-separator-control.php'; + +// Custom comment walker. +require get_template_directory() . '/classes/class-twentytwenty-walker-comment.php'; + +// Custom page walker. +require get_template_directory() . '/classes/class-twentytwenty-walker-page.php'; + +// Custom script loader class. +require get_template_directory() . '/classes/class-twentytwenty-script-loader.php'; + +// Non-latin language handling. +require get_template_directory() . '/classes/class-twentytwenty-non-latin-languages.php'; + +// Custom CSS. +require get_template_directory() . '/inc/custom-css.php'; + +/** + * Register and Enqueue Styles. + */ +function twentytwenty_register_styles() { + + $theme_version = wp_get_theme()->get( 'Version' ); + + wp_enqueue_style( 'twentytwenty-style', get_stylesheet_uri(), array(), $theme_version ); + wp_style_add_data( 'twentytwenty-style', 'rtl', 'replace' ); + + // Add output of Customizer settings as inline style. + wp_add_inline_style( 'twentytwenty-style', twentytwenty_get_customizer_css( 'front-end' ) ); + + // Add print CSS. + wp_enqueue_style( 'twentytwenty-print-style', get_template_directory_uri() . '/print.css', null, $theme_version, 'print' ); + +} + +add_action( 'wp_enqueue_scripts', 'twentytwenty_register_styles' ); + +/** + * Register and Enqueue Scripts. + */ +function twentytwenty_register_scripts() { + + $theme_version = wp_get_theme()->get( 'Version' ); + + if ( ( ! is_admin() ) && is_singular() && comments_open() && get_option( 'thread_comments' ) ) { + wp_enqueue_script( 'comment-reply' ); + } + + wp_enqueue_script( 'twentytwenty-js', get_template_directory_uri() . '/assets/js/index.js', array(), $theme_version, false ); + wp_script_add_data( 'twentytwenty-js', 'async', true ); + +} + +add_action( 'wp_enqueue_scripts', 'twentytwenty_register_scripts' ); + +/** + * Fix skip link focus in IE11. + * + * This does not enqueue the script because it is tiny and because it is only for IE11, + * thus it does not warrant having an entire dedicated blocking script being loaded. + * + * @link https://git.io/vWdr2 + */ +function twentytwenty_skip_link_focus_fix() { + // The following is minified via `terser --compress --mangle -- assets/js/skip-link-focus-fix.js`. + ?> + <script> + /(trident|msie)/i.test(navigator.userAgent)&&document.getElementById&&window.addEventListener&&window.addEventListener("hashchange",function(){var t,e=location.hash.substring(1);/^[A-z0-9_-]+$/.test(e)&&(t=document.getElementById(e))&&(/^(?:a|select|input|button|textarea)$/i.test(t.tagName)||(t.tabIndex=-1),t.focus())},!1); + </script> + <?php +} +add_action( 'wp_print_footer_scripts', 'twentytwenty_skip_link_focus_fix' ); + +/** Enqueue non-latin language styles + * + * @since 1.0.0 + * + * @return void + */ +function twentytwenty_non_latin_languages() { + $custom_css = TwentyTwenty_Non_Latin_Languages::get_non_latin_css( 'front-end' ); + + if ( $custom_css ) { + wp_add_inline_style( 'twentytwenty-style', $custom_css ); + } +} + +add_action( 'wp_enqueue_scripts', 'twentytwenty_non_latin_languages' ); + +/** + * Register navigation menus uses wp_nav_menu in five places. + */ +function twentytwenty_menus() { + + $locations = array( + 'primary' => __( 'Desktop Horizontal Menu', 'twentytwenty' ), + 'expanded' => __( 'Desktop Expanded Menu', 'twentytwenty' ), + 'mobile' => __( 'Mobile Menu', 'twentytwenty' ), + 'footer' => __( 'Footer Menu', 'twentytwenty' ), + 'social' => __( 'Social Menu', 'twentytwenty' ), + ); + + register_nav_menus( $locations ); +} + +add_action( 'init', 'twentytwenty_menus' ); + +/** + * Get the information about the logo. + * + * @param string $html The HTML output from get_custom_logo (core function). + * + * @return string $html + */ +function twentytwenty_get_custom_logo( $html ) { + + $logo_id = get_theme_mod( 'custom_logo' ); + + if ( ! $logo_id ) { + return $html; + } + + $logo = wp_get_attachment_image_src( $logo_id, 'full' ); + + if ( $logo ) { + // For clarity. + $logo_width = esc_attr( $logo[1] ); + $logo_height = esc_attr( $logo[2] ); + + // If the retina logo setting is active, reduce the width/height by half. + if ( get_theme_mod( 'retina_logo', false ) ) { + $logo_width = floor( $logo_width / 2 ); + $logo_height = floor( $logo_height / 2 ); + + $search = array( + '/width=\"\d+\"/iU', + '/height=\"\d+\"/iU', + ); + + $replace = array( + "width=\"{$logo_width}\"", + "height=\"{$logo_height}\"", + ); + + // Add a style attribute with the height, or append the height to the style attribute if the style attribute already exists. + if ( strpos( $html, ' style=' ) === false ) { + $search[] = '/(src=)/'; + $replace[] = "style=\"height: {$logo_height}px;\" src="; + } else { + $search[] = '/(style="[^"]*)/'; + $replace[] = "$1 height: {$logo_height}px;"; + } + + $html = preg_replace( $search, $replace, $html ); + + } + } + + return $html; + +} + +add_filter( 'get_custom_logo', 'twentytwenty_get_custom_logo' ); + +if ( ! function_exists( 'wp_body_open' ) ) { + + /** + * Shim for wp_body_open, ensuring backwards compatibility with versions of WordPress older than 5.2. + */ + function wp_body_open() { + do_action( 'wp_body_open' ); + } +} + +/** + * Include a skip to content link at the top of the page so that users can bypass the menu. + */ +function twentytwenty_skip_link() { + echo '<a class="skip-link screen-reader-text" href="#site-content">' . __( 'Skip to the content', 'twentytwenty' ) . '</a>'; +} + +add_action( 'wp_body_open', 'twentytwenty_skip_link', 5 ); + +/** + * Register widget areas. + * + * @link https://developer.wordpress.org/themes/functionality/sidebars/#registering-a-sidebar + */ +function twentytwenty_sidebar_registration() { + + // Arguments used in all register_sidebar() calls. + $shared_args = array( + 'before_title' => '<h2 class="widget-title subheading heading-size-3">', + 'after_title' => '</h2>', + 'before_widget' => '<div class="widget %2$s"><div class="widget-content">', + 'after_widget' => '</div></div>', + ); + + // Footer #1. + register_sidebar( + array_merge( + $shared_args, + array( + 'name' => __( 'Footer #1', 'twentytwenty' ), + 'id' => 'sidebar-1', + 'description' => __( 'Widgets in this area will be displayed in the first column in the footer.', 'twentytwenty' ), + ) + ) + ); + + // Footer #2. + register_sidebar( + array_merge( + $shared_args, + array( + 'name' => __( 'Footer #2', 'twentytwenty' ), + 'id' => 'sidebar-2', + 'description' => __( 'Widgets in this area will be displayed in the second column in the footer.', 'twentytwenty' ), + ) + ) + ); + +} + +add_action( 'widgets_init', 'twentytwenty_sidebar_registration' ); + +/** + * Enqueue supplemental block editor styles. + */ +function twentytwenty_block_editor_styles() { + + $css_dependencies = array(); + + // Enqueue the editor styles. + wp_enqueue_style( 'twentytwenty-block-editor-styles', get_theme_file_uri( '/assets/css/editor-style-block.css' ), $css_dependencies, wp_get_theme()->get( 'Version' ), 'all' ); + wp_style_add_data( 'twentytwenty-block-editor-styles', 'rtl', 'replace' ); + + // Add inline style from the Customizer. + wp_add_inline_style( 'twentytwenty-block-editor-styles', twentytwenty_get_customizer_css( 'block-editor' ) ); + + // Add inline style for non-latin fonts. + wp_add_inline_style( 'twentytwenty-block-editor-styles', TwentyTwenty_Non_Latin_Languages::get_non_latin_css( 'block-editor' ) ); + + // Enqueue the editor script. + wp_enqueue_script( 'twentytwenty-block-editor-script', get_theme_file_uri( '/assets/js/editor-script-block.js' ), array( 'wp-blocks', 'wp-dom' ), wp_get_theme()->get( 'Version' ), true ); +} + +add_action( 'enqueue_block_editor_assets', 'twentytwenty_block_editor_styles', 1, 1 ); + +/** + * Enqueue classic editor styles. + */ +function twentytwenty_classic_editor_styles() { + + $classic_editor_styles = array( + '/assets/css/editor-style-classic.css', + ); + + add_editor_style( $classic_editor_styles ); + +} + +add_action( 'init', 'twentytwenty_classic_editor_styles' ); + +/** + * Output Customizer settings in the classic editor. + * Adds styles to the head of the TinyMCE iframe. Kudos to @Otto42 for the original solution. + * + * @param array $mce_init TinyMCE styles. + * + * @return array $mce_init TinyMCE styles. + */ +function twentytwenty_add_classic_editor_customizer_styles( $mce_init ) { + + $styles = twentytwenty_get_customizer_css( 'classic-editor' ); + + if ( ! isset( $mce_init['content_style'] ) ) { + $mce_init['content_style'] = $styles . ' '; + } else { + $mce_init['content_style'] .= ' ' . $styles . ' '; + } + + return $mce_init; + +} + +add_filter( 'tiny_mce_before_init', 'twentytwenty_add_classic_editor_customizer_styles' ); + +/** + * Output non-latin font styles in the classic editor. + * Adds styles to the head of the TinyMCE iframe. Kudos to @Otto42 for the original solution. + * + * @param array $mce_init TinyMCE styles. + * + * @return array $mce_init TinyMCE styles. + */ +function twentytwenty_add_classic_editor_non_latin_styles( $mce_init ) { + + $styles = TwentyTwenty_Non_Latin_Languages::get_non_latin_css( 'classic-editor' ); + + // Return if there are no styles to add. + if ( ! $styles ) { + return $mce_init; + } + + if ( ! isset( $mce_init['content_style'] ) ) { + $mce_init['content_style'] = $styles . ' '; + } else { + $mce_init['content_style'] .= ' ' . $styles . ' '; + } + + return $mce_init; + +} + +add_filter( 'tiny_mce_before_init', 'twentytwenty_add_classic_editor_non_latin_styles' ); + +/** + * Block Editor Settings. + * Add custom colors and font sizes to the block editor. + */ +function twentytwenty_block_editor_settings() { + + // Block Editor Palette. + $editor_color_palette = array( + array( + 'name' => __( 'Accent Color', 'twentytwenty' ), + 'slug' => 'accent', + 'color' => twentytwenty_get_color_for_area( 'content', 'accent' ), + ), + array( + 'name' => __( 'Primary', 'twentytwenty' ), + 'slug' => 'primary', + 'color' => twentytwenty_get_color_for_area( 'content', 'text' ), + ), + array( + 'name' => __( 'Secondary', 'twentytwenty' ), + 'slug' => 'secondary', + 'color' => twentytwenty_get_color_for_area( 'content', 'secondary' ), + ), + array( + 'name' => __( 'Subtle Background', 'twentytwenty' ), + 'slug' => 'subtle-background', + 'color' => twentytwenty_get_color_for_area( 'content', 'borders' ), + ), + ); + + // Add the background option. + $background_color = get_theme_mod( 'background_color' ); + if ( ! $background_color ) { + $background_color_arr = get_theme_support( 'custom-background' ); + $background_color = $background_color_arr[0]['default-color']; + } + $editor_color_palette[] = array( + 'name' => __( 'Background Color', 'twentytwenty' ), + 'slug' => 'background', + 'color' => '#' . $background_color, + ); + + // If we have accent colors, add them to the block editor palette. + if ( $editor_color_palette ) { + add_theme_support( 'editor-color-palette', $editor_color_palette ); + } + + // Block Editor Font Sizes. + add_theme_support( + 'editor-font-sizes', + array( + array( + 'name' => _x( 'Small', 'Name of the small font size in the block editor', 'twentytwenty' ), + 'shortName' => _x( 'S', 'Short name of the small font size in the block editor.', 'twentytwenty' ), + 'size' => 18, + 'slug' => 'small', + ), + array( + 'name' => _x( 'Regular', 'Name of the regular font size in the block editor', 'twentytwenty' ), + 'shortName' => _x( 'M', 'Short name of the regular font size in the block editor.', 'twentytwenty' ), + 'size' => 21, + 'slug' => 'normal', + ), + array( + 'name' => _x( 'Large', 'Name of the large font size in the block editor', 'twentytwenty' ), + 'shortName' => _x( 'L', 'Short name of the large font size in the block editor.', 'twentytwenty' ), + 'size' => 26.25, + 'slug' => 'large', + ), + array( + 'name' => _x( 'Larger', 'Name of the larger font size in the block editor', 'twentytwenty' ), + 'shortName' => _x( 'XL', 'Short name of the larger font size in the block editor.', 'twentytwenty' ), + 'size' => 32, + 'slug' => 'larger', + ), + ) + ); + + // If we have a dark background color then add support for dark editor style. + // We can determine if the background color is dark by checking if the text-color is white. + if ( '#ffffff' === strtolower( twentytwenty_get_color_for_area( 'content', 'text' ) ) ) { + add_theme_support( 'dark-editor-style' ); + } + +} + +add_action( 'after_setup_theme', 'twentytwenty_block_editor_settings' ); + +/** + * Overwrite default more tag with styling and screen reader markup. + * + * @param string $html The default output HTML for the more tag. + * + * @return string $html + */ +function twentytwenty_read_more_tag( $html ) { + return preg_replace( '/<a(.*)>(.*)<\/a>/iU', sprintf( '<div class="read-more-button-wrap"><a$1><span class="faux-button">$2</span> <span class="screen-reader-text">"%1$s"</span></a></div>', get_the_title( get_the_ID() ) ), $html ); +} + +add_filter( 'the_content_more_link', 'twentytwenty_read_more_tag' ); + +/** + * Enqueues scripts for customizer controls & settings. + * + * @since 1.0.0 + * + * @return void + */ +function twentytwenty_customize_controls_enqueue_scripts() { + $theme_version = wp_get_theme()->get( 'Version' ); + + // Add main customizer js file. + wp_enqueue_script( 'twentytwenty-customize', get_template_directory_uri() . '/assets/js/customize.js', array( 'jquery' ), $theme_version, false ); + + // Add script for color calculations. + wp_enqueue_script( 'twentytwenty-color-calculations', get_template_directory_uri() . '/assets/js/color-calculations.js', array( 'wp-color-picker' ), $theme_version, false ); + + // Add script for controls. + wp_enqueue_script( 'twentytwenty-customize-controls', get_template_directory_uri() . '/assets/js/customize-controls.js', array( 'twentytwenty-color-calculations', 'customize-controls', 'underscore', 'jquery' ), $theme_version, false ); + wp_localize_script( 'twentytwenty-customize-controls', 'twentyTwentyBgColors', twentytwenty_get_customizer_color_vars() ); +} + +add_action( 'customize_controls_enqueue_scripts', 'twentytwenty_customize_controls_enqueue_scripts' ); + +/** + * Enqueue scripts for the customizer preview. + * + * @since 1.0.0 + * + * @return void + */ +function twentytwenty_customize_preview_init() { + $theme_version = wp_get_theme()->get( 'Version' ); + + wp_enqueue_script( 'twentytwenty-customize-preview', get_theme_file_uri( '/assets/js/customize-preview.js' ), array( 'customize-preview', 'customize-selective-refresh', 'jquery' ), $theme_version, true ); + wp_localize_script( 'twentytwenty-customize-preview', 'twentyTwentyBgColors', twentytwenty_get_customizer_color_vars() ); + wp_localize_script( 'twentytwenty-customize-preview', 'twentyTwentyPreviewEls', twentytwenty_get_elements_array() ); + + wp_add_inline_script( + 'twentytwenty-customize-preview', + sprintf( + 'wp.customize.selectiveRefresh.partialConstructor[ %1$s ].prototype.attrs = %2$s;', + wp_json_encode( 'cover_opacity' ), + wp_json_encode( twentytwenty_customize_opacity_range() ) + ) + ); +} + +add_action( 'customize_preview_init', 'twentytwenty_customize_preview_init' ); + +/** + * Get accessible color for an area. + * + * @since 1.0.0 + * + * @param string $area The area we want to get the colors for. + * @param string $context Can be 'text' or 'accent'. + * @return string Returns a HEX color. + */ +function twentytwenty_get_color_for_area( $area = 'content', $context = 'text' ) { + + // Get the value from the theme-mod. + $settings = get_theme_mod( + 'accent_accessible_colors', + array( + 'content' => array( + 'text' => '#000000', + 'accent' => '#cd2653', + 'secondary' => '#6d6d6d', + 'borders' => '#dcd7ca', + ), + 'header-footer' => array( + 'text' => '#000000', + 'accent' => '#cd2653', + 'secondary' => '#6d6d6d', + 'borders' => '#dcd7ca', + ), + ) + ); + + // If we have a value return it. + if ( isset( $settings[ $area ] ) && isset( $settings[ $area ][ $context ] ) ) { + return $settings[ $area ][ $context ]; + } + + // Return false if the option doesn't exist. + return false; +} + +/** + * Returns an array of variables for the customizer preview. + * + * @since 1.0.0 + * + * @return array + */ +function twentytwenty_get_customizer_color_vars() { + $colors = array( + 'content' => array( + 'setting' => 'background_color', + ), + 'header-footer' => array( + 'setting' => 'header_footer_background_color', + ), + ); + return $colors; +} + +/** + * Get an array of elements. + * + * @since 1.0 + * + * @return array + */ +function twentytwenty_get_elements_array() { + + // The array is formatted like this: + // [key-in-saved-setting][sub-key-in-setting][css-property] = [elements]. + $elements = array( + 'content' => array( + 'accent' => array( + 'color' => array( '.color-accent', '.color-accent-hover:hover', '.color-accent-hover:focus', ':root .has-accent-color', '.has-drop-cap:not(:focus):first-letter', '.wp-block-button.is-style-outline', 'a' ), + 'border-color' => array( 'blockquote', '.border-color-accent', '.border-color-accent-hover:hover', '.border-color-accent-hover:focus' ), + 'background-color' => array( 'button:not(.toggle)', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-file .wp-block-file__button', 'input[type="button"]', 'input[type="reset"]', 'input[type="submit"]', '.bg-accent', '.bg-accent-hover:hover', '.bg-accent-hover:focus', ':root .has-accent-background-color', '.comment-reply-link' ), + 'fill' => array( '.fill-children-accent', '.fill-children-accent *' ), + ), + 'background' => array( + 'color' => array( ':root .has-background-color', 'button', '.button', '.faux-button', '.wp-block-button__link', '.wp-block-file__button', 'input[type="button"]', 'input[type="reset"]', 'input[type="submit"]', '.wp-block-button', '.comment-reply-link', '.has-background.has-primary-background-color:not(.has-text-color)', '.has-background.has-primary-background-color *:not(.has-text-color)', '.has-background.has-accent-background-color:not(.has-text-color)', '.has-background.has-accent-background-color *:not(.has-text-color)' ), + 'background-color' => array( ':root .has-background-background-color' ), + ), + 'text' => array( + 'color' => array( 'body', '.entry-title a', ':root .has-primary-color' ), + 'background-color' => array( ':root .has-primary-background-color' ), + ), + 'secondary' => array( + 'color' => array( 'cite', 'figcaption', '.wp-caption-text', '.post-meta', '.entry-content .wp-block-archives li', '.entry-content .wp-block-categories li', '.entry-content .wp-block-latest-posts li', '.wp-block-latest-comments__comment-date', '.wp-block-latest-posts__post-date', '.wp-block-embed figcaption', '.wp-block-image figcaption', '.wp-block-pullquote cite', '.comment-metadata', '.comment-respond .comment-notes', '.comment-respond .logged-in-as', '.pagination .dots', '.entry-content hr:not(.has-background)', 'hr.styled-separator', ':root .has-secondary-color' ), + 'background-color' => array( ':root .has-secondary-background-color' ), + ), + 'borders' => array( + 'border-color' => array( 'pre', 'fieldset', 'input', 'textarea', 'table', 'table *', 'hr' ), + 'background-color' => array( 'caption', 'code', 'code', 'kbd', 'samp', '.wp-block-table.is-style-stripes tbody tr:nth-child(odd)', ':root .has-subtle-background-background-color' ), + 'border-bottom-color' => array( '.wp-block-table.is-style-stripes' ), + 'border-top-color' => array( '.wp-block-latest-posts.is-grid li' ), + 'color' => array( ':root .has-subtle-background-color' ), + ), + ), + 'header-footer' => array( + 'accent' => array( + 'color' => array( 'body:not(.overlay-header) .primary-menu > li > a', 'body:not(.overlay-header) .primary-menu > li > .icon', '.modal-menu a', '.footer-menu a, .footer-widgets a', '#site-footer .wp-block-button.is-style-outline', '.wp-block-pullquote:before', '.singular:not(.overlay-header) .entry-header a', '.archive-header a', '.header-footer-group .color-accent', '.header-footer-group .color-accent-hover:hover' ), + 'background-color' => array( '.social-icons a', '#site-footer button:not(.toggle)', '#site-footer .button', '#site-footer .faux-button', '#site-footer .wp-block-button__link', '#site-footer .wp-block-file__button', '#site-footer input[type="button"]', '#site-footer input[type="reset"]', '#site-footer input[type="submit"]' ), + ), + 'background' => array( + 'color' => array( '.social-icons a', 'body:not(.overlay-header) .primary-menu ul', '.header-footer-group button', '.header-footer-group .button', '.header-footer-group .faux-button', '.header-footer-group .wp-block-button:not(.is-style-outline) .wp-block-button__link', '.header-footer-group .wp-block-file__button', '.header-footer-group input[type="button"]', '.header-footer-group input[type="reset"]', '.header-footer-group input[type="submit"]' ), + 'background-color' => array( '#site-header', '.footer-nav-widgets-wrapper', '#site-footer', '.menu-modal', '.menu-modal-inner', '.search-modal-inner', '.archive-header', '.singular .entry-header', '.singular .featured-media:before', '.wp-block-pullquote:before' ), + ), + 'text' => array( + 'color' => array( '.header-footer-group', 'body:not(.overlay-header) #site-header .toggle', '.menu-modal .toggle' ), + 'background-color' => array( 'body:not(.overlay-header) .primary-menu ul' ), + 'border-bottom-color' => array( 'body:not(.overlay-header) .primary-menu > li > ul:after' ), + 'border-left-color' => array( 'body:not(.overlay-header) .primary-menu ul ul:after' ), + ), + 'secondary' => array( + 'color' => array( '.site-description', 'body:not(.overlay-header) .toggle-inner .toggle-text', '.widget .post-date', '.widget .rss-date', '.widget_archive li', '.widget_categories li', '.widget cite', '.widget_pages li', '.widget_meta li', '.widget_nav_menu li', '.powered-by-wordpress', '.to-the-top', '.singular .entry-header .post-meta', '.singular:not(.overlay-header) .entry-header .post-meta a' ), + ), + 'borders' => array( + 'border-color' => array( '.header-footer-group pre', '.header-footer-group fieldset', '.header-footer-group input', '.header-footer-group textarea', '.header-footer-group table', '.header-footer-group table *', '.footer-nav-widgets-wrapper', '#site-footer', '.menu-modal nav *', '.footer-widgets-outer-wrapper', '.footer-top' ), + 'background-color' => array( '.header-footer-group table caption', 'body:not(.overlay-header) .header-inner .toggle-wrapper::before' ), + ), + ), + ); + + /** + * Filters Twenty Twenty theme elements + * + * @since 1.0.0 + * + * @param array Array of elements + */ + return apply_filters( 'twentytwenty_get_elements_array', $elements ); +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/header.php b/srcs/wordpress/wp-content/themes/twentytwenty/header.php new file mode 100644 index 0000000..d66d08f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/header.php @@ -0,0 +1,187 @@ +<?php +/** + * Header file for the Twenty Twenty WordPress default theme. + * + * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +?><!DOCTYPE html> + +<html class="no-js" <?php language_attributes(); ?>> + + <head> + + <meta charset="<?php bloginfo( 'charset' ); ?>"> + <meta name="viewport" content="width=device-width, initial-scale=1.0" > + + <link rel="profile" href="https://gmpg.org/xfn/11"> + + <?php wp_head(); ?> + + </head> + + <body <?php body_class(); ?>> + + <?php + wp_body_open(); + ?> + + <header id="site-header" class="header-footer-group" role="banner"> + + <div class="header-inner section-inner"> + + <div class="header-titles-wrapper"> + + <?php + + // Check whether the header search is activated in the customizer. + $enable_header_search = get_theme_mod( 'enable_header_search', true ); + + if ( true === $enable_header_search ) { + + ?> + + <button class="toggle search-toggle mobile-search-toggle" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false"> + <span class="toggle-inner"> + <span class="toggle-icon"> + <?php twentytwenty_the_theme_svg( 'search' ); ?> + </span> + <span class="toggle-text"><?php _e( 'Search', 'twentytwenty' ); ?></span> + </span> + </button><!-- .search-toggle --> + + <?php } ?> + + <div class="header-titles"> + + <?php + // Site title or logo. + twentytwenty_site_logo(); + + // Site description. + twentytwenty_site_description(); + ?> + + </div><!-- .header-titles --> + + <button class="toggle nav-toggle mobile-nav-toggle" data-toggle-target=".menu-modal" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle"> + <span class="toggle-inner"> + <span class="toggle-icon"> + <?php twentytwenty_the_theme_svg( 'ellipsis' ); ?> + </span> + <span class="toggle-text"><?php _e( 'Menu', 'twentytwenty' ); ?></span> + </span> + </button><!-- .nav-toggle --> + + </div><!-- .header-titles-wrapper --> + + <div class="header-navigation-wrapper"> + + <?php + if ( has_nav_menu( 'primary' ) || ! has_nav_menu( 'expanded' ) ) { + ?> + + <nav class="primary-menu-wrapper" aria-label="<?php esc_attr_e( 'Horizontal', 'twentytwenty' ); ?>" role="navigation"> + + <ul class="primary-menu reset-list-style"> + + <?php + if ( has_nav_menu( 'primary' ) ) { + + wp_nav_menu( + array( + 'container' => '', + 'items_wrap' => '%3$s', + 'theme_location' => 'primary', + ) + ); + + } elseif ( ! has_nav_menu( 'expanded' ) ) { + + wp_list_pages( + array( + 'match_menu_classes' => true, + 'show_sub_menu_icons' => true, + 'title_li' => false, + 'walker' => new TwentyTwenty_Walker_Page(), + ) + ); + + } + ?> + + </ul> + + </nav><!-- .primary-menu-wrapper --> + + <?php + } + + if ( true === $enable_header_search || has_nav_menu( 'expanded' ) ) { + ?> + + <div class="header-toggles hide-no-js"> + + <?php + if ( has_nav_menu( 'expanded' ) ) { + ?> + + <div class="toggle-wrapper nav-toggle-wrapper has-expanded-menu"> + + <button class="toggle nav-toggle desktop-nav-toggle" data-toggle-target=".menu-modal" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".close-nav-toggle"> + <span class="toggle-inner"> + <span class="toggle-text"><?php _e( 'Menu', 'twentytwenty' ); ?></span> + <span class="toggle-icon"> + <?php twentytwenty_the_theme_svg( 'ellipsis' ); ?> + </span> + </span> + </button><!-- .nav-toggle --> + + </div><!-- .nav-toggle-wrapper --> + + <?php + } + + if ( true === $enable_header_search ) { + ?> + + <div class="toggle-wrapper search-toggle-wrapper"> + + <button class="toggle search-toggle desktop-search-toggle" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false"> + <span class="toggle-inner"> + <?php twentytwenty_the_theme_svg( 'search' ); ?> + <span class="toggle-text"><?php _e( 'Search', 'twentytwenty' ); ?></span> + </span> + </button><!-- .search-toggle --> + + </div> + + <?php + } + ?> + + </div><!-- .header-toggles --> + <?php + } + ?> + + </div><!-- .header-navigation-wrapper --> + + </div><!-- .header-inner --> + + <?php + // Output the search modal (if it is activated in the customizer). + if ( true === $enable_header_search ) { + get_template_part( 'template-parts/modal-search' ); + } + ?> + + </header><!-- #site-header --> + + <?php + // Output the menu modal. + get_template_part( 'template-parts/modal-menu' ); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/inc/custom-css.php b/srcs/wordpress/wp-content/themes/twentytwenty/inc/custom-css.php new file mode 100644 index 0000000..a1c560d --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/inc/custom-css.php @@ -0,0 +1,191 @@ +<?php +/** + * Twenty Twenty Custom CSS + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +if ( ! function_exists( 'twentytwenty_generate_css' ) ) { + + /** + * Generate CSS. + * + * @param string $selector The CSS selector. + * @param string $style The CSS style. + * @param string $value The CSS value. + * @param string $prefix The CSS prefix. + * @param string $suffix The CSS suffix. + * @param bool $echo Echo the styles. + */ + function twentytwenty_generate_css( $selector, $style, $value, $prefix = '', $suffix = '', $echo = true ) { + + $return = ''; + + /* + * Bail early if we have no $selector elements or properties and $value. + */ + if ( ! $value || ! $selector ) { + + return; + } + + $return = sprintf( '%s { %s: %s; }', $selector, $style, $prefix . $value . $suffix ); + + if ( $echo ) { + + echo $return; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- We need to double check this, but for now, we want to pass PHPCS ;) + + } + + return $return; + + } +} + +if ( ! function_exists( 'twentytwenty_get_customizer_css' ) ) { + + /** + * Get CSS Built from Customizer Options. + * Build CSS reflecting colors, fonts and other options set in the Customizer, and return them for output. + * + * @param string $type Whether to return CSS for the "front-end", "block-editor" or "classic-editor". + */ + function twentytwenty_get_customizer_css( $type = 'front-end' ) { + + // Get variables. + $body = sanitize_hex_color( twentytwenty_get_color_for_area( 'content', 'text' ) ); + $body_default = '#000000'; + $secondary = sanitize_hex_color( twentytwenty_get_color_for_area( 'content', 'secondary' ) ); + $secondary_default = '#6d6d6d'; + $borders = sanitize_hex_color( twentytwenty_get_color_for_area( 'content', 'borders' ) ); + $borders_default = '#dcd7ca'; + $accent = sanitize_hex_color( twentytwenty_get_color_for_area( 'content', 'accent' ) ); + $accent_default = '#cd2653'; + + // Header. + $header_footer_background = sanitize_hex_color( twentytwenty_get_color_for_area( 'header-footer', 'background' ) ); + $header_footer_background_default = '#ffffff'; + + // Cover. + $cover = sanitize_hex_color( get_theme_mod( 'cover_template_overlay_text_color' ) ); + $cover_default = '#ffffff'; + + // Background. + $background = sanitize_hex_color_no_hash( get_theme_mod( 'background_color' ) ); + $background_default = 'f5efe0'; + + ob_start(); + + /** + * Note – Styles are applied in this order: + * 1. Element specific + * 2. Helper classes + * + * This enables all helper classes to overwrite base element styles, + * meaning that any color classes applied in the block editor will + * have a higher priority than the base element styles. + */ + + // Front-End Styles. + if ( 'front-end' === $type ) { + + // Auto-calculated colors. + $elements_definitions = twentytwenty_get_elements_array(); + foreach ( $elements_definitions as $context => $props ) { + foreach ( $props as $key => $definitions ) { + foreach ( $definitions as $property => $elements ) { + /* + * If we don't have an elements array or it is empty + * then skip this iteration early; + */ + if ( ! is_array( $elements ) || empty( $elements ) ) { + continue; + } + $val = twentytwenty_get_color_for_area( $context, $key ); + if ( $val ) { + twentytwenty_generate_css( implode( ',', $elements ), $property, $val ); + } + } + } + } + + if ( $cover && $cover !== $cover_default ) { + twentytwenty_generate_css( '.overlay-header .header-inner', 'color', $cover ); + twentytwenty_generate_css( '.cover-header .entry-header *', 'color', $cover ); + } + + // Block Editor Styles. + } elseif ( 'block-editor' === $type ) { + + // Colors. + // Accent color. + if ( $accent && $accent !== $accent_default ) { + twentytwenty_generate_css( '.has-accent-color, .editor-styles-wrapper .editor-block-list__layout a, .editor-styles-wrapper .has-drop-cap:not(:focus)::first-letter, .editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link, .editor-styles-wrapper .wp-block-pullquote::before, .editor-styles-wrapper .wp-block-file .wp-block-file__textlink', 'color', $accent ); + twentytwenty_generate_css( '.editor-styles-wrapper .wp-block-quote', 'border-color', $accent, '' ); + twentytwenty_generate_css( '.has-accent-background-color, .editor-styles-wrapper .wp-block-button__link, .editor-styles-wrapper .wp-block-file__button', 'background-color', $accent ); + } + + // Background color. + if ( $background && $background !== $background_default ) { + twentytwenty_generate_css( '.editor-styles-wrapper', 'background-color', '#' . $background ); + twentytwenty_generate_css( '.has-background.has-primary-background-color:not(.has-text-color),.has-background.has-primary-background-color *:not(.has-text-color),.has-background.has-accent-background-color:not(.has-text-color),.has-background.has-accent-background-color *:not(.has-text-color)', 'color', '#' . $background ); + } + + // Borders color. + if ( $borders && $borders !== $borders_default ) { + twentytwenty_generate_css( '.editor-styles-wrapper .wp-block-code, .editor-styles-wrapper pre, .editor-styles-wrapper .wp-block-preformatted pre, .editor-styles-wrapper .wp-block-verse pre, .editor-styles-wrapper fieldset, .editor-styles-wrapper .wp-block-table, .editor-styles-wrapper .wp-block-table *, .editor-styles-wrapper .wp-block-table.is-style-stripes, .editor-styles-wrapper .wp-block-latest-posts.is-grid li', 'border-color', $borders ); + twentytwenty_generate_css( '.editor-styles-wrapper .wp-block-table caption, .editor-styles-wrapper .wp-block-table.is-style-stripes tbody tr:nth-child(odd)', 'background-color', $borders ); + } + + // Text color. + if ( $body && $body !== $body_default ) { + twentytwenty_generate_css( 'body .editor-styles-wrapper, .editor-post-title__block .editor-post-title__input, .editor-post-title__block .editor-post-title__input:focus', 'color', $body ); + } + + // Secondary color. + if ( $secondary && $secondary !== $secondary_default ) { + twentytwenty_generate_css( '.editor-styles-wrapper figcaption, .editor-styles-wrapper cite, .editor-styles-wrapper .wp-block-quote__citation, .editor-styles-wrapper .wp-block-quote cite, .editor-styles-wrapper .wp-block-quote footer, .editor-styles-wrapper .wp-block-pullquote__citation, .editor-styles-wrapper .wp-block-pullquote cite, .editor-styles-wrapper .wp-block-pullquote footer, .editor-styles-wrapper ul.wp-block-archives li, .editor-styles-wrapper ul.wp-block-categories li, .editor-styles-wrapper ul.wp-block-latest-posts li, .editor-styles-wrapper ul.wp-block-categories__list li, .editor-styles-wrapper .wp-block-latest-comments time, .editor-styles-wrapper .wp-block-latest-posts time', 'color', $secondary ); + } + + // Header Footer Background Color. + if ( $header_footer_background && $header_footer_background !== $header_footer_background_default ) { + twentytwenty_generate_css( '.editor-styles-wrapper .wp-block-pullquote::before', 'background-color', $header_footer_background ); + } + } elseif ( 'classic-editor' === $type ) { + + // Colors. + // Accent color. + if ( $accent && $accent !== $accent_default ) { + twentytwenty_generate_css( 'body#tinymce.wp-editor.content a, body#tinymce.wp-editor.content a:focus, body#tinymce.wp-editor.content a:hover', 'color', $accent ); + twentytwenty_generate_css( 'body#tinymce.wp-editor.content blockquote, body#tinymce.wp-editor.content .wp-block-quote', 'border-color', $accent, '', ' !important' ); + twentytwenty_generate_css( 'body#tinymce.wp-editor.content button, body#tinymce.wp-editor.content .faux-button, body#tinymce.wp-editor.content .wp-block-button__link, body#tinymce.wp-editor.content .wp-block-file__button, body#tinymce.wp-editor.content input[type=\'button\'], body#tinymce.wp-editor.content input[type=\'reset\'], body#tinymce.wp-editor.content input[type=\'submit\']', 'background-color', $accent ); + } + + // Background color. + if ( $background && $background !== $background_default ) { + twentytwenty_generate_css( 'body#tinymce.wp-editor.content', 'background-color', '#' . $background ); + } + + // Text color. + if ( $body && $body !== $body_default ) { + twentytwenty_generate_css( 'body#tinymce.wp-editor.content', 'color', $body ); + } + + // Secondary color. + if ( $secondary && $secondary !== $secondary_default ) { + twentytwenty_generate_css( 'body#tinymce.wp-editor.content hr:not(.is-style-dots), body#tinymce.wp-editor.content cite, body#tinymce.wp-editor.content figcaption, body#tinymce.wp-editor.content .wp-caption-text, body#tinymce.wp-editor.content .wp-caption-dd, body#tinymce.wp-editor.content .gallery-caption', 'color', $secondary ); + } + + // Borders color. + if ( $borders && $borders !== $borders_default ) { + twentytwenty_generate_css( 'body#tinymce.wp-editor.content pre, body#tinymce.wp-editor.content hr, body#tinymce.wp-editor.content fieldset,body#tinymce.wp-editor.content input, body#tinymce.wp-editor.content textarea', 'border-color', $borders ); + } + } + + // Return the results. + return ob_get_clean(); + + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/inc/starter-content.php b/srcs/wordpress/wp-content/themes/twentytwenty/inc/starter-content.php new file mode 100644 index 0000000..ad1f8c5 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/inc/starter-content.php @@ -0,0 +1,217 @@ +<?php +/** + * Twenty Twenty Starter Content + * + * @link https://make.wordpress.org/core/2016/11/30/starter-content-for-themes-in-4-7/ + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +/** + * Function to return the array of starter content for the theme. + * + * Passes it through the `twentytwenty_starter_content` filter before returning. + * + * @since Twenty Twenty 1.0.0 + * @return array a filtered array of args for the starter_content. + */ +function twentytwenty_get_starter_content() { + + // Define and register starter content to showcase the theme on new sites. + $starter_content = array( + 'widgets' => array( + // Place one core-defined widgets in the first footer widget area. + 'sidebar-1' => array( + 'text_about', + ), + // Place one core-defined widgets in the second footer widget area. + 'sidebar-2' => array( + 'text_business_info', + ), + ), + + // Create the custom image attachments used as post thumbnails for pages. + 'attachments' => array( + 'image-opening' => array( + 'post_title' => _x( 'The New UMoMA Opens its Doors', 'Theme starter content', 'twentytwenty' ), + 'file' => 'assets/images/2020-landscape-1.png', // URL relative to the template directory. + ), + ), + + // Specify the core-defined pages to create and add custom thumbnails to some of them. + 'posts' => array( + 'front' => array( + 'post_type' => 'page', + 'post_title' => __( 'The New UMoMA Opens its Doors', 'twentytwenty' ), + // Use the above featured image with the predefined about page. + 'thumbnail' => '{{image-opening}}', + 'post_content' => join( + '', + array( + '<!-- wp:group {"align":"wide"} -->', + '<div class="wp-block-group alignwide"><div class="wp-block-group__inner-container"><!-- wp:heading {"align":"center"} -->', + '<h2 class="has-text-align-center">' . __( 'The premier destination for modern art in Northern Sweden. Open from 10 AM to 6 PM every day during the summer months.', 'twentytwenty' ) . '</h2>', + '<!-- /wp:heading --></div></div>', + '<!-- /wp:group -->', + '<!-- wp:columns {"align":"wide"} -->', + '<div class="wp-block-columns alignwide"><!-- wp:column -->', + '<div class="wp-block-column"><!-- wp:group -->', + '<div class="wp-block-group"><div class="wp-block-group__inner-container">', + '<!-- wp:image {"align":"full","id":37,"sizeSlug":"full"} -->', + '<figure class="wp-block-image alignfull size-full"><img src="' . get_theme_file_uri() . '/assets/images/2020-three-quarters-1.png" alt="" class="wp-image-37"/></figure>', + '<!-- /wp:image -->', + '<!-- wp:heading {"level":3} -->', + '<h3>' . __( 'Works and Days', 'twentytwenty' ) . '</h3>', + '<!-- /wp:heading -->', + '<!-- wp:paragraph -->', + '<p>' . __( 'August 1 -- December 1', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:button {"className":"is-style-outline"} -->', + '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>', + '<!-- /wp:button --></div></div>', + '<!-- /wp:group -->', + '<!-- wp:group -->', + '<div class="wp-block-group"><div class="wp-block-group__inner-container">', + '<!-- wp:image {"align":"full","id":37,"sizeSlug":"full"} -->', + '<figure class="wp-block-image alignfull size-full"><img src="' . get_theme_file_uri() . '/assets/images/2020-three-quarters-3.png" alt="" class="wp-image-37"/></figure>', + '<!-- /wp:image -->', + '<!-- wp:heading {"level":3} -->', + '<h3>' . __( 'Theatre of Operations', 'twentytwenty' ) . '</h3>', + '<!-- /wp:heading -->', + '<!-- wp:paragraph -->', + '<p>' . __( 'October 1 -- December 1', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:button {"className":"is-style-outline"} -->', + '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>', + '<!-- /wp:button --></div></div>', + '<!-- /wp:group --></div>', + '<!-- /wp:column -->', + '<!-- wp:column -->', + '<div class="wp-block-column"><!-- wp:group -->', + '<div class="wp-block-group"><div class="wp-block-group__inner-container">', + '<!-- wp:image {"align":"full","id":37,"sizeSlug":"full"} -->', + '<figure class="wp-block-image alignfull size-full"><img src="' . get_theme_file_uri() . '/assets/images/2020-three-quarters-2.png" alt="" class="wp-image-37"/></figure>', + '<!-- /wp:image -->', + '<!-- wp:heading {"level":3} -->', + '<h3>' . __( 'The Life I Deserve', 'twentytwenty' ) . '</h3>', + '<!-- /wp:heading -->', + '<!-- wp:paragraph -->', + '<p>' . __( 'August 1 -- December 1', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:button {"className":"is-style-outline"} -->', + '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>', + '<!-- /wp:button --></div></div>', + '<!-- /wp:group -->', + '<!-- wp:group -->', + '<div class="wp-block-group"><div class="wp-block-group__inner-container">', + '<!-- wp:image {"align":"full","id":37,"sizeSlug":"full"} -->', + '<figure class="wp-block-image alignfull size-full"><img src="' . get_theme_file_uri() . '/assets/images/2020-three-quarters-4.png" alt="" class="wp-image-37"/></figure>', + '<!-- /wp:image -->', + '<!-- wp:heading {"level":3} -->', + '<h3>' . __( 'From Signac to Matisse', 'twentytwenty' ) . '</h3>', + '<!-- /wp:heading -->', + '<!-- wp:paragraph -->', + '<p>' . __( 'October 1 -- December 1', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:button {"className":"is-style-outline"} -->', + '<div class="wp-block-button is-style-outline"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Read More', 'twentytwenty' ) . '</a></div>', + '<!-- /wp:button --></div></div>', + '<!-- /wp:group --></div>', + '<!-- /wp:column --></div>', + '<!-- /wp:columns -->', + '<!-- wp:image {"align":"full","id":37,"sizeSlug":"full"} -->', + '<figure class="wp-block-image alignfull size-full"><img src="' . get_theme_file_uri() . '/assets/images/2020-landscape-2.png" alt="" class="wp-image-37"/></figure>', + '<!-- /wp:image -->', + '<!-- wp:group {"align":"wide"} -->', + '<div class="wp-block-group alignwide"><div class="wp-block-group__inner-container"><!-- wp:heading {"align":"center","textColor":"accent"} -->', + '<h2 class="has-accent-color has-text-align-center">' . __( '”Cyborgs, as the philosopher Donna Haraway established, are not reverent. They do not remember the cosmos.”', 'twentytwenty' ) . '</h2>', + '<!-- /wp:heading --></div></div>', + '<!-- /wp:group -->', + '<!-- wp:paragraph {"dropCap":true} -->', + '<p class="has-drop-cap">' . __( 'With seven floors of striking architecture, UMoMA shows exhibitions of international contemporary art, sometimes along with art historical retrospectives. Existential, political and philosophical issues are intrinsic to our programme. As visitor you are invited to guided tours artist talks, lectures, film screenings and other events with free admission', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:paragraph -->', + '<p>' . __( 'The exhibitions are produced by UMoMA in collaboration with artists and museums around the world and they often attract international attention. UMoMA has received a Special Commendation from the European Museum of the Year, and was among the top candidates for the Swedish Museum of the Year Award as well as for the Council of Europe Museum Prize.', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:paragraph -->', + '<p></p>', + '<!-- /wp:paragraph -->', + '<!-- wp:group {"customBackgroundColor":"#ffffff","align":"wide"} -->', + '<div class="wp-block-group alignwide has-background" style="background-color:#ffffff"><div class="wp-block-group__inner-container"><!-- wp:group -->', + '<div class="wp-block-group"><div class="wp-block-group__inner-container"><!-- wp:heading {"align":"center"} -->', + '<h2 class="has-text-align-center">' . __( 'Become a Member and Get Exclusive Offers!', 'twentytwenty' ) . '</h2>', + '<!-- /wp:heading -->', + '<!-- wp:paragraph {"align":"center"} -->', + '<p class="has-text-align-center">' . __( 'Members get access to exclusive exhibits and sales. Our memberships cost $99.99 and are billed annually.', 'twentytwenty' ) . '</p>', + '<!-- /wp:paragraph -->', + '<!-- wp:button {"align":"center"} -->', + '<div class="wp-block-button aligncenter"><a class="wp-block-button__link" href="https://make.wordpress.org/core/2019/09/27/block-editor-theme-related-updates-in-wordpress-5-3/">' . __( 'Join the Club', 'twentytwenty' ) . '</a></div>', + '<!-- /wp:button --></div></div>', + '<!-- /wp:group --></div></div>', + '<!-- /wp:group -->', + '<!-- wp:gallery {"ids":[39,38],"align":"wide"} -->', + '<figure class="wp-block-gallery alignwide columns-2 is-cropped"><ul class="blocks-gallery-grid"><li class="blocks-gallery-item"><figure><img src="' . get_theme_file_uri() . '/assets/images/2020-square-2.png" alt="" data-id="39" data-full-url="' . get_theme_file_uri() . '/assets/images/2020-square-2.png" data-link="assets/images/2020-square-2/" class="wp-image-39"/></figure></li><li class="blocks-gallery-item"><figure><img src="' . get_theme_file_uri() . '/assets/images/2020-square-1.png" alt="" data-id="38" data-full-url="' . get_theme_file_uri() . '/assets/images/2020-square-1.png" data-link="' . get_theme_file_uri() . '/assets/images/2020-square-1/" class="wp-image-38"/></figure></li></ul></figure>', + '<!-- /wp:gallery -->', + ) + ), + ), + 'about', + 'contact', + 'blog', + ), + + // Default to a static front page and assign the front and posts pages. + 'options' => array( + 'show_on_front' => 'page', + 'page_on_front' => '{{front}}', + 'page_for_posts' => '{{blog}}', + ), + + // Set up nav menus for each of the two areas registered in the theme. + 'nav_menus' => array( + // Assign a menu to the "primary" location. + 'primary' => array( + 'name' => __( 'Primary', 'twentytwenty' ), + 'items' => array( + 'link_home', // Note that the core "home" page is actually a link in case a static front page is not used. + 'page_about', + 'page_blog', + 'page_contact', + ), + ), + // This replicates primary just to demonstrate the expanded menu. + 'expanded' => array( + 'name' => __( 'Primary', 'twentytwenty' ), + 'items' => array( + 'link_home', // Note that the core "home" page is actually a link in case a static front page is not used. + 'page_about', + 'page_blog', + 'page_contact', + ), + ), + // Assign a menu to the "social" location. + 'social' => array( + 'name' => __( 'Social Links Menu', 'twentytwenty' ), + 'items' => array( + 'link_yelp', + 'link_facebook', + 'link_twitter', + 'link_instagram', + 'link_email', + ), + ), + ), + ); + + /** + * Filters Twenty Twenty array of starter content. + * + * @since Twenty Twenty 1.0.0 + * + * @param array $starter_content Array of starter content. + */ + return apply_filters( 'twentytwenty_starter_content', $starter_content ); + +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/inc/svg-icons.php b/srcs/wordpress/wp-content/themes/twentytwenty/inc/svg-icons.php new file mode 100644 index 0000000..75cdd38 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/inc/svg-icons.php @@ -0,0 +1,70 @@ +<?php +/** + * Twenty Twenty SVG Icon helper functions + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +if ( ! function_exists( 'twentytwenty_the_theme_svg' ) ) { + /** + * Output and Get Theme SVG. + * Output and get the SVG markup for an icon in the TwentyTwenty_SVG_Icons class. + * + * @param string $svg_name The name of the icon. + * @param string $group The group the icon belongs to. + * @param string $color Color code. + */ + function twentytwenty_the_theme_svg( $svg_name, $group = 'ui', $color = '' ) { + echo twentytwenty_get_theme_svg( $svg_name, $group, $color ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in twentytwenty_get_theme_svg();. + } +} + +if ( ! function_exists( 'twentytwenty_get_theme_svg' ) ) { + + /** + * Get information about the SVG icon. + * + * @param string $svg_name The name of the icon. + * @param string $group The group the icon belongs to. + * @param string $color Color code. + */ + function twentytwenty_get_theme_svg( $svg_name, $group = 'ui', $color = '' ) { + + // Make sure that only our allowed tags and attributes are included. + $svg = wp_kses( + TwentyTwenty_SVG_Icons::get_svg( $svg_name, $group, $color ), + array( + 'svg' => array( + 'class' => true, + 'xmlns' => true, + 'width' => true, + 'height' => true, + 'viewbox' => true, + 'aria-hidden' => true, + 'role' => true, + 'focusable' => true, + ), + 'path' => array( + 'fill' => true, + 'fill-rule' => true, + 'd' => true, + 'transform' => true, + ), + 'polygon' => array( + 'fill' => true, + 'fill-rule' => true, + 'points' => true, + 'transform' => true, + 'focusable' => true, + ), + ) + ); + + if ( ! $svg ) { + return false; + } + return $svg; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/inc/template-tags.php b/srcs/wordpress/wp-content/themes/twentytwenty/inc/template-tags.php new file mode 100644 index 0000000..5561a02 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/inc/template-tags.php @@ -0,0 +1,790 @@ +<?php +/** + * Custom template tags for this theme. + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +/** + * Table of Contents: + * Logo & Description + * Comments + * Post Meta + * Menus + * Classes + * Archives + * Miscellaneous + */ + +/** + * Logo & Description + */ +/** + * Displays the site logo, either text or image. + * + * @param array $args Arguments for displaying the site logo either as an image or text. + * @param boolean $echo Echo or return the HTML. + * + * @return string $html Compiled HTML based on our arguments. + */ +function twentytwenty_site_logo( $args = array(), $echo = true ) { + $logo = get_custom_logo(); + $site_title = get_bloginfo( 'name' ); + $contents = ''; + $classname = ''; + + $defaults = array( + 'logo' => '%1$s<span class="screen-reader-text">%2$s</span>', + 'logo_class' => 'site-logo', + 'title' => '<a href="%1$s">%2$s</a>', + 'title_class' => 'site-title', + 'home_wrap' => '<h1 class="%1$s">%2$s</h1>', + 'single_wrap' => '<div class="%1$s faux-heading">%2$s</div>', + 'condition' => ( is_front_page() || is_home() ) && ! is_page(), + ); + + $args = wp_parse_args( $args, $defaults ); + + /** + * Filters the arguments for `twentytwenty_site_logo()`. + * + * @param array $args Parsed arguments. + * @param array $defaults Function's default arguments. + */ + $args = apply_filters( 'twentytwenty_site_logo_args', $args, $defaults ); + + if ( has_custom_logo() ) { + $contents = sprintf( $args['logo'], $logo, esc_html( $site_title ) ); + $classname = $args['logo_class']; + } else { + $contents = sprintf( $args['title'], esc_url( get_home_url( null, '/' ) ), esc_html( $site_title ) ); + $classname = $args['title_class']; + } + + $wrap = $args['condition'] ? 'home_wrap' : 'single_wrap'; + + $html = sprintf( $args[ $wrap ], $classname, $contents ); + + /** + * Filters the arguments for `twentytwenty_site_logo()`. + * + * @param string $html Compiled html based on our arguments. + * @param array $args Parsed arguments. + * @param string $classname Class name based on current view, home or single. + * @param string $contents HTML for site title or logo. + */ + $html = apply_filters( 'twentytwenty_site_logo', $html, $args, $classname, $contents ); + + if ( ! $echo ) { + return $html; + } + + echo $html; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped + +} + +/** + * Displays the site description. + * + * @param boolean $echo Echo or return the html. + * + * @return string $html The HTML to display. + */ +function twentytwenty_site_description( $echo = true ) { + $description = get_bloginfo( 'description' ); + + if ( ! $description ) { + return; + } + + $wrapper = '<div class="site-description">%s</div><!-- .site-description -->'; + + $html = sprintf( $wrapper, esc_html( $description ) ); + + /** + * Filters the html for the site description. + * + * @since 1.0.0 + * + * @param string $html The HTML to display. + * @param string $description Site description via `bloginfo()`. + * @param string $wrapper The format used in case you want to reuse it in a `sprintf()`. + */ + $html = apply_filters( 'twentytwenty_site_description', $html, $description, $wrapper ); + + if ( ! $echo ) { + return $html; + } + + echo $html; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped +} + +/** + * Comments + */ +/** + * Check if the specified comment is written by the author of the post commented on. + * + * @param object $comment Comment data. + * + * @return bool + */ +function twentytwenty_is_comment_by_post_author( $comment = null ) { + + if ( is_object( $comment ) && $comment->user_id > 0 ) { + + $user = get_userdata( $comment->user_id ); + $post = get_post( $comment->comment_post_ID ); + + if ( ! empty( $user ) && ! empty( $post ) ) { + + return $comment->user_id === $post->post_author; + + } + } + return false; + +} + +/** + * Filter comment reply link to not JS scroll. + * Filter the comment reply link to add a class indicating it should not use JS slow-scroll, as it + * makes it scroll to the wrong position on the page. + * + * @param string $link Link to the top of the page. + * + * @return string $link Link to the top of the page. + */ +function twentytwenty_filter_comment_reply_link( $link ) { + + $link = str_replace( 'class=\'', 'class=\'do-not-scroll ', $link ); + return $link; + +} + +add_filter( 'comment_reply_link', 'twentytwenty_filter_comment_reply_link' ); + +/** + * Post Meta + */ +/** + * Get and Output Post Meta. + * If it's a single post, output the post meta values specified in the Customizer settings. + * + * @param int $post_id The ID of the post for which the post meta should be output. + * @param string $location Which post meta location to output – single or preview. + */ +function twentytwenty_the_post_meta( $post_id = null, $location = 'single-top' ) { + + echo twentytwenty_get_post_meta( $post_id, $location ); //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped in twentytwenty_get_post_meta(). + +} + +/** + * Filters the edit post link to add an icon and use the post meta structure. + * + * @param string $link Anchor tag for the edit link. + * @param int $post_id Post ID. + * @param string $text Anchor text. + */ +function twentytwenty_edit_post_link( $link, $post_id, $text ) { + if ( is_admin() ) { + return $link; + } + + $edit_url = get_edit_post_link( $post_id ); + + if ( ! $edit_url ) { + return; + } + + $text = sprintf( + wp_kses( + /* translators: %s: Post title. Only visible to screen readers. */ + __( 'Edit <span class="screen-reader-text">%s</span>', 'twentytwenty' ), + array( + 'span' => array( + 'class' => array(), + ), + ) + ), + get_the_title( $post_id ) + ); + + return '<div class="post-meta-wrapper post-meta-edit-link-wrapper"><ul class="post-meta"><li class="post-edit meta-wrapper"><span class="meta-icon">' . twentytwenty_get_theme_svg( 'edit' ) . '</span><span class="meta-text"><a href="' . esc_url( $edit_url ) . '">' . $text . '</a></span></li></ul><!-- .post-meta --></div><!-- .post-meta-wrapper -->'; + +} + +add_filter( 'edit_post_link', 'twentytwenty_edit_post_link', 10, 3 ); + +/** + * Get the post meta. + * + * @param int $post_id The ID of the post. + * @param string $location The location where the meta is shown. + */ +function twentytwenty_get_post_meta( $post_id = null, $location = 'single-top' ) { + + // Require post ID. + if ( ! $post_id ) { + return; + } + + /** + * Filters post types array + * + * This filter can be used to hide post meta information of post, page or custom post type registerd by child themes or plugins + * + * @since 1.0.0 + * + * @param array Array of post types + */ + $disallowed_post_types = apply_filters( 'twentytwenty_disallowed_post_types_for_meta_output', array( 'page' ) ); + // Check whether the post type is allowed to output post meta. + if ( in_array( get_post_type( $post_id ), $disallowed_post_types, true ) ) { + return; + } + + $post_meta_wrapper_classes = ''; + $post_meta_classes = ''; + + // Get the post meta settings for the location specified. + if ( 'single-top' === $location ) { + /** + * Filters post meta info visibility + * + * Use this filter to hide post meta information like Author, Post date, Comments, Is sticky status + * + * @since 1.0.0 + * + * @param array $args { + * @type string 'author' + * @type string 'post-date' + * @type string 'comments' + * @type string 'sticky' + * } + */ + $post_meta = apply_filters( + 'twentytwenty_post_meta_location_single_top', + array( + 'author', + 'post-date', + 'comments', + 'sticky', + ) + ); + + $post_meta_wrapper_classes = ' post-meta-single post-meta-single-top'; + + } elseif ( 'single-bottom' === $location ) { + + /** + * Filters post tags visibility + * + * Use this filter to hide post tags + * + * @since 1.0.0 + * + * @param array $args { + * @type string 'tags' + * } + */ + $post_meta = apply_filters( + 'twentytwenty_post_meta_location_single_bottom', + array( + 'tags', + ) + ); + + $post_meta_wrapper_classes = ' post-meta-single post-meta-single-bottom'; + + } + + // If the post meta setting has the value 'empty', it's explicitly empty and the default post meta shouldn't be output. + if ( $post_meta && ! in_array( 'empty', $post_meta, true ) ) { + + // Make sure we don't output an empty container. + $has_meta = false; + + global $post; + $the_post = get_post( $post_id ); + setup_postdata( $the_post ); + + ob_start(); + + ?> + + <div class="post-meta-wrapper<?php echo esc_attr( $post_meta_wrapper_classes ); ?>"> + + <ul class="post-meta<?php echo esc_attr( $post_meta_classes ); ?>"> + + <?php + + /** + * Fires before post meta html display. + * + * Allow output of additional post meta info to be added by child themes and plugins. + * + * @since 1.0.0 + * @since Twenty Twenty 1.1 Added the `$post_meta` and `$location` parameters. + * + * @param int $post_id Post ID. + * @param array $post_meta An array of post meta information. + * @param string $location The location where the meta is shown. + * Accepts 'single-top' or 'single-bottom'. + */ + do_action( 'twentytwenty_start_of_post_meta_list', $post_id, $post_meta, $location ); + + // Author. + if ( in_array( 'author', $post_meta, true ) ) { + + $has_meta = true; + ?> + <li class="post-author meta-wrapper"> + <span class="meta-icon"> + <span class="screen-reader-text"><?php _e( 'Post author', 'twentytwenty' ); ?></span> + <?php twentytwenty_the_theme_svg( 'user' ); ?> + </span> + <span class="meta-text"> + <?php + printf( + /* translators: %s: Author name */ + __( 'By %s', 'twentytwenty' ), + '<a href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author_meta( 'display_name' ) ) . '</a>' + ); + ?> + </span> + </li> + <?php + + } + + // Post date. + if ( in_array( 'post-date', $post_meta, true ) ) { + + $has_meta = true; + ?> + <li class="post-date meta-wrapper"> + <span class="meta-icon"> + <span class="screen-reader-text"><?php _e( 'Post date', 'twentytwenty' ); ?></span> + <?php twentytwenty_the_theme_svg( 'calendar' ); ?> + </span> + <span class="meta-text"> + <a href="<?php the_permalink(); ?>"><?php the_time( get_option( 'date_format' ) ); ?></a> + </span> + </li> + <?php + + } + + // Categories. + if ( in_array( 'categories', $post_meta, true ) && has_category() ) { + + $has_meta = true; + ?> + <li class="post-categories meta-wrapper"> + <span class="meta-icon"> + <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); ?></span> + <?php twentytwenty_the_theme_svg( 'folder' ); ?> + </span> + <span class="meta-text"> + <?php _ex( 'In', 'A string that is output before one or more categories', 'twentytwenty' ); ?> <?php the_category( ', ' ); ?> + </span> + </li> + <?php + + } + + // Tags. + if ( in_array( 'tags', $post_meta, true ) && has_tag() ) { + + $has_meta = true; + ?> + <li class="post-tags meta-wrapper"> + <span class="meta-icon"> + <span class="screen-reader-text"><?php _e( 'Tags', 'twentytwenty' ); ?></span> + <?php twentytwenty_the_theme_svg( 'tag' ); ?> + </span> + <span class="meta-text"> + <?php the_tags( '', ', ', '' ); ?> + </span> + </li> + <?php + + } + + // Comments link. + if ( in_array( 'comments', $post_meta, true ) && ! post_password_required() && ( comments_open() || get_comments_number() ) ) { + + $has_meta = true; + ?> + <li class="post-comment-link meta-wrapper"> + <span class="meta-icon"> + <?php twentytwenty_the_theme_svg( 'comment' ); ?> + </span> + <span class="meta-text"> + <?php comments_popup_link(); ?> + </span> + </li> + <?php + + } + + // Sticky. + if ( in_array( 'sticky', $post_meta, true ) && is_sticky() ) { + + $has_meta = true; + ?> + <li class="post-sticky meta-wrapper"> + <span class="meta-icon"> + <?php twentytwenty_the_theme_svg( 'bookmark' ); ?> + </span> + <span class="meta-text"> + <?php _e( 'Sticky post', 'twentytwenty' ); ?> + </span> + </li> + <?php + + } + + /** + * Fires after post meta html display. + * + * Allow output of additional post meta info to be added by child themes and plugins. + * + * @since 1.0.0 + * @since Twenty Twenty 1.1 Added the `$post_meta` and `$location` parameters. + * + * @param int $post_id Post ID. + * @param array $post_meta An array of post meta information. + * @param string $location The location where the meta is shown. + * Accepts 'single-top' or 'single-bottom'. + */ + do_action( 'twentytwenty_end_of_post_meta_list', $post_id, $post_meta, $location ); + + ?> + + </ul><!-- .post-meta --> + + </div><!-- .post-meta-wrapper --> + + <?php + + wp_reset_postdata(); + + $meta_output = ob_get_clean(); + + // If there is meta to output, return it. + if ( $has_meta && $meta_output ) { + + return $meta_output; + + } + } + +} + +/** + * Menus + */ +/** + * Filter Classes of wp_list_pages items to match menu items. + * Filter the class applied to wp_list_pages() items with children to match the menu class, to simplify. + * styling of sub levels in the fallback. Only applied if the match_menu_classes argument is set. + * + * @param array $css_class CSS Class names. + * @param string $item Comment. + * @param int $depth Depth of the current comment. + * @param array $args An array of arguments. + * @param string $current_page Whether or not the item is the current item. + * + * @return array $css_class CSS Class names. + */ +function twentytwenty_filter_wp_list_pages_item_classes( $css_class, $item, $depth, $args, $current_page ) { + + // Only apply to wp_list_pages() calls with match_menu_classes set to true. + $match_menu_classes = isset( $args['match_menu_classes'] ); + + if ( ! $match_menu_classes ) { + return $css_class; + } + + // Add current menu item class. + if ( in_array( 'current_page_item', $css_class, true ) ) { + $css_class[] = 'current-menu-item'; + } + + // Add menu item has children class. + if ( in_array( 'page_item_has_children', $css_class, true ) ) { + $css_class[] = 'menu-item-has-children'; + } + + return $css_class; + +} + +add_filter( 'page_css_class', 'twentytwenty_filter_wp_list_pages_item_classes', 10, 5 ); + +/** + * Add a Sub Nav Toggle to the Expanded Menu and Mobile Menu. + * + * @param stdClass $args An array of arguments. + * @param string $item Menu item. + * @param int $depth Depth of the current menu item. + * + * @return stdClass $args An object of wp_nav_menu() arguments. + */ +function twentytwenty_add_sub_toggles_to_main_menu( $args, $item, $depth ) { + + // Add sub menu toggles to the Expanded Menu with toggles. + if ( isset( $args->show_toggles ) && $args->show_toggles ) { + + // Wrap the menu item link contents in a div, used for positioning. + $args->before = '<div class="ancestor-wrapper">'; + $args->after = ''; + + // Add a toggle to items with children. + if ( in_array( 'menu-item-has-children', $item->classes, true ) ) { + + $toggle_target_string = '.menu-modal .menu-item-' . $item->ID . ' > .sub-menu'; + $toggle_duration = twentytwenty_toggle_duration(); + + // Add the sub menu toggle. + $args->after .= '<button class="toggle sub-menu-toggle fill-children-current-color" data-toggle-target="' . $toggle_target_string . '" data-toggle-type="slidetoggle" data-toggle-duration="' . absint( $toggle_duration ) . '" aria-expanded="false"><span class="screen-reader-text">' . __( 'Show sub menu', 'twentytwenty' ) . '</span>' . twentytwenty_get_theme_svg( 'chevron-down' ) . '</button>'; + + } + + // Close the wrapper. + $args->after .= '</div><!-- .ancestor-wrapper -->'; + + // Add sub menu icons to the primary menu without toggles. + } elseif ( 'primary' === $args->theme_location ) { + if ( in_array( 'menu-item-has-children', $item->classes, true ) ) { + $args->after = '<span class="icon"></span>'; + } else { + $args->after = ''; + } + } + + return $args; + +} + +add_filter( 'nav_menu_item_args', 'twentytwenty_add_sub_toggles_to_main_menu', 10, 3 ); + +/** + * Display SVG icons in social links menu. + * + * @param string $item_output The menu item output. + * @param WP_Post $item Menu item object. + * @param int $depth Depth of the menu. + * @param array $args wp_nav_menu() arguments. + * @return string $item_output The menu item output with social icon. + */ +function twentytwenty_nav_menu_social_icons( $item_output, $item, $depth, $args ) { + // Change SVG icon inside social links menu if there is supported URL. + if ( 'social' === $args->theme_location ) { + $svg = TwentyTwenty_SVG_Icons::get_social_link_svg( $item->url ); + if ( empty( $svg ) ) { + $svg = twentytwenty_get_theme_svg( 'link' ); + } + $item_output = str_replace( $args->link_after, '</span>' . $svg, $item_output ); + } + + return $item_output; +} + +add_filter( 'walker_nav_menu_start_el', 'twentytwenty_nav_menu_social_icons', 10, 4 ); + +/** + * Classes + */ +/** + * Add No-JS Class. + * If we're missing JavaScript support, the HTML element will have a no-js class. + */ +function twentytwenty_no_js_class() { + + ?> + <script>document.documentElement.className = document.documentElement.className.replace( 'no-js', 'js' );</script> + <?php + +} + +add_action( 'wp_head', 'twentytwenty_no_js_class' ); + +/** + * Add conditional body classes. + * + * @param array $classes Classes added to the body tag. + * + * @return array $classes Classes added to the body tag. + */ +function twentytwenty_body_classes( $classes ) { + + global $post; + $post_type = isset( $post ) ? $post->post_type : false; + + // Check whether we're singular. + if ( is_singular() ) { + $classes[] = 'singular'; + } + + // Check whether the current page should have an overlay header. + if ( is_page_template( array( 'templates/template-cover.php' ) ) ) { + $classes[] = 'overlay-header'; + } + + // Check whether the current page has full-width content. + if ( is_page_template( array( 'templates/template-full-width.php' ) ) ) { + $classes[] = 'has-full-width-content'; + } + + // Check for enabled search. + if ( true === get_theme_mod( 'enable_header_search', true ) ) { + $classes[] = 'enable-search-modal'; + } + + // Check for post thumbnail. + if ( is_singular() && has_post_thumbnail() ) { + $classes[] = 'has-post-thumbnail'; + } elseif ( is_singular() ) { + $classes[] = 'missing-post-thumbnail'; + } + + // Check whether we're in the customizer preview. + if ( is_customize_preview() ) { + $classes[] = 'customizer-preview'; + } + + // Check if posts have single pagination. + if ( is_single() && ( get_next_post() || get_previous_post() ) ) { + $classes[] = 'has-single-pagination'; + } else { + $classes[] = 'has-no-pagination'; + } + + // Check if we're showing comments. + if ( $post && ( ( 'post' === $post_type || comments_open() || get_comments_number() ) && ! post_password_required() ) ) { + $classes[] = 'showing-comments'; + } else { + $classes[] = 'not-showing-comments'; + } + + // Check if avatars are visible. + $classes[] = get_option( 'show_avatars' ) ? 'show-avatars' : 'hide-avatars'; + + // Slim page template class names (class = name - file suffix). + if ( is_page_template() ) { + $classes[] = basename( get_page_template_slug(), '.php' ); + } + + // Check for the elements output in the top part of the footer. + $has_footer_menu = has_nav_menu( 'footer' ); + $has_social_menu = has_nav_menu( 'social' ); + $has_sidebar_1 = is_active_sidebar( 'sidebar-1' ); + $has_sidebar_2 = is_active_sidebar( 'sidebar-2' ); + + // Add a class indicating whether those elements are output. + if ( $has_footer_menu || $has_social_menu || $has_sidebar_1 || $has_sidebar_2 ) { + $classes[] = 'footer-top-visible'; + } else { + $classes[] = 'footer-top-hidden'; + } + + // Get header/footer background color. + $header_footer_background = get_theme_mod( 'header_footer_background_color', '#ffffff' ); + $header_footer_background = strtolower( '#' . ltrim( $header_footer_background, '#' ) ); + + // Get content background color. + $background_color = get_theme_mod( 'background_color', 'f5efe0' ); + $background_color = strtolower( '#' . ltrim( $background_color, '#' ) ); + + // Add extra class if main background and header/footer background are the same color. + if ( $background_color === $header_footer_background ) { + $classes[] = 'reduced-spacing'; + } + + return $classes; + +} + +add_filter( 'body_class', 'twentytwenty_body_classes' ); + +/** + * Archives + */ +/** + * Filters the archive title and styles the word before the first colon. + * + * @param string $title Current archive title. + * + * @return string $title Current archive title. + */ +function twentytwenty_get_the_archive_title( $title ) { + + $regex = apply_filters( + 'twentytwenty_get_the_archive_title_regex', + array( + 'pattern' => '/(\A[^\:]+\:)/', + 'replacement' => '<span class="color-accent">$1</span>', + ) + ); + + if ( empty( $regex ) ) { + + return $title; + + } + + return preg_replace( $regex['pattern'], $regex['replacement'], $title ); + +} + +add_filter( 'get_the_archive_title', 'twentytwenty_get_the_archive_title' ); + +/** + * Miscellaneous + */ +/** + * Toggle animation duration in milliseconds. + * + * @return integer Duration in milliseconds + */ +function twentytwenty_toggle_duration() { + /** + * Filters the animation duration/speed used usually for submenu toggles. + * + * @since 1.0 + * + * @param integer $duration Duration in milliseconds. + */ + $duration = apply_filters( 'twentytwenty_toggle_duration', 250 ); + + return $duration; +} + +/** + * Get unique ID. + * + * This is a PHP implementation of Underscore's uniqueId method. A static variable + * contains an integer that is incremented with each call. This number is returned + * with the optional prefix. As such the returned value is not universally unique, + * but it is unique across the life of the PHP process. + * + * @see wp_unique_id() Themes requiring WordPress 5.0.3 and greater should use this instead. + * + * @staticvar int $id_counter + * + * @param string $prefix Prefix for the returned ID. + * @return string Unique ID. + */ +function twentytwenty_unique_id( $prefix = '' ) { + static $id_counter = 0; + if ( function_exists( 'wp_unique_id' ) ) { + return wp_unique_id( $prefix ); + } + return $prefix . (string) ++$id_counter; +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/index.php b/srcs/wordpress/wp-content/themes/twentytwenty/index.php new file mode 100644 index 0000000..434eae2 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/index.php @@ -0,0 +1,117 @@ +<?php +/** + * The main template file + * + * This is the most generic template file in a WordPress theme + * and one of the two required files for a theme (the other being style.css). + * It is used to display a page when nothing more specific matches a query. + * E.g., it puts together the home page when no home.php file exists. + * + * @link https://developer.wordpress.org/themes/basics/template-hierarchy/ + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +get_header(); +?> + +<main id="site-content" role="main"> + + <?php + + $archive_title = ''; + $archive_subtitle = ''; + + if ( is_search() ) { + global $wp_query; + + $archive_title = sprintf( + '%1$s %2$s', + '<span class="color-accent">' . __( 'Search:', 'twentytwenty' ) . '</span>', + '“' . get_search_query() . '”' + ); + + if ( $wp_query->found_posts ) { + $archive_subtitle = sprintf( + /* translators: %s: Number of search results */ + _n( + 'We found %s result for your search.', + 'We found %s results for your search.', + $wp_query->found_posts, + 'twentytwenty' + ), + number_format_i18n( $wp_query->found_posts ) + ); + } else { + $archive_subtitle = __( 'We could not find any results for your search. You can give it another try through the search form below.', 'twentytwenty' ); + } + } elseif ( ! is_home() ) { + $archive_title = get_the_archive_title(); + $archive_subtitle = get_the_archive_description(); + } + + if ( $archive_title || $archive_subtitle ) { + ?> + + <header class="archive-header has-text-align-center header-footer-group"> + + <div class="archive-header-inner section-inner medium"> + + <?php if ( $archive_title ) { ?> + <h1 class="archive-title"><?php echo wp_kses_post( $archive_title ); ?></h1> + <?php } ?> + + <?php if ( $archive_subtitle ) { ?> + <div class="archive-subtitle section-inner thin max-percentage intro-text"><?php echo wp_kses_post( wpautop( $archive_subtitle ) ); ?></div> + <?php } ?> + + </div><!-- .archive-header-inner --> + + </header><!-- .archive-header --> + + <?php + } + + if ( have_posts() ) { + + $i = 0; + + while ( have_posts() ) { + $i++; + if ( $i > 1 ) { + echo '<hr class="post-separator styled-separator is-style-wide section-inner" aria-hidden="true" />'; + } + the_post(); + + get_template_part( 'template-parts/content', get_post_type() ); + + } + } elseif ( is_search() ) { + ?> + + <div class="no-search-results-form section-inner thin"> + + <?php + get_search_form( + array( + 'label' => __( 'search again', 'twentytwenty' ), + ) + ); + ?> + + </div><!-- .no-search-results --> + + <?php + } + ?> + + <?php get_template_part( 'template-parts/pagination' ); ?> + +</main><!-- #site-content --> + +<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?> + +<?php +get_footer(); diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/package-lock.json b/srcs/wordpress/wp-content/themes/twentytwenty/package-lock.json new file mode 100644 index 0000000..e2d5a61 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/package-lock.json @@ -0,0 +1,13041 @@ +{ + "name": "twentytwenty", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "@babel/code-frame": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", + "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/core": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.6.0.tgz", + "integrity": "sha512-FuRhDRtsd6IptKpHXAa+4WPZYY2ZzgowkbLBecEDDSje1X/apG7jQM33or3NdOmjXBKWGOg4JmSiRfUfuTtHXw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.6.0", + "@babel/helpers": "^7.6.0", + "@babel/parser": "^7.6.0", + "@babel/template": "^7.6.0", + "@babel/traverse": "^7.6.0", + "@babel/types": "^7.6.0", + "convert-source-map": "^1.1.0", + "debug": "^4.1.0", + "json5": "^2.1.0", + "lodash": "^4.17.13", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.6.0.tgz", + "integrity": "sha512-Ms8Mo7YBdMMn1BYuNtKuP/z0TgEIhbcyB8HVR6PPNYp4P61lMsABiS4A3VG1qznjXVCf3r+fVHhm4efTYVsySA==", + "dev": true, + "requires": { + "@babel/types": "^7.6.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-annotate-as-pure": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", + "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.1.0.tgz", + "integrity": "sha512-qNSR4jrmJ8M1VMM9tibvyRAHXQs2PmaksQF7c1CGJNipfe3D8p+wgNwgso/P2A2r2mdgBWAXljNWR0QRZAMW8w==", + "dev": true, + "requires": { + "@babel/helper-explode-assignable-expression": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-builder-react-jsx": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.3.0.tgz", + "integrity": "sha512-MjA9KgwCuPEkQd9ncSXvSyJ5y+j2sICHyrI0M3L+6fnS4wMSNDc1ARXsbTfbb2cXHn17VisSnU/sHFTCxVxSMw==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0", + "esutils": "^2.0.0" + } + }, + "@babel/helper-call-delegate": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.4.4.tgz", + "integrity": "sha512-l79boDFJ8S1c5hvQvG+rc+wHw6IuH7YldmRKsYtpbawsxURu/paVy57FZMomGK22/JckepaikOkY0MoAmdyOlQ==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.4.4", + "@babel/traverse": "^7.4.4", + "@babel/types": "^7.4.4" + } + }, + "@babel/helper-define-map": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.5.5.tgz", + "integrity": "sha512-fTfxx7i0B5NJqvUOBBGREnrqbTxRh7zinBANpZXAVDlsZxYdclDp467G1sQ8VZYMnAURY3RpBUAgOYT9GfzHBg==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/types": "^7.5.5", + "lodash": "^4.17.13" + } + }, + "@babel/helper-explode-assignable-expression": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.1.0.tgz", + "integrity": "sha512-NRQpfHrJ1msCHtKjbzs9YcMmJZOg6mQMmGRB+hbamEdG5PNpaSm95275VD92DvJKuyl0s2sFiDmMZ+EnnvufqA==", + "dev": true, + "requires": { + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-hoist-variables": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.4.4.tgz", + "integrity": "sha512-VYk2/H/BnYbZDDg39hr3t2kKyifAm1W6zHRfhx8jGjIHpQEBv9dry7oQ2f3+J703TLu69nYdxsovl0XYfcnK4w==", + "dev": true, + "requires": { + "@babel/types": "^7.4.4" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.5.5.tgz", + "integrity": "sha512-5qZ3D1uMclSNqYcXqiHoA0meVdv+xUEex9em2fqMnrk/scphGlGgg66zjMrPJESPwrFJ6sbfFQYUSa0Mz7FabA==", + "dev": true, + "requires": { + "@babel/types": "^7.5.5" + } + }, + "@babel/helper-module-imports": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", + "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-module-transforms": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.5.5.tgz", + "integrity": "sha512-jBeCvETKuJqeiaCdyaheF40aXnnU1+wkSiUs/IQg3tB85up1LyL8x77ClY8qJpuRJUcXQo+ZtdNESmZl4j56Pw==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/template": "^7.4.4", + "@babel/types": "^7.5.5", + "lodash": "^4.17.13" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", + "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-plugin-utils": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", + "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", + "dev": true + }, + "@babel/helper-regex": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", + "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", + "dev": true, + "requires": { + "lodash": "^4.17.13" + } + }, + "@babel/helper-remap-async-to-generator": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.1.0.tgz", + "integrity": "sha512-3fOK0L+Fdlg8S5al8u/hWE6vhufGSn0bN09xm2LXMy//REAF8kDCrYoOBKYmA8m5Nom+sV9LyLCwrFynA8/slg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-wrap-function": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-replace-supers": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.5.5.tgz", + "integrity": "sha512-XvRFWrNnlsow2u7jXDuH4jDDctkxbS7gXssrP4q2nUD606ukXHRvydj346wmNg+zAgpFx4MWf4+usfC93bElJg==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.5.5", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/traverse": "^7.5.5", + "@babel/types": "^7.5.5" + } + }, + "@babel/helper-simple-access": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.1.0.tgz", + "integrity": "sha512-Vk+78hNjRbsiu49zAPALxTb+JUQCz1aolpd8osOF16BGnLtseD21nbHgLPGUwrXEurZgiCOUmvs3ExTu4F5x6w==", + "dev": true, + "requires": { + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.4.4.tgz", + "integrity": "sha512-Ro/XkzLf3JFITkW6b+hNxzZ1n5OQ80NvIUdmHspih1XAhtN3vPTuUFT4eQnela+2MaZ5ulH+iyP513KJrxbN7Q==", + "dev": true, + "requires": { + "@babel/types": "^7.4.4" + } + }, + "@babel/helper-wrap-function": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.2.0.tgz", + "integrity": "sha512-o9fP1BZLLSrYlxYEYyl2aS+Flun5gtjTIG8iln+XuEzQTs0PLagAGSXUcqruJwD5fM48jzIEggCKpIfWTcR7pQ==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/template": "^7.1.0", + "@babel/traverse": "^7.1.0", + "@babel/types": "^7.2.0" + } + }, + "@babel/helpers": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.6.0.tgz", + "integrity": "sha512-W9kao7OBleOjfXtFGgArGRX6eCP0UEcA2ZWEWNkJdRZnHhW4eEbeswbG3EwaRsnQUAEGWYgMq1HsIXuNNNy2eQ==", + "dev": true, + "requires": { + "@babel/template": "^7.6.0", + "@babel/traverse": "^7.6.0", + "@babel/types": "^7.6.0" + } + }, + "@babel/highlight": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", + "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.6.0.tgz", + "integrity": "sha512-+o2q111WEx4srBs7L9eJmcwi655eD8sXniLqMB93TBK9GrNzGrxDWSjiqz2hLU0Ha8MTXFIP0yd9fNdP+m43ZQ==", + "dev": true + }, + "@babel/plugin-proposal-async-generator-functions": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.2.0.tgz", + "integrity": "sha512-+Dfo/SCQqrwx48ptLVGLdE39YtWRuKc/Y9I5Fy0P1DDBB9lsAHpjcEJQt+4IifuSOSTLBKJObJqMvaO1pIE8LQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.1.0", + "@babel/plugin-syntax-async-generators": "^7.2.0" + } + }, + "@babel/plugin-proposal-dynamic-import": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.5.0.tgz", + "integrity": "sha512-x/iMjggsKTFHYC6g11PL7Qy58IK8H5zqfm9e6hu4z1iH2IRyAp9u9dL80zA6R76yFovETFLKz2VJIC2iIPBuFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-dynamic-import": "^7.2.0" + } + }, + "@babel/plugin-proposal-json-strings": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", + "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-json-strings": "^7.2.0" + } + }, + "@babel/plugin-proposal-object-rest-spread": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.5.5.tgz", + "integrity": "sha512-F2DxJJSQ7f64FyTVl5cw/9MWn6naXGdk3Q3UhDbFEEHv+EilCPoeRD3Zh/Utx1CJz4uyKlQ4uH+bJPbEhMV7Zw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0" + } + }, + "@babel/plugin-proposal-optional-catch-binding": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" + } + }, + "@babel/plugin-proposal-unicode-property-regex": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.4.4.tgz", + "integrity": "sha512-j1NwnOqMG9mFUOH58JTFsA/+ZYzQLUZ/drqWUqxCYLGeu2JFZL8YrNC9hBxKmWtAuOCHPcRpgv7fhap09Fb4kA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" + } + }, + "@babel/plugin-syntax-async-generators": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", + "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-dynamic-import": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", + "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-json-strings": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", + "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-jsx": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz", + "integrity": "sha512-VyN4QANJkRW6lDBmENzRszvZf3/4AXaj9YR7GwrWeeN9tEBPuXbmDYVU9bYBN0D70zCWVwUy0HWq2553VCb6Hw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-object-rest-spread": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", + "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-syntax-optional-catch-binding": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", + "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-arrow-functions": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", + "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-async-to-generator": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.5.0.tgz", + "integrity": "sha512-mqvkzwIGkq0bEF1zLRRiTdjfomZJDV33AH3oQzHVGkI2VzEmXLpKKOBvEVaFZBJdN0XTyH38s9j/Kiqr68dggg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-remap-async-to-generator": "^7.1.0" + } + }, + "@babel/plugin-transform-block-scoped-functions": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", + "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-block-scoping": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.0.tgz", + "integrity": "sha512-tIt4E23+kw6TgL/edACZwP1OUKrjOTyMrFMLoT5IOFrfMRabCgekjqFd5o6PaAMildBu46oFkekIdMuGkkPEpA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "lodash": "^4.17.13" + } + }, + "@babel/plugin-transform-classes": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.5.5.tgz", + "integrity": "sha512-U2htCNK/6e9K7jGyJ++1p5XRU+LJjrwtoiVn9SzRlDT2KubcZ11OOwy3s24TjHxPgxNwonCYP7U2K51uVYCMDg==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-define-map": "^7.5.5", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-optimise-call-expression": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.5.5", + "@babel/helper-split-export-declaration": "^7.4.4", + "globals": "^11.1.0" + } + }, + "@babel/plugin-transform-computed-properties": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", + "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-destructuring": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz", + "integrity": "sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-dotall-regex": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.4.4.tgz", + "integrity": "sha512-P05YEhRc2h53lZDjRPk/OektxCVevFzZs2Gfjd545Wde3k+yFDbXORgl2e0xpbq8mLcKJ7Idss4fAg0zORN/zg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" + } + }, + "@babel/plugin-transform-duplicate-keys": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz", + "integrity": "sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-exponentiation-operator": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", + "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", + "dev": true, + "requires": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-for-of": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", + "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-function-name": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.4.4.tgz", + "integrity": "sha512-iU9pv7U+2jC9ANQkKeNF6DrPy4GBa4NWQtl6dHB4Pb3izX2JOEvDTFarlNsBj/63ZEzNNIAMs3Qw4fNCcSOXJA==", + "dev": true, + "requires": { + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", + "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-member-expression-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", + "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-modules-amd": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz", + "integrity": "sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0", + "babel-plugin-dynamic-import-node": "^2.3.0" + } + }, + "@babel/plugin-transform-modules-commonjs": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.6.0.tgz", + "integrity": "sha512-Ma93Ix95PNSEngqomy5LSBMAQvYKVe3dy+JlVJSHEXZR5ASL9lQBedMiCyVtmTLraIDVRE3ZjTZvmXXD2Ozw3g==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.4.4", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-simple-access": "^7.1.0", + "babel-plugin-dynamic-import-node": "^2.3.0" + } + }, + "@babel/plugin-transform-modules-systemjs": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.5.0.tgz", + "integrity": "sha512-Q2m56tyoQWmuNGxEtUyeEkm6qJYFqs4c+XyXH5RAuYxObRNz9Zgj/1g2GMnjYp2EUyEy7YTrxliGCXzecl/vJg==", + "dev": true, + "requires": { + "@babel/helper-hoist-variables": "^7.4.4", + "@babel/helper-plugin-utils": "^7.0.0", + "babel-plugin-dynamic-import-node": "^2.3.0" + } + }, + "@babel/plugin-transform-modules-umd": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.2.0.tgz", + "integrity": "sha512-BV3bw6MyUH1iIsGhXlOK6sXhmSarZjtJ/vMiD9dNmpY8QXFFQTj+6v92pcfy1iqa8DeAfJFwoxcrS/TUZda6sw==", + "dev": true, + "requires": { + "@babel/helper-module-transforms": "^7.1.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.6.0.tgz", + "integrity": "sha512-jem7uytlmrRl3iCAuQyw8BpB4c4LWvSpvIeXKpMb+7j84lkx4m4mYr5ErAcmN5KM7B6BqrAvRGjBIbbzqCczew==", + "dev": true, + "requires": { + "regexp-tree": "^0.1.13" + } + }, + "@babel/plugin-transform-new-target": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", + "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-object-super": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz", + "integrity": "sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-replace-supers": "^7.5.5" + } + }, + "@babel/plugin-transform-parameters": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", + "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", + "dev": true, + "requires": { + "@babel/helper-call-delegate": "^7.4.4", + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-property-literals": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", + "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-react-jsx": { + "version": "7.3.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.3.0.tgz", + "integrity": "sha512-a/+aRb7R06WcKvQLOu4/TpjKOdvVEKRLWFpKcNuHhiREPgGRB4TQJxq07+EZLS8LFVYpfq1a5lDUnuMdcCpBKg==", + "dev": true, + "requires": { + "@babel/helper-builder-react-jsx": "^7.3.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-syntax-jsx": "^7.2.0" + } + }, + "@babel/plugin-transform-regenerator": { + "version": "7.4.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.4.5.tgz", + "integrity": "sha512-gBKRh5qAaCWntnd09S8QC7r3auLCqq5DI6O0DlfoyDjslSBVqBibrMdsqO+Uhmx3+BlOmE/Kw1HFxmGbv0N9dA==", + "dev": true, + "requires": { + "regenerator-transform": "^0.14.0" + } + }, + "@babel/plugin-transform-reserved-words": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", + "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.6.0.tgz", + "integrity": "sha512-Da8tMf7uClzwUm/pnJ1S93m/aRXmoYNDD7TkHua8xBDdaAs54uZpTWvEt6NGwmoVMb9mZbntfTqmG2oSzN/7Vg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "resolve": "^1.8.1", + "semver": "^5.5.1" + } + }, + "@babel/plugin-transform-shorthand-properties": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", + "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-spread": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.2.2.tgz", + "integrity": "sha512-KWfky/58vubwtS0hLqEnrWJjsMGaOeSBn90Ezn5Jeg9Z8KKHmELbP1yGylMlm5N6TPKeY9A2+UaSYLdxahg01w==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-sticky-regex": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", + "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.0.0" + } + }, + "@babel/plugin-transform-template-literals": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", + "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", + "dev": true, + "requires": { + "@babel/helper-annotate-as-pure": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-typeof-symbol": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", + "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0" + } + }, + "@babel/plugin-transform-unicode-regex": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.4.4.tgz", + "integrity": "sha512-il+/XdNw01i93+M9J9u4T7/e/Ue/vWfNZE4IRUQjplu2Mqb/AFTDimkw2tdEdSH50wuQXZAbXSql0UphQke+vA==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/helper-regex": "^7.4.4", + "regexpu-core": "^4.5.4" + } + }, + "@babel/preset-env": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.6.0.tgz", + "integrity": "sha512-1efzxFv/TcPsNXlRhMzRnkBFMeIqBBgzwmZwlFDw5Ubj0AGLeufxugirwZmkkX/ayi3owsSqoQ4fw8LkfK9SYg==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.0.0", + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-async-generator-functions": "^7.2.0", + "@babel/plugin-proposal-dynamic-import": "^7.5.0", + "@babel/plugin-proposal-json-strings": "^7.2.0", + "@babel/plugin-proposal-object-rest-spread": "^7.5.5", + "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-syntax-async-generators": "^7.2.0", + "@babel/plugin-syntax-dynamic-import": "^7.2.0", + "@babel/plugin-syntax-json-strings": "^7.2.0", + "@babel/plugin-syntax-object-rest-spread": "^7.2.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", + "@babel/plugin-transform-arrow-functions": "^7.2.0", + "@babel/plugin-transform-async-to-generator": "^7.5.0", + "@babel/plugin-transform-block-scoped-functions": "^7.2.0", + "@babel/plugin-transform-block-scoping": "^7.6.0", + "@babel/plugin-transform-classes": "^7.5.5", + "@babel/plugin-transform-computed-properties": "^7.2.0", + "@babel/plugin-transform-destructuring": "^7.6.0", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/plugin-transform-duplicate-keys": "^7.5.0", + "@babel/plugin-transform-exponentiation-operator": "^7.2.0", + "@babel/plugin-transform-for-of": "^7.4.4", + "@babel/plugin-transform-function-name": "^7.4.4", + "@babel/plugin-transform-literals": "^7.2.0", + "@babel/plugin-transform-member-expression-literals": "^7.2.0", + "@babel/plugin-transform-modules-amd": "^7.5.0", + "@babel/plugin-transform-modules-commonjs": "^7.6.0", + "@babel/plugin-transform-modules-systemjs": "^7.5.0", + "@babel/plugin-transform-modules-umd": "^7.2.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.6.0", + "@babel/plugin-transform-new-target": "^7.4.4", + "@babel/plugin-transform-object-super": "^7.5.5", + "@babel/plugin-transform-parameters": "^7.4.4", + "@babel/plugin-transform-property-literals": "^7.2.0", + "@babel/plugin-transform-regenerator": "^7.4.5", + "@babel/plugin-transform-reserved-words": "^7.2.0", + "@babel/plugin-transform-shorthand-properties": "^7.2.0", + "@babel/plugin-transform-spread": "^7.2.0", + "@babel/plugin-transform-sticky-regex": "^7.2.0", + "@babel/plugin-transform-template-literals": "^7.4.4", + "@babel/plugin-transform-typeof-symbol": "^7.2.0", + "@babel/plugin-transform-unicode-regex": "^7.4.4", + "@babel/types": "^7.6.0", + "browserslist": "^4.6.0", + "core-js-compat": "^3.1.1", + "invariant": "^2.2.2", + "js-levenshtein": "^1.1.3", + "semver": "^5.5.0" + } + }, + "@babel/runtime": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.6.0.tgz", + "integrity": "sha512-89eSBLJsxNxOERC0Op4vd+0Bqm6wRMqMbFtV3i0/fbaWw/mJ8Q3eBvgX0G4SyrOOLCtbu98HspF8o09MRT+KzQ==", + "dev": true, + "requires": { + "regenerator-runtime": "^0.13.2" + } + }, + "@babel/template": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.6.0.tgz", + "integrity": "sha512-5AEH2EXD8euCk446b7edmgFdub/qfH1SN6Nii3+fyXP807QRx9Q73A2N5hNwRRslC2H9sNzaFhsPubkS4L8oNQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.0" + } + }, + "@babel/traverse": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.6.0.tgz", + "integrity": "sha512-93t52SaOBgml/xY74lsmt7xOR4ufYvhb5c5qiM6lu4J/dWGMAfAh6eKw4PjLes6DI6nQgearoxnFJk60YchpvQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.5.5", + "@babel/generator": "^7.6.0", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.4.4", + "@babel/parser": "^7.6.0", + "@babel/types": "^7.6.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.6.1", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.6.1.tgz", + "integrity": "sha512-X7gdiuaCmA0uRjCmRtYJNAVCc/q+5xSgsfKJHqMN4iNLILX39677fJE1O40arPMh0TTtS9ItH67yre6c7k6t0g==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "@cnakazawa/watch": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.3.tgz", + "integrity": "sha512-r5160ogAvGyHsal38Kux7YYtodEKOj89RGb28ht1jh3SJb08VwRwAKKJL0bGb04Zd/3r9FL3BFIc3bBidYffCA==", + "dev": true, + "requires": { + "exec-sh": "^0.3.2", + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "@hapi/address": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.1.tgz", + "integrity": "sha512-DYuHzu978pP1XW1GD3HGvLnAFjbQTIgc2+V153FGkbS2pgo9haigCdwBnUDrbhaOkgiJlbZvoEqDrcxSLHpiWA==", + "dev": true + }, + "@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==", + "dev": true + }, + "@hapi/hoek": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.2.4.tgz", + "integrity": "sha512-Ze5SDNt325yZvNO7s5C4fXDscjJ6dcqLFXJQ/M7dZRQCewuDj2iDUuBi6jLQt+APbW9RjjVEvLr35FXuOEqjow==", + "dev": true + }, + "@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", + "dev": true, + "requires": { + "@hapi/address": "2.x.x", + "@hapi/bourne": "1.x.x", + "@hapi/hoek": "8.x.x", + "@hapi/topo": "3.x.x" + } + }, + "@hapi/topo": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.3.tgz", + "integrity": "sha512-JmS9/vQK6dcUYn7wc2YZTqzIKubAQcJKu2KCKAru6es482U5RT5fP1EXCPtlXpiK7PR0On/kpQKI4fRKkzpZBQ==", + "dev": true, + "requires": { + "@hapi/hoek": "8.x.x" + } + }, + "@jest/console": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", + "dev": true, + "requires": { + "@jest/source-map": "^24.9.0", + "chalk": "^2.0.1", + "slash": "^2.0.0" + } + }, + "@jest/core": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-24.9.0.tgz", + "integrity": "sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A==", + "dev": true, + "requires": { + "@jest/console": "^24.7.1", + "@jest/reporters": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "graceful-fs": "^4.1.15", + "jest-changed-files": "^24.9.0", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-resolve-dependencies": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "jest-watcher": "^24.9.0", + "micromatch": "^3.1.10", + "p-each-series": "^1.0.0", + "realpath-native": "^1.1.0", + "rimraf": "^2.5.4", + "slash": "^2.0.0", + "strip-ansi": "^5.0.0" + } + }, + "@jest/environment": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-24.9.0.tgz", + "integrity": "sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ==", + "dev": true, + "requires": { + "@jest/fake-timers": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0" + } + }, + "@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0" + } + }, + "@jest/reporters": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.9.0.tgz", + "integrity": "sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw==", + "dev": true, + "requires": { + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.2", + "istanbul-lib-coverage": "^2.0.2", + "istanbul-lib-instrument": "^3.0.1", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.1", + "istanbul-reports": "^2.2.6", + "jest-haste-map": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "node-notifier": "^5.4.2", + "slash": "^2.0.0", + "source-map": "^0.6.0", + "string-length": "^2.0.0" + } + }, + "@jest/source-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", + "dev": true, + "requires": { + "callsites": "^3.0.0", + "graceful-fs": "^4.1.15", + "source-map": "^0.6.0" + } + }, + "@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "dev": true, + "requires": { + "@jest/console": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/istanbul-lib-coverage": "^2.0.0" + } + }, + "@jest/test-sequencer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz", + "integrity": "sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A==", + "dev": true, + "requires": { + "@jest/test-result": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0" + } + }, + "@jest/transform": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.9.0.tgz", + "integrity": "sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^24.9.0", + "babel-plugin-istanbul": "^5.1.0", + "chalk": "^2.0.1", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.1.15", + "jest-haste-map": "^24.9.0", + "jest-regex-util": "^24.9.0", + "jest-util": "^24.9.0", + "micromatch": "^3.1.10", + "pirates": "^4.0.1", + "realpath-native": "^1.1.0", + "slash": "^2.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "2.4.1" + } + }, + "@jest/types": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^13.0.0" + } + }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, + "@types/babel__core": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.3.tgz", + "integrity": "sha512-8fBo0UR2CcwWxeX7WIIgJ7lXjasFxoYgRnFHUj+hRvKkpiBJbxhdAPTCY6/ZKM0uxANFVzt4yObSLuTiTnazDA==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "@types/babel__generator": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.0.2.tgz", + "integrity": "sha512-NHcOfab3Zw4q5sEE2COkpfXjoE7o+PmqD9DQW4koUT3roNxwziUdXGnRndMat/LJNUtePwn1TlP4do3uoe3KZQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@types/babel__template": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", + "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", + "dev": true, + "requires": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@types/babel__traverse": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.7.tgz", + "integrity": "sha512-CeBpmX1J8kWLcDEnI3Cl2Eo6RfbGvzUctA+CjZUhOKDFbLfcr7fc4usEqLNWetrlJd7RhAkyYe2czXop4fICpw==", + "dev": true, + "requires": { + "@babel/types": "^7.3.0" + } + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==", + "dev": true + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", + "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "dev": true, + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==", + "dev": true + }, + "@types/istanbul-lib-report": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz", + "integrity": "sha512-3BUTyMzbZa2DtDI2BkERNC6jJw2Mr2Y0oGI7mRxYNBPxppbtEK1F66u3bKwU2g+wxwWI7PAoRpJnOY1grJqzHg==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*" + } + }, + "@types/istanbul-reports": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz", + "integrity": "sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "*", + "@types/istanbul-lib-report": "*" + } + }, + "@types/json-schema": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.3.tgz", + "integrity": "sha512-Il2DtDVRGDcqjDtE+rF8iqg1CArehSK84HZJCT7AMITlyXRBpuPhqGLDQMowraqqu1coEaimg4ZOqggt6L6L+A==", + "dev": true + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", + "dev": true + }, + "@types/node": { + "version": "12.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.5.tgz", + "integrity": "sha512-9fq4jZVhPNW8r+UYKnxF1e2HkDWOWKM5bC2/7c9wPV835I0aOrVbS/Hw/pWPk2uKrNXQqg9Z959Kz+IYDd5p3w==", + "dev": true + }, + "@types/stack-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", + "dev": true + }, + "@types/unist": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", + "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==", + "dev": true + }, + "@types/vfile": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/vfile/-/vfile-3.0.2.tgz", + "integrity": "sha512-b3nLFGaGkJ9rzOcuXRfHkZMdjsawuDD0ENL9fzTophtBg8FJHSGbH7daXkEpcwy3v7Xol3pAvsmlYyFhR4pqJw==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/unist": "*", + "@types/vfile-message": "*" + } + }, + "@types/vfile-message": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/vfile-message/-/vfile-message-1.0.1.tgz", + "integrity": "sha512-mlGER3Aqmq7bqR1tTTIVHq8KSAFFRyGbrxuM8C/H82g6k7r2fS+IMEkIu3D7JHzG10NvPdR8DNx0jr0pwpp4dA==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/unist": "*" + } + }, + "@types/yargs": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.2.tgz", + "integrity": "sha512-lwwgizwk/bIIU+3ELORkyuOgDjCh7zuWDFqRtPPhhVgq9N1F7CvLNKg1TX4f2duwtKQ0p044Au9r1PLIXHrIzQ==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, + "@types/yargs-parser": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-13.1.0.tgz", + "integrity": "sha512-gCubfBUZ6KxzoibJ+SCUc/57Ms1jz5NjHe4+dI2krNmU5zCPAphyLJYyTOg06ueIyfj+SaCUqmzun7ImlxDcKg==", + "dev": true + }, + "@typescript-eslint/experimental-utils": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-1.13.0.tgz", + "integrity": "sha512-zmpS6SyqG4ZF64ffaJ6uah6tWWWgZ8m+c54XXgwFtUv0jNz8aJAVx8chMCvnk7yl6xwn8d+d96+tWp7fXzTuDg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/typescript-estree": "1.13.0", + "eslint-scope": "^4.0.0" + }, + "dependencies": { + "eslint-scope": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", + "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + } + } + }, + "@typescript-eslint/typescript-estree": { + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-1.13.0.tgz", + "integrity": "sha512-b5rCmd2e6DCC6tCTN9GSUAuxdYwCM/k/2wdjHGrIRGPSJotWMCe/dGpi66u42bhuh8q3QBzqM4TMA1GUUCJvdw==", + "dev": true, + "requires": { + "lodash.unescape": "4.0.1", + "semver": "5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "dev": true + } + } + }, + "@webassemblyjs/ast": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.4.3.tgz", + "integrity": "sha512-S6npYhPcTHDYe9nlsKa9CyWByFi8Vj8HovcAgtmMAQZUOczOZbQ8CnwMYKYC5HEZzxEE+oY0jfQk4cVlI3J59Q==", + "dev": true, + "requires": { + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/wast-parser": "1.4.3", + "debug": "^3.1.0", + "webassemblyjs": "1.4.3" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "@webassemblyjs/floating-point-hex-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.3.tgz", + "integrity": "sha512-3zTkSFswwZOPNHnzkP9ONq4bjJSeKVMcuahGXubrlLmZP8fmTIJ58dW7h/zOVWiFSuG2em3/HH3BlCN7wyu9Rw==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.3.tgz", + "integrity": "sha512-e8+KZHh+RV8MUvoSRtuT1sFXskFnWG9vbDy47Oa166xX+l0dD5sERJ21g5/tcH8Yo95e9IN3u7Jc3NbhnUcSkw==", + "dev": true, + "requires": { + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "@webassemblyjs/helper-code-frame": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.3.tgz", + "integrity": "sha512-9FgHEtNsZQYaKrGCtsjswBil48Qp1agrzRcPzCbQloCoaTbOXLJ9IRmqT+uEZbenpULLRNFugz3I4uw18hJM8w==", + "dev": true, + "requires": { + "@webassemblyjs/wast-printer": "1.4.3" + } + }, + "@webassemblyjs/helper-fsm": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.3.tgz", + "integrity": "sha512-JINY76U+702IRf7ePukOt037RwmtH59JHvcdWbTTyHi18ixmQ+uOuNhcdCcQHTquDAH35/QgFlp3Y9KqtyJsCQ==", + "dev": true + }, + "@webassemblyjs/helper-wasm-bytecode": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.3.tgz", + "integrity": "sha512-I7bS+HaO0K07Io89qhJv+z1QipTpuramGwUSDkwEaficbSvCcL92CUZEtgykfNtk5wb0CoLQwWlmXTwGbNZUeQ==", + "dev": true + }, + "@webassemblyjs/helper-wasm-section": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.3.tgz", + "integrity": "sha512-p0yeeO/h2r30PyjnJX9xXSR6EDcvJd/jC6xa/Pxg4lpfcNi7JUswOpqDToZQ55HMMVhXDih/yqkaywHWGLxqyQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-buffer": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/wasm-gen": "1.4.3", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "@webassemblyjs/leb128": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.4.3.tgz", + "integrity": "sha512-4u0LJLSPzuRDWHwdqsrThYn+WqMFVqbI2ltNrHvZZkzFPO8XOZ0HFQ5eVc4jY/TNHgXcnwrHjONhPGYuuf//KQ==", + "dev": true, + "requires": { + "leb": "^0.3.0" + } + }, + "@webassemblyjs/validation": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.4.3.tgz", + "integrity": "sha512-R+rRMKfhd9mq0rj2mhU9A9NKI2l/Rw65vIYzz4lui7eTKPcCu1l7iZNi4b9Gen8D42Sqh/KGiaQNk/x5Tn/iBQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3" + } + }, + "@webassemblyjs/wasm-edit": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.3.tgz", + "integrity": "sha512-qzuwUn771PV6/LilqkXcS0ozJYAeY/OKbXIWU3a8gexuqb6De2p4ya/baBeH5JQ2WJdfhWhSvSbu86Vienttpw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-buffer": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/helper-wasm-section": "1.4.3", + "@webassemblyjs/wasm-gen": "1.4.3", + "@webassemblyjs/wasm-opt": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "@webassemblyjs/wast-printer": "1.4.3", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "@webassemblyjs/wasm-gen": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.3.tgz", + "integrity": "sha512-eR394T8dHZfpLJ7U/Z5pFSvxl1L63JdREebpv9gYc55zLhzzdJPAuxjBYT4XqevUdW67qU2s0nNA3kBuNJHbaQ==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/leb128": "1.4.3" + } + }, + "@webassemblyjs/wasm-opt": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.3.tgz", + "integrity": "sha512-7Gp+nschuKiDuAL1xmp4Xz0rgEbxioFXw4nCFYEmy+ytynhBnTeGc9W9cB1XRu1w8pqRU2lbj2VBBA4cL5Z2Kw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-buffer": "1.4.3", + "@webassemblyjs/wasm-gen": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "@webassemblyjs/wasm-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.3.tgz", + "integrity": "sha512-KXBjtlwA3BVukR/yWHC9GF+SCzBcgj0a7lm92kTOaa4cbjaTaa47bCjXw6cX4SGQpkncB9PU2hHGYVyyI7wFRg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/helper-wasm-bytecode": "1.4.3", + "@webassemblyjs/leb128": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "webassemblyjs": "1.4.3" + } + }, + "@webassemblyjs/wast-parser": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.4.3.tgz", + "integrity": "sha512-QhCsQzqV0CpsEkRYyTzQDilCNUZ+5j92f+g35bHHNqS22FppNTywNFfHPq8ZWZfYCgbectc+PoghD+xfzVFh1Q==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/floating-point-hex-parser": "1.4.3", + "@webassemblyjs/helper-code-frame": "1.4.3", + "@webassemblyjs/helper-fsm": "1.4.3", + "long": "^3.2.0", + "webassemblyjs": "1.4.3" + } + }, + "@webassemblyjs/wast-printer": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.4.3.tgz", + "integrity": "sha512-EgXk4anf8jKmuZJsqD8qy5bz2frEQhBvZruv+bqwNoLWUItjNSFygk8ywL3JTEz9KtxTlAmqTXNrdD1d9gNDtg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/wast-parser": "1.4.3", + "long": "^3.2.0" + } + }, + "@wordpress/babel-plugin-import-jsx-pragma": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-plugin-import-jsx-pragma/-/babel-plugin-import-jsx-pragma-2.3.0.tgz", + "integrity": "sha512-b45c4x1+OvQm1f6egrBruO8eVF4bRVRZ8ojM1ttDcMi+K/qXfun3J6O8xXpSnA5eeNCZaJL3DhIk/aoNBbpwzw==", + "dev": true + }, + "@wordpress/babel-preset-default": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/babel-preset-default/-/babel-preset-default-4.6.0.tgz", + "integrity": "sha512-qx7sHrhsdb5NOHxXFDoTgKU2G8zCB+fBO2PZdkF5x+6PRdqfvbiJ1i848qcMARSqhwY7tHB3R7KOPLZGHbq2hw==", + "dev": true, + "requires": { + "@babel/core": "^7.4.4", + "@babel/plugin-proposal-async-generator-functions": "^7.2.0", + "@babel/plugin-proposal-object-rest-spread": "^7.4.4", + "@babel/plugin-transform-react-jsx": "^7.3.0", + "@babel/plugin-transform-runtime": "^7.4.4", + "@babel/preset-env": "^7.4.4", + "@babel/runtime": "^7.4.4", + "@wordpress/babel-plugin-import-jsx-pragma": "^2.3.0", + "@wordpress/browserslist-config": "^2.6.0", + "@wordpress/element": "^2.8.0", + "core-js": "^3.1.4" + } + }, + "@wordpress/browserslist-config": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@wordpress/browserslist-config/-/browserslist-config-2.6.0.tgz", + "integrity": "sha512-vRgzGoxhcNVChBP30XZlyK4w6r/9ZpO+Fi1dzmButp31lUEb1pT5WBxTIQl3HE0JZ9YTEJ00WWGO5sjGi5MHZA==", + "dev": true + }, + "@wordpress/dependency-extraction-webpack-plugin": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/dependency-extraction-webpack-plugin/-/dependency-extraction-webpack-plugin-2.0.0.tgz", + "integrity": "sha512-RJSbpnLBndYu02jrzbk0MTUi4uoOiEHXYSe9s8YM/40yJnUm6k1PvrytDG6VxFbjFARCCOzKgU70L+/xeC4pLQ==", + "dev": true, + "requires": { + "json2php": "^0.0.4", + "webpack": "^4.8.3", + "webpack-sources": "^1.3.0" + } + }, + "@wordpress/element": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/@wordpress/element/-/element-2.8.0.tgz", + "integrity": "sha512-fjFKf4h6dxjlTW4HKp+UNcCQDQaUGFLwjK6hMmet5YhklYvyg/+3bvDx1qqxe1BbY7kYvVhzVmldhJctOKPglQ==", + "dev": true, + "requires": { + "@babel/runtime": "^7.4.4", + "@wordpress/escape-html": "^1.5.0", + "lodash": "^4.17.14", + "react": "^16.9.0", + "react-dom": "^16.9.0" + } + }, + "@wordpress/escape-html": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@wordpress/escape-html/-/escape-html-1.5.0.tgz", + "integrity": "sha512-9jGwPbpdJ309EP4Acf6/zwHWeuYi0Bi5RAZx9q+BIYC7bjxLs3oFDS5QkEAi2mzrVAhIz+BbEWBGRg70U1RLlA==", + "dev": true, + "requires": { + "@babel/runtime": "^7.4.4" + } + }, + "@wordpress/eslint-plugin": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/eslint-plugin/-/eslint-plugin-3.1.0.tgz", + "integrity": "sha512-i/eNTWll3OH7rFukG2pNZXlOl0xihnuxg/2maEEMGzLS8dA8TEwyzCUXCqKycpOLR9sqODhdWFjeQBAPIjpZHg==", + "dev": true, + "requires": { + "babel-eslint": "^10.0.2", + "eslint-plugin-jest": "^22.15.1", + "eslint-plugin-jsdoc": "^15.8.0", + "eslint-plugin-jsx-a11y": "^6.2.3", + "eslint-plugin-react": "^7.14.3", + "eslint-plugin-react-hooks": "^1.6.1", + "globals": "^12.0.0", + "requireindex": "^1.2.0" + }, + "dependencies": { + "globals": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.1.0.tgz", + "integrity": "sha512-GQ4xcAfbMWx/Lly8PUHIn8/t2o7YEoMWnQ7nhJtjEJ1gs8I4Y+koc0GiraVMaSjc9Ghz99obkMau/tSK/ACEsQ==", + "dev": true, + "requires": { + "type-fest": "^0.6.0" + } + } + } + }, + "@wordpress/jest-console": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-console/-/jest-console-3.3.0.tgz", + "integrity": "sha512-ga6KMvj81IclhT/3z7GYQZPdVYhBbasjYbCuzMwyFLMDGu3AZJVsxhTFufr2co3cSi03Z8dhWL2Mm9IEzQujdA==", + "dev": true, + "requires": { + "@babel/runtime": "^7.4.4", + "jest-matcher-utils": "^24.7.0", + "lodash": "^4.17.14" + } + }, + "@wordpress/jest-preset-default": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/jest-preset-default/-/jest-preset-default-5.1.0.tgz", + "integrity": "sha512-BqUkdxlE2RpLwQ+I9O5Tt5RrrxShfLK8Q3cooK+gjOv7ycaD81qkngwIx9oRdSf9iscFkVIAhRiVTNnNba9Hjg==", + "dev": true, + "requires": { + "@wordpress/jest-console": "^3.3.0", + "babel-jest": "^24.7.1", + "enzyme": "^3.9.0", + "enzyme-adapter-react-16": "^1.10.0", + "enzyme-to-json": "^3.3.5" + } + }, + "@wordpress/npm-package-json-lint-config": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@wordpress/npm-package-json-lint-config/-/npm-package-json-lint-config-2.1.0.tgz", + "integrity": "sha512-NSwcK7GtlmW5O5ZMG7elRKBa9sPws17Sadjlztig6ShOuhlLFeHYk99tUenpmJ/PYOZex4fSJ5e9mqjPyKunjw==", + "dev": true + }, + "@wordpress/scripts": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@wordpress/scripts/-/scripts-5.0.0.tgz", + "integrity": "sha512-pidfRYMyG8RBwLLGto6VuMgeOrnfI/Ah/e4IBhvnLLMZOq1KW1mT8Am1k9idrMSnab0cmhOuNVQ2qifk/DR1aA==", + "dev": true, + "requires": { + "@wordpress/babel-preset-default": "^4.6.0", + "@wordpress/dependency-extraction-webpack-plugin": "^2.0.0", + "@wordpress/eslint-plugin": "^3.1.0", + "@wordpress/jest-preset-default": "^5.1.0", + "@wordpress/npm-package-json-lint-config": "^2.1.0", + "babel-jest": "^24.7.1", + "babel-loader": "^8.0.5", + "chalk": "^2.4.1", + "check-node-version": "^3.1.1", + "command-exists": "1.2.8", + "cross-spawn": "^5.1.0", + "decompress-zip": "0.2.2", + "eslint": "^6.1.0", + "jest": "^24.7.1", + "jest-puppeteer": "^4.3.0", + "js-yaml": "3.13.1", + "lodash": "^4.17.14", + "minimist": "^1.2.0", + "npm-package-json-lint": "^3.6.0", + "puppeteer": "^1.19.0", + "read-pkg-up": "^1.0.1", + "request": "2.88.0", + "resolve-bin": "^0.4.0", + "source-map-loader": "^0.2.4", + "sprintf-js": "^1.1.1", + "stylelint": "^9.10.1", + "stylelint-config-wordpress": "^13.1.0", + "thread-loader": "^2.1.2", + "webpack": "4.8.3", + "webpack-bundle-analyzer": "^3.3.2", + "webpack-cli": "^3.1.2", + "webpack-livereload-plugin": "^2.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "abab": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.1.tgz", + "integrity": "sha512-1zSbbCuoIjafKZ3mblY5ikvAb0ODUbqBnFuUb7f6uLeQhhGJ0vEV4ntmtxKLT2WgXCO94E07BjunsIw1jOMPZw==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "acorn-dynamic-import": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", + "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", + "dev": true, + "requires": { + "acorn": "^5.0.0" + } + }, + "acorn-globals": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", + "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", + "dev": true, + "requires": { + "acorn": "^6.0.1", + "acorn-walk": "^6.0.1" + }, + "dependencies": { + "acorn": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", + "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "dev": true + } + } + }, + "acorn-jsx": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.0.2.tgz", + "integrity": "sha512-tiNTrP1MP0QrChmD2DdupCr6HWSFeKVw5d/dHTu4Y7rkAkRhU/Dt7dphAfIUyxtHpl/eBVip5uTNSpQJHylpAw==", + "dev": true + }, + "acorn-walk": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", + "dev": true + }, + "agent-base": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.3.0.tgz", + "integrity": "sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg==", + "dev": true, + "requires": { + "es6-promisify": "^5.0.0" + } + }, + "airbnb-prop-types": { + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/airbnb-prop-types/-/airbnb-prop-types-2.15.0.tgz", + "integrity": "sha512-jUh2/hfKsRjNFC4XONQrxo/n/3GG4Tn6Hl0WlFQN5PY9OMC9loSCoAYKnZsWaP8wEfd5xcrPloK0Zg6iS1xwVA==", + "dev": true, + "requires": { + "array.prototype.find": "^2.1.0", + "function.prototype.name": "^1.1.1", + "has": "^1.0.3", + "is-regex": "^1.0.4", + "object-is": "^1.0.1", + "object.assign": "^4.1.0", + "object.entries": "^1.1.0", + "prop-types": "^15.7.2", + "prop-types-exact": "^1.2.0", + "react-is": "^16.9.0" + } + }, + "ajv": { + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", + "dev": true + }, + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "dev": true + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + } + } + }, + "aria-query": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", + "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "dev": true, + "requires": { + "ast-types-flow": "0.0.7", + "commander": "^2.11.0" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + } + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", + "dev": true + }, + "array-filter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", + "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", + "dev": true + }, + "array-includes": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", + "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.7.0" + } + }, + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "dev": true, + "requires": { + "array-uniq": "^1.0.1" + } + }, + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "array.prototype.find": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.0.tgz", + "integrity": "sha512-Wn41+K1yuO5p7wRZDl7890c3xvv5UBrfVXTVIe28rSQb6LS0fZMDrQB6PAcxQFRFy6vJTLDc3A2+3CjQdzVKRg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.13.0" + } + }, + "array.prototype.flat": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz", + "integrity": "sha512-rVqIs330nLJvfC7JqYvEWwqVr5QjYF1ib02i3YJtR/fICO6527Tjpc/e4Mvmxh3GIePPreRXMdaGyC99YphWEw==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.10.0", + "function-bind": "^1.1.1" + } + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "asn1.js": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", + "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "assert": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", + "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "util": "0.10.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", + "dev": true + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "dev": true, + "requires": { + "inherits": "2.0.1" + } + } + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", + "dev": true + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "autoprefixer": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.6.1.tgz", + "integrity": "sha512-aVo5WxR3VyvyJxcJC3h4FKfwCQvQWb1tSI5VHNibddCVWrcD1NvlxEweg3TSgiPztMnWfjpy2FURKA2kvDE+Tw==", + "dev": true, + "requires": { + "browserslist": "^4.6.3", + "caniuse-lite": "^1.0.30000980", + "chalk": "^2.4.2", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.17", + "postcss-value-parser": "^4.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "postcss-value-parser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz", + "integrity": "sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "axobject-query": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", + "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", + "dev": true, + "requires": { + "ast-types-flow": "0.0.7" + } + }, + "babel-eslint": { + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.0.3.tgz", + "integrity": "sha512-z3U7eMY6r/3f3/JB9mTsLjyxrv0Yb1zb8PCWCLpguxfCzBIZUwy23R1t/XKewP+8mEN2Ck8Dtr4q20z6ce6SoA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + } + }, + "babel-jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.9.0.tgz", + "integrity": "sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==", + "dev": true, + "requires": { + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/babel__core": "^7.1.0", + "babel-plugin-istanbul": "^5.1.0", + "babel-preset-jest": "^24.9.0", + "chalk": "^2.4.2", + "slash": "^2.0.0" + } + }, + "babel-loader": { + "version": "8.0.6", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", + "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", + "dev": true, + "requires": { + "find-cache-dir": "^2.0.0", + "loader-utils": "^1.0.2", + "mkdirp": "^0.5.1", + "pify": "^4.0.1" + }, + "dependencies": { + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, + "babel-plugin-dynamic-import-node": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", + "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", + "dev": true, + "requires": { + "object.assign": "^4.1.0" + } + }, + "babel-plugin-istanbul": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz", + "integrity": "sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw==", + "dev": true, + "requires": { + "@babel/helper-plugin-utils": "^7.0.0", + "find-up": "^3.0.0", + "istanbul-lib-instrument": "^3.3.0", + "test-exclude": "^5.2.3" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + } + } + }, + "babel-plugin-jest-hoist": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz", + "integrity": "sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw==", + "dev": true, + "requires": { + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz", + "integrity": "sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==", + "dev": true, + "requires": { + "@babel/plugin-syntax-object-rest-spread": "^7.0.0", + "babel-plugin-jest-hoist": "^24.9.0" + } + }, + "bail": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.4.tgz", + "integrity": "sha512-S8vuDB4w6YpRhICUDET3guPlQpaJl7od94tpZ0Fvnyp+MKW/HyDTcRDck+29C9g+d/qQHnddRH3+94kZdrW0Ww==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "base64-js": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "bfj": { + "version": "6.1.2", + "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz", + "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==", + "dev": true, + "requires": { + "bluebird": "^3.5.5", + "check-types": "^8.0.3", + "hoopy": "^0.1.4", + "tryer": "^1.0.1" + } + }, + "big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "dev": true + }, + "binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", + "dev": true, + "requires": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + } + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "bluebird": { + "version": "3.5.5", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.5.tgz", + "integrity": "sha512-5am6HnnfN+urzt4yfg7IgTbotDjIT/u8AJpEt0sIU9FtXfVeezXAPKswrG+xKUCOYAINpSdgZVDU6QFh+cuH3w==", + "dev": true + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", + "dev": true + }, + "body": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", + "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", + "dev": true, + "requires": { + "continuable-cache": "^0.3.1", + "error": "^7.0.0", + "raw-body": "~1.1.0", + "safe-json-parse": "~1.0.1" + }, + "dependencies": { + "bytes": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", + "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", + "dev": true + }, + "raw-body": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", + "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", + "dev": true, + "requires": { + "bytes": "1", + "string_decoder": "0.10" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "body-parser": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true + } + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", + "dev": true + }, + "browser-process-hrtime": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", + "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==", + "dev": true + }, + "browser-resolve": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", + "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", + "dev": true, + "requires": { + "resolve": "1.1.7" + }, + "dependencies": { + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "dev": true + } + } + }, + "browserify-aes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", + "dev": true, + "requires": { + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "browserify-cipher": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", + "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", + "dev": true, + "requires": { + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" + } + }, + "browserify-des": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", + "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "dev": true, + "requires": { + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" + } + }, + "browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dev": true, + "requires": { + "pako": "~1.0.5" + } + }, + "browserslist": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.0.tgz", + "integrity": "sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30000989", + "electron-to-chromium": "^1.3.247", + "node-releases": "^1.1.29" + } + }, + "bser": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.0.tgz", + "integrity": "sha512-8zsjWrQkkBoLK6uxASk1nJ2SKv97ltiGDo6A3wA0/yRPz+CwmEyDo0hUrhIuukG2JHpAl3bvFIixw2/3Hi0DOg==", + "dev": true, + "requires": { + "node-int64": "^0.4.0" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "dev": true, + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" + } + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", + "dev": true + }, + "buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", + "dev": true + }, + "builtin-status-codes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", + "dev": true + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true + }, + "cacache": { + "version": "10.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-10.0.4.tgz", + "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + } + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "requires": { + "callsites": "^2.0.0" + }, + "dependencies": { + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + } + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "camelcase-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-4.2.0.tgz", + "integrity": "sha1-oqpfsa9oh1glnDLBQUJteJI7m3c=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "map-obj": "^2.0.0", + "quick-lru": "^1.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + } + } + }, + "caniuse-lite": { + "version": "1.0.30000989", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000989.tgz", + "integrity": "sha512-vrMcvSuMz16YY6GSVZ0dWDTJP8jqk3iFQ/Aq5iqblPwxSVVZI+zxDyTX0VPqtQsDnfdrBDcsmhgTEOh5R8Lbpw==", + "dev": true + }, + "capture-exit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", + "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", + "dev": true, + "requires": { + "rsvp": "^4.8.4" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "ccount": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.0.4.tgz", + "integrity": "sha512-fpZ81yYfzentuieinmGnphk0pLkOTMm6MZdVqwd77ROvhko6iujLNGrHH5E7utq3ygWklwfmwuG+A7P+NpqT6w==", + "dev": true + }, + "chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", + "dev": true, + "requires": { + "traverse": ">=0.3.0 <0.4" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "character-entities": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.3.tgz", + "integrity": "sha512-yB4oYSAa9yLcGyTbB4ItFwHw43QHdH129IJ5R+WvxOkWlyFnR5FAaBNnUq4mcxsTVZGh28bHoeTHMKXH1wZf3w==", + "dev": true + }, + "character-entities-html4": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.3.tgz", + "integrity": "sha512-SwnyZ7jQBCRHELk9zf2CN5AnGEc2nA+uKMZLHvcqhpPprjkYhiLn0DywMHgN5ttFZuITMATbh68M6VIVKwJbcg==", + "dev": true + }, + "character-entities-legacy": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.3.tgz", + "integrity": "sha512-YAxUpPoPwxYFsslbdKkhrGnXAtXoHNgYjlBM3WMXkWGTl5RsY3QmOyhwAgL8Nxm9l5LBThXGawxKPn68y6/fww==", + "dev": true + }, + "character-reference-invalid": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.3.tgz", + "integrity": "sha512-VOq6PRzQBam/8Jm6XBGk2fNEnHXAdGd6go0rtd4weAGECBamHDwwCQSOT12TACIYUZegUXnV6xBXqUssijtxIg==", + "dev": true + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "check-node-version": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/check-node-version/-/check-node-version-3.3.0.tgz", + "integrity": "sha512-OAtp7prQf+8YYKn2UB/fK1Ppb9OT+apW56atoKYUvucYLPq69VozOY0B295okBwCKymk2cictrS3qsdcZwyfzw==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "map-values": "^1.0.1", + "minimist": "^1.2.0", + "object-filter": "^1.0.2", + "object.assign": "^4.0.4", + "run-parallel": "^1.1.4", + "semver": "^5.0.3" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "check-types": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz", + "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==", + "dev": true + }, + "cheerio": { + "version": "1.0.0-rc.3", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.3.tgz", + "integrity": "sha512-0td5ijfUPuubwLUu0OBoe98gZj8C/AA+RW3v67GPlGOrvxWjZmBXiBCRU+I8VEiNyJzjth40POfHiz2RB3gImA==", + "dev": true, + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.1", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash": "^4.15.0", + "parse5": "^3.0.1" + } + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "chownr": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.2.tgz", + "integrity": "sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A==", + "dev": true + }, + "chrome-trace-event": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", + "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", + "dev": true + }, + "ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", + "dev": true + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + } + } + }, + "clone-deep": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", + "integrity": "sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY=", + "dev": true, + "requires": { + "for-own": "^0.1.3", + "is-plain-object": "^2.0.1", + "kind-of": "^3.0.2", + "lazy-cache": "^1.0.3", + "shallow-clone": "^0.1.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "clone-regexp": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-1.0.1.tgz", + "integrity": "sha512-Fcij9IwRW27XedRIJnSOEupS7RVcXtObJXbcUOX93UCLqqOdRpkvzKywOOSizmEK/Is3S/RHX9dLdfo6R1Q1mw==", + "dev": true, + "requires": { + "is-regexp": "^1.0.0", + "is-supported-regexp-flag": "^1.0.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collapse-white-space": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.5.tgz", + "integrity": "sha512-703bOOmytCYAX9cXYqoikYIx6twmFCXsnzRQheBcTG3nzKYBR4P/+wkYeH+Mvj7qUz8zZDtdyzbxfnEi/kYzRQ==", + "dev": true + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "colors": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz", + "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "command-exists": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.8.tgz", + "integrity": "sha512-PM54PkseWbiiD/mMsbvW351/u+dafwTJ0ye2qB60G1aGQP9j3xK2gmMDc+R34L3nDtx4qMCitXT75mkbkGJDLw==", + "dev": true + }, + "commander": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz", + "integrity": "sha1-0SG7roYNmZKj1Re6lvVliOR8Z4E=", + "dev": true + }, + "comment-parser": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.6.2.tgz", + "integrity": "sha512-Wdms0Q8d4vvb2Yk72OwZjwNWtMklbC5Re7lD9cjCP/AG1fhocmc0TrxGBBAXPLy8fZQPrfHGgyygwI0lA7pbzA==", + "dev": true + }, + "commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "concurrently": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-4.1.2.tgz", + "integrity": "sha512-Kim9SFrNr2jd8/0yNYqDTFALzUX1tvimmwFWxmp/D4mRI+kbqIIwE2RkBDrxS2ic25O1UgQMI5AtBqdtX3ynYg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "date-fns": "^1.30.1", + "lodash": "^4.17.15", + "read-pkg": "^4.0.1", + "rxjs": "^6.5.2", + "spawn-command": "^0.0.2-1", + "supports-color": "^4.5.0", + "tree-kill": "^1.2.1", + "yargs": "^12.0.5" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "read-pkg": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-4.0.1.tgz", + "integrity": "sha1-ljYlN48+HE1IyFhytabsfV0JMjc=", + "dev": true, + "requires": { + "normalize-package-data": "^2.3.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "^2.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "dev": true, + "requires": { + "date-now": "^0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", + "dev": true + }, + "content-disposition": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "dev": true + }, + "continuable-cache": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", + "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", + "dev": true + }, + "convert-source-map": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", + "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + } + }, + "cookie": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", + "dev": true + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", + "dev": true + }, + "copy-concurrently": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", + "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" + } + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "core-js": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.2.1.tgz", + "integrity": "sha512-Qa5XSVefSVPRxy2XfUC13WbvqkxhkwB3ve+pgCQveNgYzbM/UxZeu1dcOX/xr4UmfUd+muuvsaxilQzCyUurMw==", + "dev": true + }, + "core-js-compat": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.2.1.tgz", + "integrity": "sha512-MwPZle5CF9dEaMYdDeWm73ao/IflDH+FjeJCWEADcEgFSE9TLimFKwJsfmkwzI8eC0Aj0mgvMDjeQjrElkz4/A==", + "dev": true, + "requires": { + "browserslist": "^4.6.6", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "dev": true, + "requires": { + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" + }, + "dependencies": { + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + } + } + }, + "create-ecdh": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", + "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" + } + }, + "create-hash": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" + } + }, + "create-hmac": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", + "dev": true, + "requires": { + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "crypto-browserify": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", + "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", + "dev": true, + "requires": { + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" + } + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "cssom": { + "version": "0.3.8", + "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", + "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", + "dev": true + }, + "cssstyle": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", + "dev": true, + "requires": { + "cssom": "0.3.x" + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "cwd": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/cwd/-/cwd-0.10.0.tgz", + "integrity": "sha1-FyQAaUBXwioTsM8WFix+S3p/5Wc=", + "dev": true, + "requires": { + "find-pkg": "^0.1.2", + "fs-exists-sync": "^0.1.0" + } + }, + "cyclist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", + "dev": true + }, + "damerau-levenshtein": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.5.tgz", + "integrity": "sha512-CBCRqFnpu715iPmw1KrdOrzRqbdFwQTwAWyyyYS42+iAgHCuXZ+/TdMgQkUENPomxEz9z1BEzuQU2Xw0kUuAgA==", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "data-urls": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", + "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "whatwg-mimetype": "^2.2.0", + "whatwg-url": "^7.0.0" + }, + "dependencies": { + "whatwg-url": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", + "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + } + } + }, + "date-fns": { + "version": "1.30.1", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", + "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==", + "dev": true + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", + "dev": true + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "dependencies": { + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + } + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "decompress-zip": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/decompress-zip/-/decompress-zip-0.2.2.tgz", + "integrity": "sha512-v+Na3Ck86Px7s2ix+f77pMQC3GlkxHHN+YyvnkEW7+xX5F39pcDpIV/VFvGYk8MznTFcMoPjL3XNWEJLXWoSPw==", + "dev": true, + "requires": { + "binary": "^0.3.0", + "graceful-fs": "^4.1.3", + "mkpath": "^0.1.0", + "nopt": "^3.0.1", + "q": "^1.1.2", + "readable-stream": "^1.1.8", + "touch": "0.0.3" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + } + } + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "dependency-graph": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.8.0.tgz", + "integrity": "sha512-DCvzSq2UiMsuLnj/9AL484ummEgLtZIcRS7YvtO38QnpX3vqh9nJ8P+zhu8Ja+SmLrBHO2iDbva20jq38qvBkQ==", + "dev": true + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" + } + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true + }, + "diff-sequences": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.9.0.tgz", + "integrity": "sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==", + "dev": true + }, + "diffie-hellman": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" + } + }, + "dir-glob": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", + "dev": true, + "requires": { + "path-type": "^3.0.0" + } + }, + "discontinuous-range": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/discontinuous-range/-/discontinuous-range-1.0.0.tgz", + "integrity": "sha1-44Mx8IRLukm5qctxx3FYWqsbxlo=", + "dev": true + }, + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domain-browser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", + "dev": true + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domexception": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", + "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", + "dev": true, + "requires": { + "webidl-conversions": "^4.0.2" + } + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "dot-prop": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", + "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, + "requires": { + "is-obj": "^1.0.0" + } + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", + "dev": true + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "ejs": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.1.tgz", + "integrity": "sha512-kS/gEPzZs3Y1rRsbGX4UOSjtP/CeJP0CxSNZHYxGfVM/VgLcv0ZqM7C45YyTj2DI2g7+P9Dd24C+IMIg6D0nYQ==", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.262", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.262.tgz", + "integrity": "sha512-YFr53qZWr2pWkiTUorWEhAweujdf0ALiUp8VkNa0WGtbMVR+kZ8jNy3VTCemLsA4sT6+srCqehNn8TEAD0Ngrw==", + "dev": true + }, + "elliptic": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.1.tgz", + "integrity": "sha512-xvJINNLbTeWQjrl6X+7eQCrIy/YPv5XCpKW6kB5mKvtnGILoLDcySuwomfdzt0BMdLNVnuRNTuzKNHj0bva1Cg==", + "dev": true, + "requires": { + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", + "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "enhanced-resolve": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", + "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "enzyme": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-3.10.0.tgz", + "integrity": "sha512-p2yy9Y7t/PFbPoTvrWde7JIYB2ZyGC+NgTNbVEGvZ5/EyoYSr9aG/2rSbVvyNvMHEhw9/dmGUJHWtfQIEiX9pg==", + "dev": true, + "requires": { + "array.prototype.flat": "^1.2.1", + "cheerio": "^1.0.0-rc.2", + "function.prototype.name": "^1.1.0", + "has": "^1.0.3", + "html-element-map": "^1.0.0", + "is-boolean-object": "^1.0.0", + "is-callable": "^1.1.4", + "is-number-object": "^1.0.3", + "is-regex": "^1.0.4", + "is-string": "^1.0.4", + "is-subset": "^0.1.1", + "lodash.escape": "^4.0.1", + "lodash.isequal": "^4.5.0", + "object-inspect": "^1.6.0", + "object-is": "^1.0.1", + "object.assign": "^4.1.0", + "object.entries": "^1.0.4", + "object.values": "^1.0.4", + "raf": "^3.4.0", + "rst-selector-parser": "^2.2.3", + "string.prototype.trim": "^1.1.2" + } + }, + "enzyme-adapter-react-16": { + "version": "1.14.0", + "resolved": "https://registry.npmjs.org/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.14.0.tgz", + "integrity": "sha512-7PcOF7pb4hJUvjY7oAuPGpq3BmlCig3kxXGi2kFx0YzJHppqX1K8IIV9skT1IirxXlu8W7bneKi+oQ10QRnhcA==", + "dev": true, + "requires": { + "enzyme-adapter-utils": "^1.12.0", + "has": "^1.0.3", + "object.assign": "^4.1.0", + "object.values": "^1.1.0", + "prop-types": "^15.7.2", + "react-is": "^16.8.6", + "react-test-renderer": "^16.0.0-0", + "semver": "^5.7.0" + } + }, + "enzyme-adapter-utils": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/enzyme-adapter-utils/-/enzyme-adapter-utils-1.12.0.tgz", + "integrity": "sha512-wkZvE0VxcFx/8ZsBw0iAbk3gR1d9hK447ebnSYBf95+r32ezBq+XDSAvRErkc4LZosgH8J7et7H7/7CtUuQfBA==", + "dev": true, + "requires": { + "airbnb-prop-types": "^2.13.2", + "function.prototype.name": "^1.1.0", + "object.assign": "^4.1.0", + "object.fromentries": "^2.0.0", + "prop-types": "^15.7.2", + "semver": "^5.6.0" + } + }, + "enzyme-to-json": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/enzyme-to-json/-/enzyme-to-json-3.4.0.tgz", + "integrity": "sha512-gbu8P8PMAtb+qtKuGVRdZIYxWHC03q1dGS3EKRmUzmTDIracu3o6cQ0d4xI2YWojbelbxjYOsmqM5EgAL0WgIA==", + "dev": true, + "requires": { + "lodash": "^4.17.12" + } + }, + "errno": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", + "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "dev": true, + "requires": { + "prr": "~1.0.1" + } + }, + "error": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/error/-/error-7.2.0.tgz", + "integrity": "sha512-M6t3j3Vt3uDicrViMP5fLq2AeADNrCVFD8Oj4Qt2MHsX0mPYG7D5XdnEfSdRpaHQzjAJ19wu+I1mw9rQYMTAPg==", + "dev": true, + "requires": { + "string-template": "~0.2.1" + } + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.14.2.tgz", + "integrity": "sha512-DgoQmbpFNOofkjJtKwr87Ma5EW4Dc8fWhD0R+ndq7Oc456ivUfGOOP6oAZTTKl5/CcNMP+EN+e3/iUzgE0veZg==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.0", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.0", + "is-callable": "^1.1.4", + "is-regex": "^1.0.4", + "object-inspect": "^1.6.0", + "object-keys": "^1.1.1", + "string.prototype.trimleft": "^2.0.0", + "string.prototype.trimright": "^2.0.0" + } + }, + "es-to-primitive": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", + "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es6-promise": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "dev": true + }, + "es6-promisify": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", + "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", + "dev": true, + "requires": { + "es6-promise": "^4.0.3" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "escodegen": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz", + "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==", + "dev": true, + "requires": { + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" + }, + "dependencies": { + "esprima": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", + "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", + "dev": true + } + } + }, + "eslint": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.4.0.tgz", + "integrity": "sha512-WTVEzK3lSFoXUovDHEbkJqCVPEPwbhCq4trDktNI6ygs7aO41d4cDT0JFAT5MivzZeVLWlg7vHL+bgrQv/t3vA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.2", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.1", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^11.7.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^6.4.1", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.2", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } + } + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "eslint-scope": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", + "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "glob-parent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.0.0.tgz", + "integrity": "sha512-Z2RwiujPRGluePM6j699ktJYxmPpJKCfpGA13jz2hmFZC7gKetzrWvg5KN3+OsIFmydGyZ1AVwERCq1w/ZZwRg==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "strip-json-comments": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", + "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", + "dev": true + } + } + }, + "eslint-plugin-jest": { + "version": "22.17.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-22.17.0.tgz", + "integrity": "sha512-WT4DP4RoGBhIQjv+5D0FM20fAdAUstfYAf/mkufLNTojsfgzc5/IYW22cIg/Q4QBavAZsROQlqppiWDpFZDS8Q==", + "dev": true, + "requires": { + "@typescript-eslint/experimental-utils": "^1.13.0" + } + }, + "eslint-plugin-jsdoc": { + "version": "15.9.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-15.9.2.tgz", + "integrity": "sha512-dJjIWFJlh4ti3CegWYN0jUUdjEsWvJ8TZJ/cMQldioVLxMmU3UZeZsHzxYcCicJwSVhQ+uGm+dbUyEIm0slX3Q==", + "dev": true, + "requires": { + "comment-parser": "^0.6.2", + "debug": "^4.1.1", + "jsdoctypeparser": "5.0.1", + "lodash": "^4.17.15", + "object.entries-ponyfill": "^1.0.1", + "regextras": "^0.6.1" + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz", + "integrity": "sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg==", + "dev": true, + "requires": { + "@babel/runtime": "^7.4.5", + "aria-query": "^3.0.0", + "array-includes": "^3.0.3", + "ast-types-flow": "^0.0.7", + "axobject-query": "^2.0.2", + "damerau-levenshtein": "^1.0.4", + "emoji-regex": "^7.0.2", + "has": "^1.0.3", + "jsx-ast-utils": "^2.2.1" + } + }, + "eslint-plugin-react": { + "version": "7.14.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.14.3.tgz", + "integrity": "sha512-EzdyyBWC4Uz2hPYBiEJrKCUi2Fn+BJ9B/pJQcjw5X+x/H2Nm59S4MJIvL4O5NEE0+WbnQwEBxWY03oUk+Bc3FA==", + "dev": true, + "requires": { + "array-includes": "^3.0.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.1.0", + "object.entries": "^1.1.0", + "object.fromentries": "^2.0.0", + "object.values": "^1.1.0", + "prop-types": "^15.7.2", + "resolve": "^1.10.1" + } + }, + "eslint-plugin-react-hooks": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz", + "integrity": "sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA==", + "dev": true + }, + "eslint-scope": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", + "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", + "dev": true, + "requires": { + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" + } + }, + "eslint-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.2.tgz", + "integrity": "sha512-eAZS2sEUMlIeCjBeubdj45dmBHQwPHWyBcT1VSYB7o9x9WRRqKxyUoiXlRjyAwzN7YEzHJlYg0NmzDRWx6GP4Q==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.0.0" + } + }, + "eslint-visitor-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", + "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", + "dev": true + }, + "espree": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.1.tgz", + "integrity": "sha512-EYbr8XZUhWbYCqQRW0duU5LxzL5bETN6AjKBGy1302qqzPaCH10QbRg3Wvco79Z8x9WbiE8HYB4e75xl6qUYvQ==", + "dev": true, + "requires": { + "acorn": "^7.0.0", + "acorn-jsx": "^5.0.2", + "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "acorn": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.0.0.tgz", + "integrity": "sha512-PaF/MduxijYYt7unVGRuds1vBC9bFxbNf+VWqhOClfdgy7RlVkQqt610ig1/yxTgsDIfW1cWDel5EBbOy3jdtQ==", + "dev": true + } + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", + "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "dev": true, + "requires": { + "estraverse": "^4.0.0" + } + }, + "esrecurse": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", + "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "dev": true, + "requires": { + "estraverse": "^4.1.0" + } + }, + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", + "dev": true + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "dev": true, + "requires": { + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" + } + }, + "exec-sh": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.2.tgz", + "integrity": "sha512-9sLAvzhI5nc8TpuQUh4ahMdCrWT00wPWz7j47/emR5+2qEfoZP5zzUXvx+vdx+H6ohhnsYC31iX04QLYJK8zTg==", + "dev": true + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + } + } + }, + "execall": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execall/-/execall-1.0.0.tgz", + "integrity": "sha1-c9CQTjlbPKsGWLCNCewlMH8pu3M=", + "dev": true, + "requires": { + "clone-regexp": "^1.0.0" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "expand-tilde": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-1.2.2.tgz", + "integrity": "sha1-C4HrqJflo9MdHD0QL48BRB5VlEk=", + "dev": true, + "requires": { + "os-homedir": "^1.0.1" + } + }, + "expect": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz", + "integrity": "sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "ansi-styles": "^3.2.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.9.0" + } + }, + "expect-puppeteer": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/expect-puppeteer/-/expect-puppeteer-4.3.0.tgz", + "integrity": "sha512-p8N/KSVPG9PAOJlftK5f1n3JrULJ6Qq1EQ8r/n9xzkX2NmXbK8PcnJnkSAEzEHrMycELKGnlJV7M5nkgm+wEWA==", + "dev": true + }, + "express": { + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", + "dev": true, + "requires": { + "accepts": "~1.3.7", + "array-flatten": "1.1.1", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", + "content-type": "~1.0.4", + "cookie": "0.4.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.1.2", + "send": "0.17.1", + "serve-static": "1.14.1", + "setprototypeof": "1.1.1", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "extract-zip": { + "version": "1.6.7", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", + "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "debug": "2.6.9", + "mkdirp": "0.5.1", + "yauzl": "2.4.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "faye-websocket": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", + "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", + "dev": true, + "requires": { + "websocket-driver": ">=0.5.1" + } + }, + "fb-watchman": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz", + "integrity": "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=", + "dev": true, + "requires": { + "bser": "^2.0.0" + } + }, + "fd-slicer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", + "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "filesize": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", + "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", + "dev": true + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-cache-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", + "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" + } + }, + "find-file-up": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/find-file-up/-/find-file-up-0.1.3.tgz", + "integrity": "sha1-z2gJG8+fMApA2kEbN9pczlovvqA=", + "dev": true, + "requires": { + "fs-exists-sync": "^0.1.0", + "resolve-dir": "^0.1.0" + } + }, + "find-parent-dir": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz", + "integrity": "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=", + "dev": true + }, + "find-pkg": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/find-pkg/-/find-pkg-0.1.2.tgz", + "integrity": "sha1-G9wiwG42NlUy4qJIBGhUuXiNpVc=", + "dev": true, + "requires": { + "find-file-up": "^0.1.2" + } + }, + "find-process": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/find-process/-/find-process-1.4.2.tgz", + "integrity": "sha512-O83EVJr4dWvHJ7QpUzANNAMeQVKukRzRqRx4AIzdLYRrQorRdbqDwLPigkd9PYPhJRhmNPAoVjOm9bcwSmcZaw==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "commander": "^2.11.0", + "debug": "^2.6.8" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, + "requires": { + "locate-path": "^2.0.0" + } + }, + "findup": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/findup/-/findup-0.1.5.tgz", + "integrity": "sha1-itkpozk7rGJ5V6fl3kYjsGsOLOs=", + "dev": true, + "requires": { + "colors": "~0.6.0-1", + "commander": "~2.1.0" + } + }, + "findup-sync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + }, + "dependencies": { + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + } + } + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "dependencies": { + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "flatted": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", + "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "forwarded": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "from2": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", + "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" + } + }, + "fs-exists-sync": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", + "integrity": "sha1-mC1ok6+RjnLQjeyehnP/K1qNat0=", + "dev": true + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-write-stream-atomic": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", + "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", + "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", + "dev": true, + "optional": true, + "requires": { + "nan": "^2.12.1", + "node-pre-gyp": "^0.12.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "resolved": false, + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": false, + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "optional": true + }, + "aproba": { + "version": "1.2.0", + "resolved": false, + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": false, + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "optional": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true, + "optional": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": false, + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "optional": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": false, + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "resolved": false, + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true, + "optional": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": false, + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true, + "optional": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": false, + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true, + "optional": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "optional": true + }, + "debug": { + "version": "4.1.1", + "resolved": false, + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "optional": true, + "requires": { + "ms": "^2.1.1" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": false, + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "resolved": false, + "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "resolved": false, + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "resolved": false, + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "optional": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": false, + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": false, + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": false, + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore-walk": { + "version": "3.0.1", + "resolved": false, + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "optional": true, + "requires": { + "minimatch": "^3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": false, + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "optional": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": false, + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true, + "optional": true + }, + "ini": { + "version": "1.3.5", + "resolved": false, + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "optional": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": false, + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": false, + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "optional": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": false, + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true, + "optional": true + }, + "minipass": { + "version": "2.3.5", + "resolved": false, + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "resolved": false, + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": false, + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "optional": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.1.1", + "resolved": false, + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true, + "optional": true + }, + "needle": { + "version": "2.3.0", + "resolved": false, + "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", + "dev": true, + "optional": true, + "requires": { + "debug": "^4.1.0", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.12.0", + "resolved": false, + "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", + "dev": true, + "optional": true, + "requires": { + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" + } + }, + "nopt": { + "version": "4.0.1", + "resolved": false, + "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", + "dev": true, + "optional": true, + "requires": { + "abbrev": "1", + "osenv": "^0.1.4" + } + }, + "npm-bundled": { + "version": "1.0.6", + "resolved": false, + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.4.1", + "resolved": false, + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": false, + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": false, + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true, + "optional": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": false, + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "resolved": false, + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "optional": true, + "requires": { + "wrappy": "1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "resolved": false, + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "optional": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": false, + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "resolved": false, + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "resolved": false, + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dev": true, + "optional": true, + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": false, + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": false, + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "optional": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "rimraf": { + "version": "2.6.3", + "resolved": false, + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "optional": true, + "requires": { + "glob": "^7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": false, + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "optional": true + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": false, + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "resolved": false, + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "optional": true + }, + "semver": { + "version": "5.7.0", + "resolved": false, + "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": false, + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": false, + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "optional": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": false, + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": false, + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "optional": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": false, + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "resolved": false, + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": false, + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "optional": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": false, + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true, + "optional": true + }, + "yallist": { + "version": "3.0.3", + "resolved": false, + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true, + "optional": true + } + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "function.prototype.name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.1.tgz", + "integrity": "sha512-e1NzkiJuw6xqVH7YSdiW/qDHebcmMhPNe6w+4ZYYEg0VA+LaLzx37RimbPLuonHhYGFGPx1ME2nSi74JiaCr/Q==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1", + "functions-have-names": "^1.1.1", + "is-callable": "^1.1.4" + } + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "functions-have-names": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.1.1.tgz", + "integrity": "sha512-U0kNHUoxwPNPWOJaMG7Z00d4a/qZVrFtzWJRaK8V9goaVOCXBSQSJpt3MYGNtkScKEBKovxLjnNdC9MlXwo5Pw==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + }, + "dependencies": { + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + } + } + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", + "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, + "global-modules": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-0.2.3.tgz", + "integrity": "sha1-6lo77ULG1s6ZWk+KEmm12uIjgo0=", + "dev": true, + "requires": { + "global-prefix": "^0.1.4", + "is-windows": "^0.2.0" + }, + "dependencies": { + "is-windows": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", + "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw=", + "dev": true + } + } + }, + "global-prefix": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-0.1.5.tgz", + "integrity": "sha1-jTvGuNo8qBEqFg2NSW/wRiv+948=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.0", + "ini": "^1.3.4", + "is-windows": "^0.2.0", + "which": "^1.2.12" + }, + "dependencies": { + "is-windows": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-0.2.0.tgz", + "integrity": "sha1-3hqm1j6indJIc3tp8f+LgALSEIw=", + "dev": true + } + } + }, + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + }, + "globby": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz", + "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^1.0.2", + "dir-glob": "^2.2.2", + "fast-glob": "^2.2.6", + "glob": "^7.1.3", + "ignore": "^4.0.3", + "pify": "^4.0.1", + "slash": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", + "dev": true + }, + "gonzales-pe": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.2.4.tgz", + "integrity": "sha512-v0Ts/8IsSbh9n1OJRnSfa7Nlxi4AkXIsWB6vPept8FDbL4bXn3FNuxjYtO/nmBGu7GDkL9MFeGebeSu6l55EPQ==", + "dev": true, + "requires": { + "minimist": "1.1.x" + }, + "dependencies": { + "minimist": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.1.3.tgz", + "integrity": "sha1-O+39kaktOQFvz6ocaB6Pqhoe/ag=", + "dev": true + } + } + }, + "graceful-fs": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.2.tgz", + "integrity": "sha512-IItsdsea19BoLC7ELy13q1iJFNmd7ofZH5+X/pJr90/nRoPEX0DJo1dHDbgtYWOhJhcCgMDTOw84RZ72q6lB+Q==", + "dev": true + }, + "growly": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", + "dev": true + }, + "gzip-size": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", + "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "dev": true, + "requires": { + "duplexer": "^0.1.1", + "pify": "^4.0.1" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "handlebars": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.4.2.tgz", + "integrity": "sha512-cIv17+GhL8pHHnRJzGu2wwcthL5sb8uDKBHvZ2Dtu5s1YNt0ljbzKbamnc+gr69y7bzwQiBdr5+hOpRd5pnOdg==", + "dev": true, + "requires": { + "neo-async": "^2.6.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" + }, + "dependencies": { + "commander": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.1.tgz", + "integrity": "sha512-cCuLsMhJeWQ/ZpsFTbE765kvVfoeSddc4nU3up4fV+fDBcfUXnbITJ+JzhkdjzOqhURjZgujxaioam4RM9yGUg==", + "dev": true, + "optional": true + }, + "uglify-js": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.6.0.tgz", + "integrity": "sha512-W+jrUHJr3DXKhrsS7NUVxn3zqMOFn0hL/Ei6v0anCIMoKC93TjcflTagwIHLW7SfMFfiQuktQyFVCFHGUE0+yg==", + "dev": true, + "optional": true, + "requires": { + "commander": "~2.20.0", + "source-map": "~0.6.1" + } + } + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "hash.js": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "dev": true, + "requires": { + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" + } + }, + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, + "hoopy": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz", + "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==", + "dev": true + }, + "hosted-git-info": { + "version": "2.8.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.4.tgz", + "integrity": "sha512-pzXIvANXEFrc5oFFXRMkbLPQ2rXRoDERwDLyrcUxGhaZhgP54BBSl9Oheh7Vv0T090cszWBxPjkQQ5Sq1PbBRQ==", + "dev": true + }, + "html-element-map": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/html-element-map/-/html-element-map-1.1.0.tgz", + "integrity": "sha512-iqiG3dTZmy+uUaTmHarTL+3/A2VW9ox/9uasKEZC+R/wAtUrTcRlXPSaPqsnWPfIu8wqn09jQNwMRqzL54jSYA==", + "dev": true, + "requires": { + "array-filter": "^1.0.0" + } + }, + "html-encoding-sniffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", + "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", + "dev": true, + "requires": { + "whatwg-encoding": "^1.0.1" + } + }, + "html-tags": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-2.0.0.tgz", + "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=", + "dev": true + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "http-errors": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "http-parser-js": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", + "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=", + "dev": true + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "https-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", + "dev": true + }, + "https-proxy-agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.2.tgz", + "integrity": "sha512-c8Ndjc9Bkpfx/vCJueCPy0jlP4ccCCSNDp8xwCZzPjKJUm+B+u9WX2x98Qx4n1PiMNTWo3D7KK5ifNV/yJyRzg==", + "dev": true, + "requires": { + "agent-base": "^4.3.0", + "debug": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "dev": true + }, + "iferr": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", + "dev": true + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "dev": true, + "requires": { + "import-from": "^2.1.0" + } + }, + "import-fresh": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.1.0.tgz", + "integrity": "sha512-PpuksHKGt8rXfWEr9m9EHIpgyyaltBy8+eF6GJM0QCAxMgxCfucMF3mjecK2QsJr0amJW7gTqh5/wht0z2UhEQ==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + } + } + }, + "import-lazy": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz", + "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ==", + "dev": true + }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "dev": true, + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } + } + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true + }, + "inquirer": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "dev": true, + "requires": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.12", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + } + }, + "interpret": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", + "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", + "dev": true + }, + "invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dev": true, + "requires": { + "loose-envify": "^1.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "ipaddr.js": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", + "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==", + "dev": true + }, + "irregular-plurals": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/irregular-plurals/-/irregular-plurals-2.0.0.tgz", + "integrity": "sha512-Y75zBYLkh0lJ9qxeHlMjQ7bSbyiSqNW/UOPWDmzC7cXskL1hekSITh1Oc6JV0XCWWZ9DE8VYSB71xocLk3gmGw==", + "dev": true + }, + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-alphabetical": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.3.tgz", + "integrity": "sha512-eEMa6MKpHFzw38eKm56iNNi6GJ7lf6aLLio7Kr23sJPAECscgRtZvOBYybejWDQ2bM949Y++61PY+udzj5QMLA==", + "dev": true + }, + "is-alphanumeric": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-alphanumeric/-/is-alphanumeric-1.0.0.tgz", + "integrity": "sha1-Spzvcdr0wAHB2B1j0UDPU/1oifQ=", + "dev": true + }, + "is-alphanumerical": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.3.tgz", + "integrity": "sha512-A1IGAPO5AW9vSh7omxIlOGwIqEvpW/TA+DksVOPM5ODuxKlZS09+TEM1E3275lJqO2oJ38vDpeAL3DCIiHE6eA==", + "dev": true, + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "is-boolean-object": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.0.tgz", + "integrity": "sha1-mPiygDBoQhmpXzdc+9iM40Bd/5M=", + "dev": true + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", + "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", + "dev": true + }, + "is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dev": true, + "requires": { + "ci-info": "^2.0.0" + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-decimal": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.3.tgz", + "integrity": "sha512-bvLSwoDg2q6Gf+E2LEPiklHZxxiSi3XAh4Mav65mKqTfCO1HM3uBs24TjEH8iJX3bbDdLXKJXBTmGzuTUuAEjQ==", + "dev": true + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "is-directory": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", + "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", + "dev": true + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-hexadecimal": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.3.tgz", + "integrity": "sha512-zxQ9//Q3D/34poZf8fiy3m3XVpbQc7ren15iKqrTtLPwkPD/t3Scy9Imp63FujULGxuK0ZlCwoo5xNpktFgbOA==", + "dev": true + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-number-object": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.3.tgz", + "integrity": "sha1-8mWrian0RQNO9q/xWo8AsA9VF5k=", + "dev": true + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-path-inside": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", + "dev": true, + "requires": { + "path-is-inside": "^1.0.2" + } + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, + "requires": { + "has": "^1.0.1" + } + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "dev": true + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "is-string": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.4.tgz", + "integrity": "sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ=", + "dev": true + }, + "is-subset": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-subset/-/is-subset-0.1.1.tgz", + "integrity": "sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY=", + "dev": true + }, + "is-supported-regexp-flag": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-supported-regexp-flag/-/is-supported-regexp-flag-1.0.1.tgz", + "integrity": "sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ==", + "dev": true + }, + "is-symbol": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", + "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", + "dev": true, + "requires": { + "has-symbols": "^1.0.0" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-whitespace-character": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.3.tgz", + "integrity": "sha512-SNPgMLz9JzPccD3nPctcj8sZlX9DAMJSKH8bP7Z6bohCwuNgX8xbWr1eTAYXX9Vpi/aSn8Y1akL9WgM3t43YNQ==", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-word-character": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.3.tgz", + "integrity": "sha512-0wfcrFgOOOBdgRNT9H33xe6Zi6yhX/uoc4U8NBZGeQQB0ctU1dnlNTyL9JM2646bHDTpsDm1Brb3VPoCIMrd/A==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", + "dev": true, + "requires": { + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "dev": true, + "requires": { + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "istanbul-lib-source-maps": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", + "dev": true, + "requires": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", + "source-map": "^0.6.1" + }, + "dependencies": { + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + } + } + }, + "istanbul-reports": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.6.tgz", + "integrity": "sha512-SKi4rnMyLBKe0Jy2uUdx28h8oG7ph2PPuQPvIAh31d+Ci+lSiEu4C+h3oBPuJ9+mPKhOyW0M8gY4U5NM1WLeXA==", + "dev": true, + "requires": { + "handlebars": "^4.1.2" + } + }, + "jest": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-24.9.0.tgz", + "integrity": "sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw==", + "dev": true, + "requires": { + "import-local": "^2.0.0", + "jest-cli": "^24.9.0" + }, + "dependencies": { + "jest-cli": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-24.9.0.tgz", + "integrity": "sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg==", + "dev": true, + "requires": { + "@jest/core": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "import-local": "^2.0.0", + "is-ci": "^2.0.0", + "jest-config": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "prompts": "^2.0.1", + "realpath-native": "^1.1.0", + "yargs": "^13.3.0" + } + } + } + }, + "jest-changed-files": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz", + "integrity": "sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "execa": "^1.0.0", + "throat": "^4.0.0" + } + }, + "jest-config": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-24.9.0.tgz", + "integrity": "sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/test-sequencer": "^24.9.0", + "@jest/types": "^24.9.0", + "babel-jest": "^24.9.0", + "chalk": "^2.0.1", + "glob": "^7.1.1", + "jest-environment-jsdom": "^24.9.0", + "jest-environment-node": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "micromatch": "^3.1.10", + "pretty-format": "^24.9.0", + "realpath-native": "^1.1.0" + } + }, + "jest-dev-server": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/jest-dev-server/-/jest-dev-server-4.3.0.tgz", + "integrity": "sha512-bC9flKY2G1honQ/UI0gEhb0wFnDhpFr7xidC8Nk+evi7TgnNtfsGIzzF2dcIhF1G9BGF0n/M7CJrMAzwQhyTPA==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "cwd": "^0.10.0", + "find-process": "^1.4.2", + "prompts": "^2.1.0", + "spawnd": "^4.0.0", + "tree-kill": "^1.2.1", + "wait-on": "^3.3.0" + } + }, + "jest-diff": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-24.9.0.tgz", + "integrity": "sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "diff-sequences": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-docblock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.9.0.tgz", + "integrity": "sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA==", + "dev": true, + "requires": { + "detect-newline": "^2.1.0" + } + }, + "jest-each": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-24.9.0.tgz", + "integrity": "sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-environment-jsdom": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz", + "integrity": "sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA==", + "dev": true, + "requires": { + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0", + "jsdom": "^11.5.1" + } + }, + "jest-environment-node": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.9.0.tgz", + "integrity": "sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA==", + "dev": true, + "requires": { + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0" + } + }, + "jest-environment-puppeteer": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/jest-environment-puppeteer/-/jest-environment-puppeteer-4.3.0.tgz", + "integrity": "sha512-ZighMsU39bnacn2ylyHb88CB+ldgCfXGD3lS78k4PEo8A8xyt6+2mxmSR62FH3Y7K+W2gPDu5+QM3/LZuq42fQ==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "cwd": "^0.10.0", + "jest-dev-server": "^4.3.0", + "merge-deep": "^3.0.2" + } + }, + "jest-get-type": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz", + "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==", + "dev": true + }, + "jest-haste-map": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "anymatch": "^2.0.0", + "fb-watchman": "^2.0.0", + "fsevents": "^1.2.7", + "graceful-fs": "^4.1.15", + "invariant": "^2.2.4", + "jest-serializer": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.9.0", + "micromatch": "^3.1.10", + "sane": "^4.0.3", + "walker": "^1.0.7" + } + }, + "jest-jasmine2": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz", + "integrity": "sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==", + "dev": true, + "requires": { + "@babel/traverse": "^7.1.0", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "co": "^4.6.0", + "expect": "^24.9.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0", + "throat": "^4.0.0" + } + }, + "jest-leak-detector": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz", + "integrity": "sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA==", + "dev": true, + "requires": { + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-matcher-utils": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz", + "integrity": "sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==", + "dev": true, + "requires": { + "chalk": "^2.0.1", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^2.0.1", + "micromatch": "^3.1.10", + "slash": "^2.0.0", + "stack-utils": "^1.0.1" + } + }, + "jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0" + } + }, + "jest-pnp-resolver": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", + "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==", + "dev": true + }, + "jest-puppeteer": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/jest-puppeteer/-/jest-puppeteer-4.3.0.tgz", + "integrity": "sha512-WXhaWlbQl01xadZyNmdZntrtIr8uWUmgjPogDih7dOnr3G/xRr3A034SCqdjwV6fE0tqz7c5hwO8oBTyGZPRgA==", + "dev": true, + "requires": { + "expect-puppeteer": "^4.3.0", + "jest-environment-puppeteer": "^4.3.0" + } + }, + "jest-regex-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.9.0.tgz", + "integrity": "sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==", + "dev": true + }, + "jest-resolve": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.9.0.tgz", + "integrity": "sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "browser-resolve": "^1.11.3", + "chalk": "^2.0.1", + "jest-pnp-resolver": "^1.2.1", + "realpath-native": "^1.1.0" + } + }, + "jest-resolve-dependencies": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz", + "integrity": "sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-snapshot": "^24.9.0" + } + }, + "jest-runner": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-24.9.0.tgz", + "integrity": "sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg==", + "dev": true, + "requires": { + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.4.2", + "exit": "^0.1.2", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-docblock": "^24.3.0", + "jest-haste-map": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-leak-detector": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "source-map-support": "^0.5.6", + "throat": "^4.0.0" + } + }, + "jest-runtime": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.9.0.tgz", + "integrity": "sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw==", + "dev": true, + "requires": { + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/source-map": "^24.3.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "chalk": "^2.0.1", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "realpath-native": "^1.1.0", + "slash": "^2.0.0", + "strip-bom": "^3.0.0", + "yargs": "^13.3.0" + } + }, + "jest-serializer": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==", + "dev": true + }, + "jest-snapshot": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.9.0.tgz", + "integrity": "sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "expect": "^24.9.0", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "pretty-format": "^24.9.0", + "semver": "^6.2.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + } + } + }, + "jest-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", + "dev": true, + "requires": { + "@jest/console": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/source-map": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "callsites": "^3.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.15", + "is-ci": "^2.0.0", + "mkdirp": "^0.5.1", + "slash": "^2.0.0", + "source-map": "^0.6.0" + } + }, + "jest-validate": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", + "integrity": "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "camelcase": "^5.3.1", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "leven": "^3.1.0", + "pretty-format": "^24.9.0" + } + }, + "jest-watcher": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.9.0.tgz", + "integrity": "sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw==", + "dev": true, + "requires": { + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", + "jest-util": "^24.9.0", + "string-length": "^2.0.0" + } + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "dev": true, + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "js-levenshtein": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", + "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsdoctypeparser": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-5.0.1.tgz", + "integrity": "sha512-dYwcK6TKzvq+ZKtbp4sbQSW9JMo6s+4YFfUs5D/K7bZsn3s1NhEhZ+jmIPzby0HbkbECBe+hNPEa6a+E21o94w==", + "dev": true + }, + "jsdom": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", + "dev": true, + "requires": { + "abab": "^2.0.0", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", + "array-equal": "^1.0.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", + "domexception": "^1.0.1", + "escodegen": "^1.9.1", + "html-encoding-sniffer": "^1.0.2", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", + "pn": "^1.1.0", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.3.4", + "w3c-hr-time": "^1.0.1", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", + "xml-name-validator": "^3.0.0" + }, + "dependencies": { + "parse5": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true + } + } + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json2php": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/json2php/-/json2php-0.0.4.tgz", + "integrity": "sha1-a9haHdpqXdfpECK7JEA8wbfC7jQ=", + "dev": true + }, + "json5": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.0.tgz", + "integrity": "sha512-8Mh9h6xViijj36g7Dxi+Y4S6hNGV96vcJZr/SrlHh1LR/pEn/8j/+qIBbs44YKl69Lrfctp4QD+AdWLTMqEZAQ==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jsx-ast-utils": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.2.1.tgz", + "integrity": "sha512-v3FxCcAf20DayI+uxnCuw795+oOIkVu6EnJ1+kSzhqqTZHNkTZ7B66ZgLp4oLJ/gbA64cI0B7WRoHZMSRdyVRQ==", + "dev": true, + "requires": { + "array-includes": "^3.0.3", + "object.assign": "^4.1.0" + } + }, + "kind-of": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true + }, + "kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "dev": true + }, + "known-css-properties": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.11.0.tgz", + "integrity": "sha512-bEZlJzXo5V/ApNNa5z375mJC6Nrz4vG43UgcSCrg2OHC+yuB6j0iDSrY7RQ/+PRofFB03wNIIt9iXIVLr4wc7w==", + "dev": true + }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "leb": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/leb/-/leb-0.3.0.tgz", + "integrity": "sha1-Mr7p+tFoMo1q6oUi2DP0GA7tHaM=", + "dev": true + }, + "left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==", + "dev": true + }, + "leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "dev": true + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "livereload-js": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", + "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", + "dev": true + }, + "load-json-file": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" + } + }, + "loader-runner": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "dev": true + }, + "loader-utils": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "requires": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true + }, + "lodash.escape": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-4.0.1.tgz", + "integrity": "sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg=", + "dev": true + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=", + "dev": true + }, + "lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", + "dev": true + }, + "lodash.unescape": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.unescape/-/lodash.unescape-4.0.1.tgz", + "integrity": "sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw=", + "dev": true + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "long": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", + "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", + "dev": true + }, + "longest-streak": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.3.tgz", + "integrity": "sha512-9lz5IVdpwsKLMzQi0MQ+oD9EA0mIGcWYP7jXMTZVXP8D42PwuAk+M/HBFYQoxt1G5OR8m7aSIgb1UymfWGBWEw==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dev": true, + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "makeerror": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", + "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", + "dev": true, + "requires": { + "tmpl": "1.0.x" + } + }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-2.0.0.tgz", + "integrity": "sha1-plzSkIepJZi4eRJXpSPgISIqwfk=", + "dev": true + }, + "map-values": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-values/-/map-values-1.0.1.tgz", + "integrity": "sha1-douOecAJvytk/ugG4ip7HEGQyZA=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "markdown-escapes": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.3.tgz", + "integrity": "sha512-XUi5HJhhV5R74k8/0H2oCbCiYf/u4cO/rX8tnGkRvrqhsr5BRNU6Mg0yt/8UIx1iIS8220BNJsDb7XnILhLepw==", + "dev": true + }, + "markdown-table": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-1.1.3.tgz", + "integrity": "sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==", + "dev": true + }, + "mathml-tag-names": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.1.tgz", + "integrity": "sha512-pWB896KPGSGkp1XtyzRBftpTzwSOL0Gfk0wLvxt4f2mgzjY19o0LxJ3U25vNWTzsh7da+KTbuXQoQ3lOJZ8WHw==", + "dev": true + }, + "md5.js": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "mdast-util-compact": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-1.0.3.tgz", + "integrity": "sha512-nRiU5GpNy62rZppDKbLwhhtw5DXoFMqw9UNZFmlPsNaQCZ//WLjGKUwWMdJrUH+Se7UvtO2gXtAMe0g/N+eI5w==", + "dev": true, + "requires": { + "unist-util-visit": "^1.1.0" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "dev": true + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + }, + "dependencies": { + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + } + } + }, + "memory-fs": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", + "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", + "dev": true, + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "meow": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", + "dev": true, + "requires": { + "camelcase-keys": "^4.0.0", + "decamelize-keys": "^1.0.0", + "loud-rejection": "^1.0.0", + "minimist-options": "^3.0.1", + "normalize-package-data": "^2.3.4", + "read-pkg-up": "^3.0.0", + "redent": "^2.0.0", + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "read-pkg-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", + "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^3.0.0" + } + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } + } + } + }, + "merge-deep": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.2.tgz", + "integrity": "sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "clone-deep": "^0.2.4", + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", + "dev": true + }, + "merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "dev": true + }, + "merge2": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", + "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==", + "dev": true + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "dev": true, + "requires": { + "bn.js": "^4.0.0", + "brorand": "^1.0.1" + } + }, + "mime": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", + "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", + "dev": true + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==", + "dev": true + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "dev": true, + "requires": { + "mime-db": "1.40.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", + "dev": true + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "minimist-options": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-3.0.2.tgz", + "integrity": "sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0" + } + }, + "mississippi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", + "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mixin-object": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", + "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", + "dev": true, + "requires": { + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" + }, + "dependencies": { + "for-in": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", + "dev": true + } + } + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "mkpath": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/mkpath/-/mkpath-0.1.0.tgz", + "integrity": "sha1-dVSm+Nhxg0zJe1RisSLEwSTW3pE=", + "dev": true + }, + "moo": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.4.3.tgz", + "integrity": "sha512-gFD2xGCl8YFgGHsqJ9NKRVdwlioeW3mI1iqfLNYQOv0+6JRwG58Zk9DIGQgyIaffSYaO1xsKnMaYzzNr1KyIAw==", + "dev": true + }, + "move-concurrently": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", + "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "dev": true, + "requires": { + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "nan": { + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", + "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "dev": true, + "optional": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "nearley": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.19.0.tgz", + "integrity": "sha512-2v52FTw7RPqieZr3Gth1luAXZR7Je6q3KaDHY5bjl/paDUdMu35fZ8ICNgiYJRr3tf3NMvIQQR1r27AvEr9CRA==", + "dev": true, + "requires": { + "commander": "^2.19.0", + "moo": "^0.4.3", + "railroad-diagrams": "^1.0.0", + "randexp": "0.4.6", + "semver": "^5.4.1" + }, + "dependencies": { + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + } + } + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true + }, + "neo-async": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", + "dev": true + }, + "node-libs-browser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "0.0.1", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", + "tty-browserify": "0.0.0", + "url": "^0.11.0", + "util": "^0.11.0", + "vm-browserify": "^1.0.1" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + } + } + }, + "node-modules-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", + "dev": true + }, + "node-notifier": { + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz", + "integrity": "sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==", + "dev": true, + "requires": { + "growly": "^1.3.0", + "is-wsl": "^1.1.0", + "semver": "^5.5.0", + "shellwords": "^0.1.1", + "which": "^1.3.0" + } + }, + "node-releases": { + "version": "1.1.32", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.32.tgz", + "integrity": "sha512-VhVknkitq8dqtWoluagsGPn3dxTvN9fwgR59fV3D7sLBHe0JfDramsMI8n8mY//ccq/Kkrf8ZRHRpsyVZ3qw1A==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "normalize-selector": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", + "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", + "dev": true + }, + "npm-package-json-lint": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/npm-package-json-lint/-/npm-package-json-lint-3.7.0.tgz", + "integrity": "sha512-eWi1pZ/ZhPHAOMLC1+njBJj81yCu2Ek4VxhwpPHABvSVHS0dkaL6aKhSj/TX8Rtm/0rIg3edgMLt3kSRtWkFaA==", + "dev": true, + "requires": { + "ajv": "^6.10.0", + "chalk": "^2.4.2", + "glob": "^7.1.4", + "ignore": "^5.1.2", + "is-path-inside": "^2.1.0", + "is-plain-obj": "^1.1.0", + "is-resolvable": "^1.1.0", + "log-symbols": "^2.2.0", + "meow": "^5.0.0", + "plur": "^3.1.1", + "semver": "^5.6.0", + "strip-json-comments": "^2.0.1", + "validator": "^10.11.0" + }, + "dependencies": { + "ignore": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", + "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==", + "dev": true + } + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "^2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "nwsapi": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz", + "integrity": "sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-filter": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/object-filter/-/object-filter-1.0.2.tgz", + "integrity": "sha1-rwt5f/6+r4pSxmN87b6IFs/sG8g=", + "dev": true + }, + "object-inspect": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz", + "integrity": "sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==", + "dev": true + }, + "object-is": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", + "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.entries": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.0.tgz", + "integrity": "sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.12.0", + "function-bind": "^1.1.1", + "has": "^1.0.3" + } + }, + "object.entries-ponyfill": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.entries-ponyfill/-/object.entries-ponyfill-1.0.1.tgz", + "integrity": "sha1-Kavfd8v70mVm3RqiTp2I9lQz0lY=", + "dev": true + }, + "object.fromentries": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.0.tgz", + "integrity": "sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.11.0", + "function-bind": "^1.1.1", + "has": "^1.0.1" + } + }, + "object.getownpropertydescriptors": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", + "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "es-abstract": "^1.5.1" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "object.values": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.0.tgz", + "integrity": "sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.12.0", + "function-bind": "^1.1.1", + "has": "^1.0.3" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "opener": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.1.tgz", + "integrity": "sha512-goYSy5c2UXE4Ra1xixabeVh1guIX/ZV/YokJksb6q2lubWu6UbvPQ20p542/sFIll1nl8JnCyK9oBaOcCWXwvA==", + "dev": true + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" + }, + "dependencies": { + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + } + } + }, + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", + "dev": true + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, + "p-each-series": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", + "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", + "dev": true, + "requires": { + "p-reduce": "^1.0.0" + } + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", + "dev": true + }, + "p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "requires": { + "p-try": "^1.0.0" + } + }, + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "^1.1.0" + } + }, + "p-reduce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", + "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=", + "dev": true + }, + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true + }, + "pako": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", + "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", + "dev": true + }, + "parallel-transform": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", + "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", + "dev": true, + "requires": { + "cyclist": "^1.0.1", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-asn1": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", + "dev": true, + "requires": { + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-entities": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", + "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", + "dev": true, + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "parse5": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", + "integrity": "sha512-rgO9Zg5LLLkfJF9E6CCmXlSE4UVceloys8JrFqCcHloC3usd/kJCyPDwH2SOlzix2j3xaP9sUX3e8+kvkuleAA==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", + "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", + "dev": true + }, + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "dev": true, + "requires": { + "pify": "^3.0.0" + } + }, + "pbkdf2": { + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "dev": true, + "requires": { + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" + } + }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "pirates": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", + "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", + "dev": true, + "requires": { + "node-modules-regexp": "^1.0.0" + } + }, + "pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "requires": { + "find-up": "^2.1.0" + } + }, + "plur": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/plur/-/plur-3.1.1.tgz", + "integrity": "sha512-t1Ax8KUvV3FFII8ltczPn2tJdjqbd1sIzu6t4JL7nQ3EyeL/lTrj5PWKb06ic5/6XYDr65rQ4uzQEGN70/6X5w==", + "dev": true, + "requires": { + "irregular-plurals": "^2.0.0" + } + }, + "pn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", + "dev": true + }, + "portfinder": { + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.24.tgz", + "integrity": "sha512-ekRl7zD2qxYndYflwiryJwMioBI7LI7rVXg3EnLK3sjkouT5eOuhS3gS255XxBksa30VG8UPZYZCdgfGOfkSUg==", + "dev": true, + "requires": { + "async": "^1.5.2", + "debug": "^2.2.0", + "mkdirp": "0.5.x" + }, + "dependencies": { + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "6.0.23", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", + "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "source-map": "^0.6.1", + "supports-color": "^5.4.0" + } + }, + "postcss-cli": { + "version": "6.1.3", + "resolved": "https://registry.npmjs.org/postcss-cli/-/postcss-cli-6.1.3.tgz", + "integrity": "sha512-eieqJU+OR1OFc/lQqMsDmROTJpoMZFvoAQ+82utBQ8/8qGMTfH9bBSPsTdsagYA8uvNzxHw2I2cNSSJkLAGhvw==", + "dev": true, + "requires": { + "chalk": "^2.1.0", + "chokidar": "^2.0.0", + "dependency-graph": "^0.8.0", + "fs-extra": "^7.0.0", + "get-stdin": "^6.0.0", + "globby": "^9.0.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "postcss-reporter": "^6.0.0", + "pretty-hrtime": "^1.0.3", + "read-cache": "^1.0.0", + "yargs": "^12.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "dev": true, + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "yargs": { + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", + "dev": true, + "requires": { + "cliui": "^4.0.0", + "decamelize": "^1.2.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^11.1.1" + } + }, + "yargs-parser": { + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "postcss-html": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", + "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", + "dev": true, + "requires": { + "htmlparser2": "^3.10.0" + } + }, + "postcss-jsx": { + "version": "0.36.3", + "resolved": "https://registry.npmjs.org/postcss-jsx/-/postcss-jsx-0.36.3.tgz", + "integrity": "sha512-yV8Ndo6KzU8eho5mCn7LoLUGPkXrRXRjhMpX4AaYJ9wLJPv099xbtpbRQ8FrPnzVxb/cuMebbPR7LweSt+hTfA==", + "dev": true, + "requires": { + "@babel/core": ">=7.2.2" + } + }, + "postcss-less": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", + "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-load-config": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", + "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", + "dev": true, + "requires": { + "cosmiconfig": "^5.0.0", + "import-cwd": "^2.0.0" + } + }, + "postcss-markdown": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/postcss-markdown/-/postcss-markdown-0.36.0.tgz", + "integrity": "sha512-rl7fs1r/LNSB2bWRhyZ+lM/0bwKv9fhl38/06gF6mKMo/NPnp55+K1dSTosSVjFZc0e1ppBlu+WT91ba0PMBfQ==", + "dev": true, + "requires": { + "remark": "^10.0.1", + "unist-util-find-all-after": "^1.0.2" + } + }, + "postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=", + "dev": true + }, + "postcss-reporter": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-6.0.1.tgz", + "integrity": "sha512-LpmQjfRWyabc+fRygxZjpRxfhRf9u/fdlKf4VHG4TSPbV2XNsuISzYW1KL+1aQzx53CAppa1bKG4APIB/DOXXw==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "lodash": "^4.17.11", + "log-symbols": "^2.2.0", + "postcss": "^7.0.7" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=", + "dev": true + }, + "postcss-safe-parser": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz", + "integrity": "sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-sass": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.3.5.tgz", + "integrity": "sha512-B5z2Kob4xBxFjcufFnhQ2HqJQ2y/Zs/ic5EZbCywCkxKd756Q40cIQ/veRDwSrw1BF6+4wUgmpm0sBASqVi65A==", + "dev": true, + "requires": { + "gonzales-pe": "^4.2.3", + "postcss": "^7.0.1" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-scss": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.0.0.tgz", + "integrity": "sha512-um9zdGKaDZirMm+kZFKKVsnKPF7zF7qBAtIfTSnZXD1jZ0JNZIxdB6TxQOjCnlSzLRInVl2v3YdBh/M881C4ug==", + "dev": true, + "requires": { + "postcss": "^7.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-selector-parser": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.1.tgz", + "integrity": "sha1-T4dfSvsMllc9XPTXQBGu4lCn6GU=", + "dev": true, + "requires": { + "dot-prop": "^4.1.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-syntax": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", + "dev": true + }, + "postcss-value-parser": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "pretty-format": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz", + "integrity": "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==", + "dev": true, + "requires": { + "@jest/types": "^24.9.0", + "ansi-regex": "^4.0.0", + "ansi-styles": "^3.2.0", + "react-is": "^16.8.4" + } + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true + }, + "private": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", + "dev": true + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true + }, + "prompts": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.2.1.tgz", + "integrity": "sha512-VObPvJiWPhpZI6C5m60XOzTfnYg/xc/an+r9VYymj9WJW3B/DIH+REzjpAACPf8brwPeP+7vz3bIim3S+AaMjw==", + "dev": true, + "requires": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.3" + } + }, + "prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "prop-types-exact": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/prop-types-exact/-/prop-types-exact-1.2.0.tgz", + "integrity": "sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==", + "dev": true, + "requires": { + "has": "^1.0.3", + "object.assign": "^4.1.0", + "reflect.ownkeys": "^0.2.0" + } + }, + "proxy-addr": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", + "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", + "dev": true, + "requires": { + "forwarded": "~0.1.2", + "ipaddr.js": "1.9.0" + } + }, + "proxy-from-env": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", + "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=", + "dev": true + }, + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.4.0.tgz", + "integrity": "sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==", + "dev": true + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "dev": true, + "requires": { + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "puppeteer": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.20.0.tgz", + "integrity": "sha512-bt48RDBy2eIwZPrkgbcwHtb51mj2nKvHOPMaSH2IsWiv7lOG9k9zhaRzpDZafrk05ajMc3cu+lSQYYOfH2DkVQ==", + "dev": true, + "requires": { + "debug": "^4.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^2.2.1", + "mime": "^2.0.3", + "progress": "^2.0.1", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^6.1.0" + }, + "dependencies": { + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + } + } + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", + "dev": true + }, + "quick-lru": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-1.1.0.tgz", + "integrity": "sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=", + "dev": true + }, + "raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "dev": true, + "requires": { + "performance-now": "^2.1.0" + } + }, + "railroad-diagrams": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/railroad-diagrams/-/railroad-diagrams-1.0.0.tgz", + "integrity": "sha1-635iZ1SN3t+4mcG5Dlc3RVnN234=", + "dev": true + }, + "randexp": { + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/randexp/-/randexp-0.4.6.tgz", + "integrity": "sha512-80WNmd9DA0tmZrw9qQa62GPPWfuXJknrmVmLcxvq4uZBdYqb1wYoKTmnlGUchvVWe0XiLupYkBoXVOxz3C8DYQ==", + "dev": true, + "requires": { + "discontinuous-range": "1.0.0", + "ret": "~0.1.10" + } + }, + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.0" + } + }, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", + "dev": true, + "requires": { + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true + }, + "raw-body": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "react": { + "version": "16.9.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.9.0.tgz", + "integrity": "sha512-+7LQnFBwkiw+BobzOF6N//BdoNw0ouwmSJTEm9cglOOmsg/TMiFHZLe2sEoN5M7LgJTj9oHH0gxklfnQe66S1w==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" + } + }, + "react-dom": { + "version": "16.9.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.9.0.tgz", + "integrity": "sha512-YFT2rxO9hM70ewk9jq0y6sQk8cL02xm4+IzYBz75CQGlClQQ1Bxq0nhHF6OtSbit+AIahujJgb/CPRibFkMNJQ==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "scheduler": "^0.15.0" + } + }, + "react-is": { + "version": "16.9.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.9.0.tgz", + "integrity": "sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==", + "dev": true + }, + "react-test-renderer": { + "version": "16.9.0", + "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.9.0.tgz", + "integrity": "sha512-R62stB73qZyhrJo7wmCW9jgl/07ai+YzvouvCXIJLBkRlRqLx4j9RqcLEAfNfU3OxTGucqR2Whmn3/Aad6L3hQ==", + "dev": true, + "requires": { + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "react-is": "^16.9.0", + "scheduler": "^0.15.0" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", + "dev": true, + "requires": { + "pify": "^2.3.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + } + } + }, + "read-pkg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", + "dev": true, + "requires": { + "load-json-file": "^4.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^3.0.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "realpath-native": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz", + "integrity": "sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==", + "dev": true, + "requires": { + "util.promisify": "^1.0.0" + } + }, + "redent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-2.0.0.tgz", + "integrity": "sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo=", + "dev": true, + "requires": { + "indent-string": "^3.0.0", + "strip-indent": "^2.0.0" + } + }, + "reflect.ownkeys": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz", + "integrity": "sha1-dJrO7H8/34tj+SegSAnpDFwLNGA=", + "dev": true + }, + "regenerate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", + "dev": true + }, + "regenerate-unicode-properties": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", + "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", + "dev": true, + "requires": { + "regenerate": "^1.4.0" + } + }, + "regenerator-runtime": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz", + "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==", + "dev": true + }, + "regenerator-transform": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", + "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", + "dev": true, + "requires": { + "private": "^0.1.6" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexp-tree": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.13.tgz", + "integrity": "sha512-hwdV/GQY5F8ReLZWO+W1SRoN5YfpOKY6852+tBFcma72DKBIcHjPRIlIvQN35bCOljuAfP2G2iB0FC/w236mUw==", + "dev": true + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "regexpu-core": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", + "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", + "dev": true, + "requires": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.1.0", + "regjsgen": "^0.5.0", + "regjsparser": "^0.6.0", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.1.0" + } + }, + "regextras": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.6.1.tgz", + "integrity": "sha512-EzIHww9xV2Kpqx+corS/I7OBmf2rZ0pKKJPsw5Dc+l6Zq1TslDmtRIP9maVn3UH+72MIXmn8zzDgP07ihQogUA==", + "dev": true + }, + "regjsgen": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.0.tgz", + "integrity": "sha512-RnIrLhrXCX5ow/E5/Mh2O4e/oa1/jW0eaBKTSy3LaCj+M3Bqvm97GWDp2yUtzIs4LEn65zR2yiYGFqb2ApnzDA==", + "dev": true + }, + "regjsparser": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", + "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", + "dev": true, + "requires": { + "jsesc": "~0.5.0" + }, + "dependencies": { + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + } + } + }, + "remark": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/remark/-/remark-10.0.1.tgz", + "integrity": "sha512-E6lMuoLIy2TyiokHprMjcWNJ5UxfGQjaMSMhV+f4idM625UjjK4j798+gPs5mfjzDE6vL0oFKVeZM6gZVSVrzQ==", + "dev": true, + "requires": { + "remark-parse": "^6.0.0", + "remark-stringify": "^6.0.0", + "unified": "^7.0.0" + } + }, + "remark-parse": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-6.0.3.tgz", + "integrity": "sha512-QbDXWN4HfKTUC0hHa4teU463KclLAnwpn/FBn87j9cKYJWWawbiLgMfP2Q4XwhxxuuuOxHlw+pSN0OKuJwyVvg==", + "dev": true, + "requires": { + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^1.1.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^1.0.0", + "vfile-location": "^2.0.0", + "xtend": "^4.0.1" + } + }, + "remark-stringify": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-6.0.4.tgz", + "integrity": "sha512-eRWGdEPMVudijE/psbIDNcnJLRVx3xhfuEsTDGgH4GsFF91dVhw5nhmnBppafJ7+NWINW6C7ZwWbi30ImJzqWg==", + "dev": true, + "requires": { + "ccount": "^1.0.0", + "is-alphanumeric": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "longest-streak": "^2.0.1", + "markdown-escapes": "^1.0.0", + "markdown-table": "^1.1.0", + "mdast-util-compact": "^1.0.0", + "parse-entities": "^1.0.2", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "stringify-entities": "^1.0.1", + "unherit": "^1.0.4", + "xtend": "^4.0.1" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "replace-ext": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + } + } + }, + "request-promise-core": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", + "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "request-promise-native": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", + "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", + "dev": true, + "requires": { + "request-promise-core": "1.1.2", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "requireindex": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", + "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", + "dev": true + }, + "resolve": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", + "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", + "dev": true, + "requires": { + "path-parse": "^1.0.6" + } + }, + "resolve-bin": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/resolve-bin/-/resolve-bin-0.4.0.tgz", + "integrity": "sha1-RxMiSYkRAa+xmZH+k3ywpfBy5dk=", + "dev": true, + "requires": { + "find-parent-dir": "~0.3.0" + } + }, + "resolve-cwd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", + "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "dev": true, + "requires": { + "resolve-from": "^3.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", + "dev": true + } + } + }, + "resolve-dir": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-0.1.1.tgz", + "integrity": "sha1-shklmlYC+sXFxJatiUpujMQwJh4=", + "dev": true, + "requires": { + "expand-tilde": "^1.2.2", + "global-modules": "^0.2.3" + } + }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "dev": true, + "requires": { + "hash-base": "^3.0.0", + "inherits": "^2.0.1" + } + }, + "rst-selector-parser": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/rst-selector-parser/-/rst-selector-parser-2.2.3.tgz", + "integrity": "sha1-gbIw6i/MYGbInjRy3nlChdmwPZE=", + "dev": true, + "requires": { + "lodash.flattendeep": "^4.4.0", + "nearley": "^2.7.10" + } + }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "dev": true + }, + "rtlcss": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-2.4.0.tgz", + "integrity": "sha512-hdjFhZ5FCI0ABOfyXOMOhBtwPWtANLCG7rOiOcRf+yi5eDdxmDjqBruWouEnwVdzfh/TWF6NNncIEsigOCFZOA==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "findup": "^0.1.5", + "mkdirp": "^0.5.1", + "postcss": "^6.0.14", + "strip-json-comments": "^2.0.0" + } + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, + "run-parallel": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.9.tgz", + "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", + "dev": true + }, + "run-queue": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", + "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "dev": true, + "requires": { + "aproba": "^1.1.1" + } + }, + "rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", + "dev": true + }, + "rxjs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", + "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "safe-json-parse": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", + "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sane": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", + "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", + "dev": true, + "requires": { + "@cnakazawa/watch": "^1.0.3", + "anymatch": "^2.0.0", + "capture-exit": "^2.0.0", + "exec-sh": "^0.3.2", + "execa": "^1.0.0", + "fb-watchman": "^2.0.0", + "micromatch": "^3.1.4", + "minimist": "^1.1.1", + "walker": "~1.0.5" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "scheduler": { + "version": "0.15.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.15.0.tgz", + "integrity": "sha512-xAefmSfN6jqAa7Kuq7LIJY0bwAPG3xlCj0HMEBQk1lxYiDKZscY2xJ5U/61ZTrYbmNQbXa+gc7czPkVo11tnCg==", + "dev": true, + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "serialize-javascript": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.9.1.tgz", + "integrity": "sha512-0Vb/54WJ6k5v8sSWN09S0ora+Hnr+cX40r9F170nT+mSkaxltoE/7R3OrIdBSUv1OoiobH1QoWQbCnAO+e8J1A==", + "dev": true + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + }, + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" + } + }, + "shallow-clone": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", + "dev": true, + "requires": { + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" + }, + "dependencies": { + "kind-of": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "dev": true, + "requires": { + "is-buffer": "^1.0.2" + } + }, + "lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=", + "dev": true + } + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "shellwords": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "sisteransi": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.3.tgz", + "integrity": "sha512-SbEG75TzH8G7eVXFSN5f9EExILKfly7SUvVY5DhhYLvfhKqhDFY0OzevWa/zwak0RLRfWS5AvfMWpd9gJvr5Yg==", + "dev": true + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-loader": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", + "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", + "dev": true, + "requires": { + "async": "^2.5.0", + "loader-utils": "^1.1.0" + } + }, + "source-map-resolve": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", + "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "dev": true, + "requires": { + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", + "dev": true + }, + "spawn-command": { + "version": "0.0.2-1", + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2-1.tgz", + "integrity": "sha1-YvXpRmmBwbeW3Fkpk34RycaSG9A=", + "dev": true + }, + "spawnd": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spawnd/-/spawnd-4.0.0.tgz", + "integrity": "sha512-ql3qhJnhAkvXpaqKBWOqou1rUTSQhFRaZkyOT+MTFB4xY3X+brgw6LTWV2wHuE9A6YPhrNe1cbg7S+jAYnbC0Q==", + "dev": true, + "requires": { + "exit": "^0.1.2", + "signal-exit": "^3.0.2", + "tree-kill": "^1.2.1", + "wait-port": "^0.2.2" + } + }, + "spdx-correct": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", + "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "dev": true + }, + "specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "ssri": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-5.3.0.tgz", + "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", + "dev": true, + "requires": { + "safe-buffer": "^5.1.1" + } + }, + "stack-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", + "dev": true + }, + "state-toggle": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.2.tgz", + "integrity": "sha512-8LpelPGR0qQM4PnfLiplOQNJcIN1/r2Gy0xKB2zKnIW2YzPMt2sR4I/+gtPjhN7Svh9kw+zqEg2SFwpBO9iNiw==", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "dependencies": { + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + } + } + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + }, + "stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", + "dev": true + }, + "stream-browserify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", + "dev": true, + "requires": { + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" + } + }, + "stream-each": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", + "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" + } + }, + "stream-http": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", + "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", + "dev": true, + "requires": { + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" + } + }, + "stream-shift": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true + }, + "string-length": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", + "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", + "dev": true, + "requires": { + "astral-regex": "^1.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string-template": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", + "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "string.prototype.trim": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz", + "integrity": "sha512-9EIjYD/WdlvLpn987+ctkLf0FfvBefOCuiEr2henD8X+7jfwPnyvTdmW8OJhj5p+M0/96mBdynLWkxUr+rHlpg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.13.0", + "function-bind": "^1.1.1" + } + }, + "string.prototype.trimleft": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz", + "integrity": "sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "string.prototype.trimright": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz", + "integrity": "sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "stringify-entities": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-1.3.2.tgz", + "integrity": "sha512-nrBAQClJAPN2p+uGCVJRPIPakKeKWZ9GtBCmormE7pWOSlHat7+x5A8gx85M7HM5Dt0BP3pP5RhVW77WdbJJ3A==", + "dev": true, + "requires": { + "character-entities-html4": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=", + "dev": true + }, + "stylelint": { + "version": "9.10.1", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-9.10.1.tgz", + "integrity": "sha512-9UiHxZhOAHEgeQ7oLGwrwoDR8vclBKlSX7r4fH0iuu0SfPwFaLkb1c7Q2j1cqg9P7IDXeAV2TvQML/fRQzGBBQ==", + "dev": true, + "requires": { + "autoprefixer": "^9.0.0", + "balanced-match": "^1.0.0", + "chalk": "^2.4.1", + "cosmiconfig": "^5.0.0", + "debug": "^4.0.0", + "execall": "^1.0.0", + "file-entry-cache": "^4.0.0", + "get-stdin": "^6.0.0", + "global-modules": "^2.0.0", + "globby": "^9.0.0", + "globjoin": "^0.1.4", + "html-tags": "^2.0.0", + "ignore": "^5.0.4", + "import-lazy": "^3.1.0", + "imurmurhash": "^0.1.4", + "known-css-properties": "^0.11.0", + "leven": "^2.1.0", + "lodash": "^4.17.4", + "log-symbols": "^2.0.0", + "mathml-tag-names": "^2.0.1", + "meow": "^5.0.0", + "micromatch": "^3.1.10", + "normalize-selector": "^0.2.0", + "pify": "^4.0.0", + "postcss": "^7.0.13", + "postcss-html": "^0.36.0", + "postcss-jsx": "^0.36.0", + "postcss-less": "^3.1.0", + "postcss-markdown": "^0.36.0", + "postcss-media-query-parser": "^0.2.3", + "postcss-reporter": "^6.0.0", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^4.0.0", + "postcss-sass": "^0.3.5", + "postcss-scss": "^2.0.0", + "postcss-selector-parser": "^3.1.0", + "postcss-syntax": "^0.36.2", + "postcss-value-parser": "^3.3.0", + "resolve-from": "^4.0.0", + "signal-exit": "^3.0.2", + "slash": "^2.0.0", + "specificity": "^0.4.1", + "string-width": "^3.0.0", + "style-search": "^0.1.0", + "sugarss": "^2.0.0", + "svg-tags": "^1.0.0", + "table": "^5.0.0" + }, + "dependencies": { + "file-entry-cache": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-4.0.0.tgz", + "integrity": "sha512-AVSwsnbV8vH/UVbvgEhf3saVQXORNv0ZzSkvkhQIaia5Tia+JhGTaa/ePUSVoPHQyGayQNmYfkzFi3WZV5zcpA==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + }, + "ignore": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.4.tgz", + "integrity": "sha512-MzbUSahkTW1u7JpKKjY7LCARd1fU5W2rLdxlM4kdkayuCwZImjkpluF9CM1aLewYJguPDqewLam18Y6AU69A8A==", + "dev": true + }, + "leven": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", + "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "stylelint-a11y": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/stylelint-a11y/-/stylelint-a11y-1.2.1.tgz", + "integrity": "sha512-yfH6ibVkfAlAt7J5ExrzpBPFCSWDTxBL9svdFZ6BfGF5hRmFgTS03x4r/rBAAaNDpgKE32CQz5qcLbgOLzuxfA==", + "dev": true + }, + "stylelint-config-recommended": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-2.2.0.tgz", + "integrity": "sha512-bZ+d4RiNEfmoR74KZtCKmsABdBJr4iXRiCso+6LtMJPw5rd/KnxUWTxht7TbafrTJK1YRjNgnN0iVZaJfc3xJA==", + "dev": true + }, + "stylelint-config-recommended-scss": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-3.3.0.tgz", + "integrity": "sha512-BvuuLYwoet8JutOP7K1a8YaiENN+0HQn390eDi0SWe1h7Uhx6O3GUQ6Ubgie9b/AmHX4Btmp+ZzVGbzriFTBcA==", + "dev": true, + "requires": { + "stylelint-config-recommended": "^2.2.0" + } + }, + "stylelint-config-wordpress": { + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/stylelint-config-wordpress/-/stylelint-config-wordpress-13.1.0.tgz", + "integrity": "sha512-dpKj2/d3/XjDVoOvQzd54GoM8Rj5zldluOZKkVhBCc4JYMc6r1VYL5hpcgIjqy/i2Hyqg4Rh7zTafE/2AWq//w==", + "dev": true, + "requires": { + "stylelint-config-recommended": "^2.1.0", + "stylelint-config-recommended-scss": "^3.2.0", + "stylelint-scss": "^3.3.0" + } + }, + "stylelint-scss": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-3.11.0.tgz", + "integrity": "sha512-2rA9hV8+ebvzGyRBQt/KCLDS1o11SEVRzOBlhAbqk4u1PVnWcjUhRhKIGGGWcyM4QE9t+YWivbnq6kjdeHg2Nw==", + "dev": true, + "requires": { + "lodash": "^4.17.15", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", + "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-value-parser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.0.2.tgz", + "integrity": "sha512-LmeoohTpp/K4UiyQCwuGWlONxXamGzCMtFxLq4W1nZVGIQLYvMCJx3yAF9qyyuFpflABI9yVdtJAqbihOsCsJQ==", + "dev": true + } + } + }, + "sugarss": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", + "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.18", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.18.tgz", + "integrity": "sha512-/7g1QXXgegpF+9GJj4iN7ChGF40sYuGYJ8WZu8DZWnmhQ/G36hfdk3q9LBJmoK+lZ+yzZ5KYpOoxq7LF1BxE8g==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", + "dev": true + }, + "symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "dev": true + }, + "table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "dependencies": { + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + } + } + }, + "tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true + }, + "test-exclude": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", + "dev": true, + "requires": { + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "read-pkg-up": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", + "dev": true, + "requires": { + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" + } + } + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "thread-loader": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/thread-loader/-/thread-loader-2.1.3.tgz", + "integrity": "sha512-wNrVKH2Lcf8ZrWxDF/khdlLlsTMczdcwPA9VEK4c2exlEPynYWxi9op3nPTo5lAnDIkE0rQEB3VBP+4Zncc9Hg==", + "dev": true, + "requires": { + "loader-runner": "^2.3.1", + "loader-utils": "^1.1.0", + "neo-async": "^2.6.0" + } + }, + "throat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "timers-browserify": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "dev": true, + "requires": { + "setimmediate": "^1.0.4" + } + }, + "tiny-lr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", + "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", + "dev": true, + "requires": { + "body": "^5.1.0", + "debug": "^3.1.0", + "faye-websocket": "~0.10.0", + "livereload-js": "^2.3.0", + "object-assign": "^4.1.0", + "qs": "^6.4.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } + } + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "tmpl": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", + "dev": true + }, + "to-arraybuffer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true + }, + "touch": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/touch/-/touch-0.0.3.tgz", + "integrity": "sha1-Ua7z1ElXHU8oel2Hyci0kYGg2x0=", + "dev": true, + "requires": { + "nopt": "~1.0.10" + }, + "dependencies": { + "nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", + "dev": true, + "requires": { + "abbrev": "1" + } + } + } + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", + "dev": true + }, + "tree-kill": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.1.tgz", + "integrity": "sha512-4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q==", + "dev": true + }, + "trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=", + "dev": true + }, + "trim-newlines": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", + "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", + "dev": true + }, + "trim-right": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", + "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", + "dev": true + }, + "trim-trailing-lines": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.2.tgz", + "integrity": "sha512-MUjYItdrqqj2zpcHFTkMa9WAv4JHTI6gnRQGPFLrt5L9a6tRMiDnIqYl8JBvu2d2Tc3lWJKQwlGCp0K8AvCM+Q==", + "dev": true + }, + "trough": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.4.tgz", + "integrity": "sha512-tdzBRDGWcI1OpPVmChbdSKhvSVurznZ8X36AYURAcl+0o2ldlCY2XPzyXNNxwJwwyIU+rIglTCG4kxtNKBQH7Q==", + "dev": true + }, + "tryer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz", + "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==", + "dev": true + }, + "tslib": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", + "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", + "dev": true + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dev": true, + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "uglify-es": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", + "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "dev": true, + "requires": { + "commander": "~2.13.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", + "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", + "dev": true + } + } + }, + "uglifyjs-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", + "dev": true, + "requires": { + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "schema-utils": "^0.4.5", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "uglify-es": "^3.3.4", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + } + }, + "unherit": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.2.tgz", + "integrity": "sha512-W3tMnpaMG7ZY6xe/moK04U9fBhi6wEiCYHUW5Mop/wQHf12+79EQGwxYejNdhEz2mkqkBlGwm7pxmgBKMVUj0w==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "xtend": "^4.0.1" + } + }, + "unicode-canonical-property-names-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", + "dev": true + }, + "unicode-match-property-ecmascript": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", + "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", + "dev": true, + "requires": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + } + }, + "unicode-match-property-value-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", + "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", + "dev": true + }, + "unicode-property-aliases-ecmascript": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", + "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", + "dev": true + }, + "unified": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-7.1.0.tgz", + "integrity": "sha512-lbk82UOIGuCEsZhPj8rNAkXSDXd6p0QLzIuSsCdxrqnqU56St4eyOB+AlXsVgVeRmetPTYydIuvFfpDIed8mqw==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "@types/vfile": "^3.0.0", + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-plain-obj": "^1.1.0", + "trough": "^1.0.0", + "vfile": "^3.0.0", + "x-is-string": "^0.1.0" + } + }, + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "^2.0.0" + } + }, + "unique-slug": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", + "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "unist-util-find-all-after": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-1.0.4.tgz", + "integrity": "sha512-CaxvMjTd+yF93BKLJvZnEfqdM7fgEACsIpQqz8vIj9CJnUb9VpyymFS3tg6TCtgrF7vfCJBF5jbT2Ox9CBRYRQ==", + "dev": true, + "requires": { + "unist-util-is": "^3.0.0" + } + }, + "unist-util-is": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-3.0.0.tgz", + "integrity": "sha512-sVZZX3+kspVNmLWBPAB6r+7D9ZgAFPNWm66f7YNb420RlQSbn+n8rG8dGZSkrER7ZIXGQYNm5pqC3v3HopH24A==", + "dev": true + }, + "unist-util-remove-position": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.3.tgz", + "integrity": "sha512-CtszTlOjP2sBGYc2zcKA/CvNdTdEs3ozbiJ63IPBxh8iZg42SCCb8m04f8z2+V1aSk5a7BxbZKEdoDjadmBkWA==", + "dev": true, + "requires": { + "unist-util-visit": "^1.1.0" + } + }, + "unist-util-stringify-position": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-1.1.2.tgz", + "integrity": "sha512-pNCVrk64LZv1kElr0N1wPiHEUoXNVFERp+mlTg/s9R5Lwg87f9bM/3sQB99w+N9D/qnM9ar3+AKDBwo/gm/iQQ==", + "dev": true + }, + "unist-util-visit": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.1.tgz", + "integrity": "sha512-AvGNk7Bb//EmJZyhtRUnNMEpId/AZ5Ph/KUpTI09WHQuDZHKovQ1oEv3mfmKpWKtoMzyMC4GLBm1Zy5k12fjIw==", + "dev": true, + "requires": { + "unist-util-visit-parents": "^2.0.0" + } + }, + "unist-util-visit-parents": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.1.2.tgz", + "integrity": "sha512-DyN5vD4NE3aSeB+PXYNKxzGsfocxp6asDc2XXE3b0ekO2BaRUpBicbbUygfSvYfUz1IkmjFR1YF7dPklraMZ2g==", + "dev": true, + "requires": { + "unist-util-is": "^3.0.0" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "dev": true, + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", + "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.3.tgz", + "integrity": "sha512-pW0No1RGHgzlpHJO1nsVrHKpOEIxkGg1xB+v0ZmdNH5OAeAwzAVrCnI2/6Mtx+Uys6iaylxa+D3g4j63IKKjSQ==", + "dev": true + }, + "v8-compile-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", + "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "validator": { + "version": "10.11.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-10.11.0.tgz", + "integrity": "sha512-X/p3UZerAIsbBfN/IwahhYaBbY68EN/UQBWHtsbXGT5bfrH/p4NQzUCG1kF/rtKaNpnJ7jAu6NGTdSNtyNIXMw==", + "dev": true + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "vfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-3.0.1.tgz", + "integrity": "sha512-y7Y3gH9BsUSdD4KzHsuMaCzRjglXN0W2EcMf0gpvu6+SbsGhMje7xDc8AEoeXy6mIwCKMI6BkjMsRjzQbhMEjQ==", + "dev": true, + "requires": { + "is-buffer": "^2.0.0", + "replace-ext": "1.0.0", + "unist-util-stringify-position": "^1.0.0", + "vfile-message": "^1.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", + "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==", + "dev": true + } + } + }, + "vfile-location": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-2.0.5.tgz", + "integrity": "sha512-Pa1ey0OzYBkLPxPZI3d9E+S4BmvfVwNAAXrrqGbwTVXWaX2p9kM1zZ+n35UtVM06shmWKH4RPRN8KI80qE3wNQ==", + "dev": true + }, + "vfile-message": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-1.1.1.tgz", + "integrity": "sha512-1WmsopSGhWt5laNir+633LszXvZ+Z/lxveBf6yhGsqnQIhlhzooZae7zV6YVM1Sdkw68dtAW3ow0pOdPANugvA==", + "dev": true, + "requires": { + "unist-util-stringify-position": "^1.1.1" + } + }, + "vm-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.0.tgz", + "integrity": "sha512-iq+S7vZJE60yejDYM0ek6zg308+UZsdtPExWP9VZoCFCz1zkJoXFnAX7aZfd/ZwrkidzdUZL0C/ryW+JwAiIGw==", + "dev": true + }, + "w3c-hr-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", + "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", + "dev": true, + "requires": { + "browser-process-hrtime": "^0.1.2" + } + }, + "wait-on": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-3.3.0.tgz", + "integrity": "sha512-97dEuUapx4+Y12aknWZn7D25kkjMk16PbWoYzpSdA8bYpVfS6hpl2a2pOWZ3c+Tyt3/i4/pglyZctG3J4V1hWQ==", + "dev": true, + "requires": { + "@hapi/joi": "^15.0.3", + "core-js": "^2.6.5", + "minimist": "^1.2.0", + "request": "^2.88.0", + "rx": "^4.1.0" + }, + "dependencies": { + "core-js": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", + "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==", + "dev": true + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } + }, + "wait-port": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/wait-port/-/wait-port-0.2.2.tgz", + "integrity": "sha1-1RpJHkhKF791qUfnEaLwErTm8uM=", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "commander": "^2.9.0", + "debug": "^2.6.6" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "walker": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", + "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", + "dev": true, + "requires": { + "makeerror": "1.0.x" + } + }, + "watchpack": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", + "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "dev": true, + "requires": { + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" + } + }, + "webassemblyjs": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.4.3.tgz", + "integrity": "sha512-4lOV1Lv6olz0PJkDGQEp82HempAn147e6BXijWDzz9g7/2nSebVP9GVg62Fz5ZAs55mxq13GA0XLyvY8XkyDjg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/validation": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "@webassemblyjs/wast-parser": "1.4.3", + "long": "^3.2.0" + } + }, + "webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true + }, + "webpack": { + "version": "4.8.3", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.8.3.tgz", + "integrity": "sha512-/hfAjBISycdK597lxONjKEFX7dSIU1PsYwC3XlXUXoykWBlv9QV5HnO+ql3HvrrgfBJ7WXdnjO9iGPR2aAc5sw==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.4.3", + "@webassemblyjs/wasm-edit": "1.4.3", + "@webassemblyjs/wasm-parser": "1.4.3", + "acorn": "^5.0.0", + "acorn-dynamic-import": "^3.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^0.1.1", + "enhanced-resolve": "^4.0.0", + "eslint-scope": "^3.7.1", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^0.4.4", + "tapable": "^1.0.0", + "uglifyjs-webpack-plugin": "^1.2.4", + "watchpack": "^1.5.0", + "webpack-sources": "^1.0.1" + } + }, + "webpack-bundle-analyzer": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.5.0.tgz", + "integrity": "sha512-NzueflueLSJxWGzDlMq5oUV+P8Qoq6yiaQlXGCbDYUpHEKlmzWdPLBJ4k/B6HTdAP/vHM8ply1Fx08mDnY+S8Q==", + "dev": true, + "requires": { + "acorn": "^6.0.7", + "acorn-walk": "^6.1.1", + "bfj": "^6.1.1", + "chalk": "^2.4.1", + "commander": "^2.18.0", + "ejs": "^2.6.1", + "express": "^4.16.3", + "filesize": "^3.6.1", + "gzip-size": "^5.0.0", + "lodash": "^4.17.15", + "mkdirp": "^0.5.1", + "opener": "^1.5.1", + "ws": "^6.0.0" + }, + "dependencies": { + "acorn": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz", + "integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA==", + "dev": true + }, + "commander": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", + "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==", + "dev": true + }, + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + } + } + }, + "webpack-cli": { + "version": "3.3.9", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.9.tgz", + "integrity": "sha512-xwnSxWl8nZtBl/AFJCOn9pG7s5CYUYdZxmmukv+fAHLcBIHM36dImfpQg3WfShZXeArkWlf6QRw24Klcsv8a5A==", + "dev": true, + "requires": { + "chalk": "2.4.2", + "cross-spawn": "6.0.5", + "enhanced-resolve": "4.1.0", + "findup-sync": "3.0.0", + "global-modules": "2.0.0", + "import-local": "2.0.0", + "interpret": "1.2.0", + "loader-utils": "1.2.3", + "supports-color": "6.1.0", + "v8-compile-cache": "2.0.3", + "yargs": "13.2.4" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "v8-compile-cache": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.3.tgz", + "integrity": "sha512-CNmdbwQMBjwr9Gsmohvm0pbL954tJrNzf6gWL3K+QMQf00PF7ERGrEiLgjuU3mKreLC2MeGhUsNV9ybTbLgd3w==", + "dev": true + }, + "yargs": { + "version": "13.2.4", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.2.4.tgz", + "integrity": "sha512-HG/DWAJa1PAnHT9JAhNa8AbAv3FPaiLzioSjCcmuXXhP8MlpHO5vwls4g4j6n30Z74GVQj8Xa62dWVx1QCGklg==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "os-locale": "^3.1.0", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.0" + } + } + } + }, + "webpack-livereload-plugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/webpack-livereload-plugin/-/webpack-livereload-plugin-2.2.0.tgz", + "integrity": "sha512-sx9xA5mHoNOUgLQI0PmXT3KV9ecsVmUaTgr+fsoL69qAOHw/7VzkL1+ZMDQ8n0dPbWounswK6cBRSgMod7Nhgg==", + "dev": true, + "requires": { + "portfinder": "^1.0.17", + "tiny-lr": "^1.1.1" + } + }, + "webpack-sources": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", + "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + }, + "websocket-driver": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", + "integrity": "sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==", + "dev": true, + "requires": { + "http-parser-js": ">=0.4.0 <0.4.11", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + } + }, + "websocket-extensions": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", + "dev": true + }, + "whatwg-encoding": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", + "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", + "dev": true, + "requires": { + "iconv-lite": "0.4.24" + } + }, + "whatwg-mimetype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", + "dev": true + }, + "whatwg-url": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", + "dev": true, + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true + }, + "worker-farm": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", + "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", + "dev": true, + "requires": { + "errno": "~0.1.7" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + }, + "write-file-atomic": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz", + "integrity": "sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" + } + }, + "ws": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, + "x-is-string": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/x-is-string/-/x-is-string-0.1.0.tgz", + "integrity": "sha1-R0tQhlrzpJqcRlfwWs0UVFj3fYI=", + "dev": true + }, + "xml-name-validator": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + }, + "yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", + "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + } + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "yauzl": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", + "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", + "dev": true, + "requires": { + "fd-slicer": "~1.0.1" + } + } + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/package.json b/srcs/wordpress/wp-content/themes/twentytwenty/package.json new file mode 100644 index 0000000..ba74d72 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/package.json @@ -0,0 +1,59 @@ +{ + "name": "twentytwenty", + "version": "1.0.0", + "description": "Default WP Theme", + "author": "The WordPress Contributors", + "license": "GPL-2.0-or-later", + "keywords": [ + "WordPress", + "Theme", + "TwentyTwenty" + ], + "homepage": "https://github.com/wordpress/twentytwenty#readme", + "repository": { + "type": "git", + "url": "git+https://github.com/wordpress/twentytwenty.git" + }, + "bugs": { + "url": "https://github.com/wordpress/twentytwenty/issues" + }, + "devDependencies": { + "@wordpress/browserslist-config": "^2.6.0", + "@wordpress/scripts": "^5.0.0", + "autoprefixer": "^9.6.1", + "concurrently": "^4.1.2", + "postcss-cli": "^6.1.3", + "rtlcss": "^2.4.0", + "stylelint-a11y": "^1.2.1" + }, + "browserslist": [ + "extends @wordpress/browserslist-config" + ], + "rtlcssConfig": { + "options": { + "autoRename": false, + "autoRenameStrict": false, + "blacklist": {}, + "clean": true, + "greedy": false, + "processUrls": false, + "stringMap": [] + }, + "plugins": [], + "map": false + }, + "scripts": { + "build": "npm run build:vendor-prefixes && npm run build:rtl", + "build:rtl": "concurrently \"npm run build:rtl-style\" \"npm run build:rtl-esb\" \"npm run build:rtl-esc\"", + "build:rtl-style": "rtlcss style.css style-rtl.css", + "build:rtl-esb": "rtlcss assets/css/editor-style-block.css assets/css/editor-style-block-rtl.css", + "build:rtl-esc": "rtlcss assets/css/editor-style-classic.css assets/css/editor-style-classic-rtl.css", + "build:vendor-prefixes": "concurrently \"npm run build:vendor-prefixes-style\" \"npm run build:vendor-prefixes-esb\" \"npm run build:vendor-prefixes-esc\"", + "build:vendor-prefixes-style": "postcss -r --no-map style.css assets/css/editor-style-block.css assets/css/editor-style-classic.css", + "build:vendor-prefixes-esb": "postcss -r --no-map assets/css/editor-style-block.css ", + "build:vendor-prefixes-esc": "postcss -r --no-map assets/css/editor-style-classic.css", + "lint:css": "wp-scripts lint-style 'style.css' 'assets/**/*.css'", + "lint:js": "wp-scripts lint-js 'assets/**/*.js'", + "lint:pkg-json": "wp-scripts lint-pkg-json" + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/print.css b/srcs/wordpress/wp-content/themes/twentytwenty/print.css new file mode 100644 index 0000000..0ab0ce9 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/print.css @@ -0,0 +1,165 @@ +@charset "UTF-8"; + +/* +Theme Name: Twenty Twenty +Adding print support. The print styles are based on the the great work of +Andreas Hecht in https://www.jotform.com/blog/css-perfect-print-stylesheet-98272/. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- +# Margins +# Paddings +# Width +# Typography +# Page breaks +# Links +# Visibility +--------------------------------------------------------------*/ +@media print { + + /* Margins */ + + @page { + margin: 2cm; + } + + .entry-header, + .site-footer { + margin: 0; + } + + /* Paddings */ + + .posts { + padding: 0; + } + + /* Width */ + + .entry-content, + .entry-content p, + .section-inner, + .section-inner.max-percentage, + .section-inner.medium, + .section-inner.small, + .section-inner.thin { + max-width: 100%; + width: 100%; + } + + /* Fonts */ + + body { + background: #fff !important; + color: #000; + font: 13pt Georgia, "Times New Roman", Times, serif; + line-height: 1.3; + } + + h1 { + font-size: 20pt; + } + + h2, + h2.entry-title, + h3, + h4, + .has-normal-font-size, + .has-regular-font-size, + .has-large-font-size, + .comments-header { + font-size: 14pt; + margin-top: 1cm; + } + + /* Page breaks */ + + a { + page-break-inside: avoid; + } + + blockquote { + page-break-inside: avoid; + } + + h1, + h2, + h3, + h4, + h5, + h6 { + page-break-after: avoid; + page-break-inside: avoid; + } + + img { + page-break-inside: avoid; + page-break-after: avoid; + } + + table, + pre { + page-break-inside: avoid; + } + + ul, + ol, + dl { + page-break-before: avoid; + } + + /* Links */ + + a:link, + a:visited, + a { + background: transparent; + font-weight: bold; + text-decoration: underline; + } + + a { + page-break-inside: avoid; + } + + a[href^="http"]:after { + content: " < " attr(href) "> "; + } + + a:after > img { + content: ""; + } + + article a[href^="#"]:after { + content: ""; + } + + a:not(:local-link):after { + content: " < " attr(href) "> "; + } + + /* Visibility */ + + #site-header, + .comment-form, + .comments-wrapper, + .comment .comment-metadata, + .footer-social-wrapper, + .footer-widgets-outer-wrapper, + .header-navigation-wrapper, + .pagination-wrapper, + .post-meta-wrapper.post-meta-single-bottom, + .post-separator, + .site-logo img { + display: none; + } + + .entry-content .wp-block-button .wp-block-button__link, + .entry-content .wp-block-button .wp-block-file__button, + .entry-content .button { + background: none; + color: #000; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/readme.txt b/srcs/wordpress/wp-content/themes/twentytwenty/readme.txt new file mode 100644 index 0000000..7da915b --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/readme.txt @@ -0,0 +1,98 @@ +=== Twenty Twenty === +Contributors: the WordPress team +Tested up to: 5.3 +Stable tag: 1.1 +License: GPLv2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html + +Default theme for 2020. + +== Description == + +Our default theme for 2020 is designed to take full advantage of the +flexibility of the block editor. Organizations and businesses have the +ability to create dynamic landing pages with endless layouts using the +group and column blocks. The centered content column and fine-tuned +typography also makes it perfect for traditional blogs. Complete editor +styles give you a good idea of what your content will look like, even +before you publish. You can give your site a personal touch by changing +the background colors and the accent color in the Customizer. The colors of +all elements on your site are automatically calculated based on the colors +you pick, ensuring a high, accessible color contrast for your visitors. + +== Changelog == + += 1.1 = +* Released: December 12, 2019 + +https://wordpress.org/support/article/twenty-twenty-changelog/ + += 1.0 = +* Released: November 12, 2019 + +Initial release + +== Copyright == + +Twenty Twenty WordPress Theme, Copyright 2019 WordPress.org +Twenty Twenty is distributed under the terms of the GNU GPL. + +This program is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +Twenty Twenty is derived from the Chaplin Theme, Copyright 2019 Anders Norén +Chaplin Theme is distributed under the terms of the GNU GPL version 2.0 + +Twenty Twenty bundles the following third-party resources: + +Illustrations in screenshot.png by Tammie Lister +License: Creative Commons Zero (CC0), https://creativecommons.org/publicdomain/zero/1.0/ + +Inter Font +Copyright (c) 2016-2019 The Inter Project Authors (me@rsms.me) +License: SIL Open Font License, 1.1, https://opensource.org/licenses/OFL-1.1 +Source: https://rsms.me/inter/ + +Bespoke Icons Created For Twenty Twenty +License: Creative Commons Zero (CC0), https://creativecommons.org/publicdomain/zero/1.0/ +List of bespoke icons: +- Search icon +- Menu icon + +Feather Icons +Copyright (c) 2013-2017 Cole Bemis +License: MIT License, https://opensource.org/licenses/MIT +Source: https://feathericons.com +Used for post meta icons, and the link icon in the social menu. + +Social Icons +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html +Source: WordPress Social Link Block (See wp-includes\blocks\social-link.php) + +Code from Twenty Nineteen +Copyright (c) 2018-2019 WordPress.org +License: GPLv2 +Source: https://wordpress.org/themes/twentynineteen/ +Included as part of the following classes and functions: +- TwentyTwenty_SVG_Icons +- twentytwenty_the_theme_svg() +- twentytwenty_get_theme_svg() +- twentytwenty_nav_menu_social_icons() + +Code from Twenty Seventeen +Copyright (c) 2016-2019 WordPress.org +License: GPLv2 +Source: https://wordpress.org/themes/twentyseventeen/ +Included as part of the following classes and functions: +- twentytwenty_unique_id() + +Underscores +https://underscores.me/, (C) 2012-2019 Automattic, Inc., [GPLv2 or later](https://www.gnu.org/licenses/gpl-2.0.html) diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/screenshot.png b/srcs/wordpress/wp-content/themes/twentytwenty/screenshot.png new file mode 100644 index 0000000..c2359ec Binary files /dev/null and b/srcs/wordpress/wp-content/themes/twentytwenty/screenshot.png differ diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/searchform.php b/srcs/wordpress/wp-content/themes/twentytwenty/searchform.php new file mode 100644 index 0000000..21e6efb --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/searchform.php @@ -0,0 +1,28 @@ +<?php +/** + * The searchform.php template. + * + * Used any time that get_search_form() is called. + * + * @link https://developer.wordpress.org/themes/basics/template-hierarchy/ + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +/* + * Generate a unique ID for each form and a string containing an aria-label if + * one was passed to get_search_form() in the args array. + */ +$unique_id = twentytwenty_unique_id( 'search-form-' ); + +$aria_label = ! empty( $args['label'] ) ? 'aria-label="' . esc_attr( $args['label'] ) . '"' : ''; +?> +<form role="search" <?php echo $aria_label; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Escaped above. ?> method="get" class="search-form" action="<?php echo esc_url( home_url( '/' ) ); ?>"> + <label for="<?php echo esc_attr( $unique_id ); ?>"> + <span class="screen-reader-text"><?php _e( 'Search for:', 'twentytwenty' ); // phpcs:ignore: WordPress.Security.EscapeOutput.UnsafePrintingFunction -- core trusts translations ?></span> + <input type="search" id="<?php echo esc_attr( $unique_id ); ?>" class="search-field" placeholder="<?php echo esc_attr_x( 'Search …', 'placeholder', 'twentytwenty' ); ?>" value="<?php echo get_search_query(); ?>" name="s" /> + </label> + <input type="submit" class="search-submit" value="<?php echo esc_attr_x( 'Search', 'submit button', 'twentytwenty' ); ?>" /> +</form> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/singular.php b/srcs/wordpress/wp-content/themes/twentytwenty/singular.php new file mode 100644 index 0000000..fcd8875 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/singular.php @@ -0,0 +1,34 @@ +<?php +/** + * The template for displaying single posts and pages. + * + * @link https://developer.wordpress.org/themes/basics/template-hierarchy/ + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +get_header(); +?> + +<main id="site-content" role="main"> + + <?php + + if ( have_posts() ) { + + while ( have_posts() ) { + the_post(); + + get_template_part( 'template-parts/content', get_post_type() ); + } + } + + ?> + +</main><!-- #site-content --> + +<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?> + +<?php get_footer(); ?> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/style-rtl.css b/srcs/wordpress/wp-content/themes/twentytwenty/style-rtl.css new file mode 100644 index 0000000..6114563 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/style-rtl.css @@ -0,0 +1,6255 @@ +/* +Theme Name: Twenty Twenty +Text Domain: twentytwenty +Version: 1.1 +Requires at least: 4.7 +Requires PHP: 5.2.4 +Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors. +Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks, accessibility-ready +Author: the WordPress team +Author URI: https://wordpress.org/ +Theme URI: https://wordpress.org/themes/twentytwenty/ +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html + +All files, unless otherwise stated, are released under the GNU General Public +License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) + +This theme, like WordPress, is licensed under the GPL. +Use it to make something cool, have fun, and share what you've learned +with others. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- + + 0. CSS Reset + 1. Document Setup + 2. Element Base + 3. Helper Classes + 4. Site Header + 5. Menu Modal + 6. Search Modal + 7. Page Templates + a. Template: Cover Template + c. Template: Full Width + 8. Post: Archive + 9. Post: Single + 10. Blocks + 11. Entry Content + 12. Comments + 13. Site Pagination + 14. Error 404 + 15. Widgets + 16. Site Footer + 17. Media Queries + +----------------------------------------------------------------------------- */ + + +/* -------------------------------------------------------------------------- */ + +/* 0. CSS Reset +/* -------------------------------------------------------------------------- */ + + +html, +body { + border: none; + margin: 0; + padding: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +address, +big, +cite, +code, +em, +font, +img, +small, +strike, +sub, +sup, +li, +ol, +ul, +fieldset, +form, +label, +legend, +button, +table, +caption, +tr, +th, +td { + border: none; + font-size: inherit; + line-height: inherit; + margin: 0; + padding: 0; + text-align: inherit; +} + +blockquote::before, +blockquote::after { + content: ""; +} + + +/* -------------------------------------------------------------------------- */ + +/* 1. Document Setup +/* -------------------------------------------------------------------------- */ + + +html { + font-size: 62.5%; /* 1rem = 10px */ + scroll-behavior: smooth; +} + +@media (prefers-reduced-motion: reduce) { + html { + scroll-behavior: auto; + } +} + +body { + background: #f5efe0; + box-sizing: border-box; + color: #000; + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + font-size: 1.8rem; + letter-spacing: -0.015em; + text-align: right; +} + +@supports ( font-variation-settings: normal ) { + + body { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +*, +*::before, +*::after { + box-sizing: inherit; + -webkit-font-smoothing: antialiased; + word-break: break-word; + word-wrap: break-word; +} + +#site-content { + overflow: hidden; +} + + +/* Clearing ---------------------------------- */ + +.group::after, +.entry-content::after { + clear: both; + content: ""; + display: block; +} + + +/* Base Transitions -------------------------- */ + +a, +path { + transition: all 0.15s linear; +} + + +/* Screen Reader Text ------------------------ */ + +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + -webkit-clip-path: inset(50%); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute !important; + width: 1px; + word-wrap: normal !important; + word-break: normal; +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + -webkit-clip-path: none; + clip-path: none; + color: #21759b; + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 700; + height: auto; + left: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; +} + + +/* Skip Link --------------------------------- */ + +.skip-link { + right: -9999rem; + top: 2.5rem; + z-index: 999999999; + text-decoration: underline; +} + +.skip-link:focus { + display: block; + right: 6px; + top: 7px; + font-size: 14px; + font-weight: 600; + text-decoration: none; + line-height: normal; + padding: 15px 23px 14px; + z-index: 100000; + left: auto; +} + + +/* Fonts ------------------------------------- */ + +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the classic editor and + * block editor. The following font-face override fixes the issue by manually + * inserting a custom font that includes just a Hoefler Text space replacement + * for that character instead. + */ +@font-face { + font-family: NonBreakingSpaceOverride; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* ---------------------------------------------- +Inter variable font. Usage: + +@supports (font-variation-settings: normal) { + html { font-family: 'Inter var', sans-serif; } +} +---------------------------------------------- */ + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: normal; + font-display: swap; + src: url(./assets/fonts/inter/Inter-upright-var.woff2) format("woff2"); +} + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: italic; + font-display: swap; + src: url(./assets/fonts/inter/Inter-italic-var.woff2) format("woff2"); +} + + +/* Accessibility Settings -------------------- */ + +@media ( prefers-reduced-motion: reduce ) { + + * { + animation-duration: 0s !important; + transition-duration: 0s !important; + } +} + + +/* -------------------------------------------------------------------------- */ + +/* 2. Element Base +/* ---------------------------------------------*---------------------------- */ + + +main { + display: block; +} + +h1, +h2, +h3, +h4, +h5, +h6, +.faux-heading { + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; + font-weight: 700; + letter-spacing: -0.0415625em; + line-height: 1.25; + margin: 3.5rem 0 2rem; +} + +h1, +.heading-size-1 { + font-size: 3.6rem; + font-weight: 800; + line-height: 1.138888889; +} + +h2, +.heading-size-2 { + font-size: 3.2rem; +} + +h3, +.heading-size-3 { + font-size: 2.8rem; +} + +h4, +.heading-size-4 { + font-size: 2.4rem; +} + +h5, +.heading-size-5 { + font-size: 2.1rem; +} + +h6, +.heading-size-6 { + font-size: 1.6rem; + letter-spacing: 0.03125em; + text-transform: uppercase; +} + +p { + line-height: 1.5; + margin: 0 0 1em 0; +} + +em, +i, +q, +dfn { + font-style: italic; +} + +em em, +em i, +i em, +i i, +cite em, +cite i { + font-weight: bolder; +} + +big { + font-size: 1.2em; +} + +small { + font-size: 0.75em; +} + +b, +strong { + font-weight: 700; +} + +ins { + text-decoration: underline; +} + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +abbr, +acronym { + cursor: help; +} + +address { + line-height: 1.5; + margin: 0 0 2rem 0; +} + +hr { + border-style: solid; + border-width: 0.1rem 0 0 0; + border-color: #dcd7ca; + margin: 4rem 0; +} + +.entry-content hr, +hr.styled-separator { + background: linear-gradient(to right, currentColor calc(50% - 16px), transparent calc(50% - 16px), transparent calc(50% + 16px), currentColor calc(50% + 16px)); + background-color: transparent !important; + border: none; + height: 0.1rem; + overflow: visible; + position: relative; +} + +.entry-content hr:not(.has-background), +hr.styled-separator { + color: #6d6d6d; +} + +.entry-content hr::before, +.entry-content hr::after, +hr.styled-separator::before, +hr.styled-separator::after { + background: currentColor; + content: ""; + display: block; + height: 1.6rem; + position: absolute; + top: calc(50% - 0.8rem); + transform: rotate(-22.5deg); + width: 0.1rem; +} + +.entry-content hr::before, +hr.styled-separator::before { + right: calc(50% - 0.5rem); +} + +.entry-content hr::after, +hr.styled-separator::after { + left: calc(50% - 0.5rem); +} + +a { + color: #cd2653; + text-decoration: underline; +} + +a:hover, +a:focus { + text-decoration: none; +} + + +/* Lists ------------------------------------- */ + +ul, +ol { + margin: 0 3rem 3rem 0; +} + +ul { + list-style: disc; +} + +ul ul { + list-style: circle; +} + +ul ul ul { + list-style: square; +} + +ol { + list-style: decimal; +} + +ol ol { + list-style: lower-alpha; +} + +ol ol ol { + list-style: lower-roman; +} + +li { + line-height: 1.5; + margin: 0.5rem 2rem 0 0; +} + +li > ul, +li > ol { + margin: 1rem 2rem 0 0; +} + +.reset-list-style, +.reset-list-style ul, +.reset-list-style ol { + list-style: none; + margin: 0; +} + +.reset-list-style li { + margin: 0; +} + +dt, +dd { + line-height: 1.5; +} + +dt { + font-weight: 700; +} + +dt + dd { + margin-top: 0.5rem; +} + +dd + dt { + margin-top: 1.5rem; +} + + +/* Quotes ------------------------------------ */ + +blockquote { + border-color: #cd2653; + border-style: solid; + border-width: 0 0 0 0.2rem; + color: inherit; + font-size: 1em; + margin: 4rem 0; + padding: 0.5rem 0 0.5rem 2rem; +} + +cite { + color: #6d6d6d; + font-size: 1.4rem; + font-style: normal; + font-weight: 600; + line-height: 1.25; +} + +blockquote cite { + display: block; + margin: 2rem 0 0 0; +} + +blockquote p:last-child { + margin: 0; +} + + +/* Code -------------------------------------- */ + +code, +kbd, +pre, +samp { + font-family: monospace; + font-size: 0.9em; + padding: 0.4rem 0.6rem; +} + +code, +kbd, +samp { + background: rgba(0, 0, 0, 0.075); + border-radius: 0.2rem; +} + +pre { + border: 0.1rem solid #dcd7ca; + line-height: 1.5; + margin: 4rem 0; + overflow: auto; + padding: 3rem 2rem; + text-align: right; +} + +pre code { + background: transparent; + padding: 0; +} + + +/* Media ------------------------------------- */ + +figure { + display: block; + margin: 0; +} + +iframe { + display: block; + max-width: 100%; +} + +video { + display: block; +} + +svg, +img, +embed, +object { + display: block; + height: auto; + max-width: 100%; +} + +figcaption, +.wp-caption-text { + color: #6d6d6d; + display: block; + font-size: 1.5rem; + font-weight: 500; + line-height: 1.2; + margin-top: 1.5rem; +} + +figcaption a, +.wp-caption-text a { + color: inherit; +} + +blockquote.instagram-media, +iframe.instagram-media { + margin: auto !important; +} + + +/* GALLERIES */ + +.gallery { + display: flex; + flex-wrap: wrap; + margin: 3em -0.8em 3em 0; + width: calc(100% + 1.6em); +} + +.gallery-item { + margin: 0.8em 0; + padding: 0 0.8em; + width: 100%; +} + +.gallery-caption { + display: block; + margin-top: 0.8em; +} + + +/* Inputs ------------------------------------ */ + +fieldset { + border: 0.2rem solid #dcd7ca; + padding: 2rem; +} + +legend { + font-size: 0.85em; + font-weight: 700; + padding: 0 1rem; +} + +label { + display: block; + font-size: 1.6rem; + font-weight: 400; + margin: 0 0 0.5rem 0; +} + +label.inline, +input[type="checkbox"] + label { + display: inline; + font-weight: 400; + margin-right: 0.5rem; +} + +input[type="checkbox"] { + -webkit-appearance: none; + -moz-appearance: none; + position: relative; + top: 2px; + display: inline-block; + margin: 0; + width: 1.5rem; + min-width: 1.5rem; + height: 1.5rem; + background: #fff; + border-radius: 0; + border-style: solid; + border-width: 0.1rem; + border-color: #dcd7ca; + box-shadow: none; + cursor: pointer; +} + +input[type="checkbox"]:checked::before { + /* Use the "Yes" SVG Dashicon */ + content: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.83%204.89l1.34.94-5.81%208.38H9.02L5.78%209.67l1.34-1.25%202.57%202.4z%27%20fill%3D%27%23000000%27%2F%3E%3C%2Fsvg%3E"); + position: absolute; + display: inline-block; + margin: -0.1875rem -0.25rem 0 0; + height: 1.75rem; + width: 1.75rem; +} + +input, +textarea, +button, +.button, +.faux-button, +.wp-block-button__link, +.wp-block-file__button { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + line-height: 1; +} + +@supports ( font-variation-settings: normal ) { + + input, + textarea, + button, + .button, + .faux-button, + .faux-button.more-link, + .wp-block-button__link, + .wp-block-file__button { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +input, +textarea { + border-color: #dcd7ca; + color: #000; +} + +code, +input[type="url"], +input[type="email"], +input[type="tel"] { + direction: ltr; +} + +input[type="text"], +input[type="password"], +input[type="email"], +input[type="url"], +input[type="date"], +input[type="month"], +input[type="time"], +input[type="datetime"], +input[type="datetime-local"], +input[type="week"], +input[type="number"], +input[type="search"], +input[type="tel"], +input[type="color"], +textarea { + -webkit-appearance: none; + -moz-appearance: none; + background: #fff; + border-radius: 0; + border-style: solid; + border-width: 0.1rem; + box-shadow: none; + display: block; + font-size: 1.6rem; + letter-spacing: -0.015em; + margin: 0; + max-width: 100%; + padding: 1.5rem 1.8rem; + width: 100%; +} + +select { + font-size: 1em; +} + +textarea { + height: 12rem; + line-height: 1.5; + width: 100%; +} + +input::-webkit-input-placeholder { + line-height: normal; +} + +input:-ms-input-placeholder { + line-height: normal; +} + +input::-moz-placeholder { + line-height: normal; +} + +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-results-button, +input[type="search"]::-webkit-search-results-decoration { + display: none; +} + +button, +.button, +.faux-button, +.wp-block-button__link, +.wp-block-file .wp-block-file__button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: none; + -moz-appearance: none; + background: #cd2653; + border: none; + border-radius: 0; + color: #fff; + cursor: pointer; + display: inline-block; + font-size: 1.5rem; + font-weight: 600; + letter-spacing: 0.0333em; + line-height: 1.25; + margin: 0; + opacity: 1; + padding: 1.1em 1.44em; + text-align: center; + text-decoration: none; + text-transform: uppercase; + transition: opacity 0.15s linear; +} + +button:focus, +button:hover, +.button:focus, +.button:hover, +.faux-button:focus, +.faux-button:hover, +.wp-block-button .wp-block-button__link:focus, +.wp-block-button .wp-block-button__link:hover, +.wp-block-file .wp-block-file__button:focus, +.wp-block-file .wp-block-file__button:hover, +input[type="button"]:focus, +input[type="button"]:hover, +input[type="reset"]:focus, +input[type="reset"]:hover, +input[type="submit"]:focus, +input[type="submit"]:hover { + text-decoration: underline; +} + +input[type="text"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="password"]:focus, +input[type="number"]:focus, +input[type="tel"]:focus, +input[type="range"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="week"]:focus, +input[type="time"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="color"]:focus, +textarea:focus { + border-color: currentColor; +} + +input[type="search"]:focus { + outline: thin dotted; + outline-offset: -4px; +} + +/* Tables ------------------------------------ */ + +table { + border: 0.1rem solid #dcd7ca; + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + font-size: 1.6rem; + margin: 4rem 0; + max-width: 100%; + overflow: hidden; + width: 100%; +} + +.alignleft > table { + margin: 0; +} + +.alignright > table { + margin: 0; +} + +th, +td { + border: 0.1rem solid #dcd7ca; + line-height: 1.4; + margin: 0; + overflow: visible; + padding: 0.5em; +} + +caption { + background: #dcd7ca; + font-weight: 600; + padding: 0.5em; + text-align: center; +} + +thead { + vertical-align: bottom; + white-space: nowrap; +} + +th { + font-weight: 700; +} + + +/* -------------------------------------------------------------------------- */ + +/* 3. Helper Classes +/* -------------------------------------------------------------------------- */ + + +/* Layout ------------------------------------ */ + +.no-margin { + margin: 0; +} + +.no-padding { + padding: 0; +} + +.screen-height { + min-height: 100vh; +} + +.admin-bar .screen-height { + min-height: calc(100vh - 32px); +} + +@media (max-width: 782px) { + + .admin-bar .screen-height { + min-height: calc(100vh - 46px); + } +} + +.screen-width { + position: relative; + right: calc(50% - 50vw); + width: 100vw; +} + +/* Sections ---------------------------------- */ + +section { + padding: 5rem 0; + width: 100%; +} + +.section-inner { + margin-right: auto; + margin-left: auto; + max-width: 120rem; + width: calc(100% - 4rem); +} + +.section-inner.max-percentage { + width: 100%; +} + +.section-inner.thin { + max-width: 58rem; +} + +.section-inner.small { + max-width: 80rem; +} + +.section-inner.medium { + max-width: 100rem; +} + +.section-inner.no-margin { + margin: 0; +} + + +/* Toggles ----------------------------------- */ + +.toggle { + -moz-appearance: none; + -webkit-appearance: none; + color: inherit; + cursor: pointer; + font-family: inherit; + position: relative; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + text-align: inherit; + user-select: none; +} + +button.toggle { + background: none; + border: none; + box-shadow: none; + border-radius: 0; + font-size: inherit; + font-weight: 400; + letter-spacing: inherit; + padding: 0; + text-transform: none; +} + +/* Hiding and Showing ------------------------ */ + +.js .show-js { + display: block !important; +} + +.js .hide-js { + display: none !important; +} + +.no-js .show-no-js { + display: block !important; +} + +.no-js .hide-no-js { + display: none !important; +} + + +/* Typography -------------------------------- */ + +.font-size-xl { + font-size: 1.25em; +} + +.font-size-xs { + font-size: 0.8em; +} + +.no-select { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + + +/* Colors ------------------------------------ */ + +/* COLOR */ + +.color-accent, +.color-accent-hover:focus, +.color-accent-hover:hover { + color: #cd2653; +} + +/* BACKGROUND COLOR */ + +.bg-accent, +.bg-accent-hover:focus, +.bg-accent-hover:hover { + background-color: #cd2653; +} + +/* BORDER COLOR */ + +.border-color-accent, +.border-color-accent-hover:focus, +.border-color-accent-hover:hover { + border-color: #cd2653; +} + +/* FILL COLOR */ + +.fill-children-accent, +.fill-children-accent * { + fill: #cd2653; +} + +.fill-children-current-color, +.fill-children-current-color * { + fill: currentColor; +} + + +/* Opacity ----------------------------------- */ + +.opacity-0 { + opacity: 0; +} + +.opacity-5 { + opacity: 0.05; +} + +.opacity-10 { + opacity: 0.1; +} + +.opacity-15 { + opacity: 0.15; +} + +.opacity-20 { + opacity: 0.2; +} + +.opacity-25 { + opacity: 0.25; +} + +.opacity-30 { + opacity: 0.3; +} + +.opacity-35 { + opacity: 0.35; +} + +.opacity-40 { + opacity: 0.4; +} + +.opacity-45 { + opacity: 0.45; +} + +.opacity-50 { + opacity: 0.5; +} + +.opacity-55 { + opacity: 0.55; +} + +.opacity-60 { + opacity: 0.6; +} + +.opacity-65 { + opacity: 0.65; +} + +.opacity-70 { + opacity: 0.7; +} + +.opacity-75 { + opacity: 0.75; +} + +.opacity-80 { + opacity: 0.8; +} + +.opacity-85 { + opacity: 0.85; +} + +.opacity-90 { + opacity: 0.9; +} + +.blend-mode-exclusion { + mix-blend-mode: exclusion; +} + +.blend-mode-hue { + mix-blend-mode: hue; +} + +.blend-mode-saturation { + mix-blend-mode: saturation; +} + +.blend-mode-color { + mix-blend-mode: color; +} + +.blend-mode-luminosity { + mix-blend-mode: luminosity; +} + + +/* Image Classes ----------------------------- */ + +.bg-image { + background-position: center; + background-repeat: no-repeat; + background-size: cover; +} + +.bg-attachment-fixed { + background-attachment: fixed; +} + +@supports ( -webkit-overflow-scrolling: touch ) { + + .bg-attachment-fixed { + background-attachment: scroll; + } +} + +@media ( prefers-reduced-motion: reduce ) { + + .bg-attachment-fixed { + background-attachment: scroll; + } +} + +.wp-block-image.is-resized { + margin-right: auto; + margin-left: auto; +} + +/* Search Form ------------------------------- */ + +.search-form { + align-items: stretch; + display: flex; + flex-wrap: nowrap; + margin: 0 -0.8rem -0.8rem 0; +} + +.search-form .search-field, +.search-form .search-submit { + margin: 0 0.8rem 0.8rem 0; +} + +.search-form label { + align-items: stretch; + display: flex; + font-size: inherit; + margin: 0; + width: 100%; +} + +.search-form .search-field { + width: 100%; +} + +.search-form .search-submit { + flex-shrink: 0; +} + +.search-form .search-submit:focus, +.search-form .search-submit:hover { + text-decoration: none; +} + + +/* Social Icons ------------------------------ */ + +ul.social-icons { + display: flex; + flex-wrap: wrap; + margin: -0.9rem -0.9rem 0 0; + width: calc(100% + 0.9rem); +} + +ul.social-icons li { + margin: 0.9rem 0.9rem 0 0; +} + +.social-icons a { + align-items: center; + background: #cd2653; + border-radius: 50%; + color: #fff; + display: flex; + height: 4.4rem; + justify-content: center; + padding: 0; + text-decoration: none; + transition: transform 0.15s ease-in-out; + width: 4.4rem; +} + +.social-icons a:focus, +.social-icons a:hover { + transform: scale(1.1); + text-decoration: none; +} + + +/* Cover Modals ------------------------------ */ + +.cover-modal { + display: none; + -ms-overflow-style: none; + overflow: -moz-scrollbars-none; +} + +.cover-modal::-webkit-scrollbar { + display: none !important; +} + +.cover-modal.show-modal { + display: block; + cursor: pointer; +} + +.cover-modal.show-modal > * { + cursor: default; +} + + +/* -------------------------------------------------------------------------- */ + +/* 4. Site Header +/* -------------------------------------------------------------------------- */ + + +#site-header { + background: #fff; + position: relative; +} + +.header-inner { + max-width: 168rem; + padding: 3.15rem 0; + z-index: 100; +} + +/* Header Titles ----------------------------- */ + +.header-titles-wrapper { + align-items: center; + display: flex; + justify-content: center; + padding: 0 4rem; + text-align: center; +} + +body:not(.enable-search-modal) .header-titles-wrapper { + justify-content: flex-start; + padding-right: 0; + text-align: right; +} + +.site-title, +.site-logo, +.site-description { + margin: 0; +} + +.site-title { + font-size: 2.1rem; + font-weight: 600; + line-height: 1; +} + +.site-title a { + color: inherit; + display: block; + text-decoration: none; +} + +.site-title a:hover, +.site-title a:focus { + text-decoration: underline; +} + +.site-description { + margin-top: 1rem; + color: #6d6d6d; + font-size: 1.8rem; + font-weight: 500; + display: none; + letter-spacing: -0.0311em; + transition: all 0.15s linear; +} + +.site-logo a, +.site-logo img { + display: block; +} + +.header-titles .site-logo .site-logo { + margin: 0; +} + +.site-logo img { + max-height: 6rem; + margin: 0 auto; + width: auto; +} + +body:not(.enable-search-modal) .site-logo img { + margin: 0; +} + +/* Overlay Header ---------------------------- */ + +.overlay-header #site-header { + background: transparent; + margin: 0; + position: absolute; + right: 0; + left: 0; + top: 0; + z-index: 2; +} + +.overlay-header .header-inner { + color: #fff; +} + +.overlay-header .site-description, +.overlay-header .toggle { + color: inherit; +} + +.overlay-header .header-inner .toggle-wrapper::before { + background-color: currentColor; + opacity: 0.25; +} + +.admin-bar.overlay-header #site-header { + top: 32px; +} + +@media (max-width: 782px) { + + .admin-bar.overlay-header #site-header { + top: 46px; + } +} + +/* Header Navigation ------------------------- */ + +.header-navigation-wrapper { + display: none; +} + +/* Header Toggles ---------------------------- */ + +.header-toggles { + display: none; +} + +.header-inner .toggle { + align-items: center; + display: flex; + overflow: visible; + padding: 0 2rem; +} + +.header-inner .toggle svg { + display: block; + position: relative; + z-index: 1; +} + +.header-inner .toggle path { + fill: currentColor; +} + +.toggle-inner { + display: flex; + justify-content: center; + height: 2.3rem; + position: relative; +} + +.toggle-icon { + display: block; + overflow: hidden; +} + +.toggle-inner .toggle-text { + color: #6d6d6d; + font-size: 1rem; + font-weight: 600; + position: absolute; + top: calc(100% + 0.5rem); + width: auto; + white-space: nowrap; + word-break: break-all; +} + +.overlay-header .toggle-text { + color: inherit; +} + +.header-inner .toggle:focus .toggle-text, +.header-inner .toggle:hover .toggle-text { + text-decoration: underline; +} + +/* Search Toggle ----------------------------- */ + +.search-toggle { + position: absolute; + bottom: 0; + right: 0; + top: 0; +} + +.search-toggle .toggle-icon, +.search-toggle svg { + height: 2.5rem; + max-width: 2.3rem; + width: 2.3rem; +} + +/* Navigation Toggle ------------------------- */ + +.nav-toggle { + position: absolute; + bottom: 0; + left: 0; + top: 0; + width: 6.6rem; +} + +.nav-toggle .toggle-icon, +.nav-toggle svg { + height: 0.8rem; + width: 2.6rem; +} + +.nav-toggle .toggle-inner { + padding-top: 0.8rem; +} + +/* Primary Menu ---------------------------- */ + +.primary-menu-wrapper { + display: none; +} + +ul.primary-menu { + display: flex; + font-size: 1.8rem; + font-weight: 500; + letter-spacing: -0.0277em; + flex-wrap: wrap; + justify-content: flex-end; + margin: -0.8rem -1.6rem 0 0; +} + +.primary-menu .icon { + display: block; + height: 0.7rem; + position: absolute; + pointer-events: none; + transform: rotate(45deg); + width: 1.3rem; +} + +.primary-menu .icon::before, +.primary-menu .icon::after { + content: ""; + display: block; + background-color: currentColor; + position: absolute; + bottom: calc(50% - 0.1rem); + right: 0; +} + +.primary-menu .icon::before { + height: 0.9rem; + width: 0.2rem; +} + +.primary-menu .icon::after { + height: 0.2rem; + width: 0.9rem; +} + +.primary-menu li { + font-size: inherit; + line-height: 1.25; + position: relative; +} + +.primary-menu > li { + margin: 0.8rem 1.6rem 0 0; +} + +.primary-menu > li.menu-item-has-children > a { + padding-left: 2rem; +} + +.primary-menu > li > .icon { + left: -0.5rem; + top: calc(50% - 0.4rem); +} + +.primary-menu a { + color: inherit; + display: block; + line-height: 1.2; + text-decoration: none; +} + +.primary-menu a:hover, +.primary-menu a:focus, +.primary-menu .current_page_ancestor { + text-decoration: underline; +} + +.primary-menu li.current-menu-item > a, +.primary-menu li.current-menu-item > .link-icon-wrapper > a { + text-decoration: underline; +} + +.primary-menu li.current-menu-item > a:hover, +.primary-menu li.current-menu-item > .link-icon-wrapper > a:hover, +.primary-menu li.current-menu-item > a:focus, +.primary-menu li.current-menu-item > .link-icon-wrapper > a:focus { + text-decoration: none; +} + +/* SUB MENU */ + +.primary-menu ul { + background: #000; + border-radius: 0.4rem; + color: #fff; + font-size: 1.7rem; + opacity: 0; + padding: 1rem 0; + position: absolute; + left: 9999rem; + top: calc(100% + 2rem); + transition: opacity 0.15s linear, transform 0.15s linear, left 0s 0.15s; + transform: translateY(0.6rem); + width: 20rem; + z-index: 1; +} + +.primary-menu li.menu-item-has-children:hover > ul, +.primary-menu li.menu-item-has-children:focus > ul, +.primary-menu li.menu-item-has-children.focus > ul { + left: 0; + opacity: 1; + transform: translateY(0); + transition: opacity 0.15s linear, transform 0.15s linear; +} + +.primary-menu ul::before, +.primary-menu ul::after { + content: ""; + display: block; + position: absolute; + bottom: 100%; +} + +.primary-menu ul::before { + height: 2rem; + right: 0; + left: 0; +} + +.primary-menu ul::after { + border: 0.8rem solid transparent; + border-bottom-color: #000; + left: 1.8rem; +} + +.primary-menu ul a { + background: transparent; + border: none; + color: inherit; + display: block; + padding: 1rem 2rem; + transition: background-color 0.15s linear; + width: 100%; +} + +.primary-menu ul li.menu-item-has-children > a { + padding-left: 4.5rem; +} + +.primary-menu ul li.menu-item-has-children .icon { + position: absolute; + left: 1.5rem; + top: calc(50% - 0.5rem); +} + +/* DEEP DOWN */ + +.primary-menu ul ul { + top: -1rem; +} + +.primary-menu ul li.menu-item-has-children:hover > ul, +.primary-menu ul li.menu-item-has-children:focus > ul, +.primary-menu ul li.menu-item-has-children.focus > ul { + left: calc(100% + 2rem); +} + +.primary-menu ul ul::before { + bottom: 0; + height: auto; + right: auto; + left: -2rem; + top: 0; + width: 2rem; +} + +.primary-menu ul ul::after { + border-bottom-color: transparent; + border-left-color: #000; + bottom: auto; + left: -1.6rem; + top: 2rem; +} + +.rtl .primary-menu ul ul::after { + transform: rotate(-180deg); +} + +/* + * Enable nav submenu expansion with tapping on arrows on large-viewport + * touch interfaces (e.g. tablets or laptops with touch screens). + * These rules are supported by all browsers (>IE11) and when JS is disabled. + */ +@media (any-pointer: coarse) { + + .primary-menu > li.menu-item-has-children > a { + padding-left: 0; + margin-left: 2rem; + } + + .primary-menu ul li.menu-item-has-children > a { + margin-left: 4.5rem; + padding-left: 0; + width: unset; + } + +} + +/* Repeat previous rules for IE11 (when JS enabled for polyfill). */ +body.touch-enabled .primary-menu > li.menu-item-has-children > a { + padding-left: 0; + margin-left: 2rem; +} + +body.touch-enabled .primary-menu ul li.menu-item-has-children > a { + margin-left: 4.5rem; + padding-left: 0; + width: unset; +} + +/* -------------------------------------------------------------------------- */ + +/* 5. Menu Modal +/* -------------------------------------------------------------------------- */ + + +.menu-modal { + background: #fff; + display: none; + opacity: 0; + overflow-y: auto; + overflow-x: hidden; + position: fixed; + bottom: 0; + right: -99999rem; + left: 99999rem; + top: 0; + transition: opacity 0.25s ease-in, right 0s 0.25s, left 0s 0.25s; + z-index: 99; +} + +.admin-bar .menu-modal { + top: 32px; +} + +@media (max-width: 782px) { + + .admin-bar .menu-modal { + top: 46px; + } +} + +.menu-modal.show-modal { + display: flex; +} + +.menu-modal.active { + right: 0; + opacity: 1; + left: 0; + transition: opacity 0.25s ease-out; +} + +.menu-modal-inner { + background: #fff; + display: flex; + justify-content: stretch; + overflow: auto; + -ms-overflow-style: auto; + width: 100%; +} + +.menu-wrapper { + display: flex; + flex-direction: column; + justify-content: space-between; + position: relative; +} + +button.close-nav-toggle { + align-items: center; + display: flex; + font-size: 1.6rem; + font-weight: 500; + justify-content: flex-end; + padding: 3.1rem 0; + width: 100%; +} + +button.close-nav-toggle svg { + height: 1.6rem; + width: 1.6rem; +} + +button.close-nav-toggle .toggle-text { + margin-left: 1.6rem; +} + +.menu-modal .menu-top { + flex-shrink: 0; +} + + +/* Main Menu --------------------------------- */ + +.modal-menu { + position: relative; + right: calc(50% - 50vw); + width: 100vw; +} + +.modal-menu li { + border-color: #dedfdf; + border-style: solid; + border-width: 0.1rem 0 0 0; + display: flex; + flex-wrap: wrap; + line-height: 1; + justify-content: flex-start; + margin: 0; +} + +.modal-menu > li > a, +.modal-menu > li > .ancestor-wrapper > a { + font-size: 2rem; + font-weight: 700; + letter-spacing: -0.0375em; +} + +.modal-menu > li:last-child { + border-bottom-width: 0.1rem; +} + +.modal-menu .ancestor-wrapper { + display: flex; + justify-content: space-between; + width: 100%; +} + +.modal-menu a { + display: block; + padding: 2rem 2.5rem; + text-decoration: none; + width: 100%; +} + +.modal-menu a:focus, +.modal-menu a:hover, +.modal-menu li.current-menu-item > .ancestor-wrapper > a, +.modal-menu li.current_page_ancestor > .ancestor-wrapper > a { + text-decoration: underline; +} + +button.sub-menu-toggle { + border-right: 0.1rem solid #dedfdf; + flex-shrink: 0; + margin: 1rem 0; + padding: 0 2.5rem; +} + +button.sub-menu-toggle svg { + height: 0.9rem; + transition: transform 0.15s linear; + width: 1.5rem; +} + +button.sub-menu-toggle.active svg { + transform: rotate(-180deg); +} + +.modal-menu ul { + display: none; + margin: 0; + width: 100%; +} + +.modal-menu ul li { + border-right-width: 1rem; +} + +.modal-menu ul li a { + color: inherit; + font-weight: 500; +} + +/* Main menu animation ----------------------- */ + +.menu-wrapper .menu-item { + position: relative; +} + +.menu-wrapper .active { + display: block; +} + +.menu-wrapper.is-toggling { + pointer-events: none; +} + +.menu-wrapper.is-toggling .menu-item { + position: absolute; + top: 0; + right: 0; + margin: 0; + width: 100%; +} + +.menu-wrapper.is-toggling .menu-bottom .social-menu .menu-item { + width: auto; +} + +.menu-wrapper.is-animating .menu-item, +.menu-wrapper.is-animating .toggling-target { + transition-duration: 250ms; +} + +.menu-wrapper.is-animating .menu-item { + transition-property: transform; +} + +.menu-wrapper.is-toggling .toggling-target { + display: block; + position: absolute; + top: 0; + right: 0; + opacity: 1; +} + +.menu-wrapper.is-toggling .toggling-target.active { + opacity: 0; +} + +.menu-wrapper.is-animating.is-toggling .toggling-target { + display: block; + transition-property: opacity; + opacity: 0; +} + +.menu-wrapper.is-animating.is-toggling .toggling-target.active { + opacity: 1; +} + +.menu-wrapper.is-toggling .modal-menu > li:last-child li { + border-top-color: transparent; + border-bottom-width: 0.1rem; +} + +@media (prefers-reduced-motion: reduce) { + + .menu-wrapper.is-animating .menu-item, + .menu-wrapper.is-animating .toggling-target { + transition-duration: 1ms !important; + } + +} + + +/* Expanded Menu ----------------------------- */ + +.expanded-menu { + display: none; +} + +.mobile-menu { + display: block; +} + + +/* Menu Bottom ------------------------------- */ + +.menu-bottom { + flex-shrink: 0; + padding: 4rem 0; +} + +.menu-bottom nav { + width: 100%; +} + +.menu-copyright { + display: none; + font-size: 1.6rem; + font-weight: 500; + margin: 0; +} + +.menu-copyright a:focus, +.menu-copyright a:hover { + text-decoration: underline; +} + +.menu-bottom .social-menu { + justify-content: center; +} + + +/* -------------------------------------------------------------------------- */ + +/* 6. Search Modal +/* -------------------------------------------------------------------------- */ + + +.search-modal { + background: rgba(0, 0, 0, 0.2); + display: none; + opacity: 0; + position: fixed; + bottom: 0; + right: -9999rem; + top: 0; + transition: opacity 0.2s linear, right 0s 0.2s linear; + width: 100%; + z-index: 999; +} + +.admin-bar .search-modal.active { + top: 32px; +} + +@media (max-width: 782px) { + + .admin-bar .search-modal.active { + top: 46px; + } +} + +.search-modal-inner { + background: #fff; + transform: translateY(-100%); + transition: transform 0.15s linear, box-shadow 0.15s linear; +} + +.search-modal-inner .section-inner { + display: flex; + justify-content: space-between; + max-width: 168rem; +} + +.search-modal.active { + right: 0; + opacity: 1; + transition: opacity 0.2s linear; +} + +.search-modal.active .search-modal-inner { + box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.08); + transform: translateY(0); + transition: transform 0.25s ease-in-out, box-shadow 0.1s 0.25s linear; +} + +button.search-untoggle { + align-items: center; + display: flex; + flex-shrink: 0; + justify-content: center; + margin-left: -2.5rem; + padding: 0 2.5rem; +} + +.search-modal button.search-untoggle { + color: inherit; +} + +.search-modal.active .search-untoggle { + animation: popIn both 0.3s 0.2s; +} + +.search-untoggle svg { + height: 1.5rem; + transition: transform 0.15s ease-in-out; + width: 1.5rem; +} + +.search-untoggle:focus svg, +.search-untoggle:hover svg { + transform: scale(1.15); +} + + +/* Modal Search Form ------------------------- */ + +.search-modal form { + margin: 0; + position: relative; + width: 100%; +} + +.search-modal .search-field { + background: none; + border: none; + border-radius: 0; + color: inherit; + font-size: 2rem; + letter-spacing: -0.0277em; + height: 8.4rem; + margin: 0 -2rem 0 0; + max-width: calc(100% + 2rem); + padding: 0 2rem 0 0; + width: calc(100% + 2rem); +} + +.search-modal .search-field::-webkit-input-placeholder { + color: inherit; +} + +.search-modal .search-field:-ms-input-placeholder { + color: inherit; +} + +.search-modal .search-field::-moz-placeholder { + color: inherit; + line-height: 4; +} + +.search-modal .search-submit { + position: absolute; + left: -9999rem; + top: 50%; + transform: translateY(-50%); +} + +.search-modal .search-submit:focus { + left: 0; +} + + +/* -------------------------------------------------------------------------- */ + +/* 7a. Template: Cover Template +/* -------------------------------------------------------------------------- */ + + +.cover-header { + display: flex; + overflow: hidden; +} + +.cover-header-inner-wrapper { + display: flex; + position: relative; + flex-direction: column; + justify-content: flex-end; + width: 100%; +} + +.cover-header-inner { + padding: 10rem 0 5rem 0; + width: 100%; +} + +.cover-color-overlay, +.cover-color-overlay::before { + position: absolute; + bottom: 0; + right: 0; + left: 0; + top: 0; +} + +.cover-color-overlay::before { + background: currentColor; + content: ""; + display: block; +} + +.cover-header .entry-header { + position: relative; + width: 100%; + z-index: 1; +} + +.cover-header .entry-header * { + color: #fff; +} + +body.template-cover .entry-header { + background: transparent; + padding: 0; +} + +.cover-header h1, +.cover-header h2, +.cover-header h3, +.cover-header h4, +.cover-header h5, +.cover-header h6, +.cover-header .faux-heading { + color: inherit; +} + +.cover-header .entry-header a { + color: inherit; +} + +/* To The Content ---------------------------- */ + +.to-the-content-wrapper { + position: absolute; + right: 0; + left: 0; + top: calc(100% + 0.5rem); +} + +.to-the-content { + align-items: center; + display: flex; + justify-content: center; + height: 4rem; + text-decoration: none; +} + +.to-the-content svg { + height: 2rem; + transition: transform 0.15s linear; + transform: translateY(0); + width: 1.767rem; +} + +.to-the-content:focus svg, +.to-the-content:hover svg { + transform: translateY(20%); +} + + +/* -------------------------------------------------------------------------- */ + +/* 7c. Template: Full Width +/* -------------------------------------------------------------------------- */ + + +body.template-full-width .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide), +body.template-full-width [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + max-width: 120rem; +} + +body.template-full-width .entry-content .alignleft, +body.template-full-width .entry-content .alignright { + position: static; +} + +body.template-full-width .entry-content .alignleft, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .alignleft, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignleft, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 0; + position: static; +} + +body.template-full-width .entry-content > .alignleft, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignleft, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignleft, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 2rem; + position: static; +} + +body.template-full-width .entry-content .alignright, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .alignright, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignright, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 0; + position: static; +} + +body.template-full-width .entry-content > .alignright, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignright, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignright, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 2rem; + position: static; +} + + +/* -------------------------------------------------------------------------- */ + +/* 8. Post: Archive +/* -------------------------------------------------------------------------- */ + + +/* Archive Header ---------------------------- */ + +.archive-header { + background-color: #fff; + padding: 4rem 0; +} + +.reduced-spacing .archive-header { + padding-bottom: 2rem; +} + +.archive-title { + font-size: 2.4rem; + font-weight: 700; + letter-spacing: -0.026666667em; + margin: 0; +} + +.archive-subtitle p:last-child { + margin-bottom: 0; +} + + +/* Posts ------------------------------------- */ + +body:not(.singular) main > article:first-of-type { + padding: 4rem 0 0; +} + + +/* Search Results ---------------------------- */ + +.no-search-results-form { + padding-top: 5rem; +} + + +/* -------------------------------------------------------------------------- */ + +/* 9. Post: Single +/* -------------------------------------------------------------------------- */ + + +/* Post Header ------------------------------- */ + +.singular .entry-header { + background-color: #fff; + padding: 4rem 0; +} + +.entry-categories { + line-height: 1.25; + margin-bottom: 2rem; +} + +.entry-categories-inner { + justify-content: center; + display: flex; + flex-wrap: wrap; + margin: -0.5rem -1rem 0 0; +} + +.entry-categories a { + border-bottom: 0.15rem solid currentColor; + font-size: 1.4rem; + font-weight: 700; + letter-spacing: 0.036666667em; + margin: 0.5rem 1rem 0 0; + text-decoration: none; + text-transform: uppercase; +} + +.entry-categories a:focus, +.entry-categories a:hover { + border-bottom-color: transparent; +} + +h1.entry-title, +h2.entry-title { + margin: 0; +} + +.entry-title a { + color: inherit; + text-decoration: none; +} + +.entry-title a:focus, +.entry-title a:hover { + text-decoration: underline; +} + +.intro-text { + margin-top: 2rem; +} + +.singular .intro-text { + font-size: 2rem; + letter-spacing: -0.0315em; + line-height: 1.4; +} + +/* POST META */ + +.post-meta-single-top .post-meta { + justify-content: center; +} + +.post-meta-wrapper { + margin-top: 2rem; + margin-left: auto; + margin-right: auto; + max-width: 58rem; + width: 100%; +} + +.post-meta { + color: #6d6d6d; + display: flex; + flex-wrap: wrap; + font-size: 1.5rem; + font-weight: 500; + list-style: none; + margin: -1rem -2rem 0 0; +} + +.post-meta li { + flex-shrink: 0; + letter-spacing: -0.016875em; + margin: 1rem 2rem 0 0; + max-width: calc(100% - 2rem); +} + +.post-meta a { + color: inherit; + text-decoration: none; +} + +.post-meta a:focus, +.post-meta a:hover { + text-decoration: underline; +} + +.post-meta .meta-wrapper { + align-items: center; + display: flex; + flex-wrap: nowrap; +} + +.post-meta .meta-icon { + flex-shrink: 0; + margin-left: 1rem; +} + +.sticky .post-sticky { + color: inherit; +} + +.post-meta .post-author .meta-icon svg { + width: 1.6rem; + height: 1.8rem; +} + +.post-meta .post-categories .meta-icon svg { + width: 1.8rem; + height: 1.7rem; +} + +.post-meta .post-comment-link .meta-icon svg { + width: 1.8rem; + height: 1.8rem; +} + +.post-meta .post-date .meta-icon svg { + width: 1.7rem; + height: 1.8rem; +} + +.post-meta .post-edit .meta-icon svg { + width: 1.8rem; + height: 1.8rem; +} + +.post-meta .post-sticky .meta-icon svg { + width: 1.5rem; + height: 1.8rem; +} + +.post-meta .post-tags .meta-icon svg { + width: 1.8rem; + height: 1.8rem; +} + +.post-meta svg * { + fill: currentColor; +} + + +/* Featured Media ---------------------------- */ + +.featured-media { + margin-top: 5rem; + position: relative; +} + +.singular .featured-media { + margin-top: 0; +} + +.singular .featured-media-inner { + position: relative; + right: calc(50% - 50vw); + width: 100vw; +} + +.singular .featured-media::before { + background: #fff; + content: ""; + display: block; + position: absolute; + bottom: 50%; + right: 0; + left: 0; + top: 0; +} + +.featured-media img { + margin: 0 auto; +} + +.featured-media figcaption { + margin: 1.5rem auto 0 auto; + text-align: center; + width: calc(100% - 5rem); +} + +.post-inner { + padding-top: 5rem; +} + +.reduced-spacing.missing-post-thumbnail .post-inner { + padding-top: 0; +} + + +/* Post Footer ------------------------------- */ + +/* POST NAV LINKS */ + +.post-nav-links { + border-radius: 0.4rem; + display: flex; + font-size: 0.9em; + font-weight: 600; + line-height: 1; + margin-top: 3em; + padding: 0 0.25em; +} + +.post-nav-links > * { + padding: 1em 0.75em; +} + +/* POST META BOTTOM */ + +.post-meta-wrapper.post-meta-single-bottom { + margin-top: 3rem; +} + + +/* Author Bio -------------------------------- */ + +.author-bio { + margin-top: 4rem; + margin-left: auto; + margin-right: auto; + max-width: 58rem; + width: 100%; +} + +.hide-avatars .author-bio { + padding-right: 0; +} + +.author-bio .author-title-wrapper { + align-items: center; + display: flex; + margin: 0 0 1rem 0; +} + +.author-bio .avatar { + border-radius: 50%; + margin-left: 1.5rem; + height: 5rem; + width: 5rem; +} + +.hide-avatars img.avatar { + display: none; +} + +.author-bio p:last-child { + margin-bottom: 0; +} + +.author-bio .author-title { + margin: 0; +} + +.author-bio .author-link { + display: block; + font-size: 1.6rem; + font-weight: 600; + margin-top: 1em; + text-decoration: none; +} + +.author-bio .author-link:focus, +.author-bio .author-link:hover { + text-decoration: underline; +} + + +/* Single Pagination ------------------------- */ + +.pagination-single { + font-size: 1.8rem; + margin-top: 5rem; +} + +.pagination-single-inner { + display: flex; + flex-direction: column; +} + +.pagination-single hr:first-child { + margin: 0 0 2.8rem 0; +} + +.pagination-single hr:last-child { + margin: 2.8rem 0 0.8rem 0; +} + +.pagination-single a { + align-items: baseline; + display: flex; + font-weight: 600; + letter-spacing: -0.0275em; + text-decoration: none; + flex: 1; +} + +.pagination-single a + a { + margin-top: 1rem; +} + +.pagination-single a .arrow { + margin-left: 1rem; +} + +.pagination-single a:focus .title, +.pagination-single a:hover .title { + text-decoration: underline; +} + + +/* -------------------------------------------------------------------------- */ + +/* 10. Blocks +/* -------------------------------------------------------------------------- */ + + +/* Block Colors ------------------------------ */ + +.has-text-color a { + color: inherit; +} + +/* CUSTOM COLORS */ + +:root .has-accent-color { + color: #cd2653; +} + +:root .has-accent-background-color { + background-color: #cd2653; + color: #fff; +} + +:root .has-primary-color { + color: #000; +} + +:root .has-primary-background-color { + background-color: #000; + color: #f5efe0; +} + +:root .has-secondary-color { + color: #6d6d6d; +} + +:root .has-secondary-background-color { + background-color: #6d6d6d; + color: #fff; +} + +:root .has-subtle-background-color { + color: #dcd7ca; +} + +:root .has-subtle-background-background-color { + background-color: #dcd7ca; + color: #000; +} + +:root .has-background-color { + color: #f5efe0; +} + +:root .has-background-background-color { + background-color: #f5efe0; + color: #000; +} + + +/* Block Typography Classes ------------------ */ + +.has-text-align-left { + text-align: left; +} + +.has-text-align-center { + text-align: center; +} + +.has-text-align-right { + text-align: left; +} + +.has-drop-cap:not(:focus)::first-letter { + color: #cd2653; + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + font-size: 5.1em; + font-weight: 800; + margin: 0.05em 0 0 0.1em; +} + +.has-drop-cap:not(:focus)::first-letter::after { + content: ""; + display: table; + clear: both; +} + +.has-drop-cap:not(:focus)::after { + padding: 0; +} + + +/* Block Font Families ----------------------- */ + +.has-drop-cap:not(:focus)::first-letter, +.entry-content .wp-block-archives, +.entry-content .wp-block-categories, +.entry-content .wp-block-cover-image, +.entry-content .wp-block-latest-comments, +.entry-content .wp-block-latest-posts, +.entry-content .wp-block-pullquote, +.entry-content .wp-block-quote.is-large, +.entry-content .wp-block-quote.is-style-large { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .has-drop-cap:not(:focus)::first-letter, + .entry-content .wp-block-archives, + .entry-content .wp-block-categories, + .entry-content .wp-block-latest-posts, + .entry-content .wp-block-latest-comments, + .entry-content .wp-block-cover-image p, + .entry-content .wp-block-pullquote { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +/* Block Font Sizes -------------------------- */ + +.entry-content .has-small-font-size { + font-size: 0.842em; +} + +.entry-content .has-normal-font-size, +.entry-content .has-regular-font-size { + font-size: 1em; +} + +.entry-content .has-medium-font-size { + font-size: 1.1em; + line-height: 1.45; +} + +.entry-content .has-large-font-size { + font-size: 1.25em; + line-height: 1.4; +} + +.entry-content .has-larger-font-size { + font-size: 1.5em; + line-height: 1.3; +} + + +/* Block: Base Margins ----------------------- */ + +*[class*="_inner-container"] > *:first-child { + margin-top: 0; +} + +*[class*="_inner-container"] > *:last-child { + margin-bottom: 0; +} + +.wp-block-archives:not(.alignwide):not(.alignfull), +.wp-block-categories:not(.alignwide):not(.alignfull), +.wp-block-code, +.wp-block-columns:not(.alignwide):not(.alignfull), +.wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-group:not(.has-background):not(.alignwide):not(.alignfull), +.wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright), +.wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright), +.wp-block-media-text:not(.alignwide):not(.alignfull), +.wp-block-preformatted, +.wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright), +.wp-block-quote, +.wp-block-quote.is-large, +.wp-block-quote.is-style-large, +.wp-block-verse, +.wp-block-video:not(.alignwide):not(.alignfull) { + margin-bottom: 3rem; + margin-top: 3rem; +} + + +/* Block: Shared Nesting Alignment Resets ---- */ + +[class*="__inner-container"] .wp-block-group:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright), +[class*="__inner-container"] .wp-block-cover:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright) { + margin-right: auto; + margin-left: auto; + max-width: 58rem; +} + + +/* Block: Shared Widget Styles --------------- */ + +.wp-block-archives, +.wp-block-categories, +.wp-block-latest-posts, +.wp-block-latest-comments { + list-style: none; + margin-right: 0; +} + +.wp-block-archives ul, +.wp-block-categories ul, +.wp-block-latest-posts ul, +.wp-block-latest-comments ul { + list-style: none; +} + +.entry-content .wp-block-archives > li, +.entry-content .wp-block-categories > li, +.entry-content .wp-block-latest-posts > li, +.entry-content .wp-block-latest-comment > li { + margin-right: 0; +} + +.entry-content .wp-block-archives > li:last-child, +.entry-content .wp-block-categories > li:last-child, +.entry-content .wp-block-latest-posts > li:last-child, +.entry-content .wp-block-latest-comment > li:last-child { + margin-bottom: 0; +} + +.entry-content .wp-block-archives *, +.entry-content .wp-block-categories *, +.entry-content .wp-block-latest-posts *, +.entry-content .wp-block-latest-comments * { + font-family: inherit; +} + +.entry-content .wp-block-archives li, +.entry-content .wp-block-categories li, +.entry-content .wp-block-latest-posts li { + color: #6d6d6d; +} + +.wp-block-archives a, +.wp-block-categories a, +.wp-block-latest-posts a, +.wp-block-latest-comments a { + font-weight: 700; + text-decoration: none; +} + +.wp-block-archives a:hover, +.wp-block-categories a:hover, +.wp-block-latest-posts a:hover, +.wp-block-latest-comments a:hover, +.wp-block-archives a:focus, +.wp-block-categories a:focus, +.wp-block-latest-posts a:focus, +.wp-block-latest-comments a:focus { + text-decoration: underline; +} + +.wp-block-latest-posts a, +.wp-block-latest-comments__comment-meta { + font-weight: 700; + letter-spacing: -0.025em; + line-height: 1.25; +} + +.wp-block-latest-comments__comment-date, +.wp-block-latest-posts__post-date { + color: #6d6d6d; + font-size: 0.7em; + font-weight: 600; + letter-spacing: normal; + margin-top: 0.15em; +} + + +/* Block: Shared Media Styles ---------------- */ + +.wp-block-embed figcaption, +.wp-block-image figcaption { + color: #6d6d6d; + font-size: 1.4rem; + margin-bottom: 0; + margin-top: 1.5rem; +} + +/* Block: Audio ------------------------------ */ + +.wp-block-audio audio { + width: 100%; +} + +/* Block: Button ----------------------------- */ + +.wp-block-button { + margin: 3rem 0; +} + +.wp-block-button.is-style-outline { + color: #cd2653; +} + +.is-style-outline .wp-block-button__link:not(.has-text-color) { + color: inherit; +} + +.is-style-outline .wp-block-button__link { + padding: calc(1.1em - 0.2rem) calc(1.44em - 0.2rem); +} + +/* Block: Columns ---------------------------- */ + +.wp-block-columns.alignfull, +.alignfull:not(.has-background) .wp-block-columns { + padding-right: 2rem; + padding-left: 2rem; +} + +.wp-block-column { + margin-bottom: 3.2rem; +} + +.wp-block-column > *:first-child { + margin-top: 0; +} + +.wp-block-column > *:last-child { + margin-bottom: 0; +} + +/* Block: Cover ------------------------------ */ + +.wp-block-cover-image .wp-block-cover__inner-container, +.wp-block-cover .wp-block-cover__inner-container { + width: calc(100% - 4rem); + padding: 2rem 0; +} + +.wp-block-cover-image .wp-block-cover-image-text, +.wp-block-cover-image .wp-block-cover-text, +.wp-block-cover-image h2, +.wp-block-cover .wp-block-cover-image-text, +.wp-block-cover .wp-block-cover-text, +.wp-block-cover h2 { + max-width: 100%; + padding: 0; +} + +.wp-block-cover-image h2, +.wp-block-cover h2 { + font-size: 3.2rem; +} + +/* Block: Embed ------------------------------ */ + +/* Block: File ------------------------------- */ + +.wp-block-file { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: space-between; +} + +.wp-block-file a:not(.wp-block-file__button) { + font-weight: 700; + text-decoration: none; +} + +.wp-block-file a:not(.wp-block-file__button):not(:last-child) { + margin-left: 1rem; +} + +.wp-block-file a:not(.wp-block-file__button):focus, +.wp-block-file a:not(.wp-block-file__button):hover { + text-decoration: underline; +} + +.wp-block-file .wp-block-file__button { + font-size: 1.5rem; + padding: 1em 1.25em; +} + +.wp-block-file a.wp-block-file__button:visited { + opacity: 1; +} + +.wp-block-file a.wp-block-file__button:active, +.wp-block-file a.wp-block-file__button:focus, +.wp-block-file a.wp-block-file__button:hover { + opacity: 1; + text-decoration: underline; +} + + +/* Block: Gallery ---------------------------- */ + +.wp-block-gallery ul { + list-style: none; + margin: 0 0 -1.6rem 0; +} + +figure.wp-block-gallery.alignnone, +figure.wp-block-gallery.aligncenter { + margin-bottom: 3rem; + margin-top: 3rem; +} + +figure.wp-block-gallery.alignleft { + margin: 0.3rem 0 2rem 2rem; +} + +figure.wp-block-gallery.alignright { + margin: 0.3rem 2rem 2rem 0; +} + +figure.wp-block-gallery.alignwide { + margin-bottom: 4rem; + margin-top: 4rem; +} + +figure.wp-block-gallery.alignfull { + margin-bottom: 5rem; + margin-top: 5rem; +} + +/* Block: Group ------------------------------ */ + +.wp-block-group.has-background { + padding: 2rem; + margin-bottom: 0; + margin-top: 0; +} + +.wp-block-group__inner-container { + margin: 0 auto; +} + +.wp-block-group__inner-container, +.entry-content .wp-block-group p { + max-width: 100%; +} + +.alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-right: 2rem; + padding-left: 2rem; +} + +/* Block: Image ------------------------------ */ + +/* Block: Media And Text --------------------- */ + +.wp-block-media-text .wp-block-media-text__content { + padding: 3rem 2rem; +} + +.wp-block-media-text .wp-block-media-text__content p { + max-width: none; +} + +.wp-block-media-text__content > *:first-child { + margin-top: 0; +} + +.wp-block-media-text__content > *:last-child { + margin-bottom: 0; +} + +/* Block: Pullquote -------------------------- */ + +/* STYLE: DEFAULT */ + +.wp-block-pullquote { + padding: 0; + position: relative; +} + +.wp-block-pullquote.alignleft, +.wp-block-pullquote.alignright { + max-width: calc(100% - 4rem); +} + +.wp-block-pullquote::before { + background: #fff; + border-radius: 50%; + color: #cd2653; + content: "”"; + display: block; + font-size: 6.2rem; + font-weight: 500; + line-height: 1.2; + margin: 0 auto 1.5rem auto; + text-align: center; + height: 4.4rem; + width: 4.4rem; +} + +.reduced-spacing .wp-block-pullquote::before { + border: 0.1rem solid currentColor; + font-size: 5.9rem; +} + +.wp-block-pullquote blockquote { + border: none; + margin: 0; + padding: 0; +} + +.wp-block-pullquote blockquote p { + font-family: inherit; + font-size: 2.8rem; + font-weight: 700; + line-height: 1.178571429; + letter-spacing: -0.041785714em; + max-width: 100%; +} + +.wp-block-pullquote p:last-of-type { + margin-bottom: 0; +} + +.wp-block-pullquote cite { + color: #6d6d6d; + font-size: 1.6rem; + font-weight: 500; + margin-top: 1.2rem; +} + +.wp-block-pullquote.alignleft p, +.wp-block-pullquote.alignright p { + font-size: 2.8rem; +} + +.wp-block-pullquote.alignleft { + text-align: right; +} + +.wp-block-pullquote.alignright { + text-align: left; +} + +.wp-block-pullquote.alignleft::before { + margin-right: 0; +} + +.wp-block-pullquote.alignright::before { + margin-left: 0; +} + +/* STYLE: SOLID BACKGROUND COLOR */ + +.wp-block-pullquote.is-style-solid-color { + padding: 3rem 2rem; +} + +.wp-block-pullquote.is-style-solid-color::before { + position: absolute; + top: 0; + right: 50%; + transform: translateY(-50%) translateX(50%); +} + +.wp-block-pullquote.is-style-solid-color.alignleft::before, +.wp-block-pullquote.is-style-solid-color.alignright::before { + transform: translateY(-50%); +} + +.wp-block-pullquote.is-style-solid-color.alignleft::before { + right: 2rem; +} + +.wp-block-pullquote.is-style-solid-color.alignright::before { + right: auto; + left: 2rem; +} + +.wp-block-pullquote.is-style-solid-color blockquote { + max-width: 100%; + text-align: inherit; +} + +.wp-block-pullquote.is-style-solid-color cite { + color: inherit; +} + +/* Block: Separator ------------------------- */ + +hr.wp-block-separator { + margin: 3rem 0; +} + +/* STYLE: WIDE */ + +.wp-block-separator.is-style-wide { + max-width: calc(100vw - 4rem); + position: relative; + width: 100%; +} + +/* STYLE: DOTS */ + +.wp-block-separator.is-style-dots::before { + background: none; + color: inherit; + font-size: 3.2rem; + font-weight: 700; + height: auto; + letter-spacing: 1em; + padding-right: 1em; + position: static; + transform: none; + width: auto; +} + +.wp-block-separator.is-style-dots::after { + content: none; +} + + +/* Block: Search ----------------------------- */ + +.wp-block-search .wp-block-search__input { + width: auto; +} + +/* Block: Table ------------------------------ */ + +.wp-block-table.is-style-stripes tbody tr:nth-child(odd) { + background: #dcd7ca; +} + +figure.wp-block-table.is-style-stripes { + border-bottom: none; +} + +.wp-block-table.is-style-stripes table { + border-collapse: inherit; +} + +/* Block: Quote ------------------------------ */ + +.wp-block-quote p, +.wp-block-quote cite { + text-align: inherit; +} + +.wp-block-quote[style="text-align:center"] { + border-width: 0; + padding: 0; +} + +.wp-block-quote[style="text-align:right"] { + border-width: 0 0.2rem 0 0; + padding: 0 2rem 0 0; +} + +/* STYLE: LARGE */ + +.wp-block-quote.is-large, +.wp-block-quote.is-style-large { + border: none; + padding: 0; + margin-right: auto; + margin-left: auto; +} + +.wp-block-quote.is-large p, +.wp-block-quote.is-style-large p { + font-family: inherit; + font-size: 2.4rem; + font-style: normal; + font-weight: 700; + letter-spacing: -0.02em; + line-height: 1.285; +} + +.wp-block-quote.is-large cite, +.wp-block-quote.is-large footer, +.wp-block-quote.is-style-large cite, +.wp-block-quote.is-style-large footer { + font-size: 1.6rem; + text-align: inherit; +} + +/* Block: Widget Latest Comments ------------- */ + +.entry-content .wp-block-latest-comments li { + margin: 2rem 0; +} + +.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt, +.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta { + margin-right: 5.5rem; +} + +.entry-content .wp-block-latest-comments a { + text-decoration: none; +} + +.entry-content .wp-block-latest-comments a:hover, +.entry-content .wp-block-latest-comments a:focus { + text-decoration: underline; +} + +.wp-block-latest-comments__comment { + font-size: inherit; +} + +.wp-block-latest-comments__comment-date { + margin-top: 0.4em; +} + +.wp-block-latest-comments__comment-excerpt p { + font-size: 0.7em; + margin: 0.9rem 0 2rem 0; +} + +/* Block: Widget Latest Posts ---------------- */ + +.wp-block-latest-posts.is-grid li { + border-top: 0.2rem solid #dcd7ca; + margin-top: 2rem; + padding-top: 1rem; +} + +.wp-block-latest-posts.has-dates { + list-style: none; +} + +.wp-block-latest-posts.has-dates:not(.is-grid) li { + margin-top: 1.5rem; +} + +.wp-block-latest-posts.has-dates:not(.is-grid) li:first-child { + margin-top: 0; +} + + +/* -------------------------------------------------------------------------- */ + +/* 11. Entry Content +/* -------------------------------------------------------------------------- */ + + +.entry-content { + line-height: 1.5; +} + +.entry-content > * { + margin-right: auto; + margin-left: auto; + margin-bottom: 1.25em; +} + +.entry-content > *:first-child { + margin-top: 0; +} + +.entry-content > *:last-child { + margin-bottom: 0; +} + +.read-more-button-wrap { + margin-top: 1em; + text-align: center; +} + +.entry-content a:hover, +.entry-content a:focus { + text-decoration: none; +} + +.entry-content p, +.entry-content li { + line-height: 1.4; +} + +.entry-content h1, +.entry-content h2, +.entry-content h3, +.entry-content h4, +.entry-content h5, +.entry-content h6 { + margin: 3.5rem auto 2rem; +} + +.entry-content ul ul, +.entry-content ol ol, +.entry-content ul ol, +.entry-content ol ul { + margin-bottom: 1rem; +} + +.entry-content hr { + margin: 4rem auto; +} + +/* Font Families ----------------------------- */ + +.entry-content p, +.entry-content ol, +.entry-content ul, +.entry-content dl, +.entry-content dt { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +.entry-content cite, +.entry-content figcaption, +.entry-content .wp-caption-text { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .entry-content cite, + .entry-content figcaption, + .entry-content .wp-caption-text { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + + +/* Alignment Classes ------------------------- */ + +.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + max-width: 58rem; + width: calc(100% - 4rem); +} + +[class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + max-width: 58rem; + width: 100%; +} + +.alignnone, +.aligncenter, +.alignleft, +.alignright, +.alignwide { + margin-top: 4rem; + margin-left: auto; + margin-bottom: 4rem; + margin-right: auto; +} + +[class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) { + margin-right: auto; + margin-left: auto; +} + +/* Full */ + +.alignfull { + margin-top: 5rem; + margin-left: auto; + margin-bottom: 5rem; + margin-right: auto; + max-width: 100vw; + position: relative; + width: 100%; +} + +[class*="__inner-container"] > .alignfull { + max-width: 100%; +} + +/* Wide */ + +.alignwide { + max-width: 120rem; + position: relative; + width: calc(100% - 4rem); +} + +[class*="__inner-container"] > .alignwide { + width: 100%; +} + +/* Center */ + +.aligncenter, +.aligncenter img { + margin-right: auto; + margin-left: auto; +} + +/* Left and right */ + +.alignleft, +.alignright { + max-width: 50%; +} + +.alignleft { + float: left; + margin: 0.3rem 2rem 2rem 2rem; +} + +.alignright { + float: right; + margin: 0.3rem 2rem 2rem 2rem; +} + +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignleft, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignleft, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 2rem; +} + +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignright, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignright, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 2rem; +} + +/* Entry Media ------------------------------- */ + +.alignfull > figcaption, +.alignfull > .wp-caption-text { + margin-right: auto; + margin-left: auto; + max-width: 58rem; + width: calc(100% - 4rem); +} + + +/* -------------------------------------------------------------------------- */ + +/* 12. Comments +/* -------------------------------------------------------------------------- */ + + +/* Comment Headers ----------------------------- */ + +.comments-wrapper { + margin-top: 5rem; +} + +.comment-reply-title { + margin: 0 0 4rem 0; + text-align: center; +} + + +/* Comment Item ----------------------------- */ + +/* COMMENT HEADER */ + +.comments .comment, +.comments .pingback, +.comments .trackback, +.comments .review { + padding-top: 3.5rem; +} + +div.comment:first-of-type { + margin-top: 3.5rem; + padding-top: 0; +} + +.comments .comments-header + div { + margin-top: 0; + padding-top: 0; +} + +.comment-body { + position: relative; +} + +.comment .comment { + padding-right: 5%; +} + +.comment-meta { + line-height: 1.1; + margin-bottom: 1.5rem; + min-height: 5rem; + padding-right: 5rem; + position: relative; +} + +.hide-avatars .comment-meta { + min-height: 0; + padding-right: 0; +} + +.comment-meta a { + color: inherit; +} + +.comment-author { + font-size: 1.8rem; + font-weight: 700; + letter-spacing: -0.027777778em; +} + +.comment-author a { + text-decoration: underline; +} + +.comment-author a:hover, +.comment-author a:focus { + text-decoration: none; +} + +.comment-meta .avatar { + height: 4rem; + position: absolute; + right: 0; + top: 0; + width: 4rem; +} + +.comment-author .url { + text-decoration: underline; +} + +.comment-metadata { + color: #6d6d6d; + font-size: 1.4rem; + font-weight: 500; + margin-top: 0.6rem; +} + +.comment-metadata a { + text-decoration: none; +} + +.comment-metadata a:focus, +.comment-metadata a:hover { + text-decoration: underline; +} + + +/* COMMENT CONTENT */ + +.comment-content.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + width: 100%; +} + +.comment-content.entry-content .alignleft { + margin-left: 0; +} + +.comment-content.entry-content .alignright { + margin-right: 0; +} + +/* COMMENT FOOTER */ + +.comment-footer-meta { + align-items: center; + display: flex; + flex-wrap: wrap; + font-size: 1.2rem; + font-weight: 600; + justify-content: flex-start; + letter-spacing: 0.030833333em; + line-height: 1; + margin: 1.5rem -1.5rem -1rem 0; + text-transform: uppercase; +} + +.comment-footer-meta > * { + margin: 0 1.5rem 1rem 0; +} + +.comment-reply-link { + background-color: #cd2653; + color: #fff; + display: block; + padding: 0.7rem; +} + +.bypostauthor .comment-footer-meta .by-post-author { + display: block; +} + +.comment-footer-meta a { + text-decoration: none; +} + +.comment-footer-meta a:focus, +.comment-footer-meta a:hover { + text-decoration: underline; +} + + +/* Pingbacks & Trackbacks ------------------------- */ + +.pingback .comment-meta, +.trackback .comment-meta { + padding-right: 0; +} + + +/* Comments Pagination ---------------------------- */ + +.comments-pagination { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + margin-top: 6rem; + text-align: center; +} + +.comments-pagination.only-next { + justify-content: flex-end; +} + +.comments-pagination .page-numbers { + display: none; + text-decoration: none; +} + +.comments-pagination .page-numbers:focus, +.comments-pagination .page-numbers:hover { + text-decoration: underline; +} + +.comments-pagination .prev, +.comments-pagination .next { + display: block; +} + +.comments-pagination .prev { + right: 0; +} + +.comments-pagination .next { + left: 0; + text-align: left; +} + + +/* Comment Respond ---------------------------- */ + +.comment-respond::after { + clear: both; + content: ""; + display: block; +} + +.comment-respond .comment-notes, +.comment-respond .logged-in-as { + color: #6d6d6d; + font-size: 1.6rem; + line-height: 1.4; + margin: -3rem 0 4rem 0; + text-align: center; +} + +.comment-respond .comment-notes a, +.comment-respond .logged-in-as a { + color: inherit; + text-decoration: none; +} + +.comment-respond .comment-notes a:focus, +.comment-respond .comment-notes a:hover, +.comment-respond .logged-in-as a:focus, +.comment-respond .logged-in-as a:hover { + text-decoration: underline; +} + +.comment-respond p { + line-height: 1.1; + margin-bottom: 2rem; + margin-right: auto; + margin-left: auto; +} + +.comment-respond p:not(.comment-notes) { + max-width: 58rem; +} + +.comment-form-cookies-consent { + align-items: baseline; + display: flex; +} + +.comment-respond > p:last-of-type { + margin-bottom: 0; +} + +.comment-respond label { + display: block; +} + +.comment-respond input[type="checkbox"] + label { + font-size: 1.5rem; + line-height: 1.25; +} + +.comment-respond input[type="text"], +.comment-respond input[type="email"], +.comment-respond textarea { + margin-bottom: 0; +} + +.comment-respond textarea { + height: 15rem; +} + +.comment-respond #submit { + display: block; +} + +.comment-respond .comments-closed { + text-align: center; +} + + +/* Reply Respond ---------------------------- */ + +.comments .comment-respond { + padding: 3rem 0 0; +} + +.comments .comment-respond .comment-reply-title, +.comments .comment-respond .comment-notes, +.comments .comment-respond .logged-in-as { + text-align: right; +} + +.comment-reply-title small { + display: block; + font-size: 1.6rem; + font-weight: 600; + letter-spacing: -0.0277em; + margin: 0.5rem 0 0 0; + white-space: nowrap; +} + +.comment-reply-title small a { + text-decoration: none; +} + +.comment-reply-title small a:focus, +.comment-reply-title small a:hover { + text-decoration: underline; +} + + +/* -------------------------------------------------------------------------- */ + +/* 13. Site Pagination +/* -------------------------------------------------------------------------- */ + + +.pagination .nav-links { + align-items: baseline; + display: flex; + flex-wrap: wrap; + font-size: 1.8rem; + font-weight: 600; + margin: -1.5rem -2.5rem 0 0; + width: calc(100% + 2.5rem); +} + +.pagination-separator { + margin: 5rem 0; +} + +.nav-links > * { + margin: 1.5rem 2.5rem 0 0; +} + +.nav-links .placeholder { + display: none; + visibility: hidden; +} + +.pagination a { + text-decoration: none; +} + +.pagination a:focus, +.pagination a:hover { + text-decoration: underline; +} + +.pagination .dots { + transform: translateY(-0.3em); + color: #6d6d6d; +} + +.nav-short { + display: none; +} + +/* -------------------------------------------------------------------------- */ + +/* 14. Error 404 +/* -------------------------------------------------------------------------- */ + + +.error404 #site-content { + padding-top: 4rem; +} + +.error404-content { + text-align: center; +} + +.error404 #site-content .search-form { + justify-content: center; + margin-top: 3rem; +} + + +/* -------------------------------------------------------------------------- */ + +/* 15. Widgets +/* -------------------------------------------------------------------------- */ + + +/* Widget Base ------------------------------- */ + +.widget { + margin-top: 3rem; +} + +.widget:first-child { + margin-top: 0; +} + +.widget-content > div > *:first-child { + margin-top: 0; +} + +.widget-content > div > *:last-child { + margin-bottom: 0; +} + +.widget .widget-title { + margin: 0 0 2rem; +} + +.widget li { + margin: 2rem 0 0 0; +} + +.widget li:first-child, +.widget li > ul, +.widget li > ol { + margin-top: 0; +} + +.widget table, +.widget table * { + border-color: #dedfdf; +} + +.widget table caption { + background-color: #dedfdf; +} + +.widget .post-date, +.widget .rss-date { + color: #6d6d6d; + display: block; + font-size: 0.85em; + font-weight: 500; + margin-top: 0.2rem; +} + +.widget select { + max-width: 100%; +} + +/* Font Families ----------------------------- */ + +.widget_text p, +.widget_text ol, +.widget_text ul, +.widget_text dl, +.widget_text dt, +.widget-content .rssSummary { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +.widget-content cite, +.widget-content figcaption, +.widget-content .wp-caption-text { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .widget-content cite, + .widget-content figcaption, + .widget-content .wp-caption-text { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +/* Base List Widget -------------------------- */ + +.widget_archive ul, +.widget_categories ul, +.widget_pages ul, +.widget_meta ul, +.widget_nav_menu ul, +.widget_recent_comments ul, +.widget_recent_entries ul, +.widget_rss ul { + list-style: none; + margin: 0; +} + +.widget_archive li, +.widget_categories li, +.widget_pages li, +.widget_meta li, +.widget_nav_menu li { + color: #6d6d6d; + margin: 0.3rem 0; +} + +.widget_archive li li, +.widget_categories li li, +.widget_pages li li, +.widget_meta li li, +.widget_nav_menu li li { + margin-right: 2rem; +} + +.widget_archive a, +.widget_categories a, +.widget_pages a, +.widget_meta a, +.widget_nav_menu a { + font-weight: 700; + text-decoration: none; +} + +.widget_archive a:focus, +.widget_archive a:hover, +.widget_categories a:focus, +.widget_categories a:hover, +.widget_pages a:focus, +.widget_pages a:hover, +.widget_meta a:focus, +.widget_meta a:hover, +.widget_nav_menu a:focus, +.widget_nav_menu a:hover { + text-decoration: underline; +} + +/* Widget: Calendar -------------------------- */ + +.calendar_wrap { + font-size: 2.4rem; +} + +.calendar_wrap th, +.calendar_wrap td { + font-size: 1em; + font-weight: 500; + line-height: 1; + padding: 2.5% 2.5% 1.75% 2.5%; + text-align: center; +} + +.calendar_wrap tfoot td { + border-bottom: none; +} + +.calendar_wrap tfoot a { + text-decoration: none; +} + +.calendar_wrap tfoot #prev { + text-align: right; +} + +.calendar_wrap tfoot #next { + text-align: left; +} + +/* Widget: Image ----------------------------- */ + +/* Widget: Gallery --------------------------- */ + +.widget_media_gallery .gallery { + margin: 0 -0.4em -0.8em -0.4em; + width: calc(100% + 0.8em); +} + +.widget_media_gallery .gallery-item { + margin: 0 0 0.8em 0; + padding: 0 0.4em; +} + +/* Widget: Nav Menu -------------------------- */ + +.widget_nav_menu .widget-content > div > ul { + margin-right: 0; +} + +/* Widget: Recent Comments ------------------- */ + +.widget_recent_comments li { + font-weight: 700; +} + +.widget_recent_comments a { + text-decoration: none; +} + +.widget_recent_comments a:focus, +.widget_recent_comments a:hover { + text-decoration: underline; +} + +/* Widget: Recent Entries -------------------- */ + +.widget_recent_entries a { + font-weight: 700; + text-decoration: none; +} + +.widget_recent_entries a:focus, +.widget_recent_entries a:hover { + text-decoration: underline; +} + +/* Widget: RSS ------------------------------- */ + +.widget_rss .widget-title a.rsswidget:first-of-type { + display: none; +} + +.widget_rss .rsswidget { + font-weight: 700; +} + +.widget_rss a { + text-decoration: none; +} + +.widget_rss a:focus, +.widget_rss a:hover { + text-decoration: underline; +} + +.widget_rss .rssSummary { + margin-top: 0.5rem; +} + +.widget_rss cite::before { + content: "— "; +} + +/* Widget: Search ---------------------------- */ + +.widget_search .search-field { + border-color: #dedfdf; +} + +/* Widget: Tag Cloud ------------------------- */ + +.widget_tag_cloud a { + font-weight: 700; + margin-left: 0.5rem; + text-decoration: none; + white-space: nowrap; +} + +.widget_tag_cloud a:focus, +.widget_tag_cloud a:hover { + text-decoration: underline; +} + +/* Widget: Text ------------------------------ */ + + +/* -------------------------------------------------------------------------- */ + +/* 16. Site Footer +/* -------------------------------------------------------------------------- */ + + +.footer-nav-widgets-wrapper, +#site-footer { + background-color: #fff; + border-color: #dedfdf; + border-style: solid; + border-width: 0; +} + +.footer-top-visible .footer-nav-widgets-wrapper, +.footer-top-hidden #site-footer { + margin-top: 5rem; +} + +.reduced-spacing.footer-top-visible .footer-nav-widgets-wrapper, +.reduced-spacing.footer-top-hidden #site-footer { + border-top-width: 0.1rem; +} + +.footer-top, +.footer-widgets-outer-wrapper, +#site-footer { + padding: 3rem 0; +} + + +/* Footer Top -------------------------------- */ + +.footer-top { + display: flex; + border-bottom: 0.1rem solid #dedfdf; + justify-content: space-between; +} + +/* FOOTER MENU */ + +.footer-menu { + font-size: 1.8rem; + font-weight: 700; + letter-spacing: -0.0277em; +} + +.footer-menu li { + line-height: 1.25; + margin: 0.25em 0 0 0; +} + +.footer-menu a { + text-decoration: none; +} + +.footer-menu a:hover, +.footer-menu a:focus { + text-decoration: underline; +} + +/* FOOTER SOCIAL */ + +.footer-social-wrapper { + margin: 0; + width: 100%; +} + +.has-footer-menu .footer-social-wrapper { + flex-shrink: 0; + margin-right: 1rem; + width: 50%; +} + +ul.footer-social { + margin: -0.5rem -0.5rem 0 0; +} + +.has-footer-menu .footer-social { + justify-content: flex-end; +} + +ul.footer-social li { + margin: 0.5rem 0.5rem 0 0; +} + +.footer-social a { + background-color: #cd2653; + height: 3.6rem; + width: 3.6rem; +} + +.footer-social a::before { + font-size: 1.6rem; +} + +/* Footer Widgets ---------------------------- */ + +.footer-widgets-outer-wrapper { + border-bottom: 0.1rem solid #dedfdf; +} + +.footer-widgets + .footer-widgets { + margin-top: 3rem; +} + +/* Footer Bottom ----------------------------- */ + +#site-footer { + font-size: 1.6rem; +} + +#site-footer .section-inner { + align-items: baseline; + display: flex; + justify-content: space-between; +} + +#site-footer a { + text-decoration: none; +} + +#site-footer a:focus, +#site-footer a:hover { + text-decoration: underline; +} + +.footer-copyright a, +.powered-by-wordpress a { + color: inherit; +} + +.powered-by-wordpress, +.to-the-top { + color: #6d6d6d; +} + +a.to-the-top > * { + pointer-events: none; +} + +.footer-copyright { + font-weight: 600; + margin: 0; +} + +.powered-by-wordpress { + display: none; + margin: 0 2.4rem 0 0; +} + +.to-the-top-long { + display: none; +} + + +/* -------------------------------------------------------------------------- */ + +/* 17. Media Queries +/* -------------------------------------------------------------------------- */ + +@media ( max-width: 479px ) { + + /* Blocks -------------------------------- */ + + .wp-block-pullquote.alignleft, + .wp-block-pullquote.alignright { + float: none; + } + + /* Entry Content ------------------------- */ + + /* LISTS */ + + ul, + ol { + margin: 0 2rem 3rem 0; + } + + li { + margin: 0.5rem 1rem 0 0; + } +} + +@media ( min-width: 480px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: BASE ALIGNMENT WIDTH */ + + .wp-block-pullquote.alignleft, + .wp-block-pullquote.alignright, + .wp-block-cover-image.alignleft, + .wp-block-cover-image.alignright, + .wp-block-cover.alignleft, + .wp-block-cover.alignright, + .wp-block-embed.alignleft, + .wp-block-embed.alignright, + .wp-block-gallery.alignleft, + .wp-block-gallery.alignright { + max-width: 26rem; + } + + /* BLOCK: TABLE WIDTH */ + .wp-block-table.alignleft, + .wp-block-table.alignright { + max-width: 100%; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .alignleft, + .alignright { + max-width: 26rem; + } +} + +@media ( max-width: 599px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + /* While columns are stacked */ + .wp-block-column:last-child { + margin-bottom: 0; + } + + .wp-block-columns + .wp-block-columns { + margin-top: 0.2rem; + } + + .wp-block-columns.alignwide + .wp-block-columns.alignwide { + margin-top: -0.8rem; + } + + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -1.8rem; + } + +} + +@media ( min-width: 600px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -4rem; + } + +} + +@media ( min-width: 660px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignleft { + margin-left: calc(( 100vw - 58rem - 8rem ) / -2); + } + + figure.wp-block-gallery.alignright { + margin-right: calc(( 100vw - 58rem - 8rem ) / -2); + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignleft { + margin-left: 4rem; + } + + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft { + margin-left: calc(( 100vw - 58rem - 8rem ) / -2); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 0; + } + + .entry-content > .alignright { + margin-right: 4rem; + } + + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright { + margin-right: calc(( 100vw - 58rem - 8rem ) / -2); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 0; + } + +} + +@media ( min-width: 700px ) { + + /* Element Base ------------------------- */ + + ul, + ol { + margin-bottom: 4rem; + } + + pre { + padding: 3rem; + } + + hr { + margin: 8rem auto; + } + + table { + font-size: 1.8rem; + } + + /* VANILLA GALLERIES */ + + .gallery-columns-2 .gallery-item { + max-width: 50%; + } + + .gallery-columns-3 .gallery-item { + max-width: 33.33%; + } + + .gallery-columns-4 .gallery-item { + max-width: 25%; + } + + .gallery-columns-5 .gallery-item { + max-width: 20%; + } + + .gallery-columns-6 .gallery-item { + max-width: 16.66%; + } + + .gallery-columns-7 .gallery-item { + max-width: 14.28%; + } + + .gallery-columns-8 .gallery-item { + max-width: 12.5%; + } + + .gallery-columns-9 .gallery-item { + max-width: 11.11%; + } + + /* TITLES */ + + h1, + .heading-size-1, + h2, + .heading-size-2, + h3, + .heading-size-3 { + margin: 6rem auto 3rem; + } + + h4, + .heading-size-4, + h5, + .heading-size-5, + h6, + .heading-size-6 { + margin: 4.5rem auto 2.5rem; + } + + h1, + .heading-size-1 { + font-size: 6.4rem; + } + + h2, + .heading-size-2 { + font-size: 4.8rem; + } + + h3, + .heading-size-3 { + font-size: 4rem; + } + + h4, + .heading-size-4 { + font-size: 3.2rem; + } + + h5, + .heading-size-5 { + font-size: 2.4rem; + } + + h6, + .heading-size-6 { + font-size: 1.8rem; + } + + /* INPUTS */ + + fieldset { + padding: 3rem; + } + + legend { + padding: 0 1.5rem; + } + + button, + .button, + .faux-button, + .wp-block-button__link, + input[type="button"], + input[type="reset"], + input[type="submit"] { + font-size: 1.7rem; + } + + /* MEDIA */ + + figcaption, + .wp-caption-text { + margin-top: 1.8rem; + } + + + /* Helper Classes ------------------------- */ + + /* SECTIONS */ + + section { + padding: 8rem 0; + } + + .section-inner { + width: calc(100% - 8rem); + } + + + /* Site Header --------------------------- */ + + .header-inner { + padding: 3.8rem 0; + } + + .site-title { + font-size: 2.4rem; + font-weight: 700; + } + + .site-description { + display: block; + } + + .site-logo img { + max-height: 9rem; + transition: height 0.15s linear, width 0.15s linear, max-height 0.15s linear; + } + + /* HEADER TOGGLES */ + + .toggle-inner .toggle-text { + font-size: 1.2rem; + } + + .search-toggle { + right: 2rem; + } + + .nav-toggle { + left: 2rem; + } + + + /* Menu Modal ---------------------------- */ + + button.close-nav-toggle { + font-size: 1.8rem; + padding: 4rem 0; + } + + button.close-nav-toggle svg { + height: 2rem; + width: 2rem; + } + + button.close-nav-toggle .toggle-text { + margin-left: 2.1rem; + } + + .modal-menu { + right: auto; + width: 100%; + } + + .modal-menu > li > a, + .modal-menu > li > .ancestor-wrapper > a { + font-size: 2.4rem; + padding: 2.5rem 0; + } + + .modal-menu ul li { + border-right-color: transparent; + } + + .modal-menu > li > .ancestor-wrapper > button.sub-menu-toggle { + padding: 0 3rem; + } + + .modal-menu > li > .ancestor-wrapper > button.sub-menu-toggle svg { + height: 1.1rem; + width: 1.8rem; + } + + .menu-bottom { + align-items: center; + display: flex; + justify-content: space-between; + padding: 4.4rem 0; + } + + .menu-copyright { + display: block; + flex-shrink: 0; + margin-left: 4rem; + } + + /* Modal Search Form ------------------------- */ + + .search-modal form { + position: relative; + width: 100%; + } + + .search-untoggle svg { + height: 2.5rem; + width: 2.5rem; + } + + .search-modal .search-field { + border: none; + font-size: 3.2rem; + height: 14rem; + } + + .search-modal .search-field::-moz-placeholder { + line-height: 4.375; + } + + /* Sub Page ------------------------------ */ + + /* FEATURED MEDIA */ + + .featured-media figcaption { + margin: 2rem auto 0 auto; + width: calc(100% - 8rem); + } + + /* Template: Cover Template -------------- */ + + .cover-header-inner { + padding: 18rem 0 8rem 0; + } + + .to-the-content-wrapper { + top: calc(100% + 1.8rem); + } + + .to-the-content { + height: 6rem; + } + + .to-the-content svg { + height: 2.4rem; + width: 2.12rem; + } + + /* Template: Full Width ------------------ */ + + body.template-full-width .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + width: calc(100% - 8rem); + } + + body.template-full-width .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-right: 4rem; + padding-left: 4rem; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 4rem; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 4rem; + } + + /* Post: Archive ------------------------- */ + + .archive-header { + padding: 8rem 0; + } + + .reduced-spacing .archive-header { + padding-bottom: 3rem; + } + + .archive-title { + font-size: 3.2rem; + } + + body:not(.singular) main > article:first-of-type { + padding: 8rem 0 0; + } + + h2.entry-title { + font-size: 6.4rem; + } + + /* SEARCH RESULTS */ + + .no-search-results-form { + padding-top: 8rem; + } + + /* Post: Single -------------------------- */ + + /* POST HEADER */ + + .singular .entry-header { + padding: 8rem 0; + } + + .entry-categories { + margin-bottom: 3rem; + } + + .entry-categories-inner { + margin: -1rem -2rem 0 0; + } + + .entry-categories a { + font-size: 1.5rem; + margin: 1rem 2rem 0 0; + } + + .intro-text { + font-size: 2rem; + margin-top: 2.5rem; + } + + .singular .intro-text { + font-size: 2.6rem; + } + + .post-meta-wrapper { + margin-top: 3rem; + } + + .post-meta { + font-size: 1.6rem; + margin: -1.4rem -3rem 0 0; + } + + .post-meta li { + margin: 1.4rem 3rem 0 0; + max-width: calc(100% - 3rem); + } + + .featured-media { + margin-top: 6rem; + } + + .post-inner { + padding-top: 8rem; + } + + /* POST FOOTER */ + + .post-meta-wrapper.post-meta-single-bottom { + margin-top: 4rem; + } + + /* AUTHOR BIO */ + + .author-bio { + margin-top: 8rem; + min-height: 8rem; + padding-right: 10rem; + position: relative; + } + + .author-bio .avatar { + position: absolute; + right: 0; + top: 0; + height: 8rem; + width: 8rem; + } + + /* SINGLE PAGINATION */ + + .pagination-single { + font-size: 2.4rem; + margin-top: 8rem; + } + + .pagination-single-inner { + flex-direction: row; + justify-content: space-between; + } + + .pagination-single.only-next .pagination-single-inner { + justify-content: flex-end; + } + + .pagination-single hr:first-child { + margin: 0 0 4rem 0; + } + + .pagination-single hr:last-child { + margin: 4rem 0 0.8rem 0; + } + + .pagination-single a + a { + margin: 0 4rem 0 0; + } + + .pagination-single a .arrow { + margin: 0 0 0 2rem; + } + + .pagination-single .next-post { + flex-direction: row-reverse; + text-align: left; + } + + .pagination-single .next-post .arrow { + margin: 0 2rem 0 0; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: SHARED MEDIA STYLES */ + + .wp-block-embed figcaption, + .wp-block-image figcaption { + font-size: 1.6rem; + } + + /* BLOCK: BASE MARGINS */ + + .wp-block-archives:not(.alignwide):not(.alignfull), + .wp-block-categories:not(.alignwide):not(.alignfull), + .wp-block-code, + .wp-block-columns:not(.alignwide):not(.alignfull), + .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-group:not(.has-background):not(.alignwide):not(.alignfull), + .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright), + .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright), + .wp-block-media-text:not(.alignwide):not(.alignfull), + .wp-block-preformatted, + .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright), + .wp-block-quote, + .wp-block-quote.is-large, + .wp-block-quote.is-style-large, + .wp-block-verse, + .wp-block-video:not(.alignwide):not(.alignfull) { + margin-bottom: 4rem; + margin-top: 4rem; + } + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -6rem; + } + + .entry-content .wp-block-columns h1, + .entry-content .wp-block-columns h2, + .entry-content .wp-block-columns h3, + .entry-content .wp-block-columns h4, + .entry-content .wp-block-columns h5, + .entry-content .wp-block-columns h6 { + margin: 3.5rem 0 2rem; + } + + /* BLOCK: COVER */ + + .wp-block-cover-image .wp-block-cover__inner-container, + .wp-block-cover .wp-block-cover__inner-container { + width: calc(100% - 8rem); + } + + .wp-block-cover-image h2, + .wp-block-cover h2 { + font-size: 4.8rem; + } + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignnone, + figure.wp-block-gallery.aligncenter { + margin-bottom: 4rem; + margin-top: 4rem; + } + + figure.wp-block-gallery.alignwide, + figure.wp-block-gallery.alignfull { + margin-bottom: 6rem; + margin-top: 6rem; + } + + /* BLOCK: GROUP */ + + .wp-block-group.has-background { + padding: 4rem; + margin-top: 0; + margin-bottom: 0; + } + + .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-right: 0; + padding-left: 0; + } + + /* BLOCK: MEDIA AND TEXT */ + + .wp-block-media-text .wp-block-media-text__content { + padding: 4rem; + } + + /* BLOCK: PULLQUOTE */ + + .wp-block-pullquote blockquote p { + font-size: 3.2rem; + } + + .wp-block-pullquote cite { + margin-top: 2rem; + } + + .wp-block-pullquote.alignfull:not(.is-style-solid-color) { + padding-right: 1rem; + padding-left: 1rem; + } + + .wp-block-pullquote.alignwide::before, + .wp-block-pullquote.alignfull::before { + font-size: 11.272727272rem; + height: 8rem; + margin-bottom: 2rem; + width: 8rem; + } + + .wp-block-pullquote.alignwide blockquote p, + .wp-block-pullquote.alignfull blockquote p { + font-size: 4.8rem; + line-height: 1.203125; + } + + .wp-block-pullquote.alignleft p, + .wp-block-pullquote.alignright p, + .wp-block-pullquote.alignleft.is-style-solid-color blockquote p, + .wp-block-pullquote.alignright.is-style-solid-color blockquote p { + font-size: 3.2rem; + line-height: 1.1875; + } + + .wp-block-pullquote.is-style-solid-color.alignwide, + .wp-block-pullquote.is-style-solid-color.alignfull { + padding: 6rem 4rem 4rem; + } + + .wp-block-pullquote.alignleft.is-style-solid-color blockquote p, + .wp-block-pullquote.alignright.is-style-solid-color blockquote p { + font-size: 2.6rem; + } + + /* BLOCK: QUOTE */ + + .wp-block-quote.is-large p, + .wp-block-quote.is-style-large p { + font-size: 2.8rem; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin: 6rem auto; + } + + .wp-block-separator.is-style-wide { + max-width: calc(100vw - 8rem); + } + + /* Entry Content ------------------------- */ + + .entry-content { + font-size: 2.1rem; + } + + .entry-content p, + .entry-content li { + line-height: 1.476; + } + + .entry-content h1, + .entry-content h2, + .entry-content h3 { + margin: 6rem auto 3rem; + } + + .entry-content h4, + .entry-content h5, + .entry-content h6 { + margin: 4.5rem auto 2.5rem; + } + + .alignnone, + .aligncenter { + margin-bottom: 4rem; + margin-top: 4rem; + } + + .alignleft { + margin: 0.3rem 2rem 2rem 0; + } + + .alignright { + margin: 0.3rem 0 2rem 2rem; + } + + .entry-content > .alignwide:not(.wp-block-group.has-background), + .entry-content > .alignfull:not(.wp-block-group.has-background) { + margin-bottom: 6rem; + margin-top: 6rem; + } + + .entry-content > .alignwide { + max-width: calc(100vw - 8rem); + width: calc(100vw - 8rem); + } + + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 4rem; + } + + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 4rem; + } + + /* ENTRY MEDIA */ + + .alignfull > figcaption, + .alignfull > .wp-caption-text { + width: calc(100% - 8rem); + } + + /* Comments ------------------------------ */ + + .comments-wrapper { + margin-top: 8rem; + } + + .comment-reply-title { + margin-bottom: 4.6rem; + } + + .comment-respond p.comment-notes, + .comment-respond p.logged-in-as { + font-size: 1.8rem; + letter-spacing: -0.025em; + margin: -2.5rem 0 4.4rem 0; + } + + .comments .comment, + .comments .pingback, + .comments .trackback, + .comments .review { + padding-top: 5rem; + } + + div.comment:first-of-type { + margin-top: 5rem; + } + + .comment-meta { + margin-bottom: 2rem; + min-height: 6rem; + padding: 0.3rem 7.5rem 0 0; + } + + .comment-meta .avatar { + display: block; + height: 6rem; + position: absolute; + right: 0; + top: 0; + width: 6rem; + } + + .comment-author { + font-size: 2.4rem; + } + + .comment-metadata { + font-size: 1.6rem; + margin-top: 0.8rem; + } + + .comment-footer-meta { + margin-top: 2.5rem; + } + + .comments-pagination { + margin-top: 8rem; + } + + /* PINGBACKS & TRACKBACKS */ + + .pingback .comment-body { + padding: 0; + } + + /* COMMENT RESPOND */ + + .comment-respond p { + margin-bottom: 2.5rem; + } + + .comment-form p.logged-in-as { + margin: -2.5rem 0 4.4rem 0; + } + + .comment-respond .comment-form-author, + .comment-respond .comment-form-email { + float: right; + width: calc(50% - 1rem); + } + + .comment-respond .comment-form-email { + margin-right: 2rem; + } + + .comments .comment-respond { + padding: 5rem 0 0; + } + + .comment-reply-title small { + display: inline; + margin: 0 0.5rem 0 0; + } + + /* Site Pagination ----------------------- */ + + .pagination-separator { + margin: 8rem 0; + } + + /* Display the full text for Newer and Older Posts. */ + + .nav-short { + display: inline; + } + + .pagination .nav-links { + font-size: 2.4rem; + font-weight: 700; + margin: -2.5rem -4rem 0 0; + } + + .nav-links > * { + margin: 2.5rem 4rem 0 0; + } + + + /* Error 404 ----------------------------- */ + + .error404 #site-content { + padding-top: 8rem; + } + + /* Widgets ------------------------------- */ + + .widget .widget-title { + margin-bottom: 3rem; + } + + /* Site Footer --------------------------- */ + + .footer-top-visible .footer-nav-widgets-wrapper, + .footer-top-hidden #site-footer { + margin-top: 8rem; + } + + /* FOOTER TOP */ + + .footer-top { + padding: 3.7rem 0; + } + + .footer-menu { + font-size: 2.4rem; + margin: -0.8rem -1.6rem 0 0; + } + + .footer-menu li { + margin: 0.8rem 1.6rem 0 0; + } + + .has-footer-menu .footer-social-wrapper { + flex: 1; + margin-right: 4rem; + width: auto; + } + + /* FOOTER WIDGETS */ + + .footer-widgets-outer-wrapper { + padding: 8rem 0; + } + + .footer-widgets-wrapper { + display: flex; + justify-content: space-between; + margin-right: -4rem; + width: calc(100% + 4rem); + } + + .footer-widgets { + margin-right: 4rem; + width: 50%; + } + + .footer-widgets + .footer-widgets { + margin-top: 0; + } + + .footer-widgets .widget { + border-top: none; + margin-top: 5rem; + padding-top: 0; + } + + .footer-widgets .widget:first-child { + margin-top: 0; + } + + /* FOOTER BOTTOM */ + + #site-footer { + font-size: 1.8rem; + padding: 4.3rem 0; + } + + .footer-credits { + display: flex; + } + + .footer-copyright { + font-weight: 700; + } + + .powered-by-wordpress { + display: block; + } + + .to-the-top-long { + display: inline; + } + + .to-the-top-short { + display: none; + } + +} + +@media (min-width: 782px) { + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-column { + margin-bottom: 0; + } + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -2.8rem; + } +} + +@media ( min-width: 1000px ) { + + + /* Document Setup ------------------------ */ + + /* Helper Classes ------------------------ */ + + /* Site Header --------------------------- */ + + #site-header { + z-index: 1; + } + + .header-inner { + align-items: center; + display: flex; + justify-content: space-between; + padding: 2.8rem 0; + } + + .header-titles-wrapper { + margin-left: 4rem; + max-width: 50%; + padding: 0; + text-align: right; + } + + .header-titles { + align-items: baseline; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; + margin: -1rem -2.4rem 0 0; + } + + .header-titles .site-title, + .header-titles .site-logo, + .header-titles .site-description { + margin: 1rem 2.4rem 0 0; + } + + .wp-custom-logo .header-titles { + align-items: center; + } + + /* HEADER NAVIGATION */ + + .header-navigation-wrapper { + align-items: center; + display: flex; + } + + .primary-menu-wrapper { + display: block; + width: 100%; + } + + /* HEADER TOGGLES */ + + .mobile-search-toggle, + .mobile-nav-toggle { + display: none !important; + } + + .primary-menu-wrapper + .header-toggles { + margin-right: 3rem; + } + + .header-toggles { + display: flex; + flex-shrink: 0; + margin-left: -3rem; + } + + .header-inner .toggle { + height: 4.4rem; + padding: 0 3rem; + position: relative; + bottom: auto; + right: auto; + left: auto; + top: auto; + width: auto; + } + + .header-inner .toggle-wrapper { + position: relative; + } + + .header-inner .toggle-wrapper::before { + background: #dedfdf; + content: ""; + display: block; + height: 2.7rem; + position: absolute; + right: 0; + top: calc(50% - 1.35rem); + width: 0.1rem; + } + + .header-inner .toggle-wrapper:first-child::before { + content: none; + } + + .header-inner .primary-menu-wrapper + .header-toggles .toggle-wrapper:first-child::before { + content: ""; + } + + .nav-toggle-wrapper:not(.has-expanded-menu) { + display: none; + } + + .toggle-inner { + position: static; + } + + .toggle-inner .toggle-text { + right: 0; + left: 0; + text-align: center; + top: calc(100% - 0.3rem); + width: auto; + } + + .header-toggles:only-child .nav-toggle .toggle-inner { + padding-top: 0; + } + + .header-toggles:only-child .toggle-inner { + display: flex; + flex-wrap: nowrap; + align-items: center; + } + + .header-toggles:only-child .toggle-inner .svg-icon { + order: 1; + } + + .header-toggles:only-child .toggle-inner .toggle-text { + position: static; + padding-left: 20px; + font-size: 15px; + color: inherit; + } + + /* Menu Modal ---------------------------- */ + + .menu-modal { + opacity: 1; + justify-content: flex-end; + padding: 0; + transition: background-color 0.3s ease-in, right 0s 0.3s, left 0s 0.3s; + } + + .menu-modal.cover-modal { + background: rgba(0, 0, 0, 0); + } + + .menu-modal.active { + background: rgba(0, 0, 0, 0.2); + transition: background-color 0.3s ease-out; + } + + .menu-wrapper.section-inner { + width: calc(100% - 8rem); + } + + .menu-modal-inner { + box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.1); + opacity: 0; + padding: 0; + transform: translateX(-20rem); + transition: transform 0.2s ease-in, opacity 0.2s ease-in; + width: 50rem; + } + + .menu-modal.active .menu-modal-inner { + opacity: 1; + transform: translateX(0); + transition-timing-function: ease-out; + } + + .mobile-menu { + display: none; + } + + .expanded-menu { + display: block; + } + + .menu-bottom { + padding: 6rem 0; + } + + .menu-bottom .social-menu { + justify-content: flex-start; + } + + /* Sub Page ------------------------------ */ + + /* FEATURED MEDIA */ + + .featured-media figcaption { + width: 100%; + } + + /* Template: Full Width ------------------ */ + + .template-full-width .wp-block-image .alignleft { + margin-right: 2rem; + } + + .template-full-width .wp-block-image .alignright { + margin-left: 2rem; + } + + /* Post: Archive ------------------------- */ + + /* Post: Single -------------------------- */ + + .singular .intro-text { + font-size: 2.8rem; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -4.8rem; + } + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignwide, + figure.wp-block-gallery.alignfull { + margin-bottom: 8rem; + margin-top: 8rem; + } + + /* BLOCK: GROUP */ + + .entry-content > .wp-block-group.alignwide.has-background, + .entry-content > .wp-block-group.alignfull.has-background { + padding: 8rem 4rem; + margin-bottom: 0; + margin-top: 0; + } + + /* BLOCK: IMAGE */ + + .wp-block-image .alignleft { + margin-right: 0; + } + + .wp-block-image .alignright { + margin-left: 0; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin: 8rem auto; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft { + position: absolute; + right: calc((100vw - 58rem) / 2 + 58rem + 2rem); + max-width: calc((100% - 58rem) / 2 - 6rem); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignleft { + position: relative; + right: inherit; + max-width: inherit; + } + + [class*="wp-block"].alignwide [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + position: absolute; + right: calc((100% - 58rem) / 2 + 58rem + 4rem); + max-width: calc((100% - 58rem) / 2 - 4rem); + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignleft { + right: calc((100% - 58rem) / 2 + 58rem); + } + + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 4rem; + } + + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright, + [class*="__inner-container"] > .alignright { + position: absolute; + left: calc((100vw - 58rem) / 2 + 58rem + 2rem); + max-width: calc((100% - 58rem) / 2 - 6rem); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignright { + position: relative; + left: inherit; + max-width: inherit; + } + + [class*="wp-block"].alignwide [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + position: absolute; + left: calc((100% - 58rem) / 2 + 58rem + 4rem); + max-width: calc((100% - 58rem) / 2 - 4rem); + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignright { + left: calc((100% - 58rem) / 2 + 58rem + 4rem); + } + + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 4rem; + } + + .entry-content > .alignwide:not(.wp-block-group.has-background), + .entry-content > .alignfull:not(.wp-block-group.has-background) { + margin-bottom: 8rem; + margin-top: 8rem; + } + + /* ENTRY MEDIA */ + + .alignfull > figcaption, + .alignfull > .wp-caption-text { + width: calc(100% - 10rem); + } + + /* Comments ------------------------------ */ + + .comment-meta { + padding-right: 0; + } + + .comment-meta .avatar { + right: -8rem; + } + + /* Site Pagination ----------------------- */ + + .pagination .nav-links { + justify-content: space-between; + margin: 0; + width: 100%; + } + + .nav-links > * { + margin: 0 2rem; + } + + .pagination .next, + .pagination .prev { + display: block; + } + + .pagination .prev { + margin: 0 0 0 auto; + } + + .pagination .next { + text-align: left; + margin: 0 auto 0 0; + } + + /* Site Footer --------------------------- */ + + /* FOOTER TOP */ + + .footer-top { + align-items: center; + } + + .footer-menu { + align-items: baseline; + display: flex; + justify-content: flex-start; + flex-wrap: wrap; + font-size: 2.1rem; + margin: -1.2rem -2.4rem 0 0; + } + + .footer-menu li { + margin: 1.2rem 2.4rem 0 0; + } +} + + +@media ( min-width: 1220px ) { + + /* Element Base -------------------------- */ + + /* TITLES */ + + h1, + .heading-size-1 { + font-size: 8.4rem; + } + + /* Helper Classes ------------------------ */ + + /* Site Header --------------------------- */ + + /* PRIMARY MENU */ + + ul.primary-menu { + margin: -0.8rem -2.5rem 0 0; + } + + .primary-menu > li { + margin: 0.8rem 2.5rem 0 0; + } + + /* HEADER TOGGLES */ + + .primary-menu-wrapper + .header-toggles { + margin-right: 4rem; + } + + .header-toggles { + margin-left: -4rem; + } + + .header-toggles .toggle { + padding: 0 4rem; + } + + /* Menu Modal ---------------------------- */ + + /* Search Modal -------------------------- */ + + /* Sub Page ------------------------------ */ + + /* Template: Cover Template -------------- */ + + .cover-header + .post-inner { + padding-top: 10rem; + } + + /* Post: Archive ------------------------- */ + + /* Post: Single -------------------------- */ + + .singular .intro-text { + font-size: 3.2rem; + letter-spacing: -0.03125em; + line-height: 1.375; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -6rem; + } + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignfull { + margin-bottom: 10rem; + margin-top: 10rem; + } + + /* BLOCK: GROUP */ + + .entry-content > .wp-block-group.alignwide.has-background, + .entry-content > .wp-block-group.alignfull.has-background { + padding: 8rem 6rem; + margin-bottom: 0; + margin-top: 0; + } + + /* BLOCK: PULLQUOTE */ + + .wp-block-pullquote.alignwide blockquote p, + .wp-block-pullquote.alignfull blockquote p { + font-size: 6.4rem; + } + + .wp-block-pullquote.is-style-solid-color.alignwide, + .wp-block-pullquote.is-style-solid-color.alignfull { + padding: 9rem 4rem 8rem; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignfull { + margin-bottom: 10rem; + margin-top: 10rem; + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignleft { + right: calc((100% - 58rem) / 2 + 58rem - 2rem); + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignright { + left: calc((100% - 58rem) / 2 + 58rem + 6rem); + } + + /* Comments ------------------------------ */ + + .comment-reply-title { + font-size: 5.6rem; + line-height: 1.2; + margin-bottom: 6rem; + } + + .comment-respond p.comment-notes, + .comment-respond p.logged-in-as { + margin: -4rem 0 6rem 0; + } + + .comments .comment-respond .comment-reply-title { + font-size: 4.8rem; + } + + .comments .comment-respond p.comment-notes, + .comments .comment-respond p.logged-in-as { + margin: -4.5rem 0 4rem 0; + } + + /* Site Pagination ----------------------- */ + + /* Widgets ------------------------------- */ + + .widget-content { + font-size: 2.1rem; + } + + /* Site Footer --------------------------- */ + + .footer-menu { + font-size: 2.4rem; + margin: -1.5rem -3rem 0 0; + } + + .footer-menu li { + margin: 1.5rem 3rem 0 0; + } + + ul.footer-social { + margin: -1rem -1rem 0 0; + } + + ul.footer-social li { + margin: 1rem 1rem 0 0; + } + + .footer-social a { + height: 4.4rem; + width: 4.4rem; + } + + .footer-social a::before { + font-size: 2rem; + } + + /* FOOTER WIDGETS */ + + .footer-widgets-wrapper { + margin-right: -6rem; + width: calc(100% + 6rem); + } + + .footer-widgets { + margin-right: 6rem; + } + +} + +@media ( min-width: 1240px ) { + + + /* Blocks -------------------------------- */ + + body.template-full-width .entry-content > .alignleft { + margin-left: calc(( 100vw - 120rem ) / 2); + } + + body.template-full-width .entry-content > .alignright { + margin-right: calc(( 100vw - 120rem ) / 2); + } + +} + +@media ( min-width: 1280px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignleft { + margin-left: -31rem; + } + + figure.wp-block-gallery.alignright { + margin-right: -31rem; + } + + /* BLOCK: SEPARATOR */ + + .wp-block-separator.is-style-wide { + max-width: 120rem; + width: 120rem; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft { + right: calc((100vw - 58rem) / 2 + 58rem + 4rem); + margin-left: -31rem; + } + + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright { + left: calc((100vw - 58rem) / 2 + 58rem + 4rem); + margin-right: -31rem; + } + + .entry-content > .alignwide { + max-width: 120rem; + width: 120rem; + } + + [class*="__inner-container"] > .alignwide { + max-width: 120rem; + width: 100%; + } + + .alignleft, + .alignright, + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft, + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + max-width: 25rem; + } + + /* Template: Full Width ------------------ */ + + body.template-full-width .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-right: 0; + padding-left: 0; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + margin-left: 0; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + margin-right: 0; + } + +} + +@media ( min-width: 1330px ) { + + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .alignleft, + .alignright, + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft, + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + max-width: 29rem; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: PULLQUOTE */ + + .wp-block-pullquote.is-style-solid-color.alignleft::before, + .wp-block-pullquote.is-style-solid-color.alignright::before { + top: 0; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/style.css b/srcs/wordpress/wp-content/themes/twentytwenty/style.css new file mode 100644 index 0000000..4e887a3 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/style.css @@ -0,0 +1,6369 @@ +/* +Theme Name: Twenty Twenty +Text Domain: twentytwenty +Version: 1.1 +Requires at least: 4.7 +Requires PHP: 5.2.4 +Description: Our default theme for 2020 is designed to take full advantage of the flexibility of the block editor. Organizations and businesses have the ability to create dynamic landing pages with endless layouts using the group and column blocks. The centered content column and fine-tuned typography also makes it perfect for traditional blogs. Complete editor styles give you a good idea of what your content will look like, even before you publish. You can give your site a personal touch by changing the background colors and the accent color in the Customizer. The colors of all elements on your site are automatically calculated based on the colors you pick, ensuring a high, accessible color contrast for your visitors. +Tags: blog, one-column, custom-background, custom-colors, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready, block-styles, wide-blocks, accessibility-ready +Author: the WordPress team +Author URI: https://wordpress.org/ +Theme URI: https://wordpress.org/themes/twentytwenty/ +License: GNU General Public License v2 or later +License URI: http://www.gnu.org/licenses/gpl-2.0.html + +All files, unless otherwise stated, are released under the GNU General Public +License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) + +This theme, like WordPress, is licensed under the GPL. +Use it to make something cool, have fun, and share what you've learned +with others. +*/ + +/*-------------------------------------------------------------- +>>> TABLE OF CONTENTS: +---------------------------------------------------------------- + + 0. CSS Reset + 1. Document Setup + 2. Element Base + 3. Helper Classes + 4. Site Header + 5. Menu Modal + 6. Search Modal + 7. Page Templates + a. Template: Cover Template + c. Template: Full Width + 8. Post: Archive + 9. Post: Single + 10. Blocks + 11. Entry Content + 12. Comments + 13. Site Pagination + 14. Error 404 + 15. Widgets + 16. Site Footer + 17. Media Queries + +----------------------------------------------------------------------------- */ + + +/* -------------------------------------------------------------------------- */ + +/* 0. CSS Reset +/* -------------------------------------------------------------------------- */ + + +html, +body { + border: none; + margin: 0; + padding: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +address, +big, +cite, +code, +em, +font, +img, +small, +strike, +sub, +sup, +li, +ol, +ul, +fieldset, +form, +label, +legend, +button, +table, +caption, +tr, +th, +td { + border: none; + font-size: inherit; + line-height: inherit; + margin: 0; + padding: 0; + text-align: inherit; +} + +blockquote::before, +blockquote::after { + content: ""; +} + + +/* -------------------------------------------------------------------------- */ + +/* 1. Document Setup +/* -------------------------------------------------------------------------- */ + + +html { + font-size: 62.5%; /* 1rem = 10px */ + scroll-behavior: smooth; +} + +@media (prefers-reduced-motion: reduce) { + html { + scroll-behavior: auto; + } +} + +body { + background: #f5efe0; + box-sizing: border-box; + color: #000; + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + font-size: 1.8rem; + letter-spacing: -0.015em; + text-align: left; +} + +@supports ( font-variation-settings: normal ) { + + body { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +*, +*::before, +*::after { + box-sizing: inherit; + -webkit-font-smoothing: antialiased; + word-break: break-word; + word-wrap: break-word; +} + +#site-content { + overflow: hidden; +} + + +/* Clearing ---------------------------------- */ + +.group::after, +.entry-content::after { + clear: both; + content: ""; + display: block; +} + + +/* Base Transitions -------------------------- */ + +a, +path { + transition: all 0.15s linear; +} + + +/* Screen Reader Text ------------------------ */ + +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + -webkit-clip-path: inset(50%); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute !important; + width: 1px; + word-wrap: normal !important; + word-break: normal; +} + +.screen-reader-text:focus { + background-color: #f1f1f1; + border-radius: 3px; + box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); + clip: auto !important; + -webkit-clip-path: none; + clip-path: none; + color: #21759b; + display: block; + font-size: 14px; + font-size: 0.875rem; + font-weight: 700; + height: auto; + right: 5px; + line-height: normal; + padding: 15px 23px 14px; + text-decoration: none; + top: 5px; + width: auto; + z-index: 100000; +} + + +/* Skip Link --------------------------------- */ + +.skip-link { + left: -9999rem; + top: 2.5rem; + z-index: 999999999; + text-decoration: underline; +} + +.skip-link:focus { + display: block; + left: 6px; + top: 7px; + font-size: 14px; + font-weight: 600; + text-decoration: none; + line-height: normal; + padding: 15px 23px 14px; + z-index: 100000; + right: auto; +} + + +/* Fonts ------------------------------------- */ + +/* + * Chrome renders extra-wide   characters for the Hoefler Text font. + * This results in a jumping cursor when typing in both the classic editor and + * block editor. The following font-face override fixes the issue by manually + * inserting a custom font that includes just a Hoefler Text space replacement + * for that character instead. + */ +@font-face { + font-family: NonBreakingSpaceOverride; + src: url(data:application/font-woff2;charset=utf-8;base64,d09GMgABAAAAAAMoAA0AAAAACDQAAALTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCahEICjx3CywAATYCJANUBCAFhiEHgWwbXQfILgpsY+rQRRARwyAs6uL7pxzYhxEE+32b3aeHmifR6tklkS9hiZA0ewkqGRJE+H7/+6378ASViK/PGeavqJyOzsceKi1s3BCiQsiOdn1r/RBgIJYEgCUhbm/8/8/h4saPssnTNkkiWUBrTRtjmQSajw3Ui3pZ3LYDPD+XG2C3JA/yKAS8/rU5eNfuGqRf4eNNgV4YAlIIgxglEkWe6FYpq10+wi3g+/nUgvgPFczNrz/RsTgVm/zfbPuHZlsuQECxuyqBcQwKFBjFgKO8AqP4bAN9tFJtnM9xPcbNjeXS/x1wY/xU52f5W/X1+9cnH4YwKIaoRRAkUkj/YlAAeF/624foiIDBgBmgQBeGAyhBljUPZUm/l2dTvmpqcBDUOHdbPZWd8JsBAsGr4w8/EDn82/bUPx4eh0YNrQTBuHO2FjQEAGBwK0DeI37DpQVqdERS4gZBhpeUhWCfLFz7J99aEBgsJCHvUGAdAPp4IADDCAPCEFMGpMZ9AQpTfQtQGhLbGVBZFV8BaqNyP68oTZgHNj3M8kBPfXTTC9t90UuzYhy9ciH0grVlOcqyCytisvbsERsEYztiznR0WCrmTksJwbSNK6fd1Rvr25I9oLvctUoEbNOmXJbqgYgPXEHJ82IUsrCnpkxh23F1rfZ2zcRnJYoXtauB3VTFkFXQg3uoZYD5qE0kdjDtoDoF1h2bulGmev5HbYhbrjtohQSRI4aNOkffIcT+d3v6atpaYh3JvPoQsztCcqvaBkppDSPcQ3bw3KaCBo1f5CJWTZEgW3LjLofYg51MaVezrx8xZitYbQ9KYeoRaqQdVLwSEfrKXLK1otCWOKNdR/YwYAfon5Yk8O2MJfSD10dPGA5PIJJQMkah0ugMJiv6x4Dm7LEa8xnrRGGGLAg4sAlbsA07sAt76DOsXKO3hIjtIlpnnFrt1qW4kh6NhS83P/6HB/fl1SMAAA==) format("woff2"), url(data:application/font-woff;charset=utf-8;base64,d09GRgABAAAAAAUQAA0AAAAACDQAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAE9AAAABwAAAAchf5yU0dERUYAAATYAAAAHAAAAB4AJwAbT1MvMgAAAaAAAABJAAAAYJAcgU5jbWFwAAACIAAAAF4AAAFqUUxBZ2dhc3AAAATQAAAACAAAAAgAAAAQZ2x5ZgAAApAAAAAyAAAAPL0n8y9oZWFkAAABMAAAADAAAAA2Fi93Z2hoZWEAAAFgAAAAHQAAACQOSgWaaG10eAAAAewAAAAzAAAAVC7TAQBsb2NhAAACgAAAABAAAAAsAOQBAm1heHAAAAGAAAAAHQAAACAAWQALbmFtZQAAAsQAAAF6AAADIYvD/Adwb3N0AAAEQAAAAI4AAADsapk2o3jaY2BkYGAA4ov5mwzj+W2+MnCzXwCKMNzgCBSB0LfbQDQ7AxuI4mBgAlEAFKQIRHjaY2BkYGD3+NvCwMDBAALsDAyMDKhAFAA3+wH3AAAAeNpjYGRgYBBl4GBgYgABEMnIABJzAPMZAAVmAGUAAAB42mNgZlJhnMDAysDCKsKygYGBYRqEZtrDYMT4D8gHSmEHjgUFOQwODAqqf9g9/rYwMLB7MNUAhRlBcsxBrMlASoGBEQAj8QtyAAAAeNrjYGBkAAGmWQwMjO8gmBnIZ2NA0ExAzNjAAFYJVn0ASBsD6VAIDZb7AtELAgANIgb9AHjaY2BgYGaAYBkGRgYQSAHyGMF8FgYPIM3HwMHAxMDGoMCwQIFLQV8hXvXP//9AcRCfAcb///h/ygPW+w/vb7olBjUHCTCyMcAFGZmABBO6AogThgZgIUsXAEDcEzcAAHjaY2BgECMCyoEgACZaAed42mNgYmRgYGBnYGNgYAZSDJqMgorCgoqCjECRXwwNrCAKSP5mAAFGBiRgyAAAi/YFBQAAeNqtkc1OwkAUhU/5M25cEhcsZick0AwlBJq6MWwgJkAgYV/KAA2lJeUn+hY+gktXvpKv4dLTMqKycGHsTZNv7px7z50ZAFd4hYHjdw1Ls4EiHjVncIFnzVnc4F1zDkWjrzmPW+NNcwGlzIRKI3fJlUyrEjZQxb3mDH2fNGfRx4vmHKqG0JzHg6E0F9DOlFBGBxUI1GEzLNT4S0aLuTtsGAEUuYcQHkyg3KmIum1bNUvKlrjbbAIleqHHnS4iSudpQcySMYtdFiXlAxzSbAwfMxK6kZoHKhbjjespMTioOPZnzI+4ucCeTVyKMVKLfeAS6vSWaTinuZwzyy/Dc7vaed+6KaV0kukdPUk6yOcctZPvvxxqksq2lEW8RvHjMEO2FCl/zy6p3NEm0R9OFSafJdldc4QVeyaaObMBO0/5cCaa6d9Ggyubxire+lEojscdjoWUR1xGOy8KD8mG2ZLO2l2paDc3A39qmU2z2W5YNv5+u79e6QfGJY/hAAB42m3NywrCMBQE0DupWp/1AYI7/6DEaLQu66Mrd35BKUWKJSlFv1+rue4cGM7shgR981qSon+ZNwUJ8iDgoYU2OvDRRQ99DDDECAHGmGCKmf80hZSx/Kik/LliFbtmN6xmt+yOjdg9GztV4tROnRwX/Bsaaw51nt4Lc7tWaZYHp/MlzKx51LZs5htNri+2AAAAAQAB//8AD3jaY2BkYGDgAWIxIGZiYARCESBmAfMYAAR6AEMAAAABAAAAANXtRbgAAAAA2AhRFAAAAADYCNuG) format("woff"); +} + +/* ---------------------------------------------- +Inter variable font. Usage: + +@supports (font-variation-settings: normal) { + html { font-family: 'Inter var', sans-serif; } +} +---------------------------------------------- */ + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: normal; + font-display: swap; + src: url(./assets/fonts/inter/Inter-upright-var.woff2) format("woff2"); +} + +@font-face { + font-family: "Inter var"; + font-weight: 100 900; /* stylelint-disable-line font-weight-notation */ + font-style: italic; + font-display: swap; + src: url(./assets/fonts/inter/Inter-italic-var.woff2) format("woff2"); +} + + +/* Accessibility Settings -------------------- */ + +@media ( prefers-reduced-motion: reduce ) { + + * { + animation-duration: 0s !important; + transition-duration: 0s !important; + } +} + + +/* -------------------------------------------------------------------------- */ + +/* 2. Element Base +/* ---------------------------------------------*---------------------------- */ + + +main { + display: block; +} + +h1, +h2, +h3, +h4, +h5, +h6, +.faux-heading { + font-feature-settings: "lnum"; + font-variant-numeric: lining-nums; + font-weight: 700; + letter-spacing: -0.0415625em; + line-height: 1.25; + margin: 3.5rem 0 2rem; +} + +h1, +.heading-size-1 { + font-size: 3.6rem; + font-weight: 800; + line-height: 1.138888889; +} + +h2, +.heading-size-2 { + font-size: 3.2rem; +} + +h3, +.heading-size-3 { + font-size: 2.8rem; +} + +h4, +.heading-size-4 { + font-size: 2.4rem; +} + +h5, +.heading-size-5 { + font-size: 2.1rem; +} + +h6, +.heading-size-6 { + font-size: 1.6rem; + letter-spacing: 0.03125em; + text-transform: uppercase; +} + +p { + line-height: 1.5; + margin: 0 0 1em 0; +} + +em, +i, +q, +dfn { + font-style: italic; +} + +em em, +em i, +i em, +i i, +cite em, +cite i { + font-weight: bolder; +} + +big { + font-size: 1.2em; +} + +small { + font-size: 0.75em; +} + +b, +strong { + font-weight: 700; +} + +ins { + text-decoration: underline; +} + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +abbr, +acronym { + cursor: help; +} + +address { + line-height: 1.5; + margin: 0 0 2rem 0; +} + +hr { + border-style: solid; + border-width: 0.1rem 0 0 0; + border-color: #dcd7ca; + margin: 4rem 0; +} + +.entry-content hr, +hr.styled-separator { + background: linear-gradient(to left, currentColor calc(50% - 16px), transparent calc(50% - 16px), transparent calc(50% + 16px), currentColor calc(50% + 16px)); + background-color: transparent !important; + border: none; + height: 0.1rem; + overflow: visible; + position: relative; +} + +.entry-content hr:not(.has-background), +hr.styled-separator { + color: #6d6d6d; +} + +.entry-content hr::before, +.entry-content hr::after, +hr.styled-separator::before, +hr.styled-separator::after { + background: currentColor; + content: ""; + display: block; + height: 1.6rem; + position: absolute; + top: calc(50% - 0.8rem); + transform: rotate(22.5deg); + width: 0.1rem; +} + +.entry-content hr::before, +hr.styled-separator::before { + left: calc(50% - 0.5rem); +} + +.entry-content hr::after, +hr.styled-separator::after { + right: calc(50% - 0.5rem); +} + +a { + color: #cd2653; + text-decoration: underline; +} + +a:hover, +a:focus { + text-decoration: none; +} + + +/* Lists ------------------------------------- */ + +ul, +ol { + margin: 0 0 3rem 3rem; +} + +ul { + list-style: disc; +} + +ul ul { + list-style: circle; +} + +ul ul ul { + list-style: square; +} + +ol { + list-style: decimal; +} + +ol ol { + list-style: lower-alpha; +} + +ol ol ol { + list-style: lower-roman; +} + +li { + line-height: 1.5; + margin: 0.5rem 0 0 2rem; +} + +li > ul, +li > ol { + margin: 1rem 0 0 2rem; +} + +.reset-list-style, +.reset-list-style ul, +.reset-list-style ol { + list-style: none; + margin: 0; +} + +.reset-list-style li { + margin: 0; +} + +dt, +dd { + line-height: 1.5; +} + +dt { + font-weight: 700; +} + +dt + dd { + margin-top: 0.5rem; +} + +dd + dt { + margin-top: 1.5rem; +} + + +/* Quotes ------------------------------------ */ + +blockquote { + border-color: #cd2653; + border-style: solid; + + /*rtl:ignore*/ + border-width: 0 0 0 0.2rem; + color: inherit; + font-size: 1em; + margin: 4rem 0; + + /*rtl:ignore*/ + padding: 0.5rem 0 0.5rem 2rem; +} + +cite { + color: #6d6d6d; + font-size: 1.4rem; + font-style: normal; + font-weight: 600; + line-height: 1.25; +} + +blockquote cite { + display: block; + margin: 2rem 0 0 0; +} + +blockquote p:last-child { + margin: 0; +} + + +/* Code -------------------------------------- */ + +code, +kbd, +pre, +samp { + font-family: monospace; + font-size: 0.9em; + padding: 0.4rem 0.6rem; +} + +code, +kbd, +samp { + background: rgba(0, 0, 0, 0.075); + border-radius: 0.2rem; +} + +pre { + border: 0.1rem solid #dcd7ca; + line-height: 1.5; + margin: 4rem 0; + overflow: auto; + padding: 3rem 2rem; + text-align: left; +} + +pre code { + background: transparent; + padding: 0; +} + + +/* Media ------------------------------------- */ + +figure { + display: block; + margin: 0; +} + +iframe { + display: block; + max-width: 100%; +} + +video { + display: block; +} + +svg, +img, +embed, +object { + display: block; + height: auto; + max-width: 100%; +} + +figcaption, +.wp-caption-text { + color: #6d6d6d; + display: block; + font-size: 1.5rem; + font-weight: 500; + line-height: 1.2; + margin-top: 1.5rem; +} + +figcaption a, +.wp-caption-text a { + color: inherit; +} + +blockquote.instagram-media, +iframe.instagram-media { + margin: auto !important; +} + + +/* GALLERIES */ + +.gallery { + display: flex; + flex-wrap: wrap; + margin: 3em 0 3em -0.8em; + width: calc(100% + 1.6em); +} + +.gallery-item { + margin: 0.8em 0; + padding: 0 0.8em; + width: 100%; +} + +.gallery-caption { + display: block; + margin-top: 0.8em; +} + + +/* Inputs ------------------------------------ */ + +fieldset { + border: 0.2rem solid #dcd7ca; + padding: 2rem; +} + +legend { + font-size: 0.85em; + font-weight: 700; + padding: 0 1rem; +} + +label { + display: block; + font-size: 1.6rem; + font-weight: 400; + margin: 0 0 0.5rem 0; +} + +label.inline, +input[type="checkbox"] + label { + display: inline; + font-weight: 400; + margin-left: 0.5rem; +} + +input[type="checkbox"] { + -webkit-appearance: none; + -moz-appearance: none; + position: relative; + top: 2px; + display: inline-block; + margin: 0; + width: 1.5rem; + min-width: 1.5rem; + height: 1.5rem; + background: #fff; + border-radius: 0; + border-style: solid; + border-width: 0.1rem; + border-color: #dcd7ca; + box-shadow: none; + cursor: pointer; +} + +input[type="checkbox"]:checked::before { + /* Use the "Yes" SVG Dashicon */ + content: url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.83%204.89l1.34.94-5.81%208.38H9.02L5.78%209.67l1.34-1.25%202.57%202.4z%27%20fill%3D%27%23000000%27%2F%3E%3C%2Fsvg%3E"); + position: absolute; + display: inline-block; + margin: -0.1875rem 0 0 -0.25rem; + height: 1.75rem; + width: 1.75rem; +} + +input, +textarea, +button, +.button, +.faux-button, +.wp-block-button__link, +.wp-block-file__button { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + line-height: 1; +} + +@supports ( font-variation-settings: normal ) { + + input, + textarea, + button, + .button, + .faux-button, + .faux-button.more-link, + .wp-block-button__link, + .wp-block-file__button { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +input, +textarea { + border-color: #dcd7ca; + color: #000; +} + +code, +input[type="url"], +input[type="email"], +input[type="tel"] { + + /*rtl:ignore*/ + direction: ltr; +} + +input[type="text"], +input[type="password"], +input[type="email"], +input[type="url"], +input[type="date"], +input[type="month"], +input[type="time"], +input[type="datetime"], +input[type="datetime-local"], +input[type="week"], +input[type="number"], +input[type="search"], +input[type="tel"], +input[type="color"], +textarea { + -webkit-appearance: none; + -moz-appearance: none; + background: #fff; + border-radius: 0; + border-style: solid; + border-width: 0.1rem; + box-shadow: none; + display: block; + font-size: 1.6rem; + letter-spacing: -0.015em; + margin: 0; + max-width: 100%; + padding: 1.5rem 1.8rem; + width: 100%; +} + +select { + font-size: 1em; +} + +textarea { + height: 12rem; + line-height: 1.5; + width: 100%; +} + +input::-webkit-input-placeholder { + line-height: normal; +} + +input:-ms-input-placeholder { + line-height: normal; +} + +input::-moz-placeholder { + line-height: revert; /* Reset to the value from the user-agent stylesheet. */ +} + +input[type="search"]::-webkit-search-decoration, +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-results-button, +input[type="search"]::-webkit-search-results-decoration { + display: none; +} + +button, +.button, +.faux-button, +.wp-block-button__link, +.wp-block-file .wp-block-file__button, +input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: none; + -moz-appearance: none; + background: #cd2653; + border: none; + border-radius: 0; + color: #fff; + cursor: pointer; + display: inline-block; + font-size: 1.5rem; + font-weight: 600; + letter-spacing: 0.0333em; + line-height: 1.25; + margin: 0; + opacity: 1; + padding: 1.1em 1.44em; + text-align: center; + text-decoration: none; + text-transform: uppercase; + transition: opacity 0.15s linear; +} + +button:focus, +button:hover, +.button:focus, +.button:hover, +.faux-button:focus, +.faux-button:hover, +.wp-block-button .wp-block-button__link:focus, +.wp-block-button .wp-block-button__link:hover, +.wp-block-file .wp-block-file__button:focus, +.wp-block-file .wp-block-file__button:hover, +input[type="button"]:focus, +input[type="button"]:hover, +input[type="reset"]:focus, +input[type="reset"]:hover, +input[type="submit"]:focus, +input[type="submit"]:hover { + text-decoration: underline; +} + +input[type="text"]:focus, +input[type="email"]:focus, +input[type="url"]:focus, +input[type="password"]:focus, +input[type="number"]:focus, +input[type="tel"]:focus, +input[type="range"]:focus, +input[type="date"]:focus, +input[type="month"]:focus, +input[type="week"]:focus, +input[type="time"]:focus, +input[type="datetime"]:focus, +input[type="datetime-local"]:focus, +input[type="color"]:focus, +textarea:focus { + border-color: currentColor; +} + +input[type="search"]:focus { + outline: thin dotted; + outline-offset: -4px; +} + +/* Tables ------------------------------------ */ + +table { + border: 0.1rem solid #dcd7ca; + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + font-size: 1.6rem; + margin: 4rem 0; + max-width: 100%; + overflow: hidden; + width: 100%; +} + +.alignleft > table { + margin: 0; +} + +.alignright > table { + margin: 0; +} + +th, +td { + border: 0.1rem solid #dcd7ca; + line-height: 1.4; + margin: 0; + overflow: visible; + padding: 0.5em; +} + +caption { + background: #dcd7ca; + font-weight: 600; + padding: 0.5em; + text-align: center; +} + +thead { + vertical-align: bottom; + white-space: nowrap; +} + +th { + font-weight: 700; +} + + +/* -------------------------------------------------------------------------- */ + +/* 3. Helper Classes +/* -------------------------------------------------------------------------- */ + + +/* Layout ------------------------------------ */ + +.no-margin { + margin: 0; +} + +.no-padding { + padding: 0; +} + +.screen-height { + min-height: 100vh; +} + +.admin-bar .screen-height { + min-height: calc(100vh - 32px); +} + +@media (max-width: 782px) { + + .admin-bar .screen-height { + min-height: calc(100vh - 46px); + } +} + +.screen-width { + position: relative; + left: calc(50% - 50vw); + width: 100vw; +} + +/* Sections ---------------------------------- */ + +section { + padding: 5rem 0; + width: 100%; +} + +.section-inner { + margin-left: auto; + margin-right: auto; + max-width: 120rem; + width: calc(100% - 4rem); +} + +.section-inner.max-percentage { + width: 100%; +} + +.section-inner.thin { + max-width: 58rem; +} + +.section-inner.small { + max-width: 80rem; +} + +.section-inner.medium { + max-width: 100rem; +} + +.section-inner.no-margin { + margin: 0; +} + + +/* Toggles ----------------------------------- */ + +.toggle { + -moz-appearance: none; + -webkit-appearance: none; + color: inherit; + cursor: pointer; + font-family: inherit; + position: relative; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + text-align: inherit; + user-select: none; +} + +button.toggle { + background: none; + border: none; + box-shadow: none; + border-radius: 0; + font-size: inherit; + font-weight: 400; + letter-spacing: inherit; + padding: 0; + text-transform: none; +} + +/* Hiding and Showing ------------------------ */ + +.js .show-js { + display: block !important; +} + +.js .hide-js { + display: none !important; +} + +.no-js .show-no-js { + display: block !important; +} + +.no-js .hide-no-js { + display: none !important; +} + + +/* Typography -------------------------------- */ + +.font-size-xl { + font-size: 1.25em; +} + +.font-size-xs { + font-size: 0.8em; +} + +.no-select { + -webkit-touch-callout: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + + +/* Colors ------------------------------------ */ + +/* COLOR */ + +.color-accent, +.color-accent-hover:focus, +.color-accent-hover:hover { + color: #cd2653; +} + +/* BACKGROUND COLOR */ + +.bg-accent, +.bg-accent-hover:focus, +.bg-accent-hover:hover { + background-color: #cd2653; +} + +/* BORDER COLOR */ + +.border-color-accent, +.border-color-accent-hover:focus, +.border-color-accent-hover:hover { + border-color: #cd2653; +} + +/* FILL COLOR */ + +.fill-children-accent, +.fill-children-accent * { + fill: #cd2653; +} + +.fill-children-current-color, +.fill-children-current-color * { + fill: currentColor; +} + + +/* Opacity ----------------------------------- */ + +.opacity-0 { + opacity: 0; +} + +.opacity-5 { + opacity: 0.05; +} + +.opacity-10 { + opacity: 0.1; +} + +.opacity-15 { + opacity: 0.15; +} + +.opacity-20 { + opacity: 0.2; +} + +.opacity-25 { + opacity: 0.25; +} + +.opacity-30 { + opacity: 0.3; +} + +.opacity-35 { + opacity: 0.35; +} + +.opacity-40 { + opacity: 0.4; +} + +.opacity-45 { + opacity: 0.45; +} + +.opacity-50 { + opacity: 0.5; +} + +.opacity-55 { + opacity: 0.55; +} + +.opacity-60 { + opacity: 0.6; +} + +.opacity-65 { + opacity: 0.65; +} + +.opacity-70 { + opacity: 0.7; +} + +.opacity-75 { + opacity: 0.75; +} + +.opacity-80 { + opacity: 0.8; +} + +.opacity-85 { + opacity: 0.85; +} + +.opacity-90 { + opacity: 0.9; +} + +.blend-mode-exclusion { + mix-blend-mode: exclusion; +} + +.blend-mode-hue { + mix-blend-mode: hue; +} + +.blend-mode-saturation { + mix-blend-mode: saturation; +} + +.blend-mode-color { + mix-blend-mode: color; +} + +.blend-mode-luminosity { + mix-blend-mode: luminosity; +} + + +/* Image Classes ----------------------------- */ + +.bg-image { + background-position: center; + background-repeat: no-repeat; + background-size: cover; +} + +.bg-attachment-fixed { + background-attachment: fixed; +} + +@supports ( -webkit-overflow-scrolling: touch ) { + + .bg-attachment-fixed { + background-attachment: scroll; + } +} + +@media ( prefers-reduced-motion: reduce ) { + + .bg-attachment-fixed { + background-attachment: scroll; + } +} + +.wp-block-image.is-resized { + margin-left: auto; + margin-right: auto; +} + +/* Search Form ------------------------------- */ + +.search-form { + align-items: stretch; + display: flex; + flex-wrap: nowrap; + margin: 0 0 -0.8rem -0.8rem; +} + +.search-form .search-field, +.search-form .search-submit { + margin: 0 0 0.8rem 0.8rem; +} + +.search-form label { + align-items: stretch; + display: flex; + font-size: inherit; + margin: 0; + width: 100%; +} + +.search-form .search-field { + width: 100%; +} + +.search-form .search-submit { + flex-shrink: 0; +} + +.search-form .search-submit:focus, +.search-form .search-submit:hover { + text-decoration: none; +} + + +/* Social Icons ------------------------------ */ + +ul.social-icons { + display: flex; + flex-wrap: wrap; + margin: -0.9rem 0 0 -0.9rem; + width: calc(100% + 0.9rem); +} + +ul.social-icons li { + margin: 0.9rem 0 0 0.9rem; +} + +.social-icons a { + align-items: center; + background: #cd2653; + border-radius: 50%; + color: #fff; + display: flex; + height: 4.4rem; + justify-content: center; + padding: 0; + text-decoration: none; + transition: transform 0.15s ease-in-out; + width: 4.4rem; +} + +.social-icons a:focus, +.social-icons a:hover { + transform: scale(1.1); + text-decoration: none; +} + + +/* Cover Modals ------------------------------ */ + +.cover-modal { + display: none; + -ms-overflow-style: none; + overflow: -moz-scrollbars-none; +} + +.cover-modal::-webkit-scrollbar { + display: none !important; +} + +.cover-modal.show-modal { + display: block; + cursor: pointer; +} + +.cover-modal.show-modal > * { + cursor: default; +} + + +/* -------------------------------------------------------------------------- */ + +/* 4. Site Header +/* -------------------------------------------------------------------------- */ + + +#site-header { + background: #fff; + position: relative; +} + +.header-inner { + max-width: 168rem; + padding: 3.15rem 0; + z-index: 100; +} + +/* Header Titles ----------------------------- */ + +.header-titles-wrapper { + align-items: center; + display: flex; + justify-content: center; + padding: 0 4rem; + text-align: center; +} + +body:not(.enable-search-modal) .header-titles-wrapper { + justify-content: flex-start; + padding-left: 0; + text-align: left; +} + +.site-title, +.site-logo, +.site-description { + margin: 0; +} + +.site-title { + font-size: 2.1rem; + font-weight: 600; + line-height: 1; +} + +.site-title a { + color: inherit; + display: block; + text-decoration: none; +} + +.site-title a:hover, +.site-title a:focus { + text-decoration: underline; +} + +.site-description { + margin-top: 1rem; + color: #6d6d6d; + font-size: 1.8rem; + font-weight: 500; + display: none; + letter-spacing: -0.0311em; + transition: all 0.15s linear; +} + +.site-logo a, +.site-logo img { + display: block; +} + +.header-titles .site-logo .site-logo { + margin: 0; +} + +.site-logo img { + max-height: 6rem; + margin: 0 auto; + width: auto; +} + +body:not(.enable-search-modal) .site-logo img { + margin: 0; +} + +/* Overlay Header ---------------------------- */ + +.overlay-header #site-header { + background: transparent; + margin: 0; + position: absolute; + left: 0; + right: 0; + top: 0; + z-index: 2; +} + +.overlay-header .header-inner { + color: #fff; +} + +.overlay-header .site-description, +.overlay-header .toggle { + color: inherit; +} + +.overlay-header .header-inner .toggle-wrapper::before { + background-color: currentColor; + opacity: 0.25; +} + +.admin-bar.overlay-header #site-header { + top: 32px; +} + +@media (max-width: 782px) { + + .admin-bar.overlay-header #site-header { + top: 46px; + } +} + +/* Header Navigation ------------------------- */ + +.header-navigation-wrapper { + display: none; +} + +/* Header Toggles ---------------------------- */ + +.header-toggles { + display: none; +} + +.header-inner .toggle { + align-items: center; + display: flex; + overflow: visible; + padding: 0 2rem; +} + +.header-inner .toggle svg { + display: block; + position: relative; + z-index: 1; +} + +.header-inner .toggle path { + fill: currentColor; +} + +.toggle-inner { + display: flex; + justify-content: center; + height: 2.3rem; + position: relative; +} + +.toggle-icon { + display: block; + overflow: hidden; +} + +.toggle-inner .toggle-text { + color: #6d6d6d; + font-size: 1rem; + font-weight: 600; + position: absolute; + top: calc(100% + 0.5rem); + width: auto; + white-space: nowrap; + word-break: break-all; +} + +.overlay-header .toggle-text { + color: inherit; +} + +.header-inner .toggle:focus .toggle-text, +.header-inner .toggle:hover .toggle-text { + text-decoration: underline; +} + +/* Search Toggle ----------------------------- */ + +.search-toggle { + position: absolute; + bottom: 0; + left: 0; + top: 0; +} + +.search-toggle .toggle-icon, +.search-toggle svg { + height: 2.5rem; + max-width: 2.3rem; + width: 2.3rem; +} + +/* Navigation Toggle ------------------------- */ + +.nav-toggle { + position: absolute; + bottom: 0; + right: 0; + top: 0; + width: 6.6rem; +} + +.nav-toggle .toggle-icon, +.nav-toggle svg { + height: 0.8rem; + width: 2.6rem; +} + +.nav-toggle .toggle-inner { + padding-top: 0.8rem; +} + +/* Primary Menu ---------------------------- */ + +.primary-menu-wrapper { + display: none; +} + +ul.primary-menu { + display: flex; + font-size: 1.8rem; + font-weight: 500; + letter-spacing: -0.0277em; + flex-wrap: wrap; + justify-content: flex-end; + margin: -0.8rem 0 0 -1.6rem; +} + +.primary-menu .icon { + display: block; + height: 0.7rem; + position: absolute; + pointer-events: none; + transform: rotate(-45deg); + width: 1.3rem; +} + +.primary-menu .icon::before, +.primary-menu .icon::after { + content: ""; + display: block; + background-color: currentColor; + position: absolute; + bottom: calc(50% - 0.1rem); + left: 0; +} + +.primary-menu .icon::before { + height: 0.9rem; + width: 0.2rem; +} + +.primary-menu .icon::after { + height: 0.2rem; + width: 0.9rem; +} + +.primary-menu li { + font-size: inherit; + line-height: 1.25; + position: relative; +} + +.primary-menu > li { + margin: 0.8rem 0 0 1.6rem; +} + +.primary-menu > li.menu-item-has-children > a { + padding-right: 2rem; +} + +.primary-menu > li > .icon { + right: -0.5rem; + top: calc(50% - 0.4rem); +} + +.primary-menu a { + color: inherit; + display: block; + line-height: 1.2; + text-decoration: none; +} + +.primary-menu a:hover, +.primary-menu a:focus, +.primary-menu .current_page_ancestor { + text-decoration: underline; +} + +.primary-menu li.current-menu-item > a, +.primary-menu li.current-menu-item > .link-icon-wrapper > a { + text-decoration: underline; +} + +.primary-menu li.current-menu-item > a:hover, +.primary-menu li.current-menu-item > .link-icon-wrapper > a:hover, +.primary-menu li.current-menu-item > a:focus, +.primary-menu li.current-menu-item > .link-icon-wrapper > a:focus { + text-decoration: none; +} + +/* SUB MENU */ + +.primary-menu ul { + background: #000; + border-radius: 0.4rem; + color: #fff; + font-size: 1.7rem; + opacity: 0; + padding: 1rem 0; + position: absolute; + right: 9999rem; + top: calc(100% + 2rem); + transition: opacity 0.15s linear, transform 0.15s linear, right 0s 0.15s; + transform: translateY(0.6rem); + width: 20rem; + z-index: 1; +} + +.primary-menu li.menu-item-has-children:hover > ul, +.primary-menu li.menu-item-has-children:focus > ul, +.primary-menu li.menu-item-has-children.focus > ul { + right: 0; + opacity: 1; + transform: translateY(0); + transition: opacity 0.15s linear, transform 0.15s linear; +} + +.primary-menu ul::before, +.primary-menu ul::after { + content: ""; + display: block; + position: absolute; + bottom: 100%; +} + +.primary-menu ul::before { + height: 2rem; + left: 0; + right: 0; +} + +.primary-menu ul::after { + border: 0.8rem solid transparent; + border-bottom-color: #000; + right: 1.8rem; +} + +.primary-menu ul a { + background: transparent; + border: none; + color: inherit; + display: block; + padding: 1rem 2rem; + transition: background-color 0.15s linear; + width: 100%; +} + +.primary-menu ul li.menu-item-has-children > a { + padding-right: 4.5rem; +} + +.primary-menu ul li.menu-item-has-children .icon { + position: absolute; + right: 1.5rem; + top: calc(50% - 0.5rem); +} + +/* DEEP DOWN */ + +.primary-menu ul ul { + top: -1rem; +} + +.primary-menu ul li.menu-item-has-children:hover > ul, +.primary-menu ul li.menu-item-has-children:focus > ul, +.primary-menu ul li.menu-item-has-children.focus > ul { + right: calc(100% + 2rem); +} + +.primary-menu ul ul::before { + bottom: 0; + height: auto; + left: auto; + right: -2rem; + top: 0; + width: 2rem; +} + +.primary-menu ul ul::after { + border-bottom-color: transparent; + + /*rtl:ignore*/ + border-left-color: #000; + bottom: auto; + right: -1.6rem; + top: 2rem; +} + +.rtl .primary-menu ul ul::after { + transform: rotate(180deg); +} + +/* + * Enable nav submenu expansion with tapping on arrows on large-viewport + * touch interfaces (e.g. tablets or laptops with touch screens). + * These rules are supported by all browsers (>IE11) and when JS is disabled. + */ +@media (any-pointer: coarse) { + + .primary-menu > li.menu-item-has-children > a { + padding-right: 0; + margin-right: 2rem; + } + + .primary-menu ul li.menu-item-has-children > a { + margin-right: 4.5rem; + padding-right: 0; + width: unset; + } + +} + +/* Repeat previous rules for IE11 (when JS enabled for polyfill). */ +body.touch-enabled .primary-menu > li.menu-item-has-children > a { + padding-right: 0; + margin-right: 2rem; +} + +body.touch-enabled .primary-menu ul li.menu-item-has-children > a { + margin-right: 4.5rem; + padding-right: 0; + width: unset; +} + +/* -------------------------------------------------------------------------- */ + +/* 5. Menu Modal +/* -------------------------------------------------------------------------- */ + + +.menu-modal { + background: #fff; + display: none; + opacity: 0; + overflow-y: auto; + overflow-x: hidden; + position: fixed; + bottom: 0; + left: -99999rem; + right: 99999rem; + top: 0; + transition: opacity 0.25s ease-in, left 0s 0.25s, right 0s 0.25s; + z-index: 99; +} + +.admin-bar .menu-modal { + top: 32px; +} + +@media (max-width: 782px) { + + .admin-bar .menu-modal { + top: 46px; + } +} + +.menu-modal.show-modal { + display: flex; +} + +.menu-modal.active { + left: 0; + opacity: 1; + right: 0; + transition: opacity 0.25s ease-out; +} + +.menu-modal-inner { + background: #fff; + display: flex; + justify-content: stretch; + overflow: auto; + -ms-overflow-style: auto; + width: 100%; +} + +.menu-wrapper { + display: flex; + flex-direction: column; + justify-content: space-between; + position: relative; +} + +button.close-nav-toggle { + align-items: center; + display: flex; + font-size: 1.6rem; + font-weight: 500; + justify-content: flex-end; + padding: 3.1rem 0; + width: 100%; +} + +button.close-nav-toggle svg { + height: 1.6rem; + width: 1.6rem; +} + +button.close-nav-toggle .toggle-text { + margin-right: 1.6rem; +} + +.menu-modal .menu-top { + flex-shrink: 0; +} + + +/* Main Menu --------------------------------- */ + +.modal-menu { + position: relative; + left: calc(50% - 50vw); + width: 100vw; +} + +.modal-menu li { + border-color: #dedfdf; + border-style: solid; + border-width: 0.1rem 0 0 0; + display: flex; + flex-wrap: wrap; + line-height: 1; + justify-content: flex-start; + margin: 0; +} + +.modal-menu > li > a, +.modal-menu > li > .ancestor-wrapper > a { + font-size: 2rem; + font-weight: 700; + letter-spacing: -0.0375em; +} + +.modal-menu > li:last-child { + border-bottom-width: 0.1rem; +} + +.modal-menu .ancestor-wrapper { + display: flex; + justify-content: space-between; + width: 100%; +} + +.modal-menu a { + display: block; + padding: 2rem 2.5rem; + text-decoration: none; + width: 100%; +} + +.modal-menu a:focus, +.modal-menu a:hover, +.modal-menu li.current-menu-item > .ancestor-wrapper > a, +.modal-menu li.current_page_ancestor > .ancestor-wrapper > a { + text-decoration: underline; +} + +button.sub-menu-toggle { + border-left: 0.1rem solid #dedfdf; + flex-shrink: 0; + margin: 1rem 0; + padding: 0 2.5rem; +} + +button.sub-menu-toggle svg { + height: 0.9rem; + transition: transform 0.15s linear; + width: 1.5rem; +} + +button.sub-menu-toggle.active svg { + transform: rotate(180deg); +} + +.modal-menu ul { + display: none; + margin: 0; + width: 100%; +} + +.modal-menu ul li { + border-left-width: 1rem; +} + +.modal-menu ul li a { + color: inherit; + font-weight: 500; +} + +/* Main menu animation ----------------------- */ + +.menu-wrapper .menu-item { + position: relative; +} + +.menu-wrapper .active { + display: block; +} + +.menu-wrapper.is-toggling { + pointer-events: none; +} + +.menu-wrapper.is-toggling .menu-item { + position: absolute; + top: 0; + left: 0; + margin: 0; + width: 100%; +} + +.menu-wrapper.is-toggling .menu-bottom .social-menu .menu-item { + width: auto; +} + +.menu-wrapper.is-animating .menu-item, +.menu-wrapper.is-animating .toggling-target { + transition-duration: 250ms; +} + +.menu-wrapper.is-animating .menu-item { + transition-property: transform; +} + +.menu-wrapper.is-toggling .toggling-target { + display: block; + position: absolute; + top: 0; + left: 0; + opacity: 1; +} + +.menu-wrapper.is-toggling .toggling-target.active { + opacity: 0; +} + +.menu-wrapper.is-animating.is-toggling .toggling-target { + display: block; + transition-property: opacity; + opacity: 0; +} + +.menu-wrapper.is-animating.is-toggling .toggling-target.active { + opacity: 1; +} + +.menu-wrapper.is-toggling .modal-menu > li:last-child li { + border-top-color: transparent; + border-bottom-width: 0.1rem; +} + +@media (prefers-reduced-motion: reduce) { + + .menu-wrapper.is-animating .menu-item, + .menu-wrapper.is-animating .toggling-target { + transition-duration: 1ms !important; + } + +} + + +/* Expanded Menu ----------------------------- */ + +.expanded-menu { + display: none; +} + +.mobile-menu { + display: block; +} + + +/* Menu Bottom ------------------------------- */ + +.menu-bottom { + flex-shrink: 0; + padding: 4rem 0; +} + +.menu-bottom nav { + width: 100%; +} + +.menu-copyright { + display: none; + font-size: 1.6rem; + font-weight: 500; + margin: 0; +} + +.menu-copyright a:focus, +.menu-copyright a:hover { + text-decoration: underline; +} + +.menu-bottom .social-menu { + justify-content: center; +} + + +/* -------------------------------------------------------------------------- */ + +/* 6. Search Modal +/* -------------------------------------------------------------------------- */ + + +.search-modal { + background: rgba(0, 0, 0, 0.2); + display: none; + opacity: 0; + position: fixed; + bottom: 0; + left: -9999rem; + top: 0; + transition: opacity 0.2s linear, left 0s 0.2s linear; + width: 100%; + z-index: 999; +} + +.admin-bar .search-modal.active { + top: 32px; +} + +@media (max-width: 782px) { + + .admin-bar .search-modal.active { + top: 46px; + } +} + +.search-modal-inner { + background: #fff; + transform: translateY(-100%); + transition: transform 0.15s linear, box-shadow 0.15s linear; +} + +.search-modal-inner .section-inner { + display: flex; + justify-content: space-between; + max-width: 168rem; +} + +.search-modal.active { + left: 0; + opacity: 1; + transition: opacity 0.2s linear; +} + +.search-modal.active .search-modal-inner { + box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.08); + transform: translateY(0); + transition: transform 0.25s ease-in-out, box-shadow 0.1s 0.25s linear; +} + +button.search-untoggle { + align-items: center; + display: flex; + flex-shrink: 0; + justify-content: center; + margin-right: -2.5rem; + padding: 0 2.5rem; +} + +.search-modal button.search-untoggle { + color: inherit; +} + +.search-modal.active .search-untoggle { + animation: popIn both 0.3s 0.2s; +} + +.search-untoggle svg { + height: 1.5rem; + transition: transform 0.15s ease-in-out; + width: 1.5rem; +} + +.search-untoggle:focus svg, +.search-untoggle:hover svg { + transform: scale(1.15); +} + + +/* Modal Search Form ------------------------- */ + +.search-modal form { + margin: 0; + position: relative; + width: 100%; +} + +.search-modal .search-field { + background: none; + border: none; + border-radius: 0; + color: inherit; + font-size: 2rem; + letter-spacing: -0.0277em; + height: 8.4rem; + margin: 0 0 0 -2rem; + max-width: calc(100% + 2rem); + padding: 0 0 0 2rem; + width: calc(100% + 2rem); +} + +.search-modal .search-field::-webkit-input-placeholder { + color: inherit; +} + +.search-modal .search-field:-ms-input-placeholder { + color: inherit; +} + +.search-modal .search-field::-moz-placeholder { + color: inherit; + line-height: 4; +} + +.search-modal .search-submit { + position: absolute; + right: -9999rem; + top: 50%; + transform: translateY(-50%); +} + +.search-modal .search-submit:focus { + right: 0; +} + + +/* -------------------------------------------------------------------------- */ + +/* 7a. Template: Cover Template +/* -------------------------------------------------------------------------- */ + + +.cover-header { + display: flex; + overflow: hidden; +} + +.cover-header-inner-wrapper { + display: flex; + position: relative; + flex-direction: column; + justify-content: flex-end; + width: 100%; +} + +.cover-header-inner { + padding: 10rem 0 5rem 0; + width: 100%; +} + +.cover-color-overlay, +.cover-color-overlay::before { + position: absolute; + bottom: 0; + left: 0; + right: 0; + top: 0; +} + +.cover-color-overlay::before { + background: currentColor; + content: ""; + display: block; +} + +.cover-header .entry-header { + position: relative; + width: 100%; + z-index: 1; +} + +.cover-header .entry-header * { + color: #fff; +} + +body.template-cover .entry-header { + background: transparent; + padding: 0; +} + +.cover-header h1, +.cover-header h2, +.cover-header h3, +.cover-header h4, +.cover-header h5, +.cover-header h6, +.cover-header .faux-heading { + color: inherit; +} + +.cover-header .entry-header a { + color: inherit; +} + +/* To The Content ---------------------------- */ + +.to-the-content-wrapper { + position: absolute; + left: 0; + right: 0; + top: calc(100% + 0.5rem); +} + +.to-the-content { + align-items: center; + display: flex; + justify-content: center; + height: 4rem; + text-decoration: none; +} + +.to-the-content svg { + height: 2rem; + transition: transform 0.15s linear; + transform: translateY(0); + width: 1.767rem; +} + +.to-the-content:focus svg, +.to-the-content:hover svg { + transform: translateY(20%); +} + + +/* -------------------------------------------------------------------------- */ + +/* 7c. Template: Full Width +/* -------------------------------------------------------------------------- */ + + +body.template-full-width .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide), +body.template-full-width [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + max-width: 120rem; +} + +body.template-full-width .entry-content .alignleft, +body.template-full-width .entry-content .alignright { + position: static; +} + +body.template-full-width .entry-content .alignleft, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .alignleft, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignleft, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 0; + position: static; +} + +body.template-full-width .entry-content > .alignleft, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignleft, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignleft, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 2rem; + position: static; +} + +body.template-full-width .entry-content .alignright, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .alignright, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignright, +body.template-full-width [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 0; + position: static; +} + +body.template-full-width .entry-content > .alignright, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignright, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignright, +body.template-full-width [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 2rem; + position: static; +} + + +/* -------------------------------------------------------------------------- */ + +/* 8. Post: Archive +/* -------------------------------------------------------------------------- */ + + +/* Archive Header ---------------------------- */ + +.archive-header { + background-color: #fff; + padding: 4rem 0; +} + +.reduced-spacing .archive-header { + padding-bottom: 2rem; +} + +.archive-title { + font-size: 2.4rem; + font-weight: 700; + letter-spacing: -0.026666667em; + margin: 0; +} + +.archive-subtitle p:last-child { + margin-bottom: 0; +} + + +/* Posts ------------------------------------- */ + +body:not(.singular) main > article:first-of-type { + padding: 4rem 0 0; +} + + +/* Search Results ---------------------------- */ + +.no-search-results-form { + padding-top: 5rem; +} + + +/* -------------------------------------------------------------------------- */ + +/* 9. Post: Single +/* -------------------------------------------------------------------------- */ + + +/* Post Header ------------------------------- */ + +.singular .entry-header { + background-color: #fff; + padding: 4rem 0; +} + +.entry-categories { + line-height: 1.25; + margin-bottom: 2rem; +} + +.entry-categories-inner { + justify-content: center; + display: flex; + flex-wrap: wrap; + margin: -0.5rem 0 0 -1rem; +} + +.entry-categories a { + border-bottom: 0.15rem solid currentColor; + font-size: 1.4rem; + font-weight: 700; + letter-spacing: 0.036666667em; + margin: 0.5rem 0 0 1rem; + text-decoration: none; + text-transform: uppercase; +} + +.entry-categories a:focus, +.entry-categories a:hover { + border-bottom-color: transparent; +} + +h1.entry-title, +h2.entry-title { + margin: 0; +} + +.entry-title a { + color: inherit; + text-decoration: none; +} + +.entry-title a:focus, +.entry-title a:hover { + text-decoration: underline; +} + +.intro-text { + margin-top: 2rem; +} + +.singular .intro-text { + font-size: 2rem; + letter-spacing: -0.0315em; + line-height: 1.4; +} + +/* POST META */ + +.post-meta-single-top .post-meta { + justify-content: center; +} + +.post-meta-wrapper { + margin-top: 2rem; + margin-right: auto; + margin-left: auto; + max-width: 58rem; + width: 100%; +} + +.post-meta { + color: #6d6d6d; + display: flex; + flex-wrap: wrap; + font-size: 1.5rem; + font-weight: 500; + list-style: none; + margin: -1rem 0 0 -2rem; +} + +.post-meta li { + flex-shrink: 0; + letter-spacing: -0.016875em; + margin: 1rem 0 0 2rem; + max-width: calc(100% - 2rem); +} + +.post-meta a { + color: inherit; + text-decoration: none; +} + +.post-meta a:focus, +.post-meta a:hover { + text-decoration: underline; +} + +.post-meta .meta-wrapper { + align-items: center; + display: flex; + flex-wrap: nowrap; +} + +.post-meta .meta-icon { + flex-shrink: 0; + margin-right: 1rem; +} + +.sticky .post-sticky { + color: inherit; +} + +.post-meta .post-author .meta-icon svg { + width: 1.6rem; + height: 1.8rem; +} + +.post-meta .post-categories .meta-icon svg { + width: 1.8rem; + height: 1.7rem; +} + +.post-meta .post-comment-link .meta-icon svg { + width: 1.8rem; + height: 1.8rem; +} + +.post-meta .post-date .meta-icon svg { + width: 1.7rem; + height: 1.8rem; +} + +.post-meta .post-edit .meta-icon svg { + width: 1.8rem; + height: 1.8rem; +} + +.post-meta .post-sticky .meta-icon svg { + width: 1.5rem; + height: 1.8rem; +} + +.post-meta .post-tags .meta-icon svg { + width: 1.8rem; + height: 1.8rem; +} + +.post-meta svg * { + fill: currentColor; +} + + +/* Featured Media ---------------------------- */ + +.featured-media { + margin-top: 5rem; + position: relative; +} + +.singular .featured-media { + margin-top: 0; +} + +.singular .featured-media-inner { + position: relative; + left: calc(50% - 50vw); + width: 100vw; +} + +.singular .featured-media::before { + background: #fff; + content: ""; + display: block; + position: absolute; + bottom: 50%; + left: 0; + right: 0; + top: 0; +} + +.featured-media img { + margin: 0 auto; +} + +.featured-media figcaption { + margin: 1.5rem auto 0 auto; + text-align: center; + width: calc(100% - 5rem); +} + +.post-inner { + padding-top: 5rem; +} + +.reduced-spacing.missing-post-thumbnail .post-inner { + padding-top: 0; +} + + +/* Post Footer ------------------------------- */ + +/* POST NAV LINKS */ + +.post-nav-links { + border-radius: 0.4rem; + display: flex; + font-size: 0.9em; + font-weight: 600; + line-height: 1; + margin-top: 3em; + padding: 0 0.25em; +} + +.post-nav-links > * { + padding: 1em 0.75em; +} + +/* POST META BOTTOM */ + +.post-meta-wrapper.post-meta-single-bottom { + margin-top: 3rem; +} + + +/* Author Bio -------------------------------- */ + +.author-bio { + margin-top: 4rem; + margin-right: auto; + margin-left: auto; + max-width: 58rem; + width: 100%; +} + +.hide-avatars .author-bio { + padding-left: 0; +} + +.author-bio .author-title-wrapper { + align-items: center; + display: flex; + margin: 0 0 1rem 0; +} + +.author-bio .avatar { + border-radius: 50%; + margin-right: 1.5rem; + height: 5rem; + width: 5rem; +} + +.hide-avatars img.avatar { + display: none; +} + +.author-bio p:last-child { + margin-bottom: 0; +} + +.author-bio .author-title { + margin: 0; +} + +.author-bio .author-link { + display: block; + font-size: 1.6rem; + font-weight: 600; + margin-top: 1em; + text-decoration: none; +} + +.author-bio .author-link:focus, +.author-bio .author-link:hover { + text-decoration: underline; +} + + +/* Single Pagination ------------------------- */ + +.pagination-single { + font-size: 1.8rem; + margin-top: 5rem; +} + +.pagination-single-inner { + display: flex; + flex-direction: column; +} + +.pagination-single hr:first-child { + margin: 0 0 2.8rem 0; +} + +.pagination-single hr:last-child { + margin: 2.8rem 0 0.8rem 0; +} + +.pagination-single a { + align-items: baseline; + display: flex; + font-weight: 600; + letter-spacing: -0.0275em; + text-decoration: none; + flex: 1; +} + +.pagination-single a + a { + margin-top: 1rem; +} + +.pagination-single a .arrow { + margin-right: 1rem; +} + +.pagination-single a:focus .title, +.pagination-single a:hover .title { + text-decoration: underline; +} + + +/* -------------------------------------------------------------------------- */ + +/* 10. Blocks +/* -------------------------------------------------------------------------- */ + + +/* Block Colors ------------------------------ */ + +.has-text-color a { + color: inherit; +} + +/* CUSTOM COLORS */ + +:root .has-accent-color { + color: #cd2653; +} + +:root .has-accent-background-color { + background-color: #cd2653; + color: #fff; +} + +:root .has-primary-color { + color: #000; +} + +:root .has-primary-background-color { + background-color: #000; + color: #f5efe0; +} + +:root .has-secondary-color { + color: #6d6d6d; +} + +:root .has-secondary-background-color { + background-color: #6d6d6d; + color: #fff; +} + +:root .has-subtle-background-color { + color: #dcd7ca; +} + +:root .has-subtle-background-background-color { + background-color: #dcd7ca; + color: #000; +} + +:root .has-background-color { + color: #f5efe0; +} + +:root .has-background-background-color { + background-color: #f5efe0; + color: #000; +} + + +/* Block Typography Classes ------------------ */ + +.has-text-align-left { + + /*rtl:ignore*/ + text-align: left; +} + +.has-text-align-center { + text-align: center; +} + +.has-text-align-right { + text-align: right; +} + +.has-drop-cap:not(:focus)::first-letter { + color: #cd2653; + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + font-size: 5.1em; + font-weight: 800; + margin: 0.05em 0.1em 0 0; +} + +.has-drop-cap:not(:focus)::first-letter::after { + content: ""; + display: table; + clear: both; +} + +.has-drop-cap:not(:focus)::after { + padding: 0; +} + + +/* Block Font Families ----------------------- */ + +.has-drop-cap:not(:focus)::first-letter, +.entry-content .wp-block-archives, +.entry-content .wp-block-categories, +.entry-content .wp-block-cover-image, +.entry-content .wp-block-latest-comments, +.entry-content .wp-block-latest-posts, +.entry-content .wp-block-pullquote, +.entry-content .wp-block-quote.is-large, +.entry-content .wp-block-quote.is-style-large { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .has-drop-cap:not(:focus)::first-letter, + .entry-content .wp-block-archives, + .entry-content .wp-block-categories, + .entry-content .wp-block-latest-posts, + .entry-content .wp-block-latest-comments, + .entry-content .wp-block-cover-image p, + .entry-content .wp-block-pullquote { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +/* Block Font Sizes -------------------------- */ + +.entry-content .has-small-font-size { + font-size: 0.842em; +} + +.entry-content .has-normal-font-size, +.entry-content .has-regular-font-size { + font-size: 1em; +} + +.entry-content .has-medium-font-size { + font-size: 1.1em; + line-height: 1.45; +} + +.entry-content .has-large-font-size { + font-size: 1.25em; + line-height: 1.4; +} + +.entry-content .has-larger-font-size { + font-size: 1.5em; + line-height: 1.3; +} + + +/* Block: Base Margins ----------------------- */ + +*[class*="_inner-container"] > *:first-child { + margin-top: 0; +} + +*[class*="_inner-container"] > *:last-child { + margin-bottom: 0; +} + +.wp-block-archives:not(.alignwide):not(.alignfull), +.wp-block-categories:not(.alignwide):not(.alignfull), +.wp-block-code, +.wp-block-columns:not(.alignwide):not(.alignfull), +.wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-group:not(.has-background):not(.alignwide):not(.alignfull), +.wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), +.wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright), +.wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright), +.wp-block-media-text:not(.alignwide):not(.alignfull), +.wp-block-preformatted, +.wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright), +.wp-block-quote, +.wp-block-quote.is-large, +.wp-block-quote.is-style-large, +.wp-block-verse, +.wp-block-video:not(.alignwide):not(.alignfull) { + margin-bottom: 3rem; + margin-top: 3rem; +} + + +/* Block: Shared Nesting Alignment Resets ---- */ + +[class*="__inner-container"] .wp-block-group:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright), +[class*="__inner-container"] .wp-block-cover:not(.alignfull):not(.alignwide):not(.alignleft):not(.alignright) { + margin-left: auto; + margin-right: auto; + max-width: 58rem; +} + + +/* Block: Shared Widget Styles --------------- */ + +.wp-block-archives, +.wp-block-categories, +.wp-block-latest-posts, +.wp-block-latest-comments { + list-style: none; + margin-left: 0; +} + +.wp-block-archives ul, +.wp-block-categories ul, +.wp-block-latest-posts ul, +.wp-block-latest-comments ul { + list-style: none; +} + +.entry-content .wp-block-archives > li, +.entry-content .wp-block-categories > li, +.entry-content .wp-block-latest-posts > li, +.entry-content .wp-block-latest-comment > li { + margin-left: 0; +} + +.entry-content .wp-block-archives > li:last-child, +.entry-content .wp-block-categories > li:last-child, +.entry-content .wp-block-latest-posts > li:last-child, +.entry-content .wp-block-latest-comment > li:last-child { + margin-bottom: 0; +} + +.entry-content .wp-block-archives *, +.entry-content .wp-block-categories *, +.entry-content .wp-block-latest-posts *, +.entry-content .wp-block-latest-comments * { + font-family: inherit; +} + +.entry-content .wp-block-archives li, +.entry-content .wp-block-categories li, +.entry-content .wp-block-latest-posts li { + color: #6d6d6d; +} + +.wp-block-archives a, +.wp-block-categories a, +.wp-block-latest-posts a, +.wp-block-latest-comments a { + font-weight: 700; + text-decoration: none; +} + +.wp-block-archives a:hover, +.wp-block-categories a:hover, +.wp-block-latest-posts a:hover, +.wp-block-latest-comments a:hover, +.wp-block-archives a:focus, +.wp-block-categories a:focus, +.wp-block-latest-posts a:focus, +.wp-block-latest-comments a:focus { + text-decoration: underline; +} + +.wp-block-latest-posts a, +.wp-block-latest-comments__comment-meta { + font-weight: 700; + letter-spacing: -0.025em; + line-height: 1.25; +} + +.wp-block-latest-comments__comment-date, +.wp-block-latest-posts__post-date { + color: #6d6d6d; + font-size: 0.7em; + font-weight: 600; + letter-spacing: normal; + margin-top: 0.15em; +} + + +/* Block: Shared Media Styles ---------------- */ + +.wp-block-embed figcaption, +.wp-block-image figcaption { + color: #6d6d6d; + font-size: 1.4rem; + margin-bottom: 0; + margin-top: 1.5rem; +} + +/* Block: Audio ------------------------------ */ + +.wp-block-audio audio { + width: 100%; +} + +/* Block: Button ----------------------------- */ + +.wp-block-button { + margin: 3rem 0; +} + +.wp-block-button.is-style-outline { + color: #cd2653; +} + +.is-style-outline .wp-block-button__link:not(.has-text-color) { + color: inherit; +} + +.is-style-outline .wp-block-button__link { + padding: calc(1.1em - 0.2rem) calc(1.44em - 0.2rem); +} + +/* Block: Columns ---------------------------- */ + +.wp-block-columns.alignfull, +.alignfull:not(.has-background) .wp-block-columns { + padding-left: 2rem; + padding-right: 2rem; +} + +.wp-block-column { + margin-bottom: 3.2rem; +} + +.wp-block-column > *:first-child { + margin-top: 0; +} + +.wp-block-column > *:last-child { + margin-bottom: 0; +} + +/* Block: Cover ------------------------------ */ + +.wp-block-cover-image .wp-block-cover__inner-container, +.wp-block-cover .wp-block-cover__inner-container { + width: calc(100% - 4rem); + padding: 2rem 0; +} + +.wp-block-cover-image .wp-block-cover-image-text, +.wp-block-cover-image .wp-block-cover-text, +.wp-block-cover-image h2, +.wp-block-cover .wp-block-cover-image-text, +.wp-block-cover .wp-block-cover-text, +.wp-block-cover h2 { + max-width: 100%; + padding: 0; +} + +.wp-block-cover-image h2, +.wp-block-cover h2 { + font-size: 3.2rem; +} + +/* Block: Embed ------------------------------ */ + +/* Block: File ------------------------------- */ + +.wp-block-file { + align-items: center; + display: flex; + flex-wrap: wrap; + justify-content: space-between; +} + +.wp-block-file a:not(.wp-block-file__button) { + font-weight: 700; + text-decoration: none; +} + +.wp-block-file a:not(.wp-block-file__button):not(:last-child) { + margin-right: 1rem; +} + +.wp-block-file a:not(.wp-block-file__button):focus, +.wp-block-file a:not(.wp-block-file__button):hover { + text-decoration: underline; +} + +.wp-block-file .wp-block-file__button { + font-size: 1.5rem; + padding: 1em 1.25em; +} + +.wp-block-file a.wp-block-file__button:visited { + opacity: 1; +} + +.wp-block-file a.wp-block-file__button:active, +.wp-block-file a.wp-block-file__button:focus, +.wp-block-file a.wp-block-file__button:hover { + opacity: 1; + text-decoration: underline; +} + + +/* Block: Gallery ---------------------------- */ + +.wp-block-gallery ul { + list-style: none; + margin: 0 0 -1.6rem 0; +} + +figure.wp-block-gallery.alignnone, +figure.wp-block-gallery.aligncenter { + margin-bottom: 3rem; + margin-top: 3rem; +} + +figure.wp-block-gallery.alignleft { + margin: 0.3rem 2rem 2rem 0; +} + +figure.wp-block-gallery.alignright { + margin: 0.3rem 0 2rem 2rem; +} + +figure.wp-block-gallery.alignwide { + margin-bottom: 4rem; + margin-top: 4rem; +} + +figure.wp-block-gallery.alignfull { + margin-bottom: 5rem; + margin-top: 5rem; +} + +/* Block: Group ------------------------------ */ + +.wp-block-group.has-background { + padding: 2rem; + margin-bottom: 0; + margin-top: 0; +} + +.wp-block-group__inner-container { + margin: 0 auto; +} + +.wp-block-group__inner-container, +.entry-content .wp-block-group p { + max-width: 100%; +} + +.alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-left: 2rem; + padding-right: 2rem; +} + +/* Block: Image ------------------------------ */ + +/* Block: Media And Text --------------------- */ + +.wp-block-media-text .wp-block-media-text__content { + padding: 3rem 2rem; +} + +.wp-block-media-text .wp-block-media-text__content p { + max-width: none; +} + +.wp-block-media-text__content > *:first-child { + margin-top: 0; +} + +.wp-block-media-text__content > *:last-child { + margin-bottom: 0; +} + +/* Block: Pullquote -------------------------- */ + +/* STYLE: DEFAULT */ + +.wp-block-pullquote { + padding: 0; + position: relative; +} + +.wp-block-pullquote.alignleft, +.wp-block-pullquote.alignright { + max-width: calc(100% - 4rem); +} + +.wp-block-pullquote::before { + background: #fff; + border-radius: 50%; + color: #cd2653; + content: "”"; + display: block; + font-size: 6.2rem; + font-weight: 500; + line-height: 1.2; + margin: 0 auto 1.5rem auto; + text-align: center; + height: 4.4rem; + width: 4.4rem; +} + +.reduced-spacing .wp-block-pullquote::before { + border: 0.1rem solid currentColor; + font-size: 5.9rem; +} + +.wp-block-pullquote blockquote { + border: none; + margin: 0; + padding: 0; +} + +.wp-block-pullquote blockquote p { + font-family: inherit; + font-size: 2.8rem; + font-weight: 700; + line-height: 1.178571429; + letter-spacing: -0.041785714em; + max-width: 100%; +} + +.wp-block-pullquote p:last-of-type { + margin-bottom: 0; +} + +.wp-block-pullquote cite { + color: #6d6d6d; + font-size: 1.6rem; + font-weight: 500; + margin-top: 1.2rem; +} + +.wp-block-pullquote.alignleft p, +.wp-block-pullquote.alignright p { + font-size: 2.8rem; +} + +.wp-block-pullquote.alignleft { + text-align: left; +} + +.wp-block-pullquote.alignright { + text-align: right; +} + +.wp-block-pullquote.alignleft::before { + margin-left: 0; +} + +.wp-block-pullquote.alignright::before { + margin-right: 0; +} + +/* STYLE: SOLID BACKGROUND COLOR */ + +.wp-block-pullquote.is-style-solid-color { + padding: 3rem 2rem; +} + +.wp-block-pullquote.is-style-solid-color::before { + position: absolute; + top: 0; + left: 50%; + transform: translateY(-50%) translateX(-50%); +} + +.wp-block-pullquote.is-style-solid-color.alignleft::before, +.wp-block-pullquote.is-style-solid-color.alignright::before { + transform: translateY(-50%); +} + +.wp-block-pullquote.is-style-solid-color.alignleft::before { + left: 2rem; +} + +.wp-block-pullquote.is-style-solid-color.alignright::before { + left: auto; + right: 2rem; +} + +.wp-block-pullquote.is-style-solid-color blockquote { + max-width: 100%; + text-align: inherit; +} + +.wp-block-pullquote.is-style-solid-color cite { + color: inherit; +} + +/* Block: Separator ------------------------- */ + +hr.wp-block-separator { + margin: 3rem 0; +} + +/* STYLE: WIDE */ + +.wp-block-separator.is-style-wide { + max-width: calc(100vw - 4rem); + position: relative; + width: 100%; +} + +/* STYLE: DOTS */ + +.wp-block-separator.is-style-dots::before { + background: none; + color: inherit; + font-size: 3.2rem; + font-weight: 700; + height: auto; + letter-spacing: 1em; + padding-left: 1em; + position: static; + transform: none; + width: auto; +} + +.wp-block-separator.is-style-dots::after { + content: none; +} + + +/* Block: Search ----------------------------- */ + +.wp-block-search .wp-block-search__input { + width: auto; +} + +/* Block: Table ------------------------------ */ + +.wp-block-table.is-style-stripes tbody tr:nth-child(odd) { + background: #dcd7ca; +} + +figure.wp-block-table.is-style-stripes { + border-bottom: none; +} + +.wp-block-table.is-style-stripes table { + border-collapse: inherit; +} + +/* Block: Quote ------------------------------ */ + +.wp-block-quote p, +.wp-block-quote cite { + text-align: inherit; +} + +.wp-block-quote[style="text-align:center"] { + border-width: 0; + padding: 0; +} + +.wp-block-quote[style="text-align:right"] { + + /*rtl:begin:ignore*/ + border-width: 0 0.2rem 0 0; + padding: 0 2rem 0 0; + + /*rtl:end:ignore*/ +} + +/* STYLE: LARGE */ + +.wp-block-quote.is-large, +.wp-block-quote.is-style-large { + border: none; + padding: 0; + margin-left: auto; + margin-right: auto; +} + +.wp-block-quote.is-large p, +.wp-block-quote.is-style-large p { + font-family: inherit; + font-size: 2.4rem; + font-style: normal; + font-weight: 700; + letter-spacing: -0.02em; + line-height: 1.285; +} + +.wp-block-quote.is-large cite, +.wp-block-quote.is-large footer, +.wp-block-quote.is-style-large cite, +.wp-block-quote.is-style-large footer { + font-size: 1.6rem; + text-align: inherit; +} + +/* Block: Widget Latest Comments ------------- */ + +.entry-content .wp-block-latest-comments li { + margin: 2rem 0; +} + +.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt, +.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta { + margin-left: 5.5rem; +} + +.entry-content .wp-block-latest-comments a { + text-decoration: none; +} + +.entry-content .wp-block-latest-comments a:hover, +.entry-content .wp-block-latest-comments a:focus { + text-decoration: underline; +} + +.wp-block-latest-comments__comment { + font-size: inherit; +} + +.wp-block-latest-comments__comment-date { + margin-top: 0.4em; +} + +.wp-block-latest-comments__comment-excerpt p { + font-size: 0.7em; + margin: 0.9rem 0 2rem 0; +} + +/* Block: Widget Latest Posts ---------------- */ + +.wp-block-latest-posts.is-grid li { + border-top: 0.2rem solid #dcd7ca; + margin-top: 2rem; + padding-top: 1rem; +} + +.wp-block-latest-posts.has-dates { + list-style: none; +} + +.wp-block-latest-posts.has-dates:not(.is-grid) li { + margin-top: 1.5rem; +} + +.wp-block-latest-posts.has-dates:not(.is-grid) li:first-child { + margin-top: 0; +} + + +/* -------------------------------------------------------------------------- */ + +/* 11. Entry Content +/* -------------------------------------------------------------------------- */ + + +.entry-content { + line-height: 1.5; +} + +.entry-content > * { + margin-left: auto; + margin-right: auto; + margin-bottom: 1.25em; +} + +.entry-content > *:first-child { + margin-top: 0; +} + +.entry-content > *:last-child { + margin-bottom: 0; +} + +.read-more-button-wrap { + margin-top: 1em; + text-align: center; +} + +.entry-content a:hover, +.entry-content a:focus { + text-decoration: none; +} + +.entry-content p, +.entry-content li { + line-height: 1.4; +} + +.entry-content h1, +.entry-content h2, +.entry-content h3, +.entry-content h4, +.entry-content h5, +.entry-content h6 { + margin: 3.5rem auto 2rem; +} + +.entry-content ul ul, +.entry-content ol ol, +.entry-content ul ol, +.entry-content ol ul { + margin-bottom: 1rem; +} + +.entry-content hr { + margin: 4rem auto; +} + +/* Font Families ----------------------------- */ + +.entry-content p, +.entry-content ol, +.entry-content ul, +.entry-content dl, +.entry-content dt { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +.entry-content cite, +.entry-content figcaption, +.entry-content .wp-caption-text { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .entry-content cite, + .entry-content figcaption, + .entry-content .wp-caption-text { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + + +/* Alignment Classes ------------------------- */ + +.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + max-width: 58rem; + width: calc(100% - 4rem); +} + +[class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + max-width: 58rem; + width: 100%; +} + +.alignnone, +.aligncenter, +.alignleft, +.alignright, +.alignwide { + margin-top: 4rem; + margin-right: auto; + margin-bottom: 4rem; + margin-left: auto; +} + +[class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) { + margin-left: auto; + margin-right: auto; +} + +/* Full */ + +.alignfull { + margin-top: 5rem; + margin-right: auto; + margin-bottom: 5rem; + margin-left: auto; + max-width: 100vw; + position: relative; + width: 100%; +} + +[class*="__inner-container"] > .alignfull { + max-width: 100%; +} + +/* Wide */ + +.alignwide { + max-width: 120rem; + position: relative; + width: calc(100% - 4rem); +} + +[class*="__inner-container"] > .alignwide { + width: 100%; +} + +/* Center */ + +.aligncenter, +.aligncenter img { + margin-left: auto; + margin-right: auto; +} + +/* Left and right */ + +.alignleft, +.alignright { + max-width: 50%; +} + +.alignleft { + + /*rtl:ignore*/ + float: left; + margin: 0.3rem 2rem 2rem 2rem; +} + +.alignright { + + /*rtl:ignore*/ + float: right; + margin: 0.3rem 2rem 2rem 2rem; +} + +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignleft, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignleft, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 2rem; +} + +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignright, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignright, +[class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 2rem; +} + +/* Entry Media ------------------------------- */ + +.alignfull > figcaption, +.alignfull > .wp-caption-text { + margin-left: auto; + margin-right: auto; + max-width: 58rem; + width: calc(100% - 4rem); +} + + +/* -------------------------------------------------------------------------- */ + +/* 12. Comments +/* -------------------------------------------------------------------------- */ + + +/* Comment Headers ----------------------------- */ + +.comments-wrapper { + margin-top: 5rem; +} + +.comment-reply-title { + margin: 0 0 4rem 0; + text-align: center; +} + + +/* Comment Item ----------------------------- */ + +/* COMMENT HEADER */ + +.comments .comment, +.comments .pingback, +.comments .trackback, +.comments .review { + padding-top: 3.5rem; +} + +div.comment:first-of-type { + margin-top: 3.5rem; + padding-top: 0; +} + +.comments .comments-header + div { + margin-top: 0; + padding-top: 0; +} + +.comment-body { + position: relative; +} + +.comment .comment { + padding-left: 5%; +} + +.comment-meta { + line-height: 1.1; + margin-bottom: 1.5rem; + min-height: 5rem; + padding-left: 5rem; + position: relative; +} + +.hide-avatars .comment-meta { + min-height: 0; + padding-left: 0; +} + +.comment-meta a { + color: inherit; +} + +.comment-author { + font-size: 1.8rem; + font-weight: 700; + letter-spacing: -0.027777778em; +} + +.comment-author a { + text-decoration: underline; +} + +.comment-author a:hover, +.comment-author a:focus { + text-decoration: none; +} + +.comment-meta .avatar { + height: 4rem; + position: absolute; + left: 0; + top: 0; + width: 4rem; +} + +.comment-author .url { + text-decoration: underline; +} + +.comment-metadata { + color: #6d6d6d; + font-size: 1.4rem; + font-weight: 500; + margin-top: 0.6rem; +} + +.comment-metadata a { + text-decoration: none; +} + +.comment-metadata a:focus, +.comment-metadata a:hover { + text-decoration: underline; +} + + +/* COMMENT CONTENT */ + +.comment-content.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + width: 100%; +} + +.comment-content.entry-content .alignleft { + + /*rtl:ignore*/ + margin-left: 0; +} + +.comment-content.entry-content .alignright { + + /*rtl:ignore*/ + margin-right: 0; +} + +/* COMMENT FOOTER */ + +.comment-footer-meta { + align-items: center; + display: flex; + flex-wrap: wrap; + font-size: 1.2rem; + font-weight: 600; + justify-content: flex-start; + letter-spacing: 0.030833333em; + line-height: 1; + margin: 1.5rem 0 -1rem -1.5rem; + text-transform: uppercase; +} + +.comment-footer-meta > * { + margin: 0 0 1rem 1.5rem; +} + +.comment-reply-link { + background-color: #cd2653; + color: #fff; + display: block; + padding: 0.7rem; +} + +.bypostauthor .comment-footer-meta .by-post-author { + display: block; +} + +.comment-footer-meta a { + text-decoration: none; +} + +.comment-footer-meta a:focus, +.comment-footer-meta a:hover { + text-decoration: underline; +} + + +/* Pingbacks & Trackbacks ------------------------- */ + +.pingback .comment-meta, +.trackback .comment-meta { + padding-left: 0; +} + + +/* Comments Pagination ---------------------------- */ + +.comments-pagination { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + margin-top: 6rem; + text-align: center; +} + +.comments-pagination.only-next { + justify-content: flex-end; +} + +.comments-pagination .page-numbers { + display: none; + text-decoration: none; +} + +.comments-pagination .page-numbers:focus, +.comments-pagination .page-numbers:hover { + text-decoration: underline; +} + +.comments-pagination .prev, +.comments-pagination .next { + display: block; +} + +.comments-pagination .prev { + left: 0; +} + +.comments-pagination .next { + right: 0; + text-align: right; +} + + +/* Comment Respond ---------------------------- */ + +.comment-respond::after { + clear: both; + content: ""; + display: block; +} + +.comment-respond .comment-notes, +.comment-respond .logged-in-as { + color: #6d6d6d; + font-size: 1.6rem; + line-height: 1.4; + margin: -3rem 0 4rem 0; + text-align: center; +} + +.comment-respond .comment-notes a, +.comment-respond .logged-in-as a { + color: inherit; + text-decoration: none; +} + +.comment-respond .comment-notes a:focus, +.comment-respond .comment-notes a:hover, +.comment-respond .logged-in-as a:focus, +.comment-respond .logged-in-as a:hover { + text-decoration: underline; +} + +.comment-respond p { + line-height: 1.1; + margin-bottom: 2rem; + margin-left: auto; + margin-right: auto; +} + +.comment-respond p:not(.comment-notes) { + max-width: 58rem; +} + +.comment-form-cookies-consent { + align-items: baseline; + display: flex; +} + +.comment-respond > p:last-of-type { + margin-bottom: 0; +} + +.comment-respond label { + display: block; +} + +.comment-respond input[type="checkbox"] + label { + font-size: 1.5rem; + line-height: 1.25; +} + +.comment-respond input[type="text"], +.comment-respond input[type="email"], +.comment-respond textarea { + margin-bottom: 0; +} + +.comment-respond textarea { + height: 15rem; +} + +.comment-respond #submit { + display: block; +} + +.comment-respond .comments-closed { + text-align: center; +} + + +/* Reply Respond ---------------------------- */ + +.comments .comment-respond { + padding: 3rem 0 0; +} + +.comments .comment-respond .comment-reply-title, +.comments .comment-respond .comment-notes, +.comments .comment-respond .logged-in-as { + text-align: left; +} + +.comment-reply-title small { + display: block; + font-size: 1.6rem; + font-weight: 600; + letter-spacing: -0.0277em; + margin: 0.5rem 0 0 0; + white-space: nowrap; +} + +.comment-reply-title small a { + text-decoration: none; +} + +.comment-reply-title small a:focus, +.comment-reply-title small a:hover { + text-decoration: underline; +} + + +/* -------------------------------------------------------------------------- */ + +/* 13. Site Pagination +/* -------------------------------------------------------------------------- */ + + +.pagination .nav-links { + align-items: baseline; + display: flex; + flex-wrap: wrap; + font-size: 1.8rem; + font-weight: 600; + margin: -1.5rem 0 0 -2.5rem; + width: calc(100% + 2.5rem); +} + +.pagination-separator { + margin: 5rem 0; +} + +.nav-links > * { + margin: 1.5rem 0 0 2.5rem; +} + +.nav-links .placeholder { + display: none; + visibility: hidden; +} + +.pagination a { + text-decoration: none; +} + +.pagination a:focus, +.pagination a:hover { + text-decoration: underline; +} + +.pagination .dots { + transform: translateY(-0.3em); + color: #6d6d6d; +} + +.nav-short { + display: none; +} + +/* -------------------------------------------------------------------------- */ + +/* 14. Error 404 +/* -------------------------------------------------------------------------- */ + + +.error404 #site-content { + padding-top: 4rem; +} + +.error404-content { + text-align: center; +} + +.error404 #site-content .search-form { + justify-content: center; + margin-top: 3rem; +} + + +/* -------------------------------------------------------------------------- */ + +/* 15. Widgets +/* -------------------------------------------------------------------------- */ + + +/* Widget Base ------------------------------- */ + +.widget { + margin-top: 3rem; +} + +.widget:first-child { + margin-top: 0; +} + +.widget-content > div > *:first-child { + margin-top: 0; +} + +.widget-content > div > *:last-child { + margin-bottom: 0; +} + +.widget .widget-title { + margin: 0 0 2rem; +} + +.widget li { + margin: 2rem 0 0 0; +} + +.widget li:first-child, +.widget li > ul, +.widget li > ol { + margin-top: 0; +} + +.widget table, +.widget table * { + border-color: #dedfdf; +} + +.widget table caption { + background-color: #dedfdf; +} + +.widget .post-date, +.widget .rss-date { + color: #6d6d6d; + display: block; + font-size: 0.85em; + font-weight: 500; + margin-top: 0.2rem; +} + +.widget select { + max-width: 100%; +} + +/* Font Families ----------------------------- */ + +.widget_text p, +.widget_text ol, +.widget_text ul, +.widget_text dl, +.widget_text dt, +.widget-content .rssSummary { + font-family: NonBreakingSpaceOverride, "Hoefler Text", Garamond, "Times New Roman", serif; + letter-spacing: normal; +} + +.widget-content cite, +.widget-content figcaption, +.widget-content .wp-caption-text { + font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; +} + +@supports ( font-variation-settings: normal ) { + + .widget-content cite, + .widget-content figcaption, + .widget-content .wp-caption-text { + font-family: "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica, sans-serif; + } +} + +/* Base List Widget -------------------------- */ + +.widget_archive ul, +.widget_categories ul, +.widget_pages ul, +.widget_meta ul, +.widget_nav_menu ul, +.widget_recent_comments ul, +.widget_recent_entries ul, +.widget_rss ul { + list-style: none; + margin: 0; +} + +.widget_archive li, +.widget_categories li, +.widget_pages li, +.widget_meta li, +.widget_nav_menu li { + color: #6d6d6d; + margin: 0.3rem 0; +} + +.widget_archive li li, +.widget_categories li li, +.widget_pages li li, +.widget_meta li li, +.widget_nav_menu li li { + margin-left: 2rem; +} + +.widget_archive a, +.widget_categories a, +.widget_pages a, +.widget_meta a, +.widget_nav_menu a { + font-weight: 700; + text-decoration: none; +} + +.widget_archive a:focus, +.widget_archive a:hover, +.widget_categories a:focus, +.widget_categories a:hover, +.widget_pages a:focus, +.widget_pages a:hover, +.widget_meta a:focus, +.widget_meta a:hover, +.widget_nav_menu a:focus, +.widget_nav_menu a:hover { + text-decoration: underline; +} + +/* Widget: Calendar -------------------------- */ + +.calendar_wrap { + font-size: 2.4rem; +} + +.calendar_wrap th, +.calendar_wrap td { + font-size: 1em; + font-weight: 500; + line-height: 1; + padding: 2.5% 2.5% 1.75% 2.5%; + text-align: center; +} + +.calendar_wrap tfoot td { + border-bottom: none; +} + +.calendar_wrap tfoot a { + text-decoration: none; +} + +.calendar_wrap tfoot #prev { + text-align: left; +} + +.calendar_wrap tfoot #next { + text-align: right; +} + +/* Widget: Image ----------------------------- */ + +/* Widget: Gallery --------------------------- */ + +.widget_media_gallery .gallery { + margin: 0 -0.4em -0.8em -0.4em; + width: calc(100% + 0.8em); +} + +.widget_media_gallery .gallery-item { + margin: 0 0 0.8em 0; + padding: 0 0.4em; +} + +/* Widget: Nav Menu -------------------------- */ + +.widget_nav_menu .widget-content > div > ul { + margin-left: 0; +} + +/* Widget: Recent Comments ------------------- */ + +.widget_recent_comments li { + font-weight: 700; +} + +.widget_recent_comments a { + text-decoration: none; +} + +.widget_recent_comments a:focus, +.widget_recent_comments a:hover { + text-decoration: underline; +} + +/* Widget: Recent Entries -------------------- */ + +.widget_recent_entries a { + font-weight: 700; + text-decoration: none; +} + +.widget_recent_entries a:focus, +.widget_recent_entries a:hover { + text-decoration: underline; +} + +/* Widget: RSS ------------------------------- */ + +.widget_rss .widget-title a.rsswidget:first-of-type { + display: none; +} + +.widget_rss .rsswidget { + font-weight: 700; +} + +.widget_rss a { + text-decoration: none; +} + +.widget_rss a:focus, +.widget_rss a:hover { + text-decoration: underline; +} + +.widget_rss .rssSummary { + margin-top: 0.5rem; +} + +.widget_rss cite::before { + content: "— "; +} + +/* Widget: Search ---------------------------- */ + +.widget_search .search-field { + border-color: #dedfdf; +} + +/* Widget: Tag Cloud ------------------------- */ + +.widget_tag_cloud a { + font-weight: 700; + margin-right: 0.5rem; + text-decoration: none; + white-space: nowrap; +} + +.widget_tag_cloud a:focus, +.widget_tag_cloud a:hover { + text-decoration: underline; +} + +/* Widget: Text ------------------------------ */ + + +/* -------------------------------------------------------------------------- */ + +/* 16. Site Footer +/* -------------------------------------------------------------------------- */ + + +.footer-nav-widgets-wrapper, +#site-footer { + background-color: #fff; + border-color: #dedfdf; + border-style: solid; + border-width: 0; +} + +.footer-top-visible .footer-nav-widgets-wrapper, +.footer-top-hidden #site-footer { + margin-top: 5rem; +} + +.reduced-spacing.footer-top-visible .footer-nav-widgets-wrapper, +.reduced-spacing.footer-top-hidden #site-footer { + border-top-width: 0.1rem; +} + +.footer-top, +.footer-widgets-outer-wrapper, +#site-footer { + padding: 3rem 0; +} + + +/* Footer Top -------------------------------- */ + +.footer-top { + display: flex; + border-bottom: 0.1rem solid #dedfdf; + justify-content: space-between; +} + +/* FOOTER MENU */ + +.footer-menu { + font-size: 1.8rem; + font-weight: 700; + letter-spacing: -0.0277em; +} + +.footer-menu li { + line-height: 1.25; + margin: 0.25em 0 0 0; +} + +.footer-menu a { + text-decoration: none; +} + +.footer-menu a:hover, +.footer-menu a:focus { + text-decoration: underline; +} + +/* FOOTER SOCIAL */ + +.footer-social-wrapper { + margin: 0; + width: 100%; +} + +.has-footer-menu .footer-social-wrapper { + flex-shrink: 0; + margin-left: 1rem; + width: 50%; +} + +ul.footer-social { + margin: -0.5rem 0 0 -0.5rem; +} + +.has-footer-menu .footer-social { + justify-content: flex-end; +} + +ul.footer-social li { + margin: 0.5rem 0 0 0.5rem; +} + +.footer-social a { + background-color: #cd2653; + height: 3.6rem; + width: 3.6rem; +} + +.footer-social a::before { + font-size: 1.6rem; +} + +/* Footer Widgets ---------------------------- */ + +.footer-widgets-outer-wrapper { + border-bottom: 0.1rem solid #dedfdf; +} + +.footer-widgets + .footer-widgets { + margin-top: 3rem; +} + +/* Footer Bottom ----------------------------- */ + +#site-footer { + font-size: 1.6rem; +} + +#site-footer .section-inner { + align-items: baseline; + display: flex; + justify-content: space-between; +} + +#site-footer a { + text-decoration: none; +} + +#site-footer a:focus, +#site-footer a:hover { + text-decoration: underline; +} + +.footer-copyright a, +.powered-by-wordpress a { + color: inherit; +} + +.powered-by-wordpress, +.to-the-top { + color: #6d6d6d; +} + +a.to-the-top > * { + pointer-events: none; +} + +.footer-copyright { + font-weight: 600; + margin: 0; +} + +.powered-by-wordpress { + display: none; + margin: 0 0 0 2.4rem; +} + +.to-the-top-long { + display: none; +} + + +/* -------------------------------------------------------------------------- */ + +/* 17. Media Queries +/* -------------------------------------------------------------------------- */ + +@media ( max-width: 479px ) { + + /* Blocks -------------------------------- */ + + .wp-block-pullquote.alignleft, + .wp-block-pullquote.alignright { + float: none; + } + + /* Entry Content ------------------------- */ + + /* LISTS */ + + ul, + ol { + margin: 0 0 3rem 2rem; + } + + li { + margin: 0.5rem 0 0 1rem; + } +} + +@media ( min-width: 480px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: BASE ALIGNMENT WIDTH */ + + .wp-block-pullquote.alignleft, + .wp-block-pullquote.alignright, + .wp-block-cover-image.alignleft, + .wp-block-cover-image.alignright, + .wp-block-cover.alignleft, + .wp-block-cover.alignright, + .wp-block-embed.alignleft, + .wp-block-embed.alignright, + .wp-block-gallery.alignleft, + .wp-block-gallery.alignright { + max-width: 26rem; + } + + /* BLOCK: TABLE WIDTH */ + .wp-block-table.alignleft, + .wp-block-table.alignright { + max-width: 100%; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .alignleft, + .alignright { + max-width: 26rem; + } +} + +@media ( max-width: 599px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + /* While columns are stacked */ + .wp-block-column:last-child { + margin-bottom: 0; + } + + .wp-block-columns + .wp-block-columns { + margin-top: 0.2rem; + } + + .wp-block-columns.alignwide + .wp-block-columns.alignwide { + margin-top: -0.8rem; + } + + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -1.8rem; + } + +} + +@media ( min-width: 600px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -4rem; + } + +} + +@media ( min-width: 660px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignleft { + + /*rtl:ignore*/ + margin-left: calc(( 100vw - 58rem - 8rem ) / -2); + } + + figure.wp-block-gallery.alignright { + + /*rtl:ignore*/ + margin-right: calc(( 100vw - 58rem - 8rem ) / -2); + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignleft { + + /*rtl:ignore*/ + margin-left: 4rem; + } + + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: calc(( 100vw - 58rem - 8rem ) / -2); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 0; + } + + .entry-content > .alignright { + + /*rtl:ignore*/ + margin-right: 4rem; + } + + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: calc(( 100vw - 58rem - 8rem ) / -2); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 0; + } + +} + +@media ( min-width: 700px ) { + + /* Element Base ------------------------- */ + + ul, + ol { + margin-bottom: 4rem; + } + + pre { + padding: 3rem; + } + + hr { + margin: 8rem auto; + } + + table { + font-size: 1.8rem; + } + + /* VANILLA GALLERIES */ + + .gallery-columns-2 .gallery-item { + max-width: 50%; + } + + .gallery-columns-3 .gallery-item { + max-width: 33.33%; + } + + .gallery-columns-4 .gallery-item { + max-width: 25%; + } + + .gallery-columns-5 .gallery-item { + max-width: 20%; + } + + .gallery-columns-6 .gallery-item { + max-width: 16.66%; + } + + .gallery-columns-7 .gallery-item { + max-width: 14.28%; + } + + .gallery-columns-8 .gallery-item { + max-width: 12.5%; + } + + .gallery-columns-9 .gallery-item { + max-width: 11.11%; + } + + /* TITLES */ + + h1, + .heading-size-1, + h2, + .heading-size-2, + h3, + .heading-size-3 { + margin: 6rem auto 3rem; + } + + h4, + .heading-size-4, + h5, + .heading-size-5, + h6, + .heading-size-6 { + margin: 4.5rem auto 2.5rem; + } + + h1, + .heading-size-1 { + font-size: 6.4rem; + } + + h2, + .heading-size-2 { + font-size: 4.8rem; + } + + h3, + .heading-size-3 { + font-size: 4rem; + } + + h4, + .heading-size-4 { + font-size: 3.2rem; + } + + h5, + .heading-size-5 { + font-size: 2.4rem; + } + + h6, + .heading-size-6 { + font-size: 1.8rem; + } + + /* INPUTS */ + + fieldset { + padding: 3rem; + } + + legend { + padding: 0 1.5rem; + } + + button, + .button, + .faux-button, + .wp-block-button__link, + input[type="button"], + input[type="reset"], + input[type="submit"] { + font-size: 1.7rem; + } + + /* MEDIA */ + + figcaption, + .wp-caption-text { + margin-top: 1.8rem; + } + + + /* Helper Classes ------------------------- */ + + /* SECTIONS */ + + section { + padding: 8rem 0; + } + + .section-inner { + width: calc(100% - 8rem); + } + + + /* Site Header --------------------------- */ + + .header-inner { + padding: 3.8rem 0; + } + + .site-title { + font-size: 2.4rem; + font-weight: 700; + } + + .site-description { + display: block; + } + + .site-logo img { + max-height: 9rem; + transition: height 0.15s linear, width 0.15s linear, max-height 0.15s linear; + } + + /* HEADER TOGGLES */ + + .toggle-inner .toggle-text { + font-size: 1.2rem; + } + + .search-toggle { + left: 2rem; + } + + .nav-toggle { + right: 2rem; + } + + + /* Menu Modal ---------------------------- */ + + button.close-nav-toggle { + font-size: 1.8rem; + padding: 4rem 0; + } + + button.close-nav-toggle svg { + height: 2rem; + width: 2rem; + } + + button.close-nav-toggle .toggle-text { + margin-right: 2.1rem; + } + + .modal-menu { + left: auto; + width: 100%; + } + + .modal-menu > li > a, + .modal-menu > li > .ancestor-wrapper > a { + font-size: 2.4rem; + padding: 2.5rem 0; + } + + .modal-menu ul li { + border-left-color: transparent; + } + + .modal-menu > li > .ancestor-wrapper > button.sub-menu-toggle { + padding: 0 3rem; + } + + .modal-menu > li > .ancestor-wrapper > button.sub-menu-toggle svg { + height: 1.1rem; + width: 1.8rem; + } + + .menu-bottom { + align-items: center; + display: flex; + justify-content: space-between; + padding: 4.4rem 0; + } + + .menu-copyright { + display: block; + flex-shrink: 0; + margin-right: 4rem; + } + + /* Modal Search Form ------------------------- */ + + .search-modal form { + position: relative; + width: 100%; + } + + .search-untoggle svg { + height: 2.5rem; + width: 2.5rem; + } + + .search-modal .search-field { + border: none; + font-size: 3.2rem; + height: 14rem; + } + + .search-modal .search-field::-moz-placeholder { + line-height: 4.375; + } + + /* Sub Page ------------------------------ */ + + /* FEATURED MEDIA */ + + .featured-media figcaption { + margin: 2rem auto 0 auto; + width: calc(100% - 8rem); + } + + /* Template: Cover Template -------------- */ + + .cover-header-inner { + padding: 18rem 0 8rem 0; + } + + .to-the-content-wrapper { + top: calc(100% + 1.8rem); + } + + .to-the-content { + height: 6rem; + } + + .to-the-content svg { + height: 2.4rem; + width: 2.12rem; + } + + /* Template: Full Width ------------------ */ + + body.template-full-width .entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) { + width: calc(100% - 8rem); + } + + body.template-full-width .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-left: 4rem; + padding-right: 4rem; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 4rem; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 4rem; + } + + /* Post: Archive ------------------------- */ + + .archive-header { + padding: 8rem 0; + } + + .reduced-spacing .archive-header { + padding-bottom: 3rem; + } + + .archive-title { + font-size: 3.2rem; + } + + body:not(.singular) main > article:first-of-type { + padding: 8rem 0 0; + } + + h2.entry-title { + font-size: 6.4rem; + } + + /* SEARCH RESULTS */ + + .no-search-results-form { + padding-top: 8rem; + } + + /* Post: Single -------------------------- */ + + /* POST HEADER */ + + .singular .entry-header { + padding: 8rem 0; + } + + .entry-categories { + margin-bottom: 3rem; + } + + .entry-categories-inner { + margin: -1rem 0 0 -2rem; + } + + .entry-categories a { + font-size: 1.5rem; + margin: 1rem 0 0 2rem; + } + + .intro-text { + font-size: 2rem; + margin-top: 2.5rem; + } + + .singular .intro-text { + font-size: 2.6rem; + } + + .post-meta-wrapper { + margin-top: 3rem; + } + + .post-meta { + font-size: 1.6rem; + margin: -1.4rem 0 0 -3rem; + } + + .post-meta li { + margin: 1.4rem 0 0 3rem; + max-width: calc(100% - 3rem); + } + + .featured-media { + margin-top: 6rem; + } + + .post-inner { + padding-top: 8rem; + } + + /* POST FOOTER */ + + .post-meta-wrapper.post-meta-single-bottom { + margin-top: 4rem; + } + + /* AUTHOR BIO */ + + .author-bio { + margin-top: 8rem; + min-height: 8rem; + padding-left: 10rem; + position: relative; + } + + .author-bio .avatar { + position: absolute; + left: 0; + top: 0; + height: 8rem; + width: 8rem; + } + + /* SINGLE PAGINATION */ + + .pagination-single { + font-size: 2.4rem; + margin-top: 8rem; + } + + .pagination-single-inner { + flex-direction: row; + justify-content: space-between; + } + + .pagination-single.only-next .pagination-single-inner { + justify-content: flex-end; + } + + .pagination-single hr:first-child { + margin: 0 0 4rem 0; + } + + .pagination-single hr:last-child { + margin: 4rem 0 0.8rem 0; + } + + .pagination-single a + a { + margin: 0 0 0 4rem; + } + + .pagination-single a .arrow { + margin: 0 2rem 0 0; + } + + .pagination-single .next-post { + flex-direction: row-reverse; + text-align: right; + } + + .pagination-single .next-post .arrow { + margin: 0 0 0 2rem; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: SHARED MEDIA STYLES */ + + .wp-block-embed figcaption, + .wp-block-image figcaption { + font-size: 1.6rem; + } + + /* BLOCK: BASE MARGINS */ + + .wp-block-archives:not(.alignwide):not(.alignfull), + .wp-block-categories:not(.alignwide):not(.alignfull), + .wp-block-code, + .wp-block-columns:not(.alignwide):not(.alignfull), + .wp-block-cover:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-embed:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-gallery:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-group:not(.has-background):not(.alignwide):not(.alignfull), + .wp-block-image:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.aligncenter), + .wp-block-latest-comments:not(.aligncenter):not(.alignleft):not(.alignright), + .wp-block-latest-posts:not(.aligncenter):not(.alignleft):not(.alignright), + .wp-block-media-text:not(.alignwide):not(.alignfull), + .wp-block-preformatted, + .wp-block-pullquote:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright), + .wp-block-quote, + .wp-block-quote.is-large, + .wp-block-quote.is-style-large, + .wp-block-verse, + .wp-block-video:not(.alignwide):not(.alignfull) { + margin-bottom: 4rem; + margin-top: 4rem; + } + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -6rem; + } + + .entry-content .wp-block-columns h1, + .entry-content .wp-block-columns h2, + .entry-content .wp-block-columns h3, + .entry-content .wp-block-columns h4, + .entry-content .wp-block-columns h5, + .entry-content .wp-block-columns h6 { + margin: 3.5rem 0 2rem; + } + + /* BLOCK: COVER */ + + .wp-block-cover-image .wp-block-cover__inner-container, + .wp-block-cover .wp-block-cover__inner-container { + width: calc(100% - 8rem); + } + + .wp-block-cover-image h2, + .wp-block-cover h2 { + font-size: 4.8rem; + } + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignnone, + figure.wp-block-gallery.aligncenter { + margin-bottom: 4rem; + margin-top: 4rem; + } + + figure.wp-block-gallery.alignwide, + figure.wp-block-gallery.alignfull { + margin-bottom: 6rem; + margin-top: 6rem; + } + + /* BLOCK: GROUP */ + + .wp-block-group.has-background { + padding: 4rem; + margin-top: 0; + margin-bottom: 0; + } + + .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-left: 0; + padding-right: 0; + } + + /* BLOCK: MEDIA AND TEXT */ + + .wp-block-media-text .wp-block-media-text__content { + padding: 4rem; + } + + /* BLOCK: PULLQUOTE */ + + .wp-block-pullquote blockquote p { + font-size: 3.2rem; + } + + .wp-block-pullquote cite { + margin-top: 2rem; + } + + .wp-block-pullquote.alignfull:not(.is-style-solid-color) { + padding-left: 1rem; + padding-right: 1rem; + } + + .wp-block-pullquote.alignwide::before, + .wp-block-pullquote.alignfull::before { + font-size: 11.272727272rem; + height: 8rem; + margin-bottom: 2rem; + width: 8rem; + } + + .wp-block-pullquote.alignwide blockquote p, + .wp-block-pullquote.alignfull blockquote p { + font-size: 4.8rem; + line-height: 1.203125; + } + + .wp-block-pullquote.alignleft p, + .wp-block-pullquote.alignright p, + .wp-block-pullquote.alignleft.is-style-solid-color blockquote p, + .wp-block-pullquote.alignright.is-style-solid-color blockquote p { + font-size: 3.2rem; + line-height: 1.1875; + } + + .wp-block-pullquote.is-style-solid-color.alignwide, + .wp-block-pullquote.is-style-solid-color.alignfull { + padding: 6rem 4rem 4rem; + } + + .wp-block-pullquote.alignleft.is-style-solid-color blockquote p, + .wp-block-pullquote.alignright.is-style-solid-color blockquote p { + font-size: 2.6rem; + } + + /* BLOCK: QUOTE */ + + .wp-block-quote.is-large p, + .wp-block-quote.is-style-large p { + font-size: 2.8rem; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin: 6rem auto; + } + + .wp-block-separator.is-style-wide { + max-width: calc(100vw - 8rem); + } + + /* Entry Content ------------------------- */ + + .entry-content { + font-size: 2.1rem; + } + + .entry-content p, + .entry-content li { + line-height: 1.476; + } + + .entry-content h1, + .entry-content h2, + .entry-content h3 { + margin: 6rem auto 3rem; + } + + .entry-content h4, + .entry-content h5, + .entry-content h6 { + margin: 4.5rem auto 2.5rem; + } + + .alignnone, + .aligncenter { + margin-bottom: 4rem; + margin-top: 4rem; + } + + .alignleft { + + /*rtl:ignore*/ + margin: 0.3rem 2rem 2rem 0; + } + + .alignright { + + /*rtl:ignore*/ + margin: 0.3rem 0 2rem 2rem; + } + + .entry-content > .alignwide:not(.wp-block-group.has-background), + .entry-content > .alignfull:not(.wp-block-group.has-background) { + margin-bottom: 6rem; + margin-top: 6rem; + } + + .entry-content > .alignwide { + max-width: calc(100vw - 8rem); + width: calc(100vw - 8rem); + } + + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 4rem; + } + + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 4rem; + } + + /* ENTRY MEDIA */ + + .alignfull > figcaption, + .alignfull > .wp-caption-text { + width: calc(100% - 8rem); + } + + /* Comments ------------------------------ */ + + .comments-wrapper { + margin-top: 8rem; + } + + .comment-reply-title { + margin-bottom: 4.6rem; + } + + .comment-respond p.comment-notes, + .comment-respond p.logged-in-as { + font-size: 1.8rem; + letter-spacing: -0.025em; + margin: -2.5rem 0 4.4rem 0; + } + + .comments .comment, + .comments .pingback, + .comments .trackback, + .comments .review { + padding-top: 5rem; + } + + div.comment:first-of-type { + margin-top: 5rem; + } + + .comment-meta { + margin-bottom: 2rem; + min-height: 6rem; + padding: 0.3rem 0 0 7.5rem; + } + + .comment-meta .avatar { + display: block; + height: 6rem; + position: absolute; + left: 0; + top: 0; + width: 6rem; + } + + .comment-author { + font-size: 2.4rem; + } + + .comment-metadata { + font-size: 1.6rem; + margin-top: 0.8rem; + } + + .comment-footer-meta { + margin-top: 2.5rem; + } + + .comments-pagination { + margin-top: 8rem; + } + + /* PINGBACKS & TRACKBACKS */ + + .pingback .comment-body { + padding: 0; + } + + /* COMMENT RESPOND */ + + .comment-respond p { + margin-bottom: 2.5rem; + } + + .comment-form p.logged-in-as { + margin: -2.5rem 0 4.4rem 0; + } + + .comment-respond .comment-form-author, + .comment-respond .comment-form-email { + float: left; + width: calc(50% - 1rem); + } + + .comment-respond .comment-form-email { + margin-left: 2rem; + } + + .comments .comment-respond { + padding: 5rem 0 0; + } + + .comment-reply-title small { + display: inline; + margin: 0 0 0 0.5rem; + } + + /* Site Pagination ----------------------- */ + + .pagination-separator { + margin: 8rem 0; + } + + /* Display the full text for Newer and Older Posts. */ + + .nav-short { + display: inline; + } + + .pagination .nav-links { + font-size: 2.4rem; + font-weight: 700; + margin: -2.5rem 0 0 -4rem; + } + + .nav-links > * { + margin: 2.5rem 0 0 4rem; + } + + + /* Error 404 ----------------------------- */ + + .error404 #site-content { + padding-top: 8rem; + } + + /* Widgets ------------------------------- */ + + .widget .widget-title { + margin-bottom: 3rem; + } + + /* Site Footer --------------------------- */ + + .footer-top-visible .footer-nav-widgets-wrapper, + .footer-top-hidden #site-footer { + margin-top: 8rem; + } + + /* FOOTER TOP */ + + .footer-top { + padding: 3.7rem 0; + } + + .footer-menu { + font-size: 2.4rem; + margin: -0.8rem 0 0 -1.6rem; + } + + .footer-menu li { + margin: 0.8rem 0 0 1.6rem; + } + + .has-footer-menu .footer-social-wrapper { + flex: 1; + margin-left: 4rem; + width: auto; + } + + /* FOOTER WIDGETS */ + + .footer-widgets-outer-wrapper { + padding: 8rem 0; + } + + .footer-widgets-wrapper { + display: flex; + justify-content: space-between; + margin-left: -4rem; + width: calc(100% + 4rem); + } + + .footer-widgets { + margin-left: 4rem; + width: 50%; + } + + .footer-widgets + .footer-widgets { + margin-top: 0; + } + + .footer-widgets .widget { + border-top: none; + margin-top: 5rem; + padding-top: 0; + } + + .footer-widgets .widget:first-child { + margin-top: 0; + } + + /* FOOTER BOTTOM */ + + #site-footer { + font-size: 1.8rem; + padding: 4.3rem 0; + } + + .footer-credits { + display: flex; + } + + .footer-copyright { + font-weight: 700; + } + + .powered-by-wordpress { + display: block; + } + + .to-the-top-long { + display: inline; + } + + .to-the-top-short { + display: none; + } + +} + +@media (min-width: 782px) { + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-column { + margin-bottom: 0; + } + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -2.8rem; + } +} + +@media ( min-width: 1000px ) { + + + /* Document Setup ------------------------ */ + + /* Helper Classes ------------------------ */ + + /* Site Header --------------------------- */ + + #site-header { + z-index: 1; + } + + .header-inner { + align-items: center; + display: flex; + justify-content: space-between; + padding: 2.8rem 0; + } + + .header-titles-wrapper { + margin-right: 4rem; + max-width: 50%; + padding: 0; + text-align: left; + } + + .header-titles { + align-items: baseline; + display: flex; + flex-wrap: wrap; + justify-content: flex-start; + margin: -1rem 0 0 -2.4rem; + } + + .header-titles .site-title, + .header-titles .site-logo, + .header-titles .site-description { + margin: 1rem 0 0 2.4rem; + } + + .wp-custom-logo .header-titles { + align-items: center; + } + + /* HEADER NAVIGATION */ + + .header-navigation-wrapper { + align-items: center; + display: flex; + } + + .primary-menu-wrapper { + display: block; + width: 100%; + } + + /* HEADER TOGGLES */ + + .mobile-search-toggle, + .mobile-nav-toggle { + display: none !important; + } + + .primary-menu-wrapper + .header-toggles { + margin-left: 3rem; + } + + .header-toggles { + display: flex; + flex-shrink: 0; + margin-right: -3rem; + } + + .header-inner .toggle { + height: 4.4rem; + padding: 0 3rem; + position: relative; + bottom: auto; + left: auto; + right: auto; + top: auto; + width: auto; + } + + .header-inner .toggle-wrapper { + position: relative; + } + + .header-inner .toggle-wrapper::before { + background: #dedfdf; + content: ""; + display: block; + height: 2.7rem; + position: absolute; + left: 0; + top: calc(50% - 1.35rem); + width: 0.1rem; + } + + .header-inner .toggle-wrapper:first-child::before { + content: none; + } + + .header-inner .primary-menu-wrapper + .header-toggles .toggle-wrapper:first-child::before { + content: ""; + } + + .nav-toggle-wrapper:not(.has-expanded-menu) { + display: none; + } + + .toggle-inner { + position: static; + } + + .toggle-inner .toggle-text { + left: 0; + right: 0; + text-align: center; + top: calc(100% - 0.3rem); + width: auto; + } + + .header-toggles:only-child .nav-toggle .toggle-inner { + padding-top: 0; + } + + .header-toggles:only-child .toggle-inner { + display: flex; + flex-wrap: nowrap; + align-items: center; + } + + .header-toggles:only-child .toggle-inner .svg-icon { + order: 1; + } + + .header-toggles:only-child .toggle-inner .toggle-text { + position: static; + padding-right: 20px; + font-size: 15px; + color: inherit; + } + + /* Menu Modal ---------------------------- */ + + .menu-modal { + opacity: 1; + justify-content: flex-end; + padding: 0; + transition: background-color 0.3s ease-in, left 0s 0.3s, right 0s 0.3s; + } + + .menu-modal.cover-modal { + background: rgba(0, 0, 0, 0); + } + + .menu-modal.active { + background: rgba(0, 0, 0, 0.2); + transition: background-color 0.3s ease-out; + } + + .menu-wrapper.section-inner { + width: calc(100% - 8rem); + } + + .menu-modal-inner { + box-shadow: 0 0 2rem 0 rgba(0, 0, 0, 0.1); + opacity: 0; + padding: 0; + transform: translateX(20rem); + transition: transform 0.2s ease-in, opacity 0.2s ease-in; + width: 50rem; + } + + .menu-modal.active .menu-modal-inner { + opacity: 1; + transform: translateX(0); + transition-timing-function: ease-out; + } + + .mobile-menu { + display: none; + } + + .expanded-menu { + display: block; + } + + .menu-bottom { + padding: 6rem 0; + } + + .menu-bottom .social-menu { + justify-content: flex-start; + } + + /* Sub Page ------------------------------ */ + + /* FEATURED MEDIA */ + + .featured-media figcaption { + width: 100%; + } + + /* Template: Full Width ------------------ */ + + .template-full-width .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-right: 2rem; + } + + .template-full-width .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-left: 2rem; + } + + /* Post: Archive ------------------------- */ + + /* Post: Single -------------------------- */ + + .singular .intro-text { + font-size: 2.8rem; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignwide + .wp-block-columns.alignwide, + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -4.8rem; + } + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignwide, + figure.wp-block-gallery.alignfull { + margin-bottom: 8rem; + margin-top: 8rem; + } + + /* BLOCK: GROUP */ + + .entry-content > .wp-block-group.alignwide.has-background, + .entry-content > .wp-block-group.alignfull.has-background { + padding: 8rem 4rem; + margin-bottom: 0; + margin-top: 0; + } + + /* BLOCK: IMAGE */ + + .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-right: 0; + } + + .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-left: 0; + } + + /* BLOCK: SEPARATOR */ + + hr.wp-block-separator { + margin: 8rem auto; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft { + position: absolute; + + /*rtl:ignore*/ + right: calc((100vw - 58rem) / 2 + 58rem + 2rem); + max-width: calc((100% - 58rem) / 2 - 6rem); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignleft { + position: relative; + + /*rtl:ignore*/ + right: inherit; + max-width: inherit; + } + + [class*="wp-block"].alignwide [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + position: absolute; + + /*rtl:ignore*/ + right: calc((100% - 58rem) / 2 + 58rem + 4rem); + max-width: calc((100% - 58rem) / 2 - 4rem); + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + right: calc((100% - 58rem) / 2 + 58rem); + } + + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 4rem; + } + + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright, + [class*="__inner-container"] > .alignright { + position: absolute; + + /*rtl:ignore*/ + left: calc((100vw - 58rem) / 2 + 58rem + 2rem); + max-width: calc((100% - 58rem) / 2 - 6rem); + } + + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > p .alignright, + [class*="wp-block"]:not(.alignwide):not(.alignfull) [class*="__inner-container"] > .wp-block-image .alignright { + position: relative; + + /*rtl:ignore*/ + left: inherit; + max-width: inherit; + } + + [class*="wp-block"].alignwide [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide [class*="__inner-container"] > .wp-block-image .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + position: absolute; + + /*rtl:ignore*/ + left: calc((100% - 58rem) / 2 + 58rem + 4rem); + max-width: calc((100% - 58rem) / 2 - 4rem); + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + left: calc((100% - 58rem) / 2 + 58rem + 4rem); + } + + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 4rem; + } + + .entry-content > .alignwide:not(.wp-block-group.has-background), + .entry-content > .alignfull:not(.wp-block-group.has-background) { + margin-bottom: 8rem; + margin-top: 8rem; + } + + /* ENTRY MEDIA */ + + .alignfull > figcaption, + .alignfull > .wp-caption-text { + width: calc(100% - 10rem); + } + + /* Comments ------------------------------ */ + + .comment-meta { + padding-left: 0; + } + + .comment-meta .avatar { + left: -8rem; + } + + /* Site Pagination ----------------------- */ + + .pagination .nav-links { + justify-content: space-between; + margin: 0; + width: 100%; + } + + .nav-links > * { + margin: 0 2rem; + } + + .pagination .next, + .pagination .prev { + display: block; + } + + .pagination .prev { + margin: 0 auto 0 0; + } + + .pagination .next { + text-align: right; + margin: 0 0 0 auto; + } + + /* Site Footer --------------------------- */ + + /* FOOTER TOP */ + + .footer-top { + align-items: center; + } + + .footer-menu { + align-items: baseline; + display: flex; + justify-content: flex-start; + flex-wrap: wrap; + font-size: 2.1rem; + margin: -1.2rem 0 0 -2.4rem; + } + + .footer-menu li { + margin: 1.2rem 0 0 2.4rem; + } +} + + +@media ( min-width: 1220px ) { + + /* Element Base -------------------------- */ + + /* TITLES */ + + h1, + .heading-size-1 { + font-size: 8.4rem; + } + + /* Helper Classes ------------------------ */ + + /* Site Header --------------------------- */ + + /* PRIMARY MENU */ + + ul.primary-menu { + margin: -0.8rem 0 0 -2.5rem; + } + + .primary-menu > li { + margin: 0.8rem 0 0 2.5rem; + } + + /* HEADER TOGGLES */ + + .primary-menu-wrapper + .header-toggles { + margin-left: 4rem; + } + + .header-toggles { + margin-right: -4rem; + } + + .header-toggles .toggle { + padding: 0 4rem; + } + + /* Menu Modal ---------------------------- */ + + /* Search Modal -------------------------- */ + + /* Sub Page ------------------------------ */ + + /* Template: Cover Template -------------- */ + + .cover-header + .post-inner { + padding-top: 10rem; + } + + /* Post: Archive ------------------------- */ + + /* Post: Single -------------------------- */ + + .singular .intro-text { + font-size: 3.2rem; + letter-spacing: -0.03125em; + line-height: 1.375; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: COLUMNS */ + + .wp-block-columns.alignfull + .wp-block-columns.alignfull { + margin-top: -6rem; + } + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignfull { + margin-bottom: 10rem; + margin-top: 10rem; + } + + /* BLOCK: GROUP */ + + .entry-content > .wp-block-group.alignwide.has-background, + .entry-content > .wp-block-group.alignfull.has-background { + padding: 8rem 6rem; + margin-bottom: 0; + margin-top: 0; + } + + /* BLOCK: PULLQUOTE */ + + .wp-block-pullquote.alignwide blockquote p, + .wp-block-pullquote.alignfull blockquote p { + font-size: 6.4rem; + } + + .wp-block-pullquote.is-style-solid-color.alignwide, + .wp-block-pullquote.is-style-solid-color.alignfull { + padding: 9rem 4rem 8rem; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignfull { + margin-bottom: 10rem; + margin-top: 10rem; + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + right: calc((100% - 58rem) / 2 + 58rem - 2rem); + } + + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide.has-background [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + left: calc((100% - 58rem) / 2 + 58rem + 6rem); + } + + /* Comments ------------------------------ */ + + .comment-reply-title { + font-size: 5.6rem; + line-height: 1.2; + margin-bottom: 6rem; + } + + .comment-respond p.comment-notes, + .comment-respond p.logged-in-as { + margin: -4rem 0 6rem 0; + } + + .comments .comment-respond .comment-reply-title { + font-size: 4.8rem; + } + + .comments .comment-respond p.comment-notes, + .comments .comment-respond p.logged-in-as { + margin: -4.5rem 0 4rem 0; + } + + /* Site Pagination ----------------------- */ + + /* Widgets ------------------------------- */ + + .widget-content { + font-size: 2.1rem; + } + + /* Site Footer --------------------------- */ + + .footer-menu { + font-size: 2.4rem; + margin: -1.5rem 0 0 -3rem; + } + + .footer-menu li { + margin: 1.5rem 0 0 3rem; + } + + ul.footer-social { + margin: -1rem 0 0 -1rem; + } + + ul.footer-social li { + margin: 1rem 0 0 1rem; + } + + .footer-social a { + height: 4.4rem; + width: 4.4rem; + } + + .footer-social a::before { + font-size: 2rem; + } + + /* FOOTER WIDGETS */ + + .footer-widgets-wrapper { + margin-left: -6rem; + width: calc(100% + 6rem); + } + + .footer-widgets { + margin-left: 6rem; + } + +} + +@media ( min-width: 1240px ) { + + + /* Blocks -------------------------------- */ + + body.template-full-width .entry-content > .alignleft { + + /*rtl:ignore*/ + margin-left: calc(( 100vw - 120rem ) / 2); + } + + body.template-full-width .entry-content > .alignright { + + /*rtl:ignore*/ + margin-right: calc(( 100vw - 120rem ) / 2); + } + +} + +@media ( min-width: 1280px ) { + + /* Blocks -------------------------------- */ + + /* BLOCK: GALLERY */ + + figure.wp-block-gallery.alignleft { + + /*rtl:ignore*/ + margin-left: -31rem; + } + + figure.wp-block-gallery.alignright { + + /*rtl:ignore*/ + margin-right: -31rem; + } + + /* BLOCK: SEPARATOR */ + + .wp-block-separator.is-style-wide { + max-width: 120rem; + width: 120rem; + } + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft { + + /*rtl:ignore*/ + right: calc((100vw - 58rem) / 2 + 58rem + 4rem); + + /*rtl:ignore*/ + margin-left: -31rem; + } + + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright { + + /*rtl:ignore*/ + left: calc((100vw - 58rem) / 2 + 58rem + 4rem); + + /*rtl:ignore*/ + margin-right: -31rem; + } + + .entry-content > .alignwide { + max-width: 120rem; + width: 120rem; + } + + [class*="__inner-container"] > .alignwide { + max-width: 120rem; + width: 100%; + } + + .alignleft, + .alignright, + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft, + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + max-width: 25rem; + } + + /* Template: Full Width ------------------ */ + + body.template-full-width .alignfull:not(.has-background) > .wp-block-group__inner-container > p:not(.has-background-color) { + padding-left: 0; + padding-right: 0; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft { + + /*rtl:ignore*/ + margin-left: 0; + } + + body.template-full-width [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + + /*rtl:ignore*/ + margin-right: 0; + } + +} + +@media ( min-width: 1330px ) { + + + /* Entry Content ------------------------- */ + + /* ALIGNMENT CLASSES */ + + .alignleft, + .alignright, + .entry-content > .alignleft, + .entry-content > p .alignleft, + .entry-content > .wp-block-image .alignleft, + .entry-content > .alignright, + .entry-content > p .alignright, + .entry-content > .wp-block-image .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignleft, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignleft, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignwide:not(.has-background) [class*="__inner-container"] > .wp-block-image .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > p .alignright, + [class*="wp-block"].alignfull [class*="__inner-container"] > .wp-block-image .alignright { + max-width: 29rem; + } + + /* Blocks -------------------------------- */ + + /* BLOCK: PULLQUOTE */ + + .wp-block-pullquote.is-style-solid-color.alignleft::before, + .wp-block-pullquote.is-style-solid-color.alignright::before { + top: 0; + } +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content-cover.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content-cover.php new file mode 100644 index 0000000..f9b480f --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content-cover.php @@ -0,0 +1,182 @@ +<?php +/** + * Displays the content when the cover template is used. + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +?> + +<article <?php post_class(); ?> id="post-<?php the_ID(); ?>"> + <?php + // On the cover page template, output the cover header. + $cover_header_style = ''; + $cover_header_classes = ''; + + $color_overlay_style = ''; + $color_overlay_classes = ''; + + $image_url = ! post_password_required() ? get_the_post_thumbnail_url( get_the_ID(), 'twentytwenty-fullscreen' ) : ''; + + if ( $image_url ) { + $cover_header_style = ' style="background-image: url( ' . esc_url( $image_url ) . ' );"'; + $cover_header_classes = ' bg-image'; + } + + // Get the color used for the color overlay. + $color_overlay_color = get_theme_mod( 'cover_template_overlay_background_color' ); + if ( $color_overlay_color ) { + $color_overlay_style = ' style="color: ' . esc_attr( $color_overlay_color ) . ';"'; + } else { + $color_overlay_style = ''; + } + + // Get the fixed background attachment option. + if ( get_theme_mod( 'cover_template_fixed_background', true ) ) { + $cover_header_classes .= ' bg-attachment-fixed'; + } + + // Get the opacity of the color overlay. + $color_overlay_opacity = get_theme_mod( 'cover_template_overlay_opacity' ); + $color_overlay_opacity = ( false === $color_overlay_opacity ) ? 80 : $color_overlay_opacity; + $color_overlay_classes .= ' opacity-' . $color_overlay_opacity; + ?> + + <div class="cover-header <?php echo $cover_header_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>"<?php echo $cover_header_style; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- We need to double check this, but for now, we want to pass PHPCS ;) ?>> + <div class="cover-header-inner-wrapper screen-height"> + <div class="cover-header-inner"> + <div class="cover-color-overlay color-accent<?php echo esc_attr( $color_overlay_classes ); ?>"<?php echo $color_overlay_style; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- We need to double check this, but for now, we want to pass PHPCS ;) ?>></div> + + <header class="entry-header has-text-align-center"> + <div class="entry-header-inner section-inner medium"> + + <?php + + /** + * Allow child themes and plugins to filter the display of the categories in the article header. + * + * @since 1.0.0 + * + * @param bool Whether to show the categories in article header, Default true. + */ + $show_categories = apply_filters( 'twentytwenty_show_categories_in_entry_header', true ); + + if ( true === $show_categories && has_category() ) { + ?> + + <div class="entry-categories"> + <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); ?></span> + <div class="entry-categories-inner"> + <?php the_category( ' ' ); ?> + </div><!-- .entry-categories-inner --> + </div><!-- .entry-categories --> + + <?php + } + + the_title( '<h1 class="entry-title">', '</h1>' ); + + if ( is_page() ) { + ?> + + <div class="to-the-content-wrapper"> + + <a href="#post-inner" class="to-the-content fill-children-current-color"> + <?php twentytwenty_the_theme_svg( 'arrow-down' ); ?> + <div class="screen-reader-text"><?php _e( 'Scroll Down', 'twentytwenty' ); ?></div> + </a><!-- .to-the-content --> + + </div><!-- .to-the-content-wrapper --> + + <?php + } else { + + $intro_text_width = ''; + + if ( is_singular() ) { + $intro_text_width = ' small'; + } else { + $intro_text_width = ' thin'; + } + + if ( has_excerpt() ) { + ?> + + <div class="intro-text section-inner max-percentage<?php echo esc_attr( $intro_text_width ); ?>"> + <?php the_excerpt(); ?> + </div> + + <?php + } + + twentytwenty_the_post_meta( get_the_ID(), 'single-top' ); + + } + ?> + + </div><!-- .entry-header-inner --> + </header><!-- .entry-header --> + + </div><!-- .cover-header-inner --> + </div><!-- .cover-header-inner-wrapper --> + </div><!-- .cover-header --> + + <div class="post-inner" id="post-inner"> + + <div class="entry-content"> + + <?php + the_content(); + ?> + + </div><!-- .entry-content --> + <?php + wp_link_pages( + array( + 'before' => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>', + 'after' => '</nav>', + 'link_before' => '<span class="page-number">', + 'link_after' => '</span>', + ) + ); + + edit_post_link(); + // Single bottom post meta. + twentytwenty_the_post_meta( get_the_ID(), 'single-bottom' ); + + if ( is_single() ) { + + get_template_part( 'template-parts/entry-author-bio' ); + + } + ?> + + </div><!-- .post-inner --> + + <?php + + if ( is_single() ) { + + get_template_part( 'template-parts/navigation' ); + } + + /** + * Output comments wrapper if it's a post, or if comments are open, + * or if there's a comment number – and check for password. + * */ + if ( ( is_single() || is_page() ) && ( comments_open() || get_comments_number() ) && ! post_password_required() ) { + ?> + + <div class="comments-wrapper section-inner"> + + <?php comments_template(); ?> + + </div><!-- .comments-wrapper --> + + <?php + } + ?> + +</article><!-- .post --> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content.php new file mode 100644 index 0000000..4b745fa --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/content.php @@ -0,0 +1,94 @@ +<?php +/** + * The default template for displaying content + * + * Used for both singular and index. + * + * @link https://developer.wordpress.org/themes/basics/template-hierarchy/ + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +?> + +<article <?php post_class(); ?> id="post-<?php the_ID(); ?>"> + + <?php + + get_template_part( 'template-parts/entry-header' ); + + if ( ! is_search() ) { + get_template_part( 'template-parts/featured-image' ); + } + + ?> + + <div class="post-inner <?php echo is_page_template( 'templates/template-full-width.php' ) ? '' : 'thin'; ?> "> + + <div class="entry-content"> + + <?php + if ( is_search() || ! is_singular() && 'summary' === get_theme_mod( 'blog_content', 'full' ) ) { + the_excerpt(); + } else { + the_content( __( 'Continue reading', 'twentytwenty' ) ); + } + ?> + + </div><!-- .entry-content --> + + </div><!-- .post-inner --> + + <div class="section-inner"> + <?php + wp_link_pages( + array( + 'before' => '<nav class="post-nav-links bg-light-background" aria-label="' . esc_attr__( 'Page', 'twentytwenty' ) . '"><span class="label">' . __( 'Pages:', 'twentytwenty' ) . '</span>', + 'after' => '</nav>', + 'link_before' => '<span class="page-number">', + 'link_after' => '</span>', + ) + ); + + edit_post_link(); + + // Single bottom post meta. + twentytwenty_the_post_meta( get_the_ID(), 'single-bottom' ); + + if ( is_single() ) { + + get_template_part( 'template-parts/entry-author-bio' ); + + } + ?> + + </div><!-- .section-inner --> + + <?php + + if ( is_single() ) { + + get_template_part( 'template-parts/navigation' ); + + } + + /** + * Output comments wrapper if it's a post, or if comments are open, + * or if there's a comment number – and check for password. + * */ + if ( ( is_single() || is_page() ) && ( comments_open() || get_comments_number() ) && ! post_password_required() ) { + ?> + + <div class="comments-wrapper section-inner"> + + <?php comments_template(); ?> + + </div><!-- .comments-wrapper --> + + <?php + } + ?> + +</article><!-- .post --> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-author-bio.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-author-bio.php new file mode 100644 index 0000000..14553c6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-author-bio.php @@ -0,0 +1,33 @@ +<?php +/** + * The template for displaying Author info + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +if ( (bool) get_the_author_meta( 'description' ) && (bool) get_theme_mod( 'show_author_bio', true ) ) : ?> +<div class="author-bio"> + <div class="author-title-wrapper"> + <div class="author-avatar vcard"> + <?php echo get_avatar( get_the_author_meta( 'ID' ), 160 ); ?> + </div> + <h2 class="author-title heading-size-4"> + <?php + printf( + /* translators: %s: Author name */ + __( 'By %s', 'twentytwenty' ), + esc_html( get_the_author() ) + ); + ?> + </h2> + </div><!-- .author-name --> + <div class="author-description"> + <?php echo wp_kses_post( wpautop( get_the_author_meta( 'description' ) ) ); ?> + <a class="author-link" href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ); ?>" rel="author"> + <?php _e( 'View Archive <span aria-hidden="true">→</span>', 'twentytwenty' ); ?> + </a> + </div><!-- .author-description --> +</div><!-- .author-bio --> +<?php endif; ?> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-header.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-header.php new file mode 100644 index 0000000..1f68550 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/entry-header.php @@ -0,0 +1,75 @@ +<?php +/** + * Displays the post header + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +$entry_header_classes = ''; + +if ( is_singular() ) { + $entry_header_classes .= ' header-footer-group'; +} + +?> + +<header class="entry-header has-text-align-center<?php echo esc_attr( $entry_header_classes ); ?>"> + + <div class="entry-header-inner section-inner medium"> + + <?php + /** + * Allow child themes and plugins to filter the display of the categories in the entry header. + * + * @since 1.0.0 + * + * @param bool Whether to show the categories in header, Default true. + */ + $show_categories = apply_filters( 'twentytwenty_show_categories_in_entry_header', true ); + + if ( true === $show_categories && has_category() ) { + ?> + + <div class="entry-categories"> + <span class="screen-reader-text"><?php _e( 'Categories', 'twentytwenty' ); ?></span> + <div class="entry-categories-inner"> + <?php the_category( ' ' ); ?> + </div><!-- .entry-categories-inner --> + </div><!-- .entry-categories --> + + <?php + } + + if ( is_singular() ) { + the_title( '<h1 class="entry-title">', '</h1>' ); + } else { + the_title( '<h2 class="entry-title heading-size-1"><a href="' . esc_url( get_permalink() ) . '">', '</a></h2>' ); + } + + $intro_text_width = ''; + + if ( is_singular() ) { + $intro_text_width = ' small'; + } else { + $intro_text_width = ' thin'; + } + + if ( has_excerpt() && is_singular() ) { + ?> + + <div class="intro-text section-inner max-percentage<?php echo $intro_text_width; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>"> + <?php the_excerpt(); ?> + </div> + + <?php + } + + // Default to displaying the post meta. + twentytwenty_the_post_meta( get_the_ID(), 'single-top' ); + ?> + + </div><!-- .entry-header-inner --> + +</header><!-- .entry-header --> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/featured-image.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/featured-image.php new file mode 100644 index 0000000..03e48df --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/featured-image.php @@ -0,0 +1,43 @@ +<?php +/** + * Displays the featured image + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +if ( has_post_thumbnail() && ! post_password_required() ) { + + $featured_media_inner_classes = ''; + + // Make the featured media thinner on archive pages. + if ( ! is_singular() ) { + $featured_media_inner_classes .= ' medium'; + } + ?> + + <figure class="featured-media"> + + <div class="featured-media-inner section-inner<?php echo $featured_media_inner_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>"> + + <?php + the_post_thumbnail(); + + $caption = get_the_post_thumbnail_caption(); + + if ( $caption ) { + ?> + + <figcaption class="wp-caption-text"><?php echo esc_html( $caption ); ?></figcaption> + + <?php + } + ?> + + </div><!-- .featured-media-inner --> + + </figure><!-- .featured-media --> + + <?php +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/footer-menus-widgets.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/footer-menus-widgets.php new file mode 100644 index 0000000..fe89d64 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/footer-menus-widgets.php @@ -0,0 +1,119 @@ +<?php +/** + * Displays the menus and widgets at the end of the main element. + * Visually, this output is presented as part of the footer element. + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +$has_footer_menu = has_nav_menu( 'footer' ); +$has_social_menu = has_nav_menu( 'social' ); + +$has_sidebar_1 = is_active_sidebar( 'sidebar-1' ); +$has_sidebar_2 = is_active_sidebar( 'sidebar-2' ); + +// Only output the container if there are elements to display. +if ( $has_footer_menu || $has_social_menu || $has_sidebar_1 || $has_sidebar_2 ) { + ?> + + <div class="footer-nav-widgets-wrapper header-footer-group"> + + <div class="footer-inner section-inner"> + + <?php + + $footer_top_classes = ''; + + $footer_top_classes .= $has_footer_menu ? ' has-footer-menu' : ''; + $footer_top_classes .= $has_social_menu ? ' has-social-menu' : ''; + + if ( $has_footer_menu || $has_social_menu ) { + ?> + <div class="footer-top<?php echo $footer_top_classes; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- static output ?>"> + <?php if ( $has_footer_menu ) { ?> + + <nav aria-label="<?php esc_attr_e( 'Footer', 'twentytwenty' ); ?>" role="navigation" class="footer-menu-wrapper"> + + <ul class="footer-menu reset-list-style"> + <?php + wp_nav_menu( + array( + 'container' => '', + 'depth' => 1, + 'items_wrap' => '%3$s', + 'theme_location' => 'footer', + ) + ); + ?> + </ul> + + </nav><!-- .site-nav --> + + <?php } ?> + <?php if ( $has_social_menu ) { ?> + + <nav aria-label="<?php esc_attr_e( 'Social links', 'twentytwenty' ); ?>" class="footer-social-wrapper"> + + <ul class="social-menu footer-social reset-list-style social-icons fill-children-current-color"> + + <?php + wp_nav_menu( + array( + 'theme_location' => 'social', + 'container' => '', + 'container_class' => '', + 'items_wrap' => '%3$s', + 'menu_id' => '', + 'menu_class' => '', + 'depth' => 1, + 'link_before' => '<span class="screen-reader-text">', + 'link_after' => '</span>', + 'fallback_cb' => '', + ) + ); + ?> + + </ul><!-- .footer-social --> + + </nav><!-- .footer-social-wrapper --> + + <?php } ?> + </div><!-- .footer-top --> + + <?php } ?> + + <?php if ( $has_sidebar_1 || $has_sidebar_2 ) { ?> + + <aside class="footer-widgets-outer-wrapper" role="complementary"> + + <div class="footer-widgets-wrapper"> + + <?php if ( $has_sidebar_1 ) { ?> + + <div class="footer-widgets column-one grid-item"> + <?php dynamic_sidebar( 'sidebar-1' ); ?> + </div> + + <?php } ?> + + <?php if ( $has_sidebar_2 ) { ?> + + <div class="footer-widgets column-two grid-item"> + <?php dynamic_sidebar( 'sidebar-2' ); ?> + </div> + + <?php } ?> + + </div><!-- .footer-widgets-wrapper --> + + </aside><!-- .footer-widgets-outer-wrapper --> + + <?php } ?> + + </div><!-- .footer-inner --> + + </div><!-- .footer-nav-widgets-wrapper --> + +<?php } ?> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-menu.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-menu.php new file mode 100644 index 0000000..20b9628 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-menu.php @@ -0,0 +1,148 @@ +<?php +/** + * Displays the menu icon and modal + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +?> + +<div class="menu-modal cover-modal header-footer-group" data-modal-target-string=".menu-modal"> + + <div class="menu-modal-inner modal-inner"> + + <div class="menu-wrapper section-inner"> + + <div class="menu-top"> + + <button class="toggle close-nav-toggle fill-children-current-color" data-toggle-target=".menu-modal" data-toggle-body-class="showing-menu-modal" aria-expanded="false" data-set-focus=".menu-modal"> + <span class="toggle-text"><?php _e( 'Close Menu', 'twentytwenty' ); ?></span> + <?php twentytwenty_the_theme_svg( 'cross' ); ?> + </button><!-- .nav-toggle --> + + <?php + + $mobile_menu_location = ''; + + // If the mobile menu location is not set, use the primary and expanded locations as fallbacks, in that order. + if ( has_nav_menu( 'mobile' ) ) { + $mobile_menu_location = 'mobile'; + } elseif ( has_nav_menu( 'primary' ) ) { + $mobile_menu_location = 'primary'; + } elseif ( has_nav_menu( 'expanded' ) ) { + $mobile_menu_location = 'expanded'; + } + + if ( has_nav_menu( 'expanded' ) ) { + + $expanded_nav_classes = ''; + + if ( 'expanded' === $mobile_menu_location ) { + $expanded_nav_classes .= ' mobile-menu'; + } + + ?> + + <nav class="expanded-menu<?php echo esc_attr( $expanded_nav_classes ); ?>" aria-label="<?php esc_attr_e( 'Expanded', 'twentytwenty' ); ?>" role="navigation"> + + <ul class="modal-menu reset-list-style"> + <?php + if ( has_nav_menu( 'expanded' ) ) { + wp_nav_menu( + array( + 'container' => '', + 'items_wrap' => '%3$s', + 'show_toggles' => true, + 'theme_location' => 'expanded', + ) + ); + } + ?> + </ul> + + </nav> + + <?php + } + + if ( 'expanded' !== $mobile_menu_location ) { + ?> + + <nav class="mobile-menu" aria-label="<?php esc_attr_e( 'Mobile', 'twentytwenty' ); ?>" role="navigation"> + + <ul class="modal-menu reset-list-style"> + + <?php + if ( $mobile_menu_location ) { + + wp_nav_menu( + array( + 'container' => '', + 'items_wrap' => '%3$s', + 'show_toggles' => true, + 'theme_location' => $mobile_menu_location, + ) + ); + + } else { + + wp_list_pages( + array( + 'match_menu_classes' => true, + 'show_toggles' => true, + 'title_li' => false, + 'walker' => new TwentyTwenty_Walker_Page(), + ) + ); + + } + ?> + + </ul> + + </nav> + + <?php + } + ?> + + </div><!-- .menu-top --> + + <div class="menu-bottom"> + + <?php if ( has_nav_menu( 'social' ) ) { ?> + + <nav aria-label="<?php esc_attr_e( 'Expanded Social links', 'twentytwenty' ); ?>" role="navigation"> + <ul class="social-menu reset-list-style social-icons fill-children-current-color"> + + <?php + wp_nav_menu( + array( + 'theme_location' => 'social', + 'container' => '', + 'container_class' => '', + 'items_wrap' => '%3$s', + 'menu_id' => '', + 'menu_class' => '', + 'depth' => 1, + 'link_before' => '<span class="screen-reader-text">', + 'link_after' => '</span>', + 'fallback_cb' => '', + ) + ); + ?> + + </ul> + </nav><!-- .social-menu --> + + <?php } ?> + + </div><!-- .menu-bottom --> + + </div><!-- .menu-wrapper --> + + </div><!-- .menu-modal-inner --> + +</div><!-- .menu-modal --> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-search.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-search.php new file mode 100644 index 0000000..e01090a --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/modal-search.php @@ -0,0 +1,34 @@ +<?php +/** + * Displays the search icon and modal + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +?> +<div class="search-modal cover-modal header-footer-group" data-modal-target-string=".search-modal"> + + <div class="search-modal-inner modal-inner"> + + <div class="section-inner"> + + <?php + get_search_form( + array( + 'label' => __( 'Search for:', 'twentytwenty' ), + ) + ); + ?> + + <button class="toggle search-untoggle close-search-toggle fill-children-current-color" data-toggle-target=".search-modal" data-toggle-body-class="showing-search-modal" data-set-focus=".search-modal .search-field" aria-expanded="false"> + <span class="screen-reader-text"><?php _e( 'Close search', 'twentytwenty' ); ?></span> + <?php twentytwenty_the_theme_svg( 'cross' ); ?> + </button><!-- .search-toggle --> + + </div><!-- .section-inner --> + + </div><!-- .search-modal-inner --> + +</div><!-- .menu-modal --> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/navigation.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/navigation.php new file mode 100644 index 0000000..ca4eff6 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/navigation.php @@ -0,0 +1,61 @@ +<?php +/** + * Displays the next and previous post navigation in single posts. + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +$next_post = get_next_post(); +$prev_post = get_previous_post(); + +if ( $next_post || $prev_post ) { + + $pagination_classes = ''; + + if ( ! $next_post ) { + $pagination_classes = ' only-one only-prev'; + } elseif ( ! $prev_post ) { + $pagination_classes = ' only-one only-next'; + } + + ?> + + <nav class="pagination-single section-inner<?php echo esc_attr( $pagination_classes ); ?>" aria-label="<?php esc_attr_e( 'Post', 'twentytwenty' ); ?>" role="navigation"> + + <hr class="styled-separator is-style-wide" aria-hidden="true" /> + + <div class="pagination-single-inner"> + + <?php + if ( $prev_post ) { + ?> + + <a class="previous-post" href="<?php echo esc_url( get_permalink( $prev_post->ID ) ); ?>"> + <span class="arrow" aria-hidden="true">←</span> + <span class="title"><span class="title-inner"><?php echo wp_kses_post( get_the_title( $prev_post->ID ) ); ?></span></span> + </a> + + <?php + } + + if ( $next_post ) { + ?> + + <a class="next-post" href="<?php echo esc_url( get_permalink( $next_post->ID ) ); ?>"> + <span class="arrow" aria-hidden="true">→</span> + <span class="title"><span class="title-inner"><?php echo wp_kses_post( get_the_title( $next_post->ID ) ); ?></span></span> + </a> + <?php + } + ?> + + </div><!-- .pagination-single-inner --> + + <hr class="styled-separator is-style-wide" aria-hidden="true" /> + + </nav><!-- .pagination-single --> + + <?php +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/pagination.php b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/pagination.php new file mode 100644 index 0000000..b2a6aca --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/template-parts/pagination.php @@ -0,0 +1,58 @@ +<?php +/** + * A template partial to output pagination for the Twenty Twenty default theme. + * + * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0.0 + */ + +/** + * Translators: + * This text contains HTML to allow the text to be shorter on small screens. + * The text inside the span with the class nav-short will be hidden on small screens. + */ + +$prev_text = sprintf( + '%s <span class="nav-prev-text">%s</span>', + '<span aria-hidden="true">←</span>', + __( 'Newer <span class="nav-short">Posts</span>', 'twentytwenty' ) +); +$next_text = sprintf( + '<span class="nav-next-text">%s</span> %s', + __( 'Older <span class="nav-short">Posts</span>', 'twentytwenty' ), + '<span aria-hidden="true">→</span>' +); + +$posts_pagination = get_the_posts_pagination( + array( + 'mid_size' => 1, + 'prev_text' => $prev_text, + 'next_text' => $next_text, + ) +); + +// If we're not outputting the previous page link, prepend a placeholder with visibility: hidden to take its place. +if ( strpos( $posts_pagination, 'prev page-numbers' ) === false ) { + $posts_pagination = str_replace( '<div class="nav-links">', '<div class="nav-links"><span class="prev page-numbers placeholder" aria-hidden="true">' . $prev_text . '</span>', $posts_pagination ); +} + +// If we're not outputting the next page link, append a placeholder with visibility: hidden to take its place. +if ( strpos( $posts_pagination, 'next page-numbers' ) === false ) { + $posts_pagination = str_replace( '</div>', '<span class="next page-numbers placeholder" aria-hidden="true">' . $next_text . '</span></div>', $posts_pagination ); +} + +if ( $posts_pagination ) { ?> + + <div class="pagination-wrapper section-inner"> + + <hr class="styled-separator pagination-separator is-style-wide" aria-hidden="true" /> + + <?php echo $posts_pagination; //phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- already escaped during generation. ?> + + </div><!-- .pagination-wrapper --> + + <?php +} diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/templates/template-cover.php b/srcs/wordpress/wp-content/themes/twentytwenty/templates/template-cover.php new file mode 100644 index 0000000..28e4677 --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/templates/template-cover.php @@ -0,0 +1,33 @@ +<?php +/** + * Template Name: Cover Template + * Template Post Type: post, page + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0 + */ + +get_header(); +?> + +<main id="site-content" role="main"> + + <?php + + if ( have_posts() ) { + + while ( have_posts() ) { + the_post(); + + get_template_part( 'template-parts/content-cover' ); + } + } + + ?> + +</main><!-- #site-content --> + +<?php get_template_part( 'template-parts/footer-menus-widgets' ); ?> + +<?php get_footer(); ?> diff --git a/srcs/wordpress/wp-content/themes/twentytwenty/templates/template-full-width.php b/srcs/wordpress/wp-content/themes/twentytwenty/templates/template-full-width.php new file mode 100644 index 0000000..66772eb --- /dev/null +++ b/srcs/wordpress/wp-content/themes/twentytwenty/templates/template-full-width.php @@ -0,0 +1,11 @@ +<?php +/** + * Template Name: Full Width Template + * Template Post Type: post, page + * + * @package WordPress + * @subpackage Twenty_Twenty + * @since 1.0 + */ + +get_template_part( 'singular' ); -- cgit